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

Project1

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

[已经解决] 如何提取阻挡事件的编号

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
231 小时
注册时间
2007-12-17
帖子
541
跳转到指定楼层
1
发表于 2015-7-7 13:52:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
Game_Character3 脚本中的一段,在其中添加:当向左移动被事件阻挡,就提取阻挡事件的编号,代入一个变量。

  #--------------------------------------------------------------------------
  # ● 向左移动
  #     turn_enabled : 本场地位置更改许可标志
  #--------------------------------------------------------------------------
  def move_left(turn_enabled = true)
    # 面向左
    if turn_enabled
      turn_left
    end
    # 可以通行的情况下
    if passable?(@x, @y, 4)
      # 面向左
      turn_left
      # 更新坐标
      @x -= 1
      # 增加步数
      increase_steps
    # 不能通行的情况下
    else
      # 接触事件的启动判定
      check_event_trigger_touch(@x-1, @y)
    end
  end

评分

参与人数 1星屑 +35 收起 理由
RyanBern + 35 手动认可奖励

查看全部评分

Lv5.捕梦者

梦石
0
星屑
33479
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

2
发表于 2015-7-7 13:59:42 | 只看该作者
passable? 不只是判断有无事件阻拦,地图不能通行也由其判断。
xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv2.观梦者

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

贵宾

3
发表于 2015-7-7 15:27:45 | 只看该作者
如果你这个事件没啥具体内容的话,你不如给那个事件一个并行事件,让它往一个变量里写值就可了。
如果阻挡的事件本身是个含有具体内容的npc的话,那就通过脚本根据角色坐标及朝向判断那个坐标有哪个()事件。
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1232
在线时间
1017 小时
注册时间
2011-4-30
帖子
1516
4
发表于 2015-7-8 20:08:08 | 只看该作者
Game_Map的def passable?(x, y, d, self_event = nil)
    for event in events.values
      # 自己以外的元件与坐标相同的情况
      if event.tile_id >= 0 and event != self_event and
         event.x == x and event.y == y and not event.through
        # 如果障碍物的接触被设置的情况下
        if @passages[event.tile_id] & bit != 0
          # 不能通行
          return false
        # 如果全方向的障碍物的接触被设置的情况下
        elsif @passages[event.tile_id] & 0x0f == 0x0f
          # 不能通行
          return false
        # 这以外的优先度为 0 的情况下
        elsif @priorities[event.tile_id] == 0
          # 可以通行
          return true
        end
      end
    end
这些里面,提取不能通行时的事件id就好

评分

参与人数 1梦石 +1 收起 理由
RyanBern + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
231 小时
注册时间
2007-12-17
帖子
541
5
 楼主| 发表于 2015-7-9 16:07:45 | 只看该作者
认可四楼吧
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-25 10:21

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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