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

Project1

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

[已经解决] 动态图片显示

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3631
在线时间
1892 小时
注册时间
2010-6-19
帖子
1211
跳转到指定楼层
1
发表于 2014-8-20 20:39:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
下面这个脚本如何做成动态的图片显示,改成bitmap.width / 8的图片显示
  1.   def draw_actor_face_zhuangbei_lvup(actor, x, y)
  2.      facename = "Graphics/Pictures/图片显示/人物头像/#{actor.id}_Z"
  3.      bitmap = Bitmap.new(facename)
  4.     #Faces 这个文件夹需要自己建立,把头像都放在这里面
  5.     src_rect = Rect.new(0, 0, bitmap.width, bitmap.height)
  6.     self.contents.blt(0, 0, bitmap, src_rect)
  7.     self.x = 80
  8.     self.y = 63
  9.   end
复制代码

点评

PS:你给出的图片空白太多,要看见人物,只有把坐标往 负值 调。  发表于 2014-8-22 19:24

评分

参与人数 1星屑 +35 收起 理由
︶ㄣ牛排ぶ + 35 手动认可奖励

查看全部评分

Lv3.寻梦者

梦石
0
星屑
1743
在线时间
485 小时
注册时间
2006-1-7
帖子
1073
2
发表于 2014-8-20 22:52:22 | 只看该作者
本帖最后由 白鬼 于 2014-8-20 22:56 编辑
  1.   def draw_actor_face_zhuangbei_lvup(actor, x, y)
  2.     facename = "Graphics/Pictures/图片显示/人物头像/#{actor.id}_Z"
  3.     bitmap = Bitmap.new(facename)
  4.     #Faces 这个文件夹需要自己建立,把头像都放在这里面
  5.     cw = Bitmap.width / 8
  6.     ch = Bitmap.height / 8
  7.     @start_turn = ture
  8.     case @start_phase
  9.     when 0
  10.       x_x = 0
  11.     when 1
  12.       x_x = cw
  13.     when 2
  14.       x_x = cw*2
  15.     when 3
  16.       x_x = cw*3
  17.     when 4
  18.       x_x = cw*4
  19.     when 5
  20.       x_x = cw*5
  21.     when 6
  22.       x_x = cw*6
  23.     when 7
  24.       x_x = cw*7
  25.     end
  26.     src_rect = Rect.new(x_x, 0, cw, ch)
  27.     self.contents.blt(0, 0, bitmap, src_rect)
  28.     self.x = 80
  29.     self.y = 63
  30.   end
复制代码
不知道好不好用。这是仿造着状态画面显示角色行走图移动状态写改的。
你先试试吧。不好用或者哪里有问题再说。


对了,还得定义 update
不然这东西运作不了
其实也就是@start_phase需要有变化

原脚本是酱紫
  1.   def update
  2.     walk_update
  3.     if @start_turn == true
  4.       @turn_index += 1
  5.       if @turn_index == 8#行走图播放速度
  6.         refresh
  7.         @turn_index = 0
  8.         @turn_phase = (@turn_phase+1)%4
  9.       end
  10.     end
  11.   end  
复制代码
你看看情况,在你用的脚本 update的部分加入

点评

放进游戏就脚本错误。5,6 2行  发表于 2014-8-22 14:07
初从文,三年不中;后习武,校场发一矢,中鼓吏,逐之出;遂学医,有所成。自撰一良方,服之,卒。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

薄凉看客

梦石
0
星屑
50
在线时间
1269 小时
注册时间
2010-6-20
帖子
1316
3
发表于 2014-8-21 06:33:09 | 只看该作者
  1. def refresh_sprite(actor, x, y)
  2.   @bitmap_index = 0 if @bitmap_index.nil?
  3.   
  4.   facename = "Graphics/Pictures/图片显示/人物头像/#{actor.id}_Z"
  5.   
  6.   bitmap = Bitmap.new(facename)
  7.   
  8.   #Faces 这个文件夹需要自己建立,把头像都放在这里面
  9.   w = bitmap.width / 8
  10.   src_rect = Rect.new(@bitmap_index * w, 0, bitmap.width / 8, bitmap.height)
  11.   
  12.   self.contents.blt(0, 0, bitmap, src_rect)
  13.   
  14.   
  15.   @bitmap_index += 1
  16.   if @bitmap_index == 8
  17.     @bitmap_index = 0
  18.   end
  19.   
  20.   self.x = 80
  21.   self.y = 63
  22. end
复制代码
不停refresh_sprite就可以,

如果卡就这样
if Graphics.frame_count % 5 == 0#5越大刷新速度越慢
  @xx.refresh_sprite
end
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3631
在线时间
1892 小时
注册时间
2010-6-19
帖子
1211
4
 楼主| 发表于 2014-8-21 06:59:41 | 只看该作者
恐惧剑刃 发表于 2014-8-21 06:33
不停refresh_sprite就可以,

如果卡就这样

我是把图片放在Window_EquipLeft的,没看到动态,怎么刷新。。还有图片显示的很小,在什么地方改宽度和高度   我加了这2句看不出效果。   self.width = 100      self.height = 100
回复 支持 反对

使用道具 举报

Lv1.梦旅人

薄凉看客

梦石
0
星屑
50
在线时间
1269 小时
注册时间
2010-6-20
帖子
1316
5
发表于 2014-8-21 07:22:06 | 只看该作者
本帖最后由 恐惧剑刃 于 2014-8-21 08:32 编辑

加一个方法
def update
  super
  if Graphics.frame_count % 5 == 0
     refresh_sprite
  end
end

self.width .height 只会修改窗口的宽度和高度

不要改 self.width .height ,如果还显示小(是显示不完整还是小。。),可能是坐标问题
尝试把
self.x = 80
self.y = 63
改为
self.x = 0
self.y = 0
如果这样能够完整显示就是坐标的问题了。


新建Bitmap试试
self.contents.dispose
self.contents = nil
self.contents = Bitmap.new(width - 32, height - 32)

点评

现在呢?  发表于 2014-8-21 08:32
应该是显示不完整把,坐标怎么移动大小都只有那么点  发表于 2014-8-21 08:13
刷新的时候refresh_sprite if Graphics.frame_count % 5 == 0 这句错误  发表于 2014-8-21 08:12
self.x = 0 self.y = 0 这2个改成0弄过,还是那么大,所以才想这改 width  发表于 2014-8-21 08:08
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3631
在线时间
1892 小时
注册时间
2010-6-19
帖子
1211
6
 楼主| 发表于 2014-8-21 09:11:07 | 只看该作者
恐惧剑刃 发表于 2014-8-21 07:22
加一个方法
def update
  super

要不帮我把图片弄成独立的窗口里面显示,然后放到装备界面,

Project2.rar

256.46 KB, 下载次数: 30

回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33610
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

7
发表于 2014-8-22 15:24:14 | 只看该作者
坐标什么的,就自己调一下
Project2.rar (255.94 KB, 下载次数: 50)

评分

参与人数 1梦石 +1 收起 理由
︶ㄣ牛排ぶ + 1 认可答案

查看全部评分

xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-23 21:46

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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