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

Project1

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

[已经解决] 标题图形和窗口不被释放的问题。

[复制链接]

Lv4.逐梦者

梦石
0
星屑
5405
在线时间
1105 小时
注册时间
2013-7-8
帖子
2005

极短23参与

跳转到指定楼层
1
发表于 2015-1-27 17:01:30 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 我是大仙 于 2015-1-28 12:00 编辑


我已经在最后一行提到 $scene被改变

并且Scene_Ka 也有 main,也可以运行并刷新游戏图像
但是标题图像和窗口就是不被释放。
不是说好了要释放么↓



我还是给个附件吧,以防不理解。
自学成才.zip (223.63 KB, 下载次数: 48)

Lv2.观梦者

故九江太守

梦石
0
星屑
559
在线时间
2160 小时
注册时间
2012-12-5
帖子
4463
2
发表于 2015-1-27 22:33:40 | 只看该作者
什么鬼,没看懂你说什么鬼
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
65 小时
注册时间
2013-4-18
帖子
81
3
发表于 2015-1-28 00:09:58 | 只看该作者
我也不是特别清楚你想表达的问题,仅从图上看,我有以下理解,理解不对的话还请见谅。按图上的顺序,你的算法顺序是先切换Scene,后开始loop do逐帧刷新,这样一来因为Scene已经切换完毕,所以无法跳出循环,自然也不会执行接下来的命令。既然以画面切换为中断循环的条件,那么执行画面切换的过程应该在loop do这个循环过程中,也就是说,应该把Scene的切换放到到对应的刷新方法(update)的定义里。
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5405
在线时间
1105 小时
注册时间
2013-7-8
帖子
2005

极短23参与

4
 楼主| 发表于 2015-1-28 11:48:18 | 只看该作者
Thylakoid 发表于 2015-1-28 00:09
我也不是特别清楚你想表达的问题,仅从图上看,我有以下理解,理解不对的话还请见谅。按图上的顺序,你的算 ...

我给你工程好了,我的确把Scene的切换放到了 update里了。
自学成才.zip (223.63 KB, 下载次数: 56)
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

梦石
0
星屑
9532
在线时间
5073 小时
注册时间
2013-6-21
帖子
3580

开拓者贵宾剧作品鉴家

5
发表于 2015-1-28 12:53:08 | 只看该作者
LZ自学不是很到位哈,先说发现的几个问题,改正就可以了。
1.点击“咔”选项后,生成了一个图片。(在脚本中是变量@wsdx)。场景离开Scene_Title后,这个图片应该被释放。
下面这句应该放到Scene_Title释放那里。
RUBY 代码复制
  1. if @wsdx != nil
  2.   @wsdx.bitmap.dispose
  3.   @wddx.dispose
  4. end

如果LZ是想在Scene_Ka中显示这张图片,请在Scene_Ka对象中生成它,而不是在Scene_Title中生成。当然,生成之后也别忘释放。
2.LZ之所以能看到标题图形和窗口,不是因为它没有释放,而是因为画面处于冻结状态,而处于冻结状态的画面,Graphics.update不起作用。因此,在每个Scene类对象的loop do~end之前,都应该有一句Graphics.transition。这句话是让画面过渡,同时解除画面冻结的状态。
3.loop do~end中应该有三个update(或者至少是两个):Graphics.update,Input.update,update。LZ既然用了输入判断,那么为啥不加Input.update啊?

最后,更改后的Scene_Ka:
RUBY 代码复制
  1. class Scene_Ka
  2.   def main
  3.     Graphics.transition
  4.     loop do
  5.       Graphics.update
  6.       Input.update
  7.       shuaxing
  8.       if $scene != self
  9.         break
  10.       end
  11.     end
  12.   end
  13.   def shuaxing
  14.     if Input.trigger?(Input::Z)
  15.       $scene = Scene_Title.new
  16.     end
  17.   end
  18. end

另外Scene_Title那里加个@wsdx的释放,或者把生成图片转移到Scene_Ka中去。

评分

参与人数 1星屑 +200 收起 理由
myownroc + 200 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5405
在线时间
1105 小时
注册时间
2013-7-8
帖子
2005

极短23参与

6
 楼主| 发表于 2015-1-28 15:06:49 | 只看该作者
RyanBern 发表于 2015-1-28 12:53
LZ自学不是很到位哈,先说发现的几个问题,改正就可以了。
1.点击“咔”选项后,生成了一个图片。(在脚本 ...

哇,太感谢了。
来,啵儿一个~(开玩笑的)

点评

给我真的啵儿啊~  发表于 2015-1-28 20:49
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-9-22 15:45

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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