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

Project1

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

战斗动画的位置

 关闭 [复制链接]

Lv4.逐梦者

ST戰士

梦石
11
星屑
82
在线时间
1155 小时
注册时间
2007-5-5
帖子
3489

第5届短篇游戏比赛季军

跳转到指定楼层
1
发表于 2008-8-28 17:05:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
早前小弟把战斗画面由 640 x 320 变成 640 x 480 ,
但是就发现了一个问题,
就是动画的位置随着战斗画面而移位了…
如图:



以上是未修改的战斗画面(640 x 320)



以上是修改后的战斗画面(640 x 480)

很明显地虽然是同一个动画,
不过第二张图的动画以降低了 160 pixel,
小弟已经很努力的修改脚本但是仍然是于事无补…
请问怎样才能够修改动画的位置呢?
请前辈们指教~ {/ll} {/ll}
版务信息:本贴由楼主自主结贴~
我是昵称 JIN 的迅雷進,是一位以日本特攝講解爲主的馬來西亞 YouTuber。

歡迎瀏覽我的頻道:JinRaiXin -迅雷進-

Lv5.捕梦者

梦石
0
星屑
39163
在线时间
5737 小时
注册时间
2006-11-10
帖子
6638
2
发表于 2008-8-28 23:15:32 | 只看该作者
  1. module RPG
  2.   class Sprite < ::Sprite
  3.     @@_animations = []
  4.     @@_reference_count = {}

  5. def animation_set_sprites(sprites, cell_data, position)
  6.       for i in 0..15
  7.         sprite = sprites[i]
  8.         pattern = cell_data[i, 0]
  9.         if sprite == nil or pattern == nil or pattern == -1
  10.           sprite.visible = false if sprite != nil
  11.           next
  12.         end
  13.         sprite.visible = true
  14.         sprite.src_rect.set(pattern % 5 * 192, pattern / 5 * 192, 192, 192)
  15.         if position == 3
  16.           if self.viewport != nil
  17.             sprite.x = self.viewport.rect.width / 2
  18.             sprite.y = self.viewport.rect.height - 320
  19.           else
  20.             sprite.x = 320
  21.             sprite.y = 240
  22.           end
  23.         else
  24.           sprite.x = self.x - self.ox + self.src_rect.width / 2
  25.           sprite.y = self.y - self.oy + self.src_rect.height / 2
  26.           sprite.y -= self.src_rect.height / 4 if position == 0
  27.           sprite.y += self.src_rect.height / 4 if position == 2
  28.         end
  29.         sprite.x += cell_data[i, 1]
  30.         sprite.y += cell_data[i, 2]
  31.         sprite.z = 2000
  32.         sprite.ox = 96
  33.         sprite.oy = 96
  34.         sprite.zoom_x = cell_data[i, 3] / 100.0
  35.         sprite.zoom_y = cell_data[i, 3] / 100.0
  36.         sprite.angle = cell_data[i, 4]
  37.         sprite.mirror = (cell_data[i, 5] == 1)
  38.         sprite.opacity = cell_data[i, 6] * self.opacity / 255.0
  39.         sprite.blend_type = cell_data[i, 7]
  40.       end
  41.     end
  42.   end
  43.   end
复制代码


要改只能改module -。- 把这脚本塞进MAIN前就可以了。
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
回复 支持 反对

使用道具 举报

Lv4.逐梦者

ST戰士

梦石
11
星屑
82
在线时间
1155 小时
注册时间
2007-5-5
帖子
3489

第5届短篇游戏比赛季军

3
 楼主| 发表于 2008-8-28 23:53:30 | 只看该作者
实在是太感谢你啦! {/ll} {/ll}
刀前辈~ {/hx} {/hx}
我是昵称 JIN 的迅雷進,是一位以日本特攝講解爲主的馬來西亞 YouTuber。

歡迎瀏覽我的頻道:JinRaiXin -迅雷進-
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-25 07:49

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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