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

Project1

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

[已经解决] 如何用远景图来做地图?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
45
在线时间
93 小时
注册时间
2011-7-8
帖子
69
跳转到指定楼层
1
发表于 2012-4-30 21:38:35 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
用VA来做的话
我自己用SAI画了一张1920X1280(pixel),分辨率72(pixel)的地图
在VA里面设置地图大小是宽60X高40,把我画的地图作为远景图发现远景图卷动速度比人物行走速度慢

然后上论坛查了一下,发现这个帖子
http://rpg.blue/forum.php?mod=viewthread&tid=224229
这个帖子遇到的情况跟我基本一样

但是VA好像没有这行代码,我自己找了一下脚本翻了下帮助
对GAME_MAP里面157~180行里的数字做了下改动,然后地图的卷动基本跟得上人物行走速度了
但是换到另外一张地图的时候又根本上速度了。不知道应该怎么解决...如果有脚本能对付这种情况就好了。
或者有没有人肯教教我去哪里修改这个卷动速度

【让远景图和地图卷动速度同步】或者【用远景图做地图的方法】

Lv1.梦旅人

梦石
0
星屑
45
在线时间
226 小时
注册时间
2012-3-26
帖子
72
9
发表于 2012-5-3 10:37:11 | 只看该作者
弄透明图片很简单的
你先弄张纯色的图然后导入,导入时候把那个颜色选成透明就可以了
回复

使用道具 举报

Lv4.逐梦者 (超级版主)

嗜谎者

梦石
2
星屑
17312
在线时间
3909 小时
注册时间
2010-9-12
帖子
9654

极短24评委极短23评委极短22评委极短21评委开拓者

8
发表于 2012-5-3 00:04:27 | 只看该作者
完全透明的远景二,你凑合着放一个上去阻止报错就行了吧。。。
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
45
在线时间
93 小时
注册时间
2011-7-8
帖子
69
7
 楼主| 发表于 2012-5-3 00:00:19 | 只看该作者
Luciffer 发表于 2012-5-2 23:31
不需要去掉的吧。。。弄透明的或者雾状有时也需要的呗。。。
话说这是VX脚本还是ACE的?ACE有双远景的吗? ...

这是VA的脚本,我从索引那里翻来的范例里面抽出来的。
如果不去掉的话找不到$XXX_2的图片文件这个脚本就会错误,能去掉就最好了。
嗯..不去掉也可以,如果能让第二张远景图的卷动速度像普通远景图一样也成,话说怎么改第二张远景的透明度?
回复

使用道具 举报

Lv4.逐梦者 (超级版主)

嗜谎者

梦石
2
星屑
17312
在线时间
3909 小时
注册时间
2010-9-12
帖子
9654

极短24评委极短23评委极短22评委极短21评委开拓者

6
发表于 2012-5-2 23:31:02 | 只看该作者
不需要去掉的吧。。。弄透明的或者雾状有时也需要的呗。。。
话说这是VX脚本还是ACE的?ACE有双远景的吗?
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
45
在线时间
93 小时
注册时间
2011-7-8
帖子
69
5
 楼主| 发表于 2012-5-2 23:11:14 | 只看该作者
