Project1

标题: 制作需指定装备和指定物品才能使用技能 [打印本页]

作者: westbugs    时间: 2008-7-1 15:31
标题: 制作需指定装备和指定物品才能使用技能
这是回应贴, 看到构思挺有趣, 忍不住试做这个脚本

刚看一下, 发现爆多错字, 赶紧神速修改. 汗...


这个算是备注...写得有点原始, 请将就一下...

改GAME_ACTOR的:
  1. =begin   
  2. 使用N号技能时, 检查M号道具和检查X号装备

  3.     if skill.id == N
  4.      return false if $game_party.item_no(M) == 0
  5.      return false if equips.include?(X)
  6.    end
  7.    
  8. 使用N号技能时, 检查M号道具和检查X号装备
  9. =end
复制代码


和GAME_PARTY的:
  1. =begin
  2. 使用N号技能时, 消耗M号道具
  3. 插入下列脚本

  4.    if @skill.id == N
  5.      $game_party.lose_item($data_items[M], 1)
  6.    end
  7.    
  8. 使用N号技能时, 消耗M号道具1个  
  9. =end
复制代码

  1. #==============================================================================
  2. #westbugs 制作,
  3. #用法:
  4. #把1号装备装上
  5. #拥有一号道具
  6. #拥有一号技能
  7. #
  8. #使用一号技能时, 一号道具会消失。
  9. #需一号道具才能启动一号技能
  10. #注:无限恐怖-轮回篇里附带脚本
  11. #==============================================================================

  12. class Game_Actor < Game_Battler
  13. #--------------------------------------------------------------------------
  14. # ● 可以使用特技判定
  15. #     skill_id : 特技 ID
  16. #--------------------------------------------------------------------------
  17. def skill_can_use?(skill)   
  18. return false unless skill_learn?(skill)
  19.    
  20. #使用一号技能时, 检查一号道具和检查一号装备
  21.     if skill.id == 1
  22.      return false if $game_party.item_no(1) == 0
  23.      return false if !equips.include?(1)
  24.    end
  25.    #使用一号技能时, 检查一号道具和检查一号装备
  26.    
  27. #使用二号技能时, 检查二号道具和检查二号装备
  28.     if skill.id == 2
  29.      return false if $game_party.item_no(2) == 0
  30.      return false if !equips.include?(2)
  31.    end
  32. #使用二号技能时, 检查二号道具和检查二号装备
  33.    
  34.    
  35. =begin   
  36. 使用N号技能时, 检查M号道具和检查X号装备

  37.     if skill.id == N
  38.      return false if $game_party.item_no(M) == 0
  39.      return false if !equips.include?(X)
  40.    end
  41.    
  42. 使用N号技能时, 检查M号道具和检查X号装备
  43. =end   

  44.    return super
  45. end
  46. end


  47. class Game_Party < Game_Unit
  48. def item_no(n)
  49.    return item_number($data_items[n])
  50. end
  51. def weapon_no(n)
  52.    return item_number($data_weapons[n])
  53. end
  54. end

  55. class Scene_Battle < Scene_Base


  56. #--------------------------------------------------------------------------
  57. # ● 执行战斗行动 : 技能
  58. #--------------------------------------------------------------------------
  59. def execute_action_skill
  60.    skill = @active_battler.action.skill
  61.    text = @active_battler.name + skill.message1
  62.    @message_window.add_instant_text(text)
  63.    unless skill.message2.empty?
  64.      wait(10)
  65.      @message_window.add_instant_text(skill.message2)
  66.    end
  67.    targets = @active_battler.action.make_targets
  68.    display_animation(targets, skill.animation_id)
  69.    @active_battler.mp -= @active_battler.calc_mp_cost(skill)
  70.    
  71. #使用一号技能时, 消耗一号道具
  72.    if @skill.id == 1
  73.      $game_party.lose_item($data_items[1], 1)
  74.    end
  75. #使用一号技能时, 消耗一号道具
  76.    
  77. #使用二号技能时,   不消耗二号道具
  78. #使用二号技能时,   不消耗二号道具
  79.    

  80. =begin
  81. 使用N号技能时, 消耗M号道具
  82. 插入下列脚本

  83.    if @skill.id == N
  84.      $game_party.lose_item($data_items[M], 1)
  85.    end
  86.    
  87. 使用N号技能时, 消耗M号道具1个  
  88. =end

  89.    
  90.    $game_temp.common_event_id = skill.common_event_id
  91.    for target in targets
  92.      target.skill_effect(@active_battler, skill)
  93.      display_action_effects(target, skill)
  94.    end
  95. end
  96. end

复制代码


截图:




本来还有一张图和范例工程, 但实在等太....久了. 下次再上传好了
作者: 雪流星    时间: 2008-7-1 15:35
请用html标签框注脚本

谢谢{/hx}
作者: 越前リョーマ    时间: 2008-7-1 20:11
话说这个一号要怎么改啊……|||(而且我需要的是持有某物品,不需要消耗,可以理解为箭桶之类的东西)
其实我比较希望有备注的方法操控……
作者: westbugs    时间: 2008-7-2 17:16
回snstar2006: 已修改, 谢谢{/tp}

回越前リョーマ: 加了二号技能, 是非消耗道具技能, 同样需要装备二号武器和拥有二号道具

刚发现非常严重的BUG, 已修改


作者: zianyygy12    时间: 2008-9-7 13:51
顶起!
作者: 木葬枫    时间: 2009-1-3 19:18
发布完毕 VIP + 2
发布地址:  http://rpg.blue/web/htm/news1234.htm
作者: 死亡之龙    时间: 2009-1-3 19:24
提示: 作者被禁止或删除 内容自动屏蔽
作者: 涛怒    时间: 2009-3-5 05:56
提问,为什么在使用了这个脚本很所有技能都不能用的说……
作者: KEEPERESS    时间: 2009-4-10 06:54
具體要如何設置還是看不懂呢

能否給個範例
作者: as456123123    时间: 2009-5-19 00:53
  偶菜鸟      发哦范例吧  可以让偶慢慢研究     {/cy}




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