Project1

标题: 在水里面行走的问题。 [打印本页]

作者: jgwx0000    时间: 2015-6-5 17:17
标题: 在水里面行走的问题。
河道有梯子下去 其他地方不能走到河道 在河道内可以自由行走 怎么实现

QQ截图20150605171555.png (91.15 KB, 下载次数: 27)

QQ截图20150605171555.png

作者: 三途亚梦    时间: 2015-6-5 17:24
把水域或草地的图块做成5种,分别为:
4方向通行;
限制向右通行;
限制向左通行;
限制向上通行;
限制向下通行。
然后进行地图绘制。
作者: jgwx0000    时间: 2015-6-5 17:29
有没有脚本的方法,通用点的,比如 角色走到1号区域 就触发 只能走1号和0号区域,角色回到0号区域就触发 只能走到1号区域,做图块真的好麻烦。
作者: jgwx0000    时间: 2015-6-5 17:31
谢谢版主了,实在没办法只能做图块了,新手刚刚研究这个软件,只有想法,没有办法
作者: jgwx0000    时间: 2015-6-5 17:35
我一开始设置的事件块 填满河道周围 还是很满意,结果 移到公司笔记本上运行了下马上卡死,才想起来事件块太多会掉帧,家里的是i7的完全没影响,配置低的电脑完全没办法玩了。
作者: jianyulei    时间: 2015-6-5 17:44
我的话,是直接自己建立个了完全空白的图片,然后给这张图设定四方通行度,然后把这个图片作为追加图片导入游戏,再直接覆盖再原本图层里面
这样做的好处是,可以重复利用这些做好了通行度的图片,能够适用再任何画面之上。
作者: 三途亚梦    时间: 2015-6-5 18:07
得了,我去写个简单的脚本吧,应该也不麻烦。
作者: jgwx0000    时间: 2015-6-5 18:21
三途亚梦 发表于 2015-6-5 18:07
得了,我去写个简单的脚本吧,应该也不麻烦。

什么时候我也能成为个高手啊。要求不高能 将自己的思路做成游戏就行。
作者: tseyik    时间: 2015-6-5 18:46
http://blueredzone.com/script/vxace/vxace_movableregion.html
書式
==移動制限:%region%==

例:リージョン60のみ移動可能
==移動制限:60==

例:リージョン30と60のみ移動可能
==移動制限:30+60==

例:リージョン60は移動不可
==移動制限:0-60==

例:リージョン30と60は移動不可
==移動制限:0-30-60==

また,上記の設定では「移動ルートの設定」での強制移動に対する制限はありません.
強制移動に対する制限は次の記述で行います.
==!移動制限:%region%==

自律移動と強制移動の両方で同一の制限をかける場合は同じ%region%の注釈を以下のように記述する必要があります.
==移動制限:%region%==
==!移動制限:%region%==


パーティーの行動制限

パーティーに対する移動制限はこのスクリプト内の詳細設定にて行います.

それぞれの設定項目について%regon%部分のみを文字列で指定します.

PARTY_MOVABLE_REGION_WALK
    歩行時自律移動のリージョンです
PARTY_MOVABLE_REGION_BOAT
    小型船時自律移動のリージョンです
PARTY_MOVABLE_REGION_SHIP
    大型船時自律移動のリージョンです
PARTY_MOVABLE_REGION_AIRSHIP
    飛行船時自律移動のリージョンです
PARTY_FORCE_MOVABLE_REGION_WALK
    歩行時強制移動のリージョンです
PARTY_FORCE_MOVABLE_REGION_BOAT
    小型船時強制移動のリージョンです
PARTY_FORCE_MOVABLE_REGION_SHIP
    大型船時強制移動のリージョンです
PARTY_FORCE_MOVABLE_REGION_AIRSHIP
    飛行船時強制移動のリージョンです


キャラクター移動制限



作者: 三途亚梦    时间: 2015-6-5 19:13
本帖最后由 三途亚梦 于 2015-6-6 16:00 编辑

