Project1

标题: 抱歉請問在事件如何用腳本轉移場景而且用變數決定?(FOR XP) [打印本页]

作者: sdgn    时间: 2018-1-7 18:47
标题: 抱歉請問在事件如何用腳本轉移場景而且用變數決定?(FOR XP)
本帖最后由 sdgn 于 2018-1-7 23:33 编辑

意思是說我想用事件腳本來做場景(地圖)移動~
而要移動到哪一個場景由變數決定~ 不使用 IF 或 CASE這類判斷式...
而場景名稱固定用 OOO+數字~ 數字部份就是用來決定轉移對象的~
也就是用的時候腳本是要轉移到名稱是 OOO+變量 的地圖(場景)...
這個方法如何決定主角進入後的位置?

又如果要寫到完整腳本的話怎麼寫?
作者: guoxiaomi    时间: 2018-1-7 19:10
本帖最后由 guoxiaomi 于 2018-1-7 19:13 编辑

首先读取 MapInfos.rxdata 获得 id => name 数组用于查找 id
查找到 id 后存到某一个变量里,然后调用事件”场所移动“

  1. $map_infos ||= load_data("Data/MapInfos.rxdata")
  2. map_name = 'OOO_01'
  3. id = $map_infos.find{|i| i.name == map_name}
  4. ...
复制代码

作者: guoxiaomi    时间: 2018-1-8 01:13
本帖最后由 guoxiaomi 于 2018-1-8 01:14 编辑

首先你要确定是01还是1,这个决定了sprintf的格式

  1. $map_infos ||= load_data("Data/MapInfos.rxdata")
  2. map_name = sprintf("OOO_%02d", $game_variables[10])
  3. id = $map_infos.find{|i| i.name == map_name}
  4. $game_variables[11] = id
复制代码


事件本来就可以用变量指定地图ID和目标位置(x, y)
作者: sdgn    时间: 2018-1-8 07:37
本帖最后由 sdgn 于 2018-1-8 08:15 编辑
guoxiaomi 发表于 2018-1-8 01:13
首先你要确定是01还是1,这个决定了sprintf的格式


ㄚㄚ沒事了~ 抱歉~
事件本身就能做了
作者: sdgn    时间: 2018-1-8 19:21
阿不行... 我還是有需要用腳本做
[設定要去的場景ID(由變數決定) 設定角色要顯示的位置 然後轉移場景]




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