Project1

标题: 关于药的问题 [打印本页]

作者: 问客007    时间: 2008-7-17 19:55
提示: 作者被禁止或删除 内容自动屏蔽
作者: tyfrank9711    时间: 2008-7-17 21:04
当血满的时候还要补吗?还是一定时间内补完?还是根据血的多少来决定的?
作者: 浪使者    时间: 2008-7-17 23:27
VX有现成的 防具属性 可以选择这个自动回复功能。
但你说的这个物品自动回复,貌似没有现成的脚本。。而且这个功能做起来有点复杂。。。

用脚本的方法(给出部分参考脚本):
需要def 一个 item 项目,
def do_auto_recovery
    if auto_hp_recover and not dead?
      self.hp += maxhp / 20
    end
  end

def auto_hp_recover
    for item in $game_party.items
      return true if item.auto_hp_recover
    end
    return false
  end

########################################

用事件的方法(以主角为例,可扩展):
设置一个变量,用于储值可自动加血量,获取主角hp变量。
使用多重条件分歧:
当队伍拥有该物品时,且主角hp<0
该物品变量-1,主角hp+1  
当主角hp变量=主角hp max值时,该物品变量无变化,
当该物品变量=0 该物品-1 消失。
不全。。待续

对于特殊脚本,100分的话就这些了,欢迎高手继续。。。

作者: 火鸡三毛老大    时间: 2008-7-17 23:42
  1. #===============================================================================
  2. #战斗后回复HP
  3. #===============================================================================
  4. class Game_Battler
  5.   def remove_states_battle
  6.     for state in states
  7.       remove_state(state.id) if state.battle_only
  8.     end
  9.     n = maxhp * 100         #战斗后回复的HP百分比
  10.     n /= 100
  11.     self.hp += n
  12.   end
  13. end
复制代码

战斗后回复HP、MP 默认是100%
修改:
    n = maxhp * 100         #战斗后回复的HP百分比
这行的数值即可

当然
物品发的这个不符合你的要求
你可以用变量完成这样功能 [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~




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