大概这样,如有问题请回复。
目前以下的通行判断优先于其它,即即使开启了允许穿透,玩家依然受区域移动方向的限制。

RUBY 代码复制
  1. #==============================================================================
  2. # +++ 限制移动方向的特定区域 +++
  3. #==============================================================================
  4. # 提问区应求 By 三途亚梦
  5. #==============================================================================
  6. # 本脚本的作用给区域自定义不同方向的通行。
  7. #==============================================================================
  8. #
  9. # ★在Nopassaingregion按照[区域ID, 通行方向的ID]
  10. #  的格式写下数值就能使得特定区域的图块不可通行。
  11. #
  12. # ★因为发现流体属性的地形对人物的特殊影响,所以对流体(即草地深度)的方法也做了调整
  13. # 在事件页第一行用【注释】写上“桥”的话,
  14. # 这个事件所在方格将忽略流体地型使得行走图部分透明的效果。
  15. #
  16. #  其中代表通行方向的ID为:
  17. #  向下(2) 向左(4) 向右(6) 向上 (8)
  18. #
  19. #==============================================================================
  20. module Amu
  21.   module Region_Nopassaing
  22.  
  23.   Nopassaingregion = [[11, 2], [12, 4], [13, 6], [14, 8],
  24.                       [15, 8, 4], [16, 8, 6], [17, 2, 4], [18, 2, 6]]
  25.   #这里默认使用了11~18号区域,分别为
  26.   #11禁止向下;12禁止向左;13禁止向右;14禁止向上
  27.   #15禁止向上和向左;16禁止向上向右;17禁止向下向左;18禁止向下向右。
  28.  
  29.   end
  30. end
  31.  
  32. class Game_CharacterBase
  33.   #--------------------------------------------------------------------------
  34.   # ● 更新草木深度
  35.   #--------------------------------------------------------------------------
  36.   alias amu_20150606_update_bush_depth update_bush_depth
  37.   def update_bush_depth
  38.     if bush? && !$game_map.events_xy(@x, @y).empty?
  39.       e = $game_map.events_xy(@x, @y)[0].list[0].parameters[0] == "桥"
  40.       e ? @bush_depth = 0 : amu_20150606_update_bush_depth
  41.     else
  42.       amu_20150606_update_bush_depth
  43.     end
  44.   end
  45.   #--------------------------------------------------------------------------
  46.   # ● 判定是否可以通行(检查 地图的通行度 和 前方是否有路障)
  47.   #     d : 方向(2,4,6,8)
  48.   #--------------------------------------------------------------------------
  49.   alias amu_20150606_passable_without_region? passable?
  50.   def passable?(x, y, d)
  51.     regions = Amu::Region_Nopassaing::Nopassaingregion
  52.     return false if regions.any? {|r| r[0] == $game_map.region_id(x, y) &&
  53.     (1..(r.size-1)).any? {|i| r[i] == d}} && @through
  54.     amu_20150606_passable_without_region?(x, y, d)
  55.   end
  56. end

作者: taroxd    时间: 2015-6-5 19:45
本帖最后由 taroxd 于 2015-6-5 20:45 编辑



用「墙壁」图块来制作河道。默认墙壁的通行效果可以完美满足你的要求。图中树的部分用透明图块做,禁止往上通行即可。别忘了擦掉影子。
作者: VIPArcher    时间: 2015-6-5 20:45
https://rpg.blue/thread-224145-1-1.html
作者: taroxd    时间: 2015-6-5 21:37
我更新了一下脚本。

http://taroxd.github.io/rgss/ 阅读规约后查找「设置地图通行度」,里面的区域设置能比较符合你的要求。
作者: jgwx0000    时间: 2015-6-5 22:14
taroxd 发表于 2015-6-5 21:37
我更新了一下脚本。

http://taroxd.github.io/rgss/ 阅读规约后查找「设置地图通行度」,里面的区域设置能 ...

大概看了下 ,感觉非常好。另外,怎么在图块里面加入多个透明图块,利用透明图块设计方向,在小的地图里面也是很方便的
作者: jgwx0000    时间: 2015-6-5 22:42
jgwx0000 发表于 2015-6-5 22:14
大概看了下 ,感觉非常好。另外,怎么在图块里面加入多个透明图块,利用透明图块设计方向,在小的地图里 ...

