Project1
标题:
战斗动画的位置
[打印本页]
作者:
迅雷進
时间:
2008-8-28 17:05
标题:
战斗动画的位置
早前小弟把战斗画面由 640 x 320 变成 640 x 480 ,
但是就发现了一个问题,
就是动画的位置随着战斗画面而移位了…
如图:
以上是未修改的战斗画面(640 x 320)
以上是修改后的战斗画面(640 x 480)
很明显地虽然是同一个动画,
不过第二张图的动画以降低了 160 pixel,
小弟已经很努力的修改脚本但是仍然是于事无补…
请问怎样才能够修改动画的位置呢?
请前辈们指教~ {/ll} {/ll} [LINE]1,#dddddd[/LINE]
版务信息:本贴由楼主自主结贴~
作者:
灯笼菜刀王
时间:
2008-8-28 23:15
module RPG
class Sprite < ::Sprite
@@_animations = []
@@_reference_count = {}
def animation_set_sprites(sprites, cell_data, position)
for i in 0..15
sprite = sprites[i]
pattern = cell_data[i, 0]
if sprite == nil or pattern == nil or pattern == -1
sprite.visible = false if sprite != nil
next
end
sprite.visible = true
sprite.src_rect.set(pattern % 5 * 192, pattern / 5 * 192, 192, 192)
if position == 3
if self.viewport != nil
sprite.x = self.viewport.rect.width / 2
sprite.y = self.viewport.rect.height - 320
else
sprite.x = 320
sprite.y = 240
end
else
sprite.x = self.x - self.ox + self.src_rect.width / 2
sprite.y = self.y - self.oy + self.src_rect.height / 2
sprite.y -= self.src_rect.height / 4 if position == 0
sprite.y += self.src_rect.height / 4 if position == 2
end
sprite.x += cell_data[i, 1]
sprite.y += cell_data[i, 2]
sprite.z = 2000
sprite.ox = 96
sprite.oy = 96
sprite.zoom_x = cell_data[i, 3] / 100.0
sprite.zoom_y = cell_data[i, 3] / 100.0
sprite.angle = cell_data[i, 4]
sprite.mirror = (cell_data[i, 5] == 1)
sprite.opacity = cell_data[i, 6] * self.opacity / 255.0
sprite.blend_type = cell_data[i, 7]
end
end
end
end
复制代码
要改只能改module -。- 把这脚本塞进MAIN前就可以了。 [LINE]1,#dddddd[/LINE]
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者:
迅雷進
时间:
2008-8-28 23:53
实在是太感谢你啦! {/ll} {/ll}
刀前辈~ {/hx} {/hx}
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1