赞 | 1 |
VIP | 0 |
好人卡 | 0 |
积分 | 92 |
经验 | 0 |
最后登录 | 2024-10-20 |
在线时间 | 466 小时 |
Lv4.逐梦者
- 梦石
- 0
- 星屑
- 9163
- 在线时间
- 466 小时
- 注册时间
- 2015-5-8
- 帖子
- 866
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 taeckle 于 2021-12-11 19:44 编辑
咱目前知道可以用 def 方法名 end 或者 def 方法名(参数) end 定义一个方法,不过最近读某位远古大神的代码发现了个 def 方法名=(***) end 定义了一个方法, 比如这个技能等级脚本里的def level=(new_level):
- class ActorSkill
- attr_accessor :use_cnt # スキル使用回数
- attr_accessor :level # スキルレベル
- attr_accessor :exp_list # スキルEXPリスト
- #--------------------------------------------------------------------------
- # ● オブジェクト初期化
- #--------------------------------------------------------------------------
- def initialize(skill_id, actor_id)
- @skill_id = skill_id
- @actor_id = actor_id
- @use_cnt = 0
- @level = 1
- @hit = $data_skills[skill_id].hit
- @exp_list = SkillUpdate.make_skill_list(skill_id, actor_id)
- end
- def reset_use
- @use_cnt = @exp_list[@level]
- end
- def level=(new_level)
- return if new_level > SkillUpdate.skill_limit_lv(@skill_id, @actor_id)
- return if new_level < 1
- @level = new_level
- reset_use
- end
- end
复制代码
这里def level=(new_level)的“=”是什么意思呢?
还请大家多多指教,多谢了! |
|