设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1934|回复: 2
打印 上一主题 下一主题

[已经解决] 如何用脚本指定某事件页的出现条件

[复制链接]

Lv1.梦旅人

梦石
0
星屑
136
在线时间
1050 小时
注册时间
2006-5-3
帖子
774
跳转到指定楼层
1
发表于 2013-7-26 21:02:51 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
@Sion
上次多亏版主和大家的帮忙,帮我解决了动态增加事件指令的问题
这次我还想问,如何动态指定某事件页的出现条件
如下图区域
因为独立开关不够用,我知道独立开关一直可以增加Z,可惜默认只提供到D
在事件页里面写if语句是不可行的,因为如果IF语句开始执行,就说明事件已经开始执行了,事件的行走图也出现了
反正一句话,只能用动态更改某事件页的出现条件
我尝试着写了下面:
这个用来指定事件1的出现条件是独立开关E打开
  1. $game_map.events[1].page[0].condition.push(RPG::Event::Page::Condition.new(self_switch_valid == "E"))
复制代码
运行的时候提示找不到page或者找不到condition,我猜大概是我的对象搞错了,希望大家能够再次指点我一下,谢谢

题外话,打开地图1,事件1的独立关E,可以用下面这个语句,这个没问题
  1. $game_self_switches[1, 1, "E"] = true
复制代码
漏夏同人
《咱的夏天》
下载地址:http://tieba.baidu.com/p/2681607456
人员招募:http://rpg.blue/thread-339747-1-1.html

Lv2.观梦者 (暗夜天使)

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

贵宾

2
发表于 2013-7-26 21:15:34 | 只看该作者
conditions_met?
从这里下手吧
读取备注,然后得到对应的开关号。
  1. def load_ex_self_switch
  2.   /(self.(\w)/ =~ @list[0].paramaters[0] if @list[0].code == 108
  3.   @your_self_switch = $1
  4. end

  5. def conditions_met?(page)
  6.   #...
  7.   return false if @your_self_switch && $game_self_switches[[@map_id, @event.id, @your_self_switch]] != true
  8.   return true
  9. end
复制代码

点评

这个匹配的是 self:E 这样的。第一行填了这个备注,独立开关E打开此页才显示。  发表于 2013-7-26 21:24
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
136
在线时间
1050 小时
注册时间
2006-5-3
帖子
774
3
 楼主| 发表于 2013-7-27 00:41:30 | 只看该作者
Sion 发表于 2013-7-26 21:15
conditions_met?
从这里下手吧
读取备注,然后得到对应的开关号。

很厉害的曲线救国法啊,不过这个是指定某事件当前页的出现条件吧,能不能指定某事件的指定页的出现条件呢

点评

condition_met? 里那个 page.list 就可以直接读取到当前页的命令。  发表于 2013-7-27 09:25
你在指定页写备注不就行了  发表于 2013-7-27 09:22
漏夏同人
《咱的夏天》
下载地址:http://tieba.baidu.com/p/2681607456
人员招募:http://rpg.blue/thread-339747-1-1.html
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-18 04:35

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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