查看: 1423|回复: 4

[已经过期] 我如果直接重新定义RMXP里的角色能力要怎么写脚本?

[复制链接]
梦石
0
星屑
9292
在线时间
2504 小时
注册时间
2011-5-20
回帖
14521

开拓者

发表于 2013-4-13 08:32:39 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
  1. module RPG
  2.   class State
  3.     def initialize
  4.       @id = 0
  5.       @name = ""
  6.       @animation_id = 0
  7.       @restriction = 0
  8.       @nonresistance = false
  9.       @zero_hp = false
  10.       @cant_get_exp = false
  11.       @cant_evade = false
  12.       @slip_damage = false
  13.       @rating = 5
  14.       @hit_rate = 100
  15.       @maxhp_rate = 100
  16.       @maxsp_rate = 100
  17.       @str_rate = 100
  18.       @dex_rate = 100
  19.       @agi_rate = 100
  20.       @int_rate = 100
  21.       @atk_rate = 100
  22.       @pdef_rate = 100
  23.       @mdef_rate = 100
  24.       [url=home.php?mod=space&uid=284635]@eva[/url] = 0
  25.       @battle_only = true
  26.       @hold_turn = 0
  27.       @auto_release_prob = 0
  28.       @shock_release_prob = 0
  29.       @guard_element_set = []
  30.       @plus_state_set = []
  31.       @minus_state_set = []
  32.     end
  33.     attr_accessor :id
  34.     attr_accessor :name
  35.     attr_accessor :animation_id
  36.     attr_accessor :restriction
  37.     attr_accessor :nonresistance
  38.     attr_accessor :zero_hp
  39.     attr_accessor :cant_get_exp
  40.     attr_accessor :cant_evade
  41.     attr_accessor :slip_damage
  42.     attr_accessor :rating
  43.     attr_accessor :hit_rate
  44.     attr_accessor :maxhp_rate
  45.     attr_accessor :maxsp_rate
  46.     attr_accessor :str_rate
  47.     attr_accessor :dex_rate
  48.     attr_accessor :agi_rate
  49.     attr_accessor :int_rate
  50.     attr_accessor :atk_rate
  51.     attr_accessor :pdef_rate
  52.     attr_accessor :mdef_rate
  53.     attr_accessor :eva
  54.     attr_accessor :battle_only
  55.     attr_accessor :hold_turn
  56.     attr_accessor :auto_release_prob
  57.     attr_accessor :shock_release_prob
  58.     attr_accessor :guard_element_set
  59.     attr_accessor :plus_state_set
  60.     attr_accessor :minus_state_set
  61.   end
  62. end
复制代码
  1. module RPG
  2.   class Actor
  3.     def initialize
  4.       @id = 0
  5.       @name = ""
  6.       @class_id = 1
  7.       @initial_level = 1
  8.       @final_level = 99
  9.       @exp_basis = 30
  10.       @exp_inflation = 30
  11.       @character_name = ""
  12.       @character_hue = 0
  13.       @battler_name = ""
  14.       @battler_hue = 0
  15.       @parameters = Table.new(6,100)
  16.       for i in 1..99
  17.         @parameters[0,i] = 500+i*50
  18.         @parameters[1,i] = 500+i*50
  19.         @parameters[2,i] = 50+i*5
  20.         @parameters[3,i] = 50+i*5
  21.         @parameters[4,i] = 50+i*5
  22.         @parameters[5,i] = 50+i*5
  23.       end
  24.       @weapon_id = 0
  25.       @armor1_id = 0
  26.       @armor2_id = 0
  27.       @armor3_id = 0
  28.       @armor4_id = 0
  29.       @weapon_fix = false
  30.       @armor1_fix = false
  31.       @armor2_fix = false
  32.       @armor3_fix = false
  33.       @armor4_fix = false
  34.     end
  35.     attr_accessor :id
  36.     attr_accessor :name
  37.     attr_accessor :class_id
  38.     attr_accessor :initial_level
  39.     attr_accessor :final_level
  40.     attr_accessor :exp_basis
  41.     attr_accessor :exp_inflation
  42.     attr_accessor :character_name
  43.     attr_accessor :character_hue
  44.     attr_accessor :battler_name
  45.     attr_accessor :battler_hue
  46.     attr_accessor :parameters
  47.     attr_accessor :weapon_id
  48.     attr_accessor :armor1_id
  49.     attr_accessor :armor2_id
  50.     attr_accessor :armor3_id
  51.     attr_accessor :armor4_id
  52.     attr_accessor :weapon_fix
  53.     attr_accessor :armor1_fix
  54.     attr_accessor :armor2_fix
  55.     attr_accessor :armor3_fix
  56.     attr_accessor :armor4_fix
  57.   end
  58. end
复制代码
要给角色添加新的属性类型要从状态那加还是从角色那加?
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
梦石
0
星屑
50
在线时间
193 小时
注册时间
2013-3-24
回帖
427
发表于 2013-4-13 09:06:54 | 显示全部楼层
是要從Game_Battler裡面改,不是Game_Actor

评分

参与人数 1星屑 +20 收起 理由
hcm + 20 感谢回答

查看全部评分

回复

使用道具 举报

梦石
0
星屑
9292
在线时间
2504 小时
注册时间
2011-5-20
回帖
14521

开拓者

 楼主| 发表于 2013-4-13 11:20:12 | 显示全部楼层
joe5491 发表于 2013-4-13 09:06
是要從Game_Battler裡面改,不是Game_Actor

我是要加新的角色能力种类···gamebattler又要怎么弄?
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复

使用道具 举报

双子人

梦石
0
星屑
3205
在线时间
3619 小时
注册时间
2009-4-4
回帖
3901

开拓者

发表于 2013-4-13 13:26:38 | 显示全部楼层
这些还需要在Game_Actor里面添加吧。

设置在attr_accessor那里。

然后def setup(actor)那里也需要修改,

假如你在RPG::Actor那里添加了一个zero_hp
在Game_Actor的def setup那里加一个@zero_hp = actor.zero_hp。

评分

参与人数 1星屑 +66 收起 理由
hcm + 66 感谢回答

查看全部评分

回复

使用道具 举报

梦石
0
星屑
9292
在线时间
2504 小时
注册时间
2011-5-20
回帖
14521

开拓者

 楼主| 发表于 2013-4-13 13:53:17 | 显示全部楼层
hys111111 发表于 2013-4-13 13:26
这些还需要在Game_Actor里面添加吧。

设置在attr_accessor那里。

比如说?举个例子···我刚才试着加了一个但是只要一执行就会出错···
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部