Project1

标题: 45度回合战斗如何实现角色死亡几回合后自动复活 [打印本页]

作者: 578783944    时间: 2015-4-18 11:08
标题: 45度回合战斗如何实现角色死亡几回合后自动复活
45度回合战斗如何实现角色死亡几回合后自动复活

类似梦幻西游里面的鬼魂术,人物死亡几回合后可以复活
作者: 578783944    时间: 2015-4-18 12:13
我想把他做成被动技能
该怎么做
作者: 夕仔    时间: 2015-4-18 18:08
有了 弄一个特殊的死亡状态
作者: 汪汪    时间: 2015-4-18 20:03

额,1号战斗不能,2号复活之力,有此状态的可以复活,3号准备复活,在状态解除那里设置上几回合自动解除。
  1. class Game_Battler
  2.     def remove_states_auto
  3.     for i in @states_turn.keys.clone

  4.       if @states_turn[i] > 0
  5.         @states_turn[i] -= 1
  6.       elsif rand(100) < $data_states[i].auto_release_prob
  7.         remove_state(i)
  8.         remove_state(1)  if i == 3 #当状态3自动解除时解除状态1,这里可以添加生命操作,大概是 self.hp=self.maxhp
  9.         self.hp = self.maxhp if i == 3
  10.       end
  11.     end
  12.   end
  13. end

  14. class Scene_Battle
  15.   def update_phase4
  16.     fuhuo#额,随便找了一个一直会调用的方法update_phase4加进去了。其实只要总是调用就可以。
  17.     case @phase4_step
  18.     when 1
  19.       update_phase4_step1
  20.     when 2
  21.       update_phase4_step2
  22.     when 3
  23.       update_phase4_step3
  24.     when 4
  25.       update_phase4_step4
  26.     when 5
  27.       update_phase4_step5
  28.     when 6
  29.       update_phase4_step6
  30.     end
  31.   end
  32.   
  33.   
  34.   def fuhuo#额,有状态1和2时添加状态3
  35.     for i in 0...$game_party.actors.size
  36.       if $game_party.actors[i].state?(2) and
  37.         $game_party.actors[i].state?(1) and
  38.         !$game_party.actors[i].state?(3)
  39.         $game_party.actors[i].add_state(3)
  40.       end
  41.     end
  42.     for i in 0...$game_troop.enemies.size
  43.       if $game_troop.enemies[i].state?(2) and
  44.         $game_troop.enemies[i].state?(1) and
  45.         !$game_troop.enemies[i].state?(3)
  46.         $game_troop.enemies[i].add_state(3)
  47.       end
  48.     end
  49.   end
  50. end


复制代码

Project19.zip

201.05 KB, 下载次数: 48

例子






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