Project1
标题:
关于脚本的一些基础问题
[打印本页]
作者:
bruceleelx
时间:
2011-8-17 18:57
提示:
作者被禁止或删除 内容自动屏蔽
作者:
逸豫
时间:
2011-8-17 19:21
http://www.diyrpg.net/thread-3144-1-1.html
作者:
f26401004
时间:
2011-8-17 19:26
仇恨系統並非只完全抄了一次,
在這之中skill_effect和attack_effect都加上了仇恨值得計算:
caculate_hate(user, skill, self.damage)
在命中的情况下時則增加仇恨值,
在這種必須確定目標的情況,我們將會完全抄一次,
在關鍵的地方寫上我們需要的效果。
而透視技能則是將skill_effect使用alias把名稱替換成sailcat_skill_effect skill_effect而已,
實際的用法,常常是用在增加原本方法裡沒有的計算時用,
像透視技能,不就新增讀取敵人資料是不?
因此不必在重抄一次。
作者:
orzfly
时间:
2011-8-17 19:29
直接重复定义一个函数会导致他被覆盖掉。
解决方法有两种。
把原来的函数抄过来。如仇恨系统,这样的好处是可以在原函数的任意位置添加新的代码,但是会导致使用第二种方法或自己在原定义修改的失效。
使用 alias,如透视技能。参考 2 楼发的
http://www.diyrpg.net/thread-3144-1-1.html
,你可以在透视技能脚本中类似找到 alias old_apple apple 这样的代码,并在后面类似 def apple 中看到 old_apple 这样的调用。使用这种方法的好处是兼容性强,但是新的代码只能插入在原来定义的头部或尾部。
是说,你那两个脚本如果要同时使用,你就得把仇恨系统放在透视技能前面。如果反过来,恐怕你需要按照透视技能对 skill_effect 的修改来修改仇恨系统中的 skill_effect。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1