赞 | 5 |
VIP | 359 |
好人卡 | 195 |
积分 | 3 |
经验 | 560179 |
最后登录 | 2024-11-20 |
在线时间 | 1374 小时 |
Lv2.观梦者
- 梦石
- 0
- 星屑
- 280
- 在线时间
- 1374 小时
- 注册时间
- 2005-10-16
- 帖子
- 5113
|
本帖最后由 亿万星辰 于 2011-10-8 09:55 编辑
- Class Game_Party
- #--------------------------------------------------------------------------
- # ● 加入同伴
- # actor_id : 角色 ID
- #--------------------------------------------------------------------------
- def add_actor(actor_id)
- # 获取角色
- actor = $game_actors[actor_id]
- # 同伴人数未满 4 人、本角色不在队伍中的情况下
- if @actors.size < 4 and not @actors.include?(actor)
- # 添加角色
- @actors.push(actor)
- # 还原主角
- $game_player.refresh
- end
- check_gold
- end
- #--------------------------------------------------------------------------
- # ● 角色离开
- # actor_id : 角色 ID
- #--------------------------------------------------------------------------
- def remove_actor(actor_id)
- # 删除角色
- @actors.delete($game_actors[actor_id])
- # 还原主角
- $game_player.refresh
- check_gold
- end
- #--------------------------------------------------------------------------
- # ● 检查
- #--------------------------------------------------------------------------
- def check_gold
- return if @actors.empty?
- maxlevel = @actors.sort{|a,b|b.level - a.level}[0].level
- @gold = [@gold, maxlevel * (maxlevel * 2000)].min
- end
- #--------------------------------------------------------------------------
- # ● 增加金钱 (减少)
- # n : 金额
- #--------------------------------------------------------------------------
- def gain_gold(n)
- @gold = [[@gold + n, 0].max, 9999999].min
- check_gold
- end
- end
- class Game_Actor
- #--------------------------------------------------------------------------
- # ● 更改 EXP
- # exp : 新的 EXP
- #--------------------------------------------------------------------------
- def exp=(exp)
- @exp = [[exp, 9999999].min, 0].max
- # 升级
- while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0
- @level += 1
- # 学会特技
- for j in $data_classes[@class_id].learnings
- if j.level == @level
- learn_skill(j.skill_id)
- end
- end
- end
- # 降级
- while @exp < @exp_list[@level]
- @level -= 1
- end
- # 修正当前的 HP 与 SP 超过最大值
- @hp = [@hp, self.maxhp].min
- @sp = [@sp, self.maxsp].min
- $game_party.check_gold
- end
- #--------------------------------------------------------------------------
- # ● 更改等级
- # level : 新的等级
- #--------------------------------------------------------------------------
- def level=(level)
- # 检查上下限
- level = [[level, $data_actors[@actor_id].final_level].min, 1].max
- # 更改 EXP
- self.exp = @exp_list[level]
- $game_party.check_gold
- end
- end
复制代码 忙里偷闲过来写了一个,没测试~
至于提示,在得到金钱的事件操作中处理吧~ |
|