幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1416|回复: 8

[RM2K&2K3] 请教关于事件名字的修改

[复制链接]

40

主题

190

帖子

1635

积分

⑥精研

●~  ●~   ●

积分
1635
发表于 2009-6-24 09:39:35 | 显示全部楼层 |阅读模式
1号事件的名称叫做“敌人1,1200”,然后在游戏中主角对它按决定键,就让数值1200减去一号角色的攻击力$game_party.actors[
0].atk

比如说:
如果一号角色攻击力为200,对1号事件按一次决定键,该事件的名称就改为“敌人1,1000”,再按一次变成“敌人1,800”。

如果攻击力为500,按一次决定键,该事件的名称就改为“敌人1,700”,再按一次变成“敌人1,200”。。。这个如何实现?
回复

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-6-24 10:04:20 | 显示全部楼层
给事件Game_Event的 弄个实例变量 @name
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

40

主题

190

帖子

1635

积分

⑥精研

●~  ●~   ●

积分
1635
 楼主| 发表于 2009-6-24 10:09:42 | 显示全部楼层
请问具体怎么弄实例变量啊??
回复 支持 反对

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-6-24 10:11:51 | 显示全部楼层
不用那么麻烦


  def hp(num)
    temp = @event.name.split(/./)
    @event.name = temp[0] + (temp[1].to_i - num).to_s
  end

放到Game_event中

调用方法  $game_map.events[编号].hp(要减去的差值,可以使负数,负的就是加血)
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

40

主题

190

帖子

1635

积分

⑥精研

●~  ●~   ●

积分
1635
 楼主| 发表于 2009-6-24 10:31:28 | 显示全部楼层
放到Game_event中去了
事件里调用方法:比如减50血,这样写?             $game_map.events[1].hp(50)


结果对事件按决定键出错了:脚本 Game_Event 的75行发生了 NoMethodError        undefined method "+" for nil:NilClass



75行:      @event.name = temp[0] + (temp[1].to_i - num).to_s
回复 支持 反对

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-6-24 10:42:39 | 显示全部楼层
事件的名字是

XXX.数字    吗?

分隔符是一个“.”
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

40

主题

190

帖子

1635

积分

⑥精研

●~  ●~   ●

积分
1635
 楼主| 发表于 2009-6-24 10:47:04 | 显示全部楼层
事件的名字是          敌人1,1500         中间是个逗号,不过我把事件名改成        敌人1.1500      也一样出错




另外脚本加在 暂时消失 下面没问题吧?
  #--------------------------------------------------------------------------
  # ● 暂时消失
  #--------------------------------------------------------------------------
  def erase
    @erased = true
    refresh
  end
   

  def hp(num)
    temp = @event.name.split(/./)
    @event.name = temp[0] + (temp[1].to_i - num).to_s
  end  
回复 支持 反对

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-6-24 10:49:11 | 显示全部楼层
def hp(num)
    temp = @event.name.split('.')
    @event.name = temp[0] + "." + (temp[1].to_i - num).to_s
  end

我写的使用句号分隔,你要是用逗号的话,就把脚本split('.')中的句号改成逗号就可以了


另外,放在哪里都可以。。。。。只要是Game_Event就可以
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

40

主题

190

帖子

1635

积分

⑥精研

●~  ●~   ●

积分
1635
 楼主| 发表于 2009-6-24 11:03:56 | 显示全部楼层
好像解决了~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-5-18 17:09 , Processed in 0.029354 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表