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

Project1

 找回密码
 注册会员
搜索
查看: 201|回复: 4

[已经解决] [幫人問]事件位置問題

[复制链接]

Lv3.寻梦者

梦石
0
星屑
2370
在线时间
959 小时
注册时间
2011-12-18
帖子
1090
发表于 2021-8-12 19:48:02 | 显示全部楼层 |阅读模式
100星屑
網友的檔案中 對於位移事件... 他朋友測試離開該場景在回去那個場景後該事件回到初始位置...
但他說他是要事件(例如箱子或雕像)移動後始終保持在移動後的位置 (就算離開該場景到其他任何場景後又回去也要如此);
請問如何解?

最佳答案

查看完整内容

我用的这个 https://rpg.blue/thread-230430-1-1.html

Lv4.逐梦者 (暗夜天使)

梦石
1
星屑
13882
在线时间
4392 小时
注册时间
2014-12-22
帖子
1453

开拓者

发表于 2021-8-12 19:48:03 | 显示全部楼层
回复

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7594
在线时间
2580 小时
注册时间
2016-3-8
帖子
1055
发表于 2021-8-12 22:45:43 | 显示全部楼层
本帖最后由 alexncf125 于 2021-8-12 22:47 编辑


P1搜諸如记忆事件位置的字眼
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
342
在线时间
38 小时
注册时间
2020-5-21
帖子
20
发表于 2021-8-12 22:51:40 | 显示全部楼层
本帖最后由 云鸟 于 2021-8-12 22:52 编辑


我有个方法,但是比较傻瓜(
就是记录事件(纯事件)
已经删除dll,自行添加
Project1.rar (299.54 KB, 下载次数: 2)
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
913
在线时间
26 小时
注册时间
2021-2-19
帖子
30
发表于 2021-8-12 23:00:32 | 显示全部楼层
事件名改成preserve即可保存
  1. class << DataManager
  2.   alias yami_create_game_objects create_game_objects
  3.   alias yami_make_save_contents make_save_contents
  4.   alias yami_extract_save_contents extract_save_contents
  5.   def create_game_objects
  6.     $YAMI_PRESERVED_EVENTS = {}
  7.     yami_create_game_objects
  8.   end
  9.   def make_save_contents
  10.     contents = yami_make_save_contents
  11.     contents[:YAMI_PRESERVED_EVENTS] = $YAMI_PRESERVED_EVENTS
  12.     contents
  13.   end
  14.   def extract_save_contents(contents)
  15.     yami_extract_save_contents(contents)
  16.     $YAMI_PRESERVED_EVENTS   = contents[:YAMI_PRESERVED_EVENTS]
  17.   end  
  18. end
  19. class Game_Map
  20.   attr_reader   :map
  21. end
  22. class Scene_Map
  23.   alias yami_pre_transfer pre_transfer
  24.   alias yami_post_transfer post_transfer
  25.   def pre_transfer   
  26.     $game_map.events.each_value do |e|
  27.       if $game_map.map.events[e.id].name.include?("preserve")
  28.         $YAMI_PRESERVED_EVENTS[[$game_map.map_id,e.id]] = [e.x,e.y]
  29.       end
  30.     end
  31.     yami_pre_transfer
  32.   end
  33.   def post_transfer
  34.     $YAMI_PRESERVED_EVENTS.each_pair do |k, v|
  35.       if $game_map.map_id == k[0]
  36.         $game_map.events[k[1]].moveto(v[0], v[1])
  37.       end
  38.     end      
  39.     yami_post_transfer
  40.   end
  41. end
复制代码
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2022-1-18 00:12

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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