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

Project1

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

[已经过期] 描绘一个角色的窗口怎样写?

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1556
在线时间
626 小时
注册时间
2010-8-5
帖子
451
跳转到指定楼层
1
发表于 2012-7-24 10:38:52 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
描绘一个角色的窗口:这个窗口显示此角色的行走图的第一行的循环 【此角色在数据库中的行走图的第一行的循环】本人愚昧,可能表达不清.我发张图片吧
红色圈到的地方也就是角色的图形【玩过梦幻的都知道......】能不能让显示这个角色图形的框框关联到此角色在数据库中设置的“角色脸谱”图片的第一行所有图片的循环?【循环起来就动了......】


        不理解的再问下,我再补充我的问题......

Lv3.寻梦者

梦石
0
星屑
1556
在线时间
626 小时
注册时间
2010-8-5
帖子
451
7
 楼主| 发表于 2012-7-24 15:02:44 | 只看该作者
七夕小雨 发表于 2012-7-24 14:33
上传你data下面的Scripts.rxdata 我来看看吧

...这个有点秘密性.所以...我想办法让你收到吧
回复

使用道具 举报

Lv3.寻梦者

昨日的黄昏

梦石
0
星屑
1005
在线时间
937 小时
注册时间
2006-11-5
帖子
4128

第2届短篇游戏比赛季军第3届短篇游戏大赛小游戏及其他组季军

6
发表于 2012-7-24 14:33:52 | 只看该作者
上传你data下面的Scripts.rxdata 我来看看吧
[url=http://weibo.com/2238291690?s=6uyXnP]
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1556
在线时间
626 小时
注册时间
2010-8-5
帖子
451
5
 楼主| 发表于 2012-7-24 14:31:55 | 只看该作者
七夕小雨 发表于 2012-7-24 14:17
范例传送门:
http://115.com/file/e72i3syz

再次表示愚昧.脚本是脚本工临走时甩给额的......所以我只是在他的脚本上修改下.小雨大大我能和你详细的说下么.自己表示无法实现自己理想的功能......
回复

使用道具 举报

Lv3.寻梦者

昨日的黄昏

梦石
0
星屑
1005
在线时间
937 小时
注册时间
2006-11-5
帖子
4128

第2届短篇游戏比赛季军第3届短篇游戏大赛小游戏及其他组季军

4
发表于 2012-7-24 14:17:45 | 只看该作者
本帖最后由 七夕小雨 于 2012-7-24 14:18 编辑

范例传送门:
http://115.com/file/e72i3syz

使用菜单中的状态。就可以看到效果

这里给你做了一个范例
也顺便发现了自己口述过程中的一点小问题

主要看看Window_Status

这里定义了draw_actor_graphicEX

并且在refresh替换为draw_actor_graphicEX
然后在后面重写了父类的update方法
我都写好了注释,可以自己看看
===========================================
再者看看
Scene_Status

由于没有对Window_Status刷新,所以在Scene的update中调用了窗口的update方法。

我相信你已经写出那么复杂的窗口,这点小问题,你可以随便搞定的
[url=http://weibo.com/2238291690?s=6uyXnP]
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1556
在线时间
626 小时
注册时间
2010-8-5
帖子
451
3
 楼主| 发表于 2012-7-24 13:37:15 | 只看该作者
七夕小雨 发表于 2012-7-24 10:58
0 0  Window_Base 下面有个 draw_actor_graphic这样的方法

可以把他的抄下来0 0定义一个

好深奥...........那如果要第一行所有位置的循环呢?动起来会比较好看对啦/
回复

使用道具 举报

Lv3.寻梦者

昨日的黄昏

梦石
0
星屑
1005
在线时间
937 小时
注册时间
2006-11-5
帖子
4128

第2届短篇游戏比赛季军第3届短篇游戏大赛小游戏及其他组季军

2
发表于 2012-7-24 10:58:50 | 只看该作者
本帖最后由 七夕小雨 于 2012-7-24 11:00 编辑

0 0  Window_Base 下面有个 draw_actor_graphic这样的方法

可以把他的抄下来0 0定义一个
draw_actor_graphicEX
方法如下:
  1. def draw_actor_graphicEX(actor, x, y,row=0)
  2.     bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)
  3.     cw = bitmap.width / 4
  4.     ch = bitmap.height / 4
  5.     src_rect = Rect.new(row * cw, 0, cw, ch)
  6.     self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
  7.   end
复制代码
使用方法0 0
draw_actor_graphicEX(actor, x, y,0) #显示第一行第一个位置
draw_actor_graphicEX(actor, x, y,1) #显示第一行第二个位置
draw_actor_graphicEX(actor, x, y,2) #显示第一行第三个位置
draw_actor_graphicEX(actor, x, y,3) #显示第一行第四个位置
draw_actor_graphicEX(actor, x, y,4) #0 0什么都显示不出来

所以窗口每次refresh的时候重新填一下参数就好了 如
draw_actor_graphicEX(actor, x, y,@row_index)
@row_index = @row_index > 2 ? @row_index + 1 : 0

然后重写update,每隔一段时间调用refresh就好了

评分

参与人数 1星屑 +200 收起 理由
hcm + 200 感谢回答

查看全部评分

[url=http://weibo.com/2238291690?s=6uyXnP]
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-27 05:45

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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