Project1
标题:
如何在公共事件中把指定目标指定为使用者自身?
[打印本页]
作者:
alianlord
时间:
2023-8-28 23:49
标题:
如何在公共事件中把指定目标指定为使用者自身?
我想设计一个战斗中角色的 功能动作 【回血】 放在 Window_ActorCommand 当一个指令使用。
因为每个队友都能使用,且【回血】这个效果就是作用在使用者本人(不用选择目标)
打算用 skill 中连接 CommonEvent(公共事件) 中的脚本框 写句脚本来实现。但是这个【把目标指向使用者】卡住俺了。
求指教。
谢谢。
作者:
alexncf125
时间:
2023-8-29 04:37
啊这...这不完全是直接抄一遍自带的防御就能做到了...
class Game_Action
#------------------------------------------------- -------------------------
# ● 设置回血
#------------------------------------------------- -------------------------
def set_recovery
set_skill(subject.recovery_skill_id)
self
end
end
class Game_BattlerBase
#------------------------------------------------- -------------------------
# ● 获取回血的技能 ID
#------------------------------------------------- -------------------------
def recovery_skill_id
return 24
end
#------------------------------------------------- -------------------------
# ● 判定是否能进行回血
#------------------------------------------------- -------------------------
def recovery_usable?
usable?($data_skills[recovery_skill_id])
end
end
class Window_ActorCommand < Window_Command
#------------------------------------------------- -------------------------
# ● 生成指令列表
#------------------------------------------------- -------------------------
alias :make_command_list_recovery :make_command_list
def make_command_list
make_command_list_recovery
add_recovery_command if @actor
end
#------------------------------------------------- -------------------------
# ● 添加回血指令
#------------------------------------------------- -------------------------
def add_recovery_command
add_command("回血", :recovery, @actor.recovery_usable?)
end
end
class Scene_Battle < Scene_Base
#------------------------------------------------- -------------------------
# ● 生成角色指令窗口
#------------------------------------------------- -------------------------
alias :create_actor_command_window_recovery :create_actor_command_window
def create_actor_command_window
create_actor_command_window_recovery
@actor_command_window.set_handler(:recovery, method(:command_recovery))
end
#------------------------------------------------- -------------------------
# ● 指令“回血”
#------------------------------------------------- -------------------------
def command_recovery
BattleManager.actor.input.set_recovery
next_command
end
end
复制代码
作者:
alianlord
时间:
2023-8-29 09:19
alexncf125 发表于 2023-8-29 04:37
啊这...这不完全是直接抄一遍自带的防御就能做到了...
这才是正确的思路。确实能完美解决我的需求。我一直往【写一行目标能直接指向使用者】的方向去想。看来是我路走歪了。
但是还是忍不住多问一句。
真的有能使目标指向使用者的一行脚本吗?
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1