Project1

标题: 随等级改怪物属性脚本问题 [打印本页]

作者: cmbljsw    时间: 2008-2-3 00:16
标题: 随等级改怪物属性脚本问题
  1. #===============================================================
  2. # 本脚本来自www.66rpg.com
  3. # 功能:Game_Enemy里加入了敌人等级的设定
  4. #===============================================================
  5. #==============================================================================
  6. # 本脚本来自www.66rpg.com,使用前请参考制作录像
  7. #==============================================================================
  8. # ■ Game_Enemy
  9. #------------------------------------------------------------------------------
  10. #  处理敌人的类。本类在 Game_Troop 类 ($game_troop) 的
  11. # 内部使用。
  12. #==============================================================================
  13. $a1 = rand(10)    #更改能力用的随机数变量
  14. $a2 = 0     #更改能力用的随机数变量
  15. $a3 = 0     #更改能力用的随机数变量
  16. class Game_Enemy < Game_Battler
  17. attr_accessor   :level                    # 水平
  18. #--------------------------------------------------------------------------
  19. # ● 初始化对像
  20. #     troop_id     : 循环 ID
  21. #     member_index : 循环成员的索引
  22. #--------------------------------------------------------------------------
  23. def initialize(troop_id, member_index)
  24.    super()
  25.    @troop_id = troop_id
  26.    @member_index = member_index
  27.    troop = $data_troops[@troop_id]
  28.    @enemy_id = troop.members[@member_index].enemy_id
  29.    enemy = $data_enemies[@enemy_id]
  30.       
  31.    
  32.    @level = 1                  #初始等级的设定
  33.    

  34.    @battler_name = enemy.battler_name
  35.    @battler_hue = enemy.battler_hue
  36.    @hp = maxhp
  37.    @sp = maxsp
  38.    @hidden = troop.members[@member_index].hidden
  39.    @immortal = troop.members[@member_index].immortal
  40. end


  41. #--------------------------------------------------------------------------
  42. # ● 更改水品
  43. #     level : 新的等级
  44. #--------------------------------------------------------------------------
  45. def level
  46.    return @level
  47. end


  48. #--------------------------------------------------------------------------
  49. # ● 获取敌人 ID
  50. #--------------------------------------------------------------------------
  51. def id
  52.    return @enemy_id
  53. end
  54. #--------------------------------------------------------------------------
  55. # ● 获取索引
  56. #--------------------------------------------------------------------------
  57. def index
  58.    return @member_index
  59. end
  60. #--------------------------------------------------------------------------
  61. # ● 获取名称
  62. #--------------------------------------------------------------------------
  63. def name
  64.    return $data_enemies[@enemy_id].name
  65. end
  66. #--------------------------------------------------------------------------
  67. # ● 获取基本 MaxHP
  68. #--------------------------------------------------------------------------
  69. def base_maxhp
  70.    return ($data_enemies[@enemy_id].maxhp + $a1) * @level
  71. end
  72. #--------------------------------------------------------------------------
  73. # ● 获取基本 MaxSP
  74. #--------------------------------------------------------------------------
  75. def base_maxsp
  76.    return ($data_enemies[@enemy_id].maxsp + $a1) * @level
  77. end
复制代码

以上是脚本一部分……
我在队伍中加了 $game_troop.enemies[0].level = 10
结果MAX HP和MAX SP不变,就变属性……
作者: 水迭澜    时间: 2008-2-3 00:17
……那问题是什么?
作者: cmbljsw    时间: 2008-2-3 00:24
我在队伍中加了 $game_troop.enemies[0].level = 10
结果MAX HP和MAX SP不变,就变属性……

就是没有变 HP和SP,改一下午了,我累趴……
作者: 天圣的马甲    时间: 2008-2-3 03:25
给敌人全体回复把血补满了吗?$a1这个参数有没有设置成常量看看?
不行的话看这里,Sailcat大的方法可不可行。
http://rpg.blue/viewthread.php?tid=36685&page=1
作者: cmbljsw    时间: 2008-2-3 03:55
HP和SP时 @a1 这个是可以,但是*level却不可以……
作者: 天圣的马甲    时间: 2008-2-3 03:57
实在不行把level当作全局变量来弄吧……把@level改成$level看看{/gg}
作者: cmbljsw    时间: 2008-2-3 04:25
以下引用天圣的马甲于2008-2-2 19:57:16的发言:

实在不行把level当作全局变量来弄吧……把@level改成$level看看

改了之后……完全……用不了……
作者: 天圣的马甲    时间: 2008-2-3 04:38
倒,继承了Game_Battler难怪……
唉……不行的话就直接给变量$a1这个参数赋值角色等级相关参数吧= =
作者: cmbljsw    时间: 2008-2-3 04:40
以下引用天圣的马甲于2008-2-2 20:38:54的发言:

倒,继承了Game_Battler难怪……
唉……不行的话就直接给变量$a1这个参数赋值角色等级相关参数吧= =

额……不知道能不能让$a1 = level * 最大HP
作者: Eclair    时间: 2008-2-3 04:54
提示: 作者被禁止或删除 内容自动屏蔽
作者: cmbljsw    时间: 2008-2-3 04:56
回LS……偶……说了……拜托……是一部分……
作者: 天圣的马甲    时间: 2008-2-3 04:56
哈?我又误导了?看来凌晨5点回答问题果然毫无效率……脑子一团浆糊……
去睡觉补充精力……
PS:如果是因为缺少End出错应该直接S打头的Error吧……
作者: Eclair    时间: 2008-2-3 04:58
提示: 作者被禁止或删除 内容自动屏蔽
作者: cmbljsw    时间: 2008-2-3 05:15
不是的……属性会变……但是HP和SP的最大值不能用LEVEL变

作者: TERENCE    时间: 2008-2-3 06:22
在队伍的事件设置里,
你是不是忘了加上敌人完全回复:全体队伍!

作者: cmbljsw    时间: 2008-2-3 16:43
回LS这个貌似米关哦,因为$a1起了作用,但是乘level却起不上加HP和SP的作用。{/gg}




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