Project1
标题:
[幫人問]事件位置問題
[打印本页]
作者:
sdgn
时间:
2021-8-12 19:48
标题:
[幫人問]事件位置問題
網友的檔案中 對於位移事件... 他朋友測試離開該場景在回去那個場景後該事件回到初始位置...
但他說他是要事件(例如箱子或雕像)移動後始終保持在移動後的位置 (就算離開該場景到其他任何場景後又回去也要如此);
請問如何解?
作者:
shencao
时间:
2021-8-12 19:48
我用的这个
https://rpg.blue/thread-230430-1-1.html
作者:
alexncf125
时间:
2021-8-12 22:45
本帖最后由 alexncf125 于 2021-8-12 22:47 编辑
P1搜諸如记忆事件位置的字眼
作者:
云鸟
时间:
2021-8-12 22:51
本帖最后由 云鸟 于 2021-8-12 22:52 编辑
啊
我有个方法,但是比较傻瓜(
就是记录事件(纯事件)
已经删除dll,自行添加
Project1.rar
(299.54 KB, 下载次数: 12)
2021-8-12 22:51 上传
点击文件名下载附件
就是这个
作者:
yaminolancelot
时间:
2021-8-12 23:00
事件名改成preserve即可保存
class << DataManager
alias yami_create_game_objects create_game_objects
alias yami_make_save_contents make_save_contents
alias yami_extract_save_contents extract_save_contents
def create_game_objects
$YAMI_PRESERVED_EVENTS = {}
yami_create_game_objects
end
def make_save_contents
contents = yami_make_save_contents
contents[:YAMI_PRESERVED_EVENTS] = $YAMI_PRESERVED_EVENTS
contents
end
def extract_save_contents(contents)
yami_extract_save_contents(contents)
$YAMI_PRESERVED_EVENTS = contents[:YAMI_PRESERVED_EVENTS]
end
end
class Game_Map
attr_reader :map
end
class Scene_Map
alias yami_pre_transfer pre_transfer
alias yami_post_transfer post_transfer
def pre_transfer
$game_map.events.each_value do |e|
if $game_map.map.events[e.id].name.include?("preserve")
$YAMI_PRESERVED_EVENTS[[$game_map.map_id,e.id]] = [e.x,e.y]
end
end
yami_pre_transfer
end
def post_transfer
$YAMI_PRESERVED_EVENTS.each_pair do |k, v|
if $game_map.map_id == k[0]
$game_map.events[k[1]].moveto(v[0], v[1])
end
end
yami_post_transfer
end
end
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1