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

Project1

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

[已经解决] 关于脸图载入问题。

[复制链接]

Lv1.梦旅人

梦石
0
星屑
60
在线时间
306 小时
注册时间
2014-8-5
帖子
416
跳转到指定楼层
1
发表于 2015-11-18 15:13:41 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 夏末渐离 于 2015-11-18 15:24 编辑

新人想实现一个抬头显视窗口【HUD】。但是在绘制脸图的时候出了点毛病。


一。直接开始游戏到游戏画面,HUD窗口上没有脸图出现。如下图:





二。然而按ESC呼出游戏菜单,然后关闭游戏菜单就完成了对脸图的绘制。如下图:







三。Window_HUD 代码如下:
Window_HUD




四。在Scene_Map中创建HUD窗口:

Scene_Map



总结:总觉得少了载入脸图的函数,但是不知道如何修改。
  点我进入    
       ↓      

Lv1.梦旅人

梦石
0
星屑
70
在线时间
269 小时
注册时间
2015-9-6
帖子
82
2
发表于 2015-11-18 23:25:11 | 只看该作者
本帖最后由 dc1988123 于 2015-11-19 00:00 编辑

估计刷新指令问题吧,下面插个refresh();试试
this.addWindow(this.hud);
this.hud.refresh();
我不懂脚本,只是瞎说的,希望能有用。。

点评

感谢建议,但是并不能解决问题。  发表于 2015-11-22 16:50
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
306 小时
注册时间
2014-8-5
帖子
416
3
 楼主| 发表于 2015-11-22 18:42:11 | 只看该作者
本帖最后由 夏末渐离 于 2015-11-23 15:09 编辑

看来是脸图没有那么快读出来,有一定的延时。
  点我进入    
       ↓      
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1232
在线时间
1017 小时
注册时间
2011-4-30
帖子
1516
4
发表于 2015-11-22 20:03:27 | 只看该作者
本帖最后由 汪汪 于 2016-2-2 01:13 编辑
主要是脸图没准备好的问题,这里参考的是Window_Message里的写法..


//果然还是要读默认脚本啊 T_T
  1. Window_Base.prototype.drawFace = function(faceName, faceIndex, x, y, width, height) {
  2.     width = width || Window_Base._faceWidth;
  3.     height = height || Window_Base._faceHeight;
  4.     var bitmap = ImageManager.loadFace(faceName);
  5.     var pw = Window_Base._faceWidth;
  6.     var ph = Window_Base._faceHeight;
  7.     var sw = Math.min(width, pw);
  8.     var sh = Math.min(height, ph);
  9.     var dx = Math.floor(x + Math.max(width - pw, 0) / 2);
  10.     var dy = Math.floor(y + Math.max(height - ph, 0) / 2);
  11.     var sx = faceIndex % 4 * pw + (pw - sw) / 2;
  12.     var sy = Math.floor(faceIndex / 4) * ph + (ph - sh) / 2;
  13.     bitmap.addLoadListener(
  14.             this.contents.blt.bind(this.contents,bitmap, sx, sy, sw, sh, dx, dy)
  15.     );
  16. };
复制代码
更新一下方法......

点评

不过还是你的好用。本帖终结。  发表于 2015-11-23 15:19
昨天我一直翻ImageManager发现读图有一定延时。自己写了个插件是加快一次执行 ImageManager.loadFace(facename)的过程。  发表于 2015-11-23 15:15

评分

参与人数 1梦石 +1 收起 理由
余烬之中 + 1 不过还是你的好用。本帖终结。.

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
306 小时
注册时间
2014-8-5
帖子
416
5
 楼主| 发表于 2015-11-23 15:18:29 | 只看该作者
加快一次载入脸图过程,成功实现了预期效果。


  点我进入    
       ↓      
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-16 09:56

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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