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

Project1

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

关于事件的绕道

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
72
在线时间
36 小时
注册时间
2008-5-19
帖子
186
跳转到指定楼层
1
发表于 2009-6-11 23:17:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
做了一个事件,被角色追赶,当前面是不可通行的图块,那个事件就不动了,如何让它会绕过去呢?


if 1号事件的前面是不可通行的图块,如果可以往左右走的话,就往左或者右走。用脚本怎么写?

版务信息:本贴由楼主自主结贴~
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-10-16
帖子
450
2
发表于 2009-6-11 23:30:11 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
72
在线时间
36 小时
注册时间
2008-5-19
帖子
186
3
 楼主| 发表于 2009-6-11 23:38:51 | 只看该作者
我发现接近的敌人事件如果接触主角的话,会围着主角打转。。是不是把主角也当作障碍物了啊?
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-10-16
帖子
450
4
发表于 2009-6-11 23:44:47 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
72
在线时间
36 小时
注册时间
2008-5-19
帖子
186
5
 楼主| 发表于 2009-6-11 23:59:52 | 只看该作者
有点奇怪,这样改的话敌人往上逃会绕道,往下追遇到障碍还是停住了,往左逃会绕道,往右不会绕道。。。我是改成这样的:

##向下:向下走不了,向右可以走,就往右走##
      if passable?(@x+1, @y, 6)
        if ($game_player.x - @x) > 1 or
          ($game_player.y - @y ) > 1
          move_right  if @event != nil
        end
      end


##向右:向右走不了,向下可以走,就往下走##
      if passable?(@x, @y+1, 2)
        if ($game_player.x - @x) > 1 or
          ($game_player.y - @y ) > 1
          move_down  if @event != nil
        end
      end


回复 支持 反对

使用道具 举报

Lv3.寻梦者

昨日的黄昏

梦石
0
星屑
1005
在线时间
937 小时
注册时间
2006-11-5
帖子
4128

第2届短篇游戏比赛季军第3届短篇游戏大赛小游戏及其他组季军

6
发表于 2009-6-12 00:02:16 | 只看该作者
楼上正解{/dy}

编辑后……结果已经过了几楼……你们加油……
[url=http://weibo.com/2238291690?s=6uyXnP]
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
72
在线时间
36 小时
注册时间
2008-5-19
帖子
186
7
 楼主| 发表于 2009-6-12 00:06:42 | 只看该作者


if passable?(@x, @y+1, 2)
      if ($game_player.x - @x) > 1 or
        ($game_player.y - @y ) > 1
          move_down  if @event != nil
      end
    end

再换回
if passable?(@x, @y+1, 2)
      move_down  if @event != nil  #加一个判断,是事件的情况下
   end


上下左右的绕道又都正常了!这是怎么回事??
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-10-16
帖子
450
8
发表于 2009-6-12 00:09:14 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
72
在线时间
36 小时
注册时间
2008-5-19
帖子
186
9
 楼主| 发表于 2009-6-12 00:12:18 | 只看该作者
是这样:

  1. class Game_Character
  2.   #--------------------------------------------------------------------------
  3.   # ● 向下移动
  4.   #     turn_enabled : 本场地位置更改许可标志
  5.   #--------------------------------------------------------------------------
  6.   def move_down(turn_enabled = true)
  7.     # 面向下
  8.     if turn_enabled
  9.       turn_down
  10.     end
  11.     # 可以通行的场合
  12.     if passable?(@x, @y, 2)
  13.       # 面向下
  14.       turn_down
  15.       # 更新坐标
  16.       @y += 1
  17.       # 增加步数
  18.       increase_steps
  19.     # 不能通行的情况下
  20.     else
  21.       
  22.       # 向下走不了,向右可以走,就往右走
  23.       if passable?(@x+1, @y, 6)
  24.         if ($game_player.x - @x) > 1 or
  25.           ($game_player.y - @y ) > 1
  26.           move_right  if @event != nil
  27.         end
  28.       end
  29.       
  30.       # 接触事件的启动判定
  31.       check_event_trigger_touch(@x, @y+1)
  32.     end
  33.   end
  34.   #--------------------------------------------------------------------------
  35.   # ● 向左移动
  36.   #     turn_enabled : 本场地位置更改许可标志
  37.   #--------------------------------------------------------------------------
  38.   def move_left(turn_enabled = true)
  39.     # 面向左
  40.     if turn_enabled
  41.       turn_left
  42.     end
  43.     # 可以通行的情况下
  44.     if passable?(@x, @y, 4)
  45.       # 面向左
  46.       turn_left
  47.       # 更新坐标
  48.       @x -= 1
  49.       # 增加步数
  50.       increase_steps
  51.     # 不能通行的情况下
  52.     else
  53.       
  54.       # 向左走不了,向下可以走,就往下走
  55.       if passable?(@x, @y+1, 2)
  56.         if ($game_player.x - @x) > 1 or
  57.           ($game_player.y - @y ) > 1
  58.           move_down  if @event != nil
  59.         end
  60.       end
  61.       
  62.       # 接触事件的启动判定
  63.       check_event_trigger_touch(@x-1, @y)
  64.     end
  65.   end
  66.   #--------------------------------------------------------------------------
  67.   # ● 向右移动
  68.   #     turn_enabled : 本场地位置更改许可标志
  69.   #--------------------------------------------------------------------------
  70.   def move_right(turn_enabled = true)
  71.     # 面向右
  72.     if turn_enabled
  73.       turn_right
  74.     end
  75.     # 可以通行的场合
  76.     if passable?(@x, @y, 6)
  77.       # 面向右
  78.       turn_right
  79.       # 更新坐标
  80.       @x += 1
  81.       # 增加部数
  82.       increase_steps
  83.     # 不能通行的情况下
  84.     else
  85.       
  86.       # 向右走不了,向下可以走,就往下走
  87.       if passable?(@x, @y+1, 2)
  88.         if ($game_player.x - @x) > 1 or
  89.           ($game_player.y - @y ) > 1
  90.           move_down  if @event != nil
  91.         end
  92.       end
  93.       
  94.       # 接触事件的启动判定
  95.       check_event_trigger_touch(@x+1, @y)
  96.     end
  97.   end
  98.   #--------------------------------------------------------------------------
  99.   # ● 向上移动
  100.   #     turn_enabled : 本场地位置更改许可标志
  101.   #--------------------------------------------------------------------------
  102.   def move_up(turn_enabled = true)
  103.     # 面向上
  104.     if turn_enabled
  105.       turn_up
  106.     end
  107.     # 可以通行的情况下
  108.     if passable?(@x, @y, 8)
  109.       # 面向上
  110.       turn_up
  111.       # 更新坐标
  112.       @y -= 1
  113.       # 歩数増加
  114.       increase_steps
  115.     # 不能通行的情况下
  116.     else
  117.       
  118.       # 向上走不了,向右可以走,就往右走
  119.       if passable?(@x+1, @y, 6)
  120.         if ($game_player.x - @x) > 1 or
  121.           ($game_player.y - @y ) > 1
  122.           move_right  if @event != nil
  123.         end
  124.       end
  125.       
  126.       # 接触事件的启动判定
  127.       check_event_trigger_touch(@x, @y-1)
  128.     end
  129.   end
复制代码
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-10-16
帖子
450
10
发表于 2009-6-12 00:17:58 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-13 10:31

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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