Project1

标题: 敌人1号为什么被敌人0号挡住[有脚本] [打印本页]

作者: 七仙女    时间: 2008-4-12 05:52
提示: 作者被禁止或删除 内容自动屏蔽
作者: havealook    时间: 2008-4-12 06:06
不对啊
是3号敌人最前面,随后1号,0号,2号,4号,不应该是0遮挡1,应该是1遮挡0
作者: wy29    时间: 2008-4-12 06:06
提示: 作者被禁止或删除 内容自动屏蔽
作者: 八云紫    时间: 2008-4-12 06:07
Z 坐标的问题。一号敌人的 Z 坐标比二号的大。所以敌人1号被敌人0号挡住。
作者: 9244579    时间: 2008-4-12 06:12
把坐标移动下不就可以了?
作者: wy29    时间: 2008-4-12 06:13
提示: 作者被禁止或删除 内容自动屏蔽
作者: 七仙女    时间: 2008-4-12 06:18
提示: 作者被禁止或删除 内容自动屏蔽
作者: 9244579    时间: 2008-4-12 06:20
把0的Z坐标改大点就可以了
作者: 七仙女    时间: 2008-4-12 06:55
提示: 作者被禁止或删除 内容自动屏蔽
作者: wy29    时间: 2008-4-12 07:33
提示: 作者被禁止或删除 内容自动屏蔽
作者: 七仙女    时间: 2008-4-12 08:30
提示: 作者被禁止或删除 内容自动屏蔽
作者: wy29    时间: 2008-4-12 08:36
提示: 作者被禁止或删除 内容自动屏蔽
作者: 七仙女    时间: 2008-4-12 08:44
提示: 作者被禁止或删除 内容自动屏蔽
作者: 非法用户    时间: 2008-4-12 08:44
以下引用wy29于2008-4-12 0:36:23的发言:
全动画脚本?

你要看看脚本里的敌人的sprite的z值是什么。
除非敌人的sprite的z等于screen_z,
改screen_z对显示敌人没作用。

默认如果z值一样,
y值最大的在前面。

怀疑全动画脚本里的sprite的z值都是一致的。

没记错的话全动画脚本里的z值都是2000。
如果是这问题,之前MS有人问过也解决了,
忘了是哪贴,不过如果真要找,那还真得翻旧帖。{/hx}
作者: link006007    时间: 2008-4-12 23:08
本来就是小号一定遮住大号
Spriteset_Battle
def initialize
    @enemy_sprites = []
    for enemy in $game_troop.enemies.reverse  # 这里这里!!
      @enemy_sprites.push(Sprite_Battler.new(@viewport1, enemy))
    end
def update
    # 刷新战斗者的活动块
    for sprite in @enemy_sprites + @actor_sprites
      sprite.update
    end

初始化时将最后一个精灵放在了数组首部,所以更新时最后的精灵先更新,
在z值相同时, 后更新的自然覆盖先更新的
实际上操作系统画图是没有什么Z坐标的,他就是更具你给出的x,y位置贴图像,添加个Z只是管理这种先后序列而已 [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1