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

Project1

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

关于self.contents.fill_rect的问题.

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
65
在线时间
433 小时
注册时间
2007-5-1
帖子
993
跳转到指定楼层
1
发表于 2008-2-11 19:53:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
在很多描绘值槽的脚本中都能看到self.contents.fill_rect这句,作用是以参数中的颜色填充参数中的矩形,可问题是:contents是Window类的属性,fill_rect是Bitmap类的方法,self指的是Window类的对象吗?为什么可以这样用呢?

Window_Help中还有这句self.contents = Bitmap.new(width - 32, height - 32)
这句的意思是:生成一个Bitmap的实例作为对象的contents属性?
contents到底是什么,为什么要Bitmap的实例做属性,Bitmap又是什么,它与Sprite的功能有什么不同?Bitmap生成的对象要怎么才能显示出来?

如果要在地图上画一个黑色实心矩形(无特殊作用,仅仅是举个例子),在事件脚本中应该怎么写(应该写得下吧?要求在事件脚本中写的原因是希望能用实际的对象,老用self的话看不明白.)

呃......问题太多了,发现自己根本读不懂预设脚本,希望各位能推荐些较好的教程.
此贴于 2008-2-16 7:04:47 被版主凌冰提醒,请楼主看到后对本贴做出回应。
本贴由论坛斑竹凌冰结贴,如楼主认为问题未解决,请重新将此贴编辑为“有事请教”,并回帖叙述疑点即可~ ^-^

嗯,不能浪费签名了,打广告。本人的悲剧作品:
坑化游戏《龙之影》      R剧《星空》     小游戏《剑与拳头》

Lv1.梦旅人

梦石
0
星屑
50
在线时间
466 小时
注册时间
2006-2-25
帖子
1863
2
发表于 2008-2-11 19:56:13 | 只看该作者
楼主你打开F1
RGSS参考 - 游戏库 - RGSS内部类 看看.
多少就能明白点了

你的例子:
sprite = Sprite.new
sprite.bitmap = Bitmap.new(32,32)
rect = Rect.new(0,0,32,32)
color = Color.new(0,0,0)
sprite.bitmap.fill_rect(rect, color)
系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-1-21
帖子
103
3
发表于 2008-2-11 20:04:32 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
65
在线时间
433 小时
注册时间
2007-5-1
帖子
993
4
 楼主| 发表于 2008-2-11 20:04:49 | 只看该作者
以下引用诡异の猫于2008-2-11 11:56:13的发言:

楼主你打开F1
RGSS参考 - 游戏库 - RGSS内部类 看看.
多少就能明白点了


老实说,F1的内容看过了,解释太简陋,看不明白,
像contents的解释:作为窗口内容显示的位图(Bitmap)。
这样一句带过,很难理解.......还是麻烦解释一下吧,用通俗点的语言.

嗯,不能浪费签名了,打广告。本人的悲剧作品:
坑化游戏《龙之影》      R剧《星空》     小游戏《剑与拳头》
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-1-21
帖子
103
5
发表于 2008-2-11 20:30:01 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv3.寻梦者

孤独守望

梦石
0
星屑
3137
在线时间
1535 小时
注册时间
2006-10-16
帖子
4321

开拓者贵宾

6
发表于 2008-2-11 20:59:58 | 只看该作者
Window类其本身是一个Sprite的集合体,里面定义了一个叫做contents的Bitmap型的对象,并将这个bitmap显示在Window上。对于一个新的Window,它的contents是NULL(RGSS里叫nil),不可以使用,所以初始化时把contents定义成了一个新的bitmap对象。
下面,
self 目前所在的窗体对象
self.contents 目前窗口的bitmap
self.contents.fill_rect 调用目前窗口的bitmap的fill_rect方法

突然发现许多人对面向对象变成的基本概念不熟……
系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~
菩提本非树,明镜本非台。回头自望路漫漫。不求姻缘,但求再见。
本来无一物,何处惹尘埃。风打浪吹雨不来。荒庭遍野,扶摇难接。
不知道多久更新一次的博客
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
65
在线时间
433 小时
注册时间
2007-5-1
帖子
993
7
 楼主| 发表于 2008-2-12 04:55:39 | 只看该作者
有点明白了,谢谢各位.
以下引用IamI于2008-2-11 12:59:58的发言:

突然发现许多人对面向对象变成的基本概念不熟……

[本贴由作者于 2008-2-11 13:00:37 最后编辑]

的确如此,因为以前只学过C,接着就看F1自学ruby了,对OO语言不太熟悉.

嗯,不能浪费签名了,打广告。本人的悲剧作品:
坑化游戏《龙之影》      R剧《星空》     小游戏《剑与拳头》
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-3 00:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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