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

Project1

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

[已经解决] Khas的「灯光」兼容Vlue的「简单自动保存」

[复制链接]

Lv5.捕梦者

梦石
0
星屑
26264
在线时间
5355 小时
注册时间
2016-3-8
帖子
1655
跳转到指定楼层
1
发表于 2020-8-10 22:51:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 alexncf125 于 2024-1-25 01:48 编辑

明明是兩个看似完全不会扯上关系的脚本
到底是什么原因使自动存档失效呢??
[ACE][EN] Awesome Light Effects 1.0.rar (1.45 MB, 下载次数: 76)
  1. #简单自动保存 v1.1
  2. #----------#
  3. #功能: 每当场所移动时,自动保存到第一个存档.简单的不能再简单了!
  4. #          可以修改第一个存档的名称.
  5. #
  6. #使用方法:    即插即用.
  7. #
  8. #----------#
  9. #-- Script by: V.M of D.T
  10. #
  11. #- Questions or comments can be:
  12. #    posted on the thread for the script
  13. #    given by email: [email protected]
  14. #    provided on facebook: http://www.facebook.com/DaimoniousTailsGames
  15. #   All my other scripts and projects can be found here: http://daimonioustails.weebly.com/
  16. #
  17. #- Free to use in any project with credit given, donations always welcome!

  18. #是否修改第一个存档的名称
  19. NAME_AUTOSAVE_FILE = true
  20. #第一个存档的名称
  21. AUTOSAVE_FILE_NAME = "Autosave"
  22. #是否在场所移动时自动保存
  23. AUTOSAVE_ON_MAP = true
  24. #是否在战斗后自动保存
  25. AUTOSAVE_AFTER_BATTLE = false

  26. $auto_save = true

  27. class Scene_Map
  28.   alias auto_post_transfer post_transfer
  29.   def post_transfer
  30.     auto_post_transfer
  31.     return unless AUTOSAVE_ON_MAP
  32.     if Module.const_defined?(:Game_Options)
  33.       DataManager.save_game(0) if $game_options.auto_save
  34.     else
  35.       DataManager.save_game(0) if $auto_save
  36.     end
  37.   end
  38. end

  39. module BattleManager
  40.   def self.battle_end(result)
  41.     @phase = nil
  42.     @event_proc.call(result) if @event_proc
  43.     $game_party.on_battle_end
  44.     $game_troop.on_battle_end
  45.     SceneManager.exit if $BTEST
  46.     return unless AUTOSAVE_AFTER_BATTLE
  47.     if Module.const_defined?(:Game_Options)
  48.       DataManager.save_game(0) if $game_options.auto_save
  49.     else
  50.       DataManager.save_game(0) if $auto_save
  51.     end
  52.   end
  53. end

  54. class Window_SaveFile
  55.   alias auto_refresh refresh
  56.   def refresh
  57.     if NAME_AUTOSAVE_FILE
  58.       contents.clear
  59.       change_color(normal_color)
  60.       if @file_index == 0
  61.         name = AUTOSAVE_FILE_NAME
  62.       else
  63.         name = Vocab::File + " #{@file_index}"
  64.       end
  65.       draw_text(4, 0, 200, line_height, name)
  66.       @name_width = text_size(name).width
  67.       draw_party_characters(152, 58)
  68.       draw_playtime(0, contents.height - line_height, contents.width - 4, 2)
  69.     else
  70.       auto_refresh
  71.     end
  72.   end
  73. end
复制代码

Lv5.捕梦者

梦石
0
星屑
26264
在线时间
5355 小时
注册时间
2016-3-8
帖子
1655
2
 楼主| 发表于 2020-8-11 12:33:55 | 只看该作者
本帖最后由 alexncf125 于 2020-8-12 23:14 编辑

顶一下顶一下顶一下
回复 支持 反对

使用道具 举报

Lv4.逐梦者

「Pemercyia」


Urhurrenna

梦石
0
星屑
9397
在线时间
2748 小时
注册时间
2008-9-5
帖子
3543

开拓者短篇八RM组冠军短篇九导演组亚军白银编剧

3
发表于 2020-8-14 15:29:00 | 只看该作者
本帖最后由 cinderelmini 于 2020-8-14 15:36 编辑

我记得这个灯光脚本在地图上直接执行代码存档就会出问题来着。
顺便附上以前的处理办法,尝试在main前加入看看,但不一定能解决问题。
khas灯光和事件存档

def 执行存档  这个方法仅供参考,解决思路是在执行存档的  DataManager.save_game(index)  之前调用  Spriteset_Map.dispose_lights  释放掉灯光相关的内容,存档之后再调用  Spriteset_Map.setup_lights  把它们再弄回来。
直接插入脚本不能解决问题,你需要在自动存档脚本里找到两处  DataManager.save_game(0) if $game_options.auto_save  和  DataManager.save_game(0) if $auto_save  再像这样修改一下
  1. if $game_options.auto_save
  2.   Spriteset_Map.dispose_lights
  3.   DataManager.save_game(0)
  4.   Spriteset_Map.setup_lights
  5. end
复制代码
(if $auto_save那个同理)

评分

参与人数 1+1 收起 理由
alexncf125 + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
26264
在线时间
5355 小时
注册时间
2016-3-8
帖子
1655
4
 楼主| 发表于 2020-8-14 17:43:54 | 只看该作者
本帖最后由 alexncf125 于 2020-8-14 20:40 编辑
cinderelmini 发表于 2020-8-14 15:29
我记得这个灯光脚本在地图上直接执行代码存档就会出问题来着。
顺便附上以前的处理办法,尝试在main前加入 ...


成功解决问题了ヽ(●´∀`●)ノ
O(∩_∩)O谢谢大大帮忙

报告一下,如果未来有人浏覧到这帖,也想用Khas灯光+自动存档时
如果已经在用影月千秋 - 保存地图状态脚本的话,是会报错disposed bitmap的说
对于以上问题,建议转用TheoAllen - 记忆事件位置,也不失是一个挺好的替代方法
然而我也不知道"保存地图状态"与"记忆事件位置"是有什么差別
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-16 06:57

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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