楼主的意思应该是给角色使用转职书的时候,给不同的人转职是吧 我也来说一个 首先打开脚本,搜索 def item_effect(item) ,如果是默认脚本的话是在 Game_Battler 3 里面 然后在下面命中的情况下,加一行脚本 $game_variables[1] = self.id 这样1号变量就等于使用者的ID 之后在公共事件分歧1号变量就可以了 如果你的物品是指定某人转职为某个职业 不用加上面的脚本,改为 加这样一行,self.class_id = item.recover_hp if item.element_set.include?(18) , 这样子的话就是 物品有18号属性时,将该角色转职为物品回复量ID的角色, 你设定18号属性为 转职书,那么拥有转职书的物品会有转职效果,转的职业是你给物品设定的是物品回复量的ID 最后,再关联一个事件跳到地图,提示转职成功。 |
本帖最后由 纯属小虫 于 2023-5-10 14:54 编辑 给个思路,无论是在菜单中使用物品,还是在战斗中使用物品 指定的目标其实都是队伍中的某个角色(这个角色一定是在队伍中的) 所以不一定要用角色判定,可以用队伍index来判定,然后index反推选中的角色: 设置一个全局变量,用于记录使用物品后最后选中的目标index $game_variable[自己定一个] 【使用物品后最后选中的目标index】 菜单中: Scene_Item 找到: def main $game_variable[自己定一个] = 0 # 初始化一下(不填应该也没问题,但有极小概率出BUG) ...... 然后找到 def update_target ...... if used $game_variable[自己定一个] = @target_window.index #在这里添加一个全局变量,把指定目标角色数据代入这个变量中 ...... ======================================================================== 公共事件中: 条件分支: 脚本: $game_variable[自己定一个] != 0 事件脚本: a = $game_variable[自己定一个] @parameters[0] $game_party.actors[a].id @parameters[1] = *********(写上要更改的职业的id号) command_321 除此之外的场合 显示文章:变量 $game_variable[自己定一个] 存在错误 结束分支 最后初始化变量: $game_variable[自己定一个] = 0 注意:这种方法不支持在战斗中的场景里判定! |
本帖最后由 金芒芒 于 2023-5-10 08:33 编辑 使用物品,物品选页有个公共事件 |
站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作
GMT+8, 2024-5-15 03:29
Powered by Discuz! X3.1
© 2001-2013 Comsenz Inc.