Project1

标题: 如何脚本创建和删除一个事件? [打印本页]

作者: 945127391    时间: 2011-4-21 08:58
标题: 如何脚本创建和删除一个事件?
本帖最后由 945127391 于 2011-4-26 17:43 编辑

就是用脚本创建和删除一个事件
创建事件,要能够自定义以下东西:
       1.自定义事件名、事件ID;
       2.自定义事件内容(就是把N号公共事件的内容复制到该事件里)
谢谢了哈
作者: daipeng76    时间: 2011-4-21 09:50
本帖最后由 daipeng76 于 2011-4-21 09:56 编辑

回复 945127391 的帖子

你参考下事件的动态创建与删除
http://rpg.blue/viewthread.php?t ... =%E5%8A%A8%E6%80%81

具体怎样达到你的要求,没试过不是很清楚


作者: 蕾米莉亚·斯卡雷特    时间: 2011-4-21 09:53
请参考 F1 的 RPG::Event 以及以下的类定义. 先创建一个这个类出来, 比如

new_event = RPG::Event.new

然后可以直接写入 MapXXX.rvdata 文件里, 也可以直接往 Game_Map 里添加新事件. 具体做法是:
1. 直接写入 MapXXX.rvdata
map_data = load_data(sprintf("Data/Map%03d.rvdata", map_id))
map_data.event[new_event_id] = new_event
save_data(sprintf("Data/Map%03d.rvdata", map_id), map_data)
(注意备份)

2. Game_Map 89行后添加
@events[new_event_id] = Game_Event.new(@map_id, new_event)

-----------------------

以上未测试~~~

作者: trentswd    时间: 2011-4-23 07:25
创建倒是可以创建,但是最好存在存档里面,直接改数据库不好——新游戏怎么办
如果没有特殊需求,还是用开关吧。

如果你非要这么做,
aaa=RPG::Event.new(x坐标,y坐标)
aaa.name="名字"
aaa.page=$data_common_events[n].page
然后像ls那样把它存起来
map_data.event[new_event_id] = aaa

不过lz你用这个是为了干啥……
作者: 945127391    时间: 2011-4-23 13:52
好吧,看来我要补充一下了.....我是想在游戏进行中,用事件新建另一个事件.....
作者: trentswd    时间: 2011-4-23 14:59
乃还不如用开关= =
作者: 945127391    时间: 2011-4-23 16:07
因为.......我不知道玩家站在哪嘛......(我的事件的x坐标是玩家的地图x坐标+1
作者: px.凤翔九天    时间: 2011-4-23 16:36
可以搜索一下美兽的丢东西脚本,比较古老的东东,但是应该能找得到,相当好用~
而且符合你的要求~
不过自定义事件名称这个需要点脚本基础了,你要是搞不定的话,我再帮你做。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1