查看: 1924|回复: 3

[已经解决] 我想用判断改变读取角色图形,有点问题请教

[复制链接]
梦石
0
星屑
50
在线时间
82 小时
注册时间
2013-1-28
回帖
34
发表于 2014-3-1 10:25:40 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 jinpual 于 2014-3-1 12:15 编辑

我想用判断改变读取角色图形,有点问题
if @character.stopping?
self.bitmap = Cache.character(@character_name)
else
self.bitmap = Cache.character(@character_name&&'run')
end
不过程序出错了 @character_name&&'run' 这里应该怎么写了?
梦石
0
星屑
3348
在线时间
1120 小时
注册时间
2009-4-15
回帖
761
发表于 2014-3-1 11:08:04 | 显示全部楼层
没看明白你想要改变成什么样。
self.bitmap = Cache.character(@character_name),将@character_name替换曾你想要改变成的图像的文件名试试?
比如在character文件夹下有个文件叫"run",那么self.bitmap = Cache.character("run")
回复

使用道具 举报

梦石
0
星屑
50
在线时间
82 小时
注册时间
2013-1-28
回帖
34
 楼主| 发表于 2014-3-1 11:24:08 | 显示全部楼层
已经找到问题了,应该用+ ,还有就是在更新里面判断,不过又发现了另一个问题,就是人物跑起来一顿一顿的
回复

使用道具 举报

梦石
0
星屑
50
在线时间
82 小时
注册时间
2013-1-28
回帖
34
 楼主| 发表于 2014-3-1 11:36:55 | 显示全部楼层
  #--------------------------------------------------------------------------
  # ● 更新源矩形
  #--------------------------------------------------------------------------
  def update_src_rect
   sign = @character_name[/^[\!\$]./]
   if sign && sign.include?('$%')
   if !@character.stopping?
      self.bitmap = Cache.character(@character_name+'run')
      @cw = bitmap.width / 6
      @ch = bitmap.height
      self.ox = @cw / 1.6
      self.oy = @ch /1.1
   else
      self.bitmap = Cache.character(@character_name)
      @cw = bitmap.width / 10
      @ch = bitmap.height
      self.ox = @cw / 1.6
      self.oy = @ch /1.1
   end
   end   
    if @tile_id == 0
      index = @character.character_index
      pattern = @character.pattern < 3 ? @character.pattern : 1
      sx = (index % 4 * 3 + pattern) * @cw
      sy = (index / 4 * 4 + (@character.direction - 2) / 2) * @ch #+(6/2)*@ch
      self.src_rect.set(sx, 0, @cw, @ch)  #self.src_rect.set(sx, sy, @cw, @ch)  
    end
  end

改了之后,可以实现切换角色行走图,但是会出现一顿一顿的感觉,这是为什么呢?
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部