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

Project1

 找回密码
 注册会员
搜索

关于Khas灯光脚本会发生disposed bitmap的问题

查看数: 434 | 评论数: 2 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2025-8-14 15:22

正文摘要:

本帖最后由 MameKo豆子 于 2025-8-14 15:22 编辑 测试游戏时想要重置游戏按了f12,再读档时就弹出来了 362行处: @bitmap = {2=>Light_Bitcore[@key[2]].clone,4=>Light_Bitcore[@key[4]].clone,6=>Light_Bitc ...

回复

R_03氏 发表于 2025-10-12 15:21:22
本帖最后由 R_03氏 于 2025-10-12 20:23 编辑

然后直击要害把地图的spirit类的初始化增一个,大约在900行以后class Spriteset_Map下面有def initialize方法,增加如下增加的语句,先用用看有什么问题,因为我一直在用vx
RUBY 代码复制
  1. def initialize
  2.     Light_Bitcore.initialize #←增加的
  3.     setup_lights
  4.     kbl_initialize
  5.   end
R_03氏 发表于 2025-10-12 15:19:30
本帖最后由 R_03氏 于 2025-10-12 20:19 编辑

以前把代码移植到vx似乎遇到了这问题但忘记怎么改了,今天折腾了好久。
问题主要是va重置游戏按了f12不正确释放位图引起的,在250行附近(我加减了一些东西,你看着找到了就行)也就是def initialize(char,bitmap,opacity,plus,hs)下面。运行时判断是否disposed了,是就初始化,先改这个
RUBY 代码复制
  1. def initialize(char,bitmap,opacity,plus,hs)
  2.     sync(char)
  3.     @key = bitmap
  4.     #修改如下
  5.     if Light_Bitcore[@key].disposed?
  6.       Light_Bitcore.initialize
  7.     end
  8.     #修改如上
  9.     @bitmap = Light_Bitcore[@key].clone
  10.     @range = @bitmap.width/2
  11.     @w = @bitmap.width
  12.     @h = @bitmap.height
  13.     @mr = @range - 16
  14.     @opacity = opacity
  15.     @plus = plus
  16.     @hs = hs
  17.     render if @hs
  18.   end
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2025-11-19 10:09

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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