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

Project1

 找回密码
 注册会员
搜索
楼主: ☆流星☆~~~
打印 上一主题 下一主题

显示图片不会覆盖角色行走图

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
帖子
1924
11
发表于 2009-4-28 06:19:31 | 只看该作者
以下引用tommay于2009-4-27 22:04:48的发言:

然后事件中直接显示图片吗?为什么我改了之后还是图片能挡住角色呢?

奇怪,我刚才在家测试的时候没有被挡住啊~事件和主角都被挡住?
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

12
发表于 2009-4-28 06:20:27 | 只看该作者
Spriteset_Map中

    # 生成显示端口
    @viewport1 = Viewport.new(0, 0, 640, 480)
    @viewport2 = Viewport.new(0, 0, 640, 480)
    @viewport3 = Viewport.new(0, 0, 640, 480)
    @viewport2.z = 200
    @viewport3.z = 5000

没写的 @viewport1 的z值默认为0

      sprite = Sprite_Character.new(@viewport1, $game_map.events)
注意,@viewport1

      @picture_sprites.push(Sprite_Picture.new(@viewport2,$game_screen.pictures))
注意,@viewport2

改Z值么?
把@viewport1的z改到比@viewport2大?

那么……
    @tilemap = Tilemap.new(@viewport1)
    @panorama = Plane.new(@viewport1)
    @fog = Plane.new(@viewport1)

@viewport1比@viewport2的z大了以后最直接的效果就是,无论是地图元件、远景、雾、事件、角色都会挡住图片~
版主对此帖的认可:『正确解答,补上悬赏积分,感激你的热情帮助...』,积分『+350』。
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦·贤者

梦石
0
星屑
50
在线时间
1141 小时
注册时间
2007-12-15
帖子
4100
13
发表于 2009-4-28 06:30:23 | 只看该作者
抱歉,现在行了,看来是脚本被我改乱了,orz

多谢两位大大!
http://rpg.blue/home.php?mod=space&uid=34951&do=blog&id=12799
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

14
发表于 2009-4-28 06:34:37 | 只看该作者
当然不行了啊,我只是给了个思路引导一下而已啊{/fd}
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦·贤者

梦石
0
星屑
50
在线时间
1141 小时
注册时间
2007-12-15
帖子
4100
15
发表于 2009-4-28 06:39:26 | 只看该作者
那我顺藤摸瓜一下:
如何能够让玩家自行决定图片的z值呢?就是可以再事件页的脚本中写下一句脚本,然后实现图片不同的叠放次序,有些遮挡主角,有些被主角遮住之类的效果呢?
http://rpg.blue/home.php?mod=space&uid=34951&do=blog&id=12799
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

16
发表于 2009-4-28 06:57:51 | 只看该作者
给Game_Picture追加个方法就好了,默认图片的z值是根据图片的编号来的,但图片显示部分是放在viewport2里的,而地图远景雾人物事件这些都是放在viewport1里的,所以即使你把图片本身的z值改的再小,也会因为viewport2的z值本身就比viewport1大而始终显示在角色上方。

想要让角色遮挡到图片,首先要把图片显示放到和角色一起的viewport1里,接着就是要让图片的z值根据角色的z值来发生一些改变,而不是默认的编号
self.z = $game_player.screen_z

这样就出现一个好玩的现象,首先在我们要显示出图片的区域放置一个有行走图的事件,接着我们会发现,每当角色走到这个图片的下方时,这个图片的显示都会有比较显著的变化。

今天的废话就到此为止了,各位同学明天见~
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦·贤者

梦石
0
星屑
50
在线时间
1141 小时
注册时间
2007-12-15
帖子
4100
17
发表于 2009-4-28 07:03:25 | 只看该作者
以下引用亿万星辰于2009-4-27 22:57:51的发言:

给Game_Picture追加个方法就好了,默认图片的z值是根据图片的编号来的,但图片显示部分是放在viewport2里的,而地图远景雾人物事件这些都是放在viewport1里的,所以即使你把图片本身的z值改的再小,也会因为viewport2的z值本身就比viewport1大而始终显示在角色上方。

想要让角色遮挡到图片,首先要把图片显示放到和角色一起的viewport1里,接着就是要让图片的z值根据角色的z值来发生一些改变,而不是默认的编号
self.z = $game_player.screen_z

这样就出现一个好玩的现象,首先在我们要显示出图片的区域放置一个有行走图的事件,接着我们会发现,每当角色走到这个图片的下方时,这个图片的显示都会有比较显著的变化。

前面的都能看个大概,最后一段那个现象看不懂。。。能否麻烦做个范例呢?
如果没时间就无视吧,先谢谢前辈了!
http://rpg.blue/home.php?mod=space&uid=34951&do=blog&id=12799
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
帖子
1924
18
发表于 2009-4-28 08:00:36 | 只看该作者
我那样的话就是把角色放到图片的 viewport2 中,原理是一样的~

self.z = $game_player.screen_z 是让图片的 z 次序随时保持和角色行走图的 z 次序相同,而角色行走图的 z 次序是随着 y 坐标变化而变化的——地图最南边最高,最北边最低——为了建立事件角色之间的遮挡关系~

所以当角色在事件北方时,z 次序比事件小,图片被事件挡住;当角色在事件南方时,z 次序超过了事件,事件被图片挡住……
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

19
发表于 2009-4-28 15:05:36 | 只看该作者
以下引用紫苏于2009-4-28 0:00:36的发言:

我那样的话就是把角色放到图片的 viewport2 中,原理是一样的~

self.z = $game_player.screen_z 是让图片的 z 次序随时保持和角色行走图的 z 次序相同,而角色行走图的 z 次序是随着 y 坐标变化而变化的——地图最南边最高,最北边最低——为了建立事件角色之间的遮挡关系~

所以当角色在事件北方时,z 次序比事件小,图片被事件挡住;当角色在事件南方时,z 次序超过了事件,事件被图片挡住……

都放到viewport2里,viewport2本身的z值就比viewport1的z值高,那viewport2里所有的东西都会在viewport1上面,包括你放到里面的所有事件和角色行走图,那么你会看到事件永远都保持一个“总在最前”的效果,压着地图元件、远景、雾。
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
帖子
1924
20
发表于 2009-4-28 16:39:07 | 只看该作者
以下引用亿万星辰于2009-4-28 7:05:36的发言:

都放到viewport2里,viewport2本身的z值就比viewport1的z值高,那viewport2里所有的东西都会在viewport1上面,包括你放到里面的所有事件和角色行走图,那么你会看到事件永远都保持一个“总在最前”的效果,压着地图元件、远景、雾。

对啵,疏忽了,感谢指点~{/hx}
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-15 23:42

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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