Project1

标题: 如何判断当前地图存在着某个ID编号的事件? [打印本页]

作者: 水晶凌    时间: 2008-3-19 21:16
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水迭澜    时间: 2008-3-19 21:29
if $game_map.events.include?(ID号)
这样行吗……

作者: 水晶凌    时间: 2008-3-19 21:40
提示: 作者被禁止或删除 内容自动屏蔽
作者: 禾西    时间: 2008-3-19 21:49
不要搜索全部事件頁……(想起某個天兵腳本)
單獨搜索第一行好了。
for event in $game_map.events.values
  return true if event.list[0].parameters[0] == "??"
end
作者: 水晶凌    时间: 2008-3-19 22:02
提示: 作者被禁止或删除 内容自动屏蔽
作者: 禾西    时间: 2008-3-19 22:11
漏掉end一個
$game_switches[1] = true下面要加
break
作者: wy29    时间: 2008-3-19 22:12
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 22:14
提示: 作者被禁止或删除 内容自动屏蔽
作者: 禾西    时间: 2008-3-19 22:17
真的忘記了……==|||

搜索全部事件全部頁全部行消耗很多時間……反正自己留意一下把注釋寫第一行就不要浪費太多動作。

所以把wy29和我的綜合一下吧。
作者: 精灵使者    时间: 2008-3-19 22:19
以下引用水晶凌于2008-3-19 14:14:33的发言:

我以前都是这样判断的啊,没有出错过!
if $game_switches[2] == true
$game_switches[1] = true
else
$game_switches[1] = false
end
以下引用禾西于2008-3-19 14:11:52的发言:

漏掉end一個
$game_switches[1] = true下面要加
break

禾西似乎不懂这个判断方法……
if a
b
else
c
end
这个就是说,如果判断a表达式成立的话就执行b,不成立的话就执行c
就好比事件
条件分歧:a成立时候
b
除此以外的场合
c
分歧结束

另外,如果判断结果为true和false的话,那么 == true和 == false可以不用写,== true可以直接去掉,== false 这个去掉以后前面加!
例如
if a 这个相当于 a == true
if !a 这个相当于 if a == false
作者: wy29    时间: 2008-3-19 22:21
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 22:21
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 22:24
提示: 作者被禁止或删除 内容自动屏蔽
作者: 精灵使者    时间: 2008-3-19 22:25
以下引用wy29于2008-3-19 14:21:11的发言:

禾西加break的意思是:
因为我们一个event一个的查,
如果某个event没有,switch就等于false。

假如某个event有,switch就等于true。
不过,下一个event如果没有,switch又会等于false。
因此要break。

另一个方法就是:
一开始switch默认为false,
如果某个event有,switch就等于true。
下一个event如果没有,switch不会变。

对吧?

一般寻找这个我都用后面一种,是否存在的时候默认为不存在,只有存在的时候才改变值。
作者: 禾西    时间: 2008-3-19 22:27
不對不對……wy29在誤導我。地圖事件是沒有pages的!!!!
去掉那個循環才能使用。

另外……我本來寫的不就是
××× if ×××嗎……==|||
作者: wy29    时间: 2008-3-19 22:33
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 22:38
提示: 作者被禁止或删除 内容自动屏蔽
作者: 沉影不器    时间: 2008-3-19 22:39
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 22:43
提示: 作者被禁止或删除 内容自动屏蔽
作者: 禾西    时间: 2008-3-19 22:48
地圖事件也是沒有pages的
因爲:
Game_Map
line:75
    for i in @map.events.keys
      @events = Game_Event.new(@map_id, @map.events)
    end

pages的處理已經在Game_Event腳本當中進行了。所以地圖事件其實是Game_Event不是數據庫我們最初設定的Event
作者: wy29    时间: 2008-3-19 22:49
提示: 作者被禁止或删除 内容自动屏蔽
作者: 禾西    时间: 2008-3-19 22:51
這樣寫就對了……
for event in $game_map.events.values
  $game_switches[1] = true if event.list[0].parameters[0] == "soul"
end

wy29看我上面的回復。
作者: 水晶凌    时间: 2008-3-19 22:55
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 22:59
提示: 作者被禁止或删除 内容自动屏蔽
作者: 沉影不器    时间: 2008-3-19 23:03
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 23:05
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 23:06
提示: 作者被禁止或删除 内容自动屏蔽
作者: 禾西    时间: 2008-3-19 23:06
只負責回答問題
for event in $game_map.events.values
if event.list[0].parameters[0] == "soul"
$game_switches[1] = true
??? = event.id
end
end

作者: 沉影不器    时间: 2008-3-19 23:09
提示: 作者被禁止或删除 内容自动屏蔽
作者: wy29    时间: 2008-3-19 23:21
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 23:21
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 23:29
提示: 作者被禁止或删除 内容自动屏蔽
作者: wy29    时间: 2008-3-19 23:32
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 23:49
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-19 23:57
提示: 作者被禁止或删除 内容自动屏蔽
作者: wy29    时间: 2008-3-20 00:02
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-3-20 00:17
提示: 作者被禁止或删除 内容自动屏蔽
作者: wy29    时间: 2008-3-20 07:24
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1