我发现这个双远景图脚本正好合适我的要求啊,就是远景图的卷动速度和地图卷动速度一样的。
谁帮我看看怎么改把它第二张远景图去掉或者调成普通的远景图的卷动速度?
  1. #

  2. # rm va双远景地图 by shironeko

  3. #由于本脚本乃新手作品,可能会出现一些冲突和效率低下的情况,如发现错误,请见谅.
  4. #


  5. #==============================================================================
  6. # ■ Spriteset_Map
  7. #------------------------------------------------------------------------------
  8. #  处理地图画面精灵和图块的类。本类在 Scene_Map 类的内部使用。
  9. #==============================================================================

  10. class Spriteset_Map

  11.   #--------------------------------------------------------------------------
  12.   # ● 生成远景图
  13.   #--------------------------------------------------------------------------
  14.   def create_parallax
  15.     @parallax = Plane.new(@viewport1)
  16.     @parallax.z = -100
  17.     @parallax2 = Plane.new(@viewport1)
  18.     @parallax2.z = 200
  19.   end

  20.   #--------------------------------------------------------------------------
  21.   # ● 释放
  22.   #--------------------------------------------------------------------------
  23.   def dispose
  24.     dispose_tilemap
  25.     dispose_parallax
  26.     dispose_parallax2
  27.     dispose_characters
  28.     dispose_shadow
  29.     dispose_weather
  30.     dispose_pictures
  31.     dispose_timer
  32.     dispose_viewports
  33.   end
  34.   
  35.   #--------------------------------------------------------------------------
  36.   # ● 释放远景图2
  37.   #--------------------------------------------------------------------------
  38.   def dispose_parallax2
  39.     @parallax2.bitmap.dispose if @parallax2.bitmap
  40.     @parallax2.dispose
  41.   end
  42.   
  43.   
  44.   #--------------------------------------------------------------------------
  45.   # ● 更新画面
  46.   #--------------------------------------------------------------------------
  47.   def update
  48.     update_tileset
  49.     update_tilemap
  50.     update_parallax
  51.     update_characters
  52.     update_shadow
  53.     update_weather
  54.     update_pictures
  55.     update_timer
  56.     update_viewports
  57.   end

  58.   #--------------------------------------------------------------------------
  59.   # ● 更新远景图
  60.   #--------------------------------------------------------------------------
  61.   def update_parallax
  62.     if @parallax_name != $game_map.parallax_name
  63.       @parallax_name = $game_map.parallax_name
  64.       @parallax.bitmap.dispose if @parallax.bitmap
  65.       @parallax.bitmap = Cache.parallax(@parallax_name)
  66.     sign = @parallax_name[/^[\!\$]./]
  67.         if sign != nil and sign.include?('$')
  68.         @parallax2.bitmap.dispose if @parallax2.bitmap
  69.         @parallax2.bitmap = Cache.parallax(@parallax_name +'_2')
  70.         @parallax2.ox = $game_map.parallax_ox(@parallax.bitmap)
  71.         @parallax2.oy = $game_map.parallax_oy(@parallax.bitmap)
  72.       end
  73.       Graphics.frame_reset
  74.     end
  75.     sign = @parallax_name[/^[\!\$]./]
  76.         if sign != nil and sign.include?('$')
  77.         @parallax.ox = $game_map.display_x * 32
  78.         @parallax.oy = $game_map.display_y * 32
  79.         @parallax2.ox = $game_map.display_x * 32
  80.         @parallax2.oy = $game_map.display_y * 32
  81.         else
  82.         @parallax.ox = $game_map.parallax_ox(@parallax.bitmap)
  83.         @parallax.oy = $game_map.parallax_oy(@parallax.bitmap)
  84.     end
  85.   end
  86. end

复制代码
回复

使用道具 举报

Lv3.寻梦者

虚空人形

梦石
0
星屑
4604
在线时间
2037 小时
注册时间
2011-8-11
帖子
3398

贵宾

4
发表于 2012-5-1 14:13:12 | 只看该作者
这种情况用脚本比直接处理图片方便的前提是脚本是复制粘贴的或者是脚本帝(可惜我不是)吧。
每大块的大小为256*512,不算很小,我觉得小心点应该不会出错,
或者还有一个方法,就是每个地图的大小都是窗口大小,不让远景图移动,同时弄两个透明图块,
一个可通行一个不可,在远景图上按地图通行关系排布。
(但这个方法和你想要的那个脚本方法都有个致命缺点,就是不能让地图上的任何东西挡在角色上方)
我知道的就那么多了。

点评

嗯...总之谢谢你了,可惜不是我想要的答案...你说的第二个方法就是我要的效果,远景图不动,在远景图上面用透明区块来设定行走路径。  发表于 2012-5-1 14:30
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
45
在线时间
93 小时
注册时间
2011-7-8
帖子
69
3
 楼主| 发表于 2012-5-1 13:54:27 | 只看该作者
hcm 发表于 2012-5-1 10:45
大不了把远景图做成地图图块,只要注意通行设置就没问题。

我懂你意思了..前面抱歉,可是如果做成图块的话,形状长宽就有限制了,如果要做很宽的地图那就要把一张画好的地图切成几块来排版成图块不是么.总觉得好麻烦而且容易出错啊,直接从脚本里面调整远景图的速度难度不是应该更小吗..
回复

使用道具 举报

Lv3.寻梦者

虚空人形

梦石
0
星屑
4604
在线时间
2037 小时
注册时间
2011-8-11
帖子
3398

贵宾

2
发表于 2012-5-1 10:45:58 | 只看该作者
大不了把远景图做成地图图块,只要注意通行设置就没问题。

点评

hcm
有没有看懂啊,我说的是把远景图搞成512*512的作为图块文件,画地图时还不是用几个长方形画就行了?  发表于 2012-5-1 13:13
不现实啊亲,能做成图块我干嘛还要用手绘,每个图块都不一样的。  发表于 2012-5-1 12:07
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 01:49

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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