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

Project1

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

[已经解决] 脚本描绘问题

[复制链接]

Lv3.寻梦者

梦石
0
星屑
4169
在线时间
258 小时
注册时间
2013-10-13
帖子
815
跳转到指定楼层
1
发表于 2013-12-28 10:59:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 hys111111 于 2013-12-28 14:23 编辑
  1. #--------------------------------------------------------------------------
  2.   # ● 图形的描绘
  3.   #     actor : 角色
  4.   #     x     : 描画目标 X 坐标
  5.   #     y     : 描画目标 Y 坐标
  6.   #--------------------------------------------------------------------------
  7.   def draw_actor_graphic(actor, x, y)
  8.     bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)
  9.     cw = bitmap.width / 4
  10.     ch = bitmap.height / 4
  11.     src_rect = Rect.new(0, 0, cw, ch)
  12.     contents.blt(x - cw/2, y - ch  , bitmap, src_rect)
复制代码
1,character_name是RPG::Actor类的属性,Window_Base类里面的局部变量actor.后面怎么可以带它?
2,传送bitmap 的矩形 src_rect到该位图的座标(x,y),能说下怎么传送吗?位图的矩形是什么?
3,还有就是:
def draw_actor_name(actor,x,y)
    contents.font.color = normal_color
里面;font是Bitmap类的方法,color 是Font类的方法,可以调用;但是contents是Window类的方法(属性),怎么可以调用Bitmap类的方法font?

Lv1.梦旅人

薄凉看客

梦石
0
星屑
50
在线时间
1269 小时
注册时间
2010-6-20
帖子
1316
2
发表于 2013-12-28 12:00:00 | 只看该作者
actor是作为参数获取character_name属性的!!!!
在使用时需传递“角色”参数(如 $game_acotrs[1]),故可以使用RPG::Actor的属性

传送矩形简单说就是把位图加载在一个矩形上

contents指的是self.contents
Window的属性,是窗口内容描绘的位图,初始化时已经 self.contents = Bitmap.new(width - 32, height - 32)

点评

给力  发表于 2013-12-28 17:14

评分

参与人数 1星屑 +100 收起 理由
myownroc + 100 我很赞同

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2749
在线时间
2630 小时
注册时间
2013-1-16
帖子
5657

贵宾

3
发表于 2013-12-28 12:04:25 | 只看该作者
1.Ruby语言是弱类型编程语言,Window_Base里的actor可以视为RPG::Actor类的一个实例。
2.怎么传送……这种问题还是问电脑吧;矩形就是矩形,每张图片不就是矩形吗?位图可以理解为容纳图片的一个容器,位图的矩形……就可以理解为这个容器。
3.你确定font不是contents的属性?

点评

查过了,所以问下,不过问题解决了,谢谢了  发表于 2013-12-28 17:15
(Created by @喵kano)


施工现场:hotege.github.io
回复 支持 反对

使用道具 举报

Lv2.观梦者

故九江太守

梦石
0
星屑
612
在线时间
2167 小时
注册时间
2012-12-5
帖子
4464
4
发表于 2013-12-28 12:19:32 | 只看该作者
RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2.   # ● 图形的描绘
  3.   #     actor : 角色
  4.   #     x     : 描画目标 X 坐标
  5.   #     y     : 描画目标 Y 坐标
  6.   #--------------------------------------------------------------------------
  7.   def draw_actor_graphic(actor, x, y)
  8.   #CY 定义名为draw_actor_graphic的方法。
  9.  
  10.     bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)
  11.   #CY 对RPG::Cache模块执行名为character的方法,该方法需要2个值。这两个值分别
  12.   #CY 是对actor类使用character_name方法(角色文件名)和对actor类使用character
  13.   #CY _hue(角色色相)。取得角色图像。然后将值赋给变量bitmap。
  14.   #CY character方法的定义请看RGSS参考——游戏库——RGSS内部类的RPG::Cache模块。
  15.   #CY 现在不需要你去记忆RPG::Cache模块的内容哦,了解下即可。
  16.  
  17.     cw = bitmap.width / 4   
  18.   #CY 对变量bitmap使用width(取得位图的宽)方法,并且将值除以4,然后赋给变量cw。
  19.   #CY bitmap的方法在RGSS参考——游戏库——RGSS内部类的Bitmap里面。
  20.  
  21.     ch = bitmap.height / 4
  22.   #CY 对变量bitmap使用height(取得位图的高)方法,并且将值除以4,然后赋给变量ch。  
  23.  
  24.   src_rect = Rect.new(0, 0, cw, ch)
  25.   #CY 新建Rect的实例,内部参数为(0, 0, cw, ch),并将该实例的值赋给变量src_rect。
  26.   #CY Rect的方法在RGSS参考——游戏库——RGSS内部类的Rect里面。
  27.   #CY 神马?你问我x和y的意思?继续抬头90°看141行的注释。。。
  28.  
  29.     self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
  30.   #CY 对contents属性执行blt方法,并且执行它本身。
  31.   #CY 不懂?不动就对了!我还没给出附录呢,你怎么能懂呢!
  32.  
  33.   #CY contents属性:作为窗口内容显示的位图(Bitmap)。
  34.  
  35.   #CY blt(x, y, src_bitmap, src_rect[, opacity]) 方法:
  36.   #CY 传送 src_bitmap 的矩形 src_rect(Rect)到该位图的座标(x,y)。
  37.   #CY opacity 指定其不透明度,范围为 0 ~ 255。
  38.  
  39.   #CY contents属性在RGSS参考——游戏库——RGSS内部类的Window里。
  40.   #CY blt方法在RGSS参考——游戏库——RGSS内部类的Bitmap里。
  41.   end

点评

给力  发表于 2013-12-28 17:21

评分

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

查看全部评分

回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42409
在线时间
7602 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

5
发表于 2013-12-28 19:42:31 | 只看该作者
myownroc 发表于 2013-12-28 12:04
1.Ruby语言是弱类型编程语言,Window_Base里的actor可以视为RPG::Actor类的一个实例。
2.怎么传送……这种 ...

actor是这个方法接收的一个参数,跟Window_Base没半毛钱关系- -
另外font就是Bitmap的属性,contents是个Bitmap而已。

点评

我知道……但是不会表达……  发表于 2013-12-28 22:40
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-24 07:39

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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