查看: 3190|回复: 17

[已经解决] “暂时消除事件” 这个功能在脚本中要怎么写?

[复制链接]
梦石
0
星屑
50
在线时间
39 小时
注册时间
2013-2-2
回帖
49
发表于 2013-7-26 21:37:16 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 xiaoxin3357 于 2013-7-26 22:36 编辑

然后我其实不懂脚本,事件页里面的是根据以前的编程经验写的,暂时消除事件那句代码是复制来的,但是不知道对不对。


顺便问一下功能的可行性,我是这么想的,主角按Z键攻击,如果怪物被攻击到则退一步然后扣血,但是没有进入战斗系统,肯定是没办法给怪物扣减血量的。

所以我想定义一个临时变量,再每次攻击后减少这个变量的值,到底负数后暂时消除事件。

事件页是这么写的,第二页的脚本会直接报错。
然后我有三个疑问:
1:第一页事件页定义的变量第二页能直接读取到码?
2:本事件定义的变量,其他事件能读取到吗?
3:怎么弄临时变量,只能在当前事件内使用的变量,这样我做好一个怪物的事件,其他的就可以复制粘贴了
2.JPG
1.JPG
梦石
0
星屑
266
在线时间
2355 小时
注册时间
2009-3-13
回帖
2257

贵宾

发表于 2013-7-26 21:38:45 | 显示全部楼层
本帖最后由 Sion 于 2013-7-26 21:41 编辑

消除本事件
  1. get_character(0).erase
复制代码
事件内变量的话
在事件中定义
  1. class Game_Event
  2.   attr_accessor :your_variable
  3. end
复制代码
然后在事件里用
  1. get_character(0).your_variable = xxx
复制代码
就可以对本事件内的变量赋值了。

点评

就是实例变量  发表于 2013-7-27 09:38
简体好像翻成"独立变量"?  发表于 2013-7-26 22:59
冒昧問一下,我可以把這個視為自用變量嗎?  发表于 2013-7-26 22:54
your_variable 可以替换成你喜欢的,小写字母或者下划线开头就行。  发表于 2013-7-26 21:43
回复

使用道具 举报

梦石
0
星屑
50
在线时间
39 小时
注册时间
2013-2-2
回帖
49
 楼主| 发表于 2013-7-26 21:49:08 | 显示全部楼层
Sion 发表于 2013-7-26 21:38
消除本事件事件内变量的话
在事件中定义然后在事件里用就可以对本事件内的变量赋值了。 ...

如果变量小于0  暂时消除事件
这个怎么写?我现在是
get_character(0).monsterHP -=20

if get_character(0).monsterHP<=0

get_character(0).erase

end

但是报错

点评

报的什么错?  发表于 2013-7-26 21:55
回复

使用道具 举报

梦石
0
星屑
50
在线时间
39 小时
注册时间
2013-2-2
回帖
49
 楼主| 发表于 2013-7-26 22:00:27 | 显示全部楼层
Sion 发表于 2013-7-26 21:38
消除本事件事件内变量的话
在事件中定义然后在事件里用就可以对本事件内的变量赋值了。 ...

E.JPG

这样的错误

点评

你的脚本改过了吧。  发表于 2013-7-26 22:10
回复

使用道具 举报

梦石
0
星屑
266
在线时间
2355 小时
注册时间
2009-3-13
回帖
2257

贵宾

发表于 2013-7-26 22:12:47 | 显示全部楼层
1.png
我这样写没问题啊
回复

使用道具 举报

梦石
0
星屑
50
在线时间
39 小时
注册时间
2013-2-2
回帖
49
 楼主| 发表于 2013-7-26 22:19:58 | 显示全部楼层
Sion 发表于 2013-7-26 22:12
我这样写没问题啊

1.JPG


事件是这样写的,一个事件里,两个事件页
回复

使用道具 举报

梦石
0
星屑
266
在线时间
2355 小时
注册时间
2009-3-13
回帖
2257

贵宾

发表于 2013-7-26 22:21:20 | 显示全部楼层
....那个
  1. class Game_Event
  2.   attr_accessor :your_variable
  3. end
复制代码
当插件脚本,放在Main前使用。

评分

参与人数 1赞 +1 收起 理由
Vortur + 1 哈哈哈...

查看全部评分

回复 1 0

使用道具 举报

梦石
0
星屑
50
在线时间
39 小时
注册时间
2013-2-2
回帖
49
 楼主| 发表于 2013-7-26 22:35:38 | 显示全部楼层
Sion 发表于 2013-7-26 22:21
....那个当插件脚本,放在Main前使用。

额...这次OK了...原来声明变量要放在插件脚本里...

点评

4.用“$game_map.events[1].reset_battler”重置怪物  发表于 2017-10-18 19:20
3.可以用事件脚本“get_character(0).battler.hp -= 1”、“$game_map.events[编号].battler.hp -= 1”等语句操作事件的hp  发表于 2017-10-18 19:19
2.“Game_Event”的“initialize”方法中,添加“reset_battler”语句  发表于 2017-10-18 19:16
我有个更好用的:1.在“Game_Event”中,添加方法 def reset_battler;@battler = Game_Enemy.new(1, enemy_id) if enemy_id != nil;end  发表于 2017-10-18 19:15
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部