地图事件里面 能调用  设定吗 刚刚试了脚本   想在事件里面 设定 通行区域 怎么调用
作者: jgwx0000    时间: 2015-6-5 22:49
jianyulei 发表于 2015-6-5 17:44
我的话,是直接自己建立个了完全空白的图片,然后给这张图设定四方通行度,然后把这个图片作为追加图片导入 ...

空白的图片是不是就是透明的?
作者: 三途亚梦    时间: 2015-6-5 23:04
本帖最后由 三途亚梦 于 2015-6-6 00:51 编辑

需要画成类似这样的感觉。


顺手上传一个动图效果和事件的设置





作者: jgwx0000    时间: 2015-6-5 23:17
了解了必须设定通行方向才行 这样 就不需要触发了
作者: jgwx0000    时间: 2015-6-6 01:17
三途亚梦 发表于 2015-6-5 19:13
大概这样,如有问题请回复。
目前以下的通行判断优先于其它,即即使开启了允许穿透,玩家依然受区域移动方 ...


区块52 设置 左右禁止
      60设置 上下禁止
45 46 47
53 54 55
61 62 63  这9个区域按照封闭的9宫格的通行设置 ,设计地图的时候非常方便。特别是我想模仿最终幻想3
里面好多地图里面隐藏的通道。
我设置好区块  在河道里面是没问题,但是有两个小问题需要解决,不然设计地图的时候工作量大很多,
1,缺少4方通行的设置,也就是指定区块能够4方通行,如果没这个设置,河道两边都要设置区块很麻烦
2,这个区块设置覆盖了事件的通行设置,因为我的河道上面有桥。

QQ截图20150606010625.png (33.49 KB, 下载次数: 25)

QQ截图20150606010625.png

1.png (29.25 KB, 下载次数: 27)

1.png

作者: jgwx0000    时间: 2015-6-6 01:30
jgwx0000 发表于 2015-6-6 01:17
区块52 设置 左右禁止
      60设置 上下禁止
45 46 47

版主也和我一样是夜猫子,我实验了下,本来想明天发帖子的,不过想到这个功能这么方便,实在睡不着,又起床看了下,谁知道版主居然还没睡觉。
作者: jgwx0000    时间: 2015-6-6 01:52
用作穿墙做隐藏密道效果太好了。赞一个
作者: jgwx0000    时间: 2015-6-6 15:01
本帖最后由 jgwx0000 于 2015-6-6 15:03 编辑
三途亚梦 发表于 2015-6-5 19:13
大概这样,如有问题请回复。
目前以下的通行判断优先于其它,即即使开启了允许穿透,玩家依然受区域移动方 ...


事件块事件第一行注释 桥 是吗  是。
作者: jgwx0000    时间: 2015-6-6 15:26
经过实验,不知道是我使用的不对还是怎么的,桥的位置设置区域还是没办法移动,不过桥毕竟少 通过桥两边设置事件 是能解决问题的。

QQ截图20150606152153.png (14.7 KB, 下载次数: 17)

QQ截图20150606152153.png

作者: jgwx0000    时间: 2015-6-6 15:27
jgwx0000 发表于 2015-6-6 15:26
经过实验,不知道是我使用的不对还是怎么的,桥的位置设置区域还是没办法移动,不过桥毕竟少 通过桥两边设 ...

桥的注释是这样写吧

QQ截图20150606152710.png (19.91 KB, 下载次数: 15)

QQ截图20150606152710.png

作者: jgwx0000    时间: 2015-6-6 18:54
jgwx0000 发表于 2015-6-6 15:26
经过实验,不知道是我使用的不对还是怎么的,桥的位置设置区域还是没办法移动,不过桥毕竟少 通过桥两边设 ...

画上52号桥就走不了了,我后来把桥的事件改了

1.png (3.81 KB, 下载次数: 18)

1.png





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