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

Project1

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

[已经过期] 斜角触发事件

[复制链接]

Lv5.捕梦者

梦石
0
星屑
35186
在线时间
4169 小时
注册时间
2007-12-15
帖子
10067
跳转到指定楼层
1
发表于 2019-11-15 08:04:50 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 89444640 于 2019-11-15 08:07 编辑

xp默认是四个朝向移动,但是走起来蛋疼,用了伪八方或真或真八方移动后,手感变好了但是有个一直没解决的问题,一旦斜角移动就不能在斜向接触的时候触发不能穿透的事件了,意思就是如果是挡路事件,无朝向需求,可以穿透,角色踩在上面就算的,在加上范围判定后,在斜角移动时可以触发,用地图跳转控制角色位置。或者只有一个元件可通行的狭窄通道,也可以。
那么在宽阔地图上,不能做成穿透的明雷,如何进行斜角范围触发呢?
伪八方的面相判断时,按先按下的方向去判断角色朝向,地图上显示的就是角色面相这个方向去走斜角,那么,能不能通过某种方法,判断这个朝向,然后进行与主角接触和与事件接触,的事件触发呢?

Lv5.捕梦者

梦石
0
星屑
39016
在线时间
5717 小时
注册时间
2006-11-10
帖子
6619
2
发表于 2019-11-15 10:30:17 | 只看该作者
本帖最后由 灯笼菜刀王 于 2019-11-15 10:33 编辑

可以啊, 单纯的加判定很简单 找到 Game_Character 3 这个脚本(你也一样是这里)

  #--------------------------------------------------------------------------
  # ● 向左下移动
  #--------------------------------------------------------------------------
  def move_lower_left
    # 没有固定面向的场合
    unless @direction_fix
      # 朝向是右的情况下适合的面是左面、朝向是上的情况下适合的面是下面
      @direction = (@direction == 6 ? 4 : @direction == 8 ? 2 : @direction)
    end
    # 下→左、左→下 的通道可以通行的情况下
    if (passable?(@x, @y, 2) and passable?(@x, @y + 1, 4)) or
       (passable?(@x, @y, 4) and passable?(@x - 1, @y, 2))
      # 更新坐标
      @x -= 1
      @y += 1
      # 增加步数
      increase_steps
    end
    if @direction == 4 and !passable?(@x-1, @y, 6)
        check_event_trigger_touch(@x-1, @y)
    end
    if @direction == 2 and !passable?(@x, @y+1, 8)
        check_event_trigger_touch(@x, @y+1)
    end

  end

加上这两句就可以了 @direction == 2 意思是 朝向为2的时候,也就是朝下, !passable?(@x, @y+1, 8) 表示 自身 坐标的X,Y+1,朝上 的位置不可通行的情况下(也就是自己下面一格不能从上面进去的时候)  
check_event_trigger_touch(@x, @y+1) 这句是接触启动括号内坐标的事件,

这一段的意思就是 当朝向为2 and 自己下方一格不能从方向8进去的时候(也就是不能通行), 调用接触启动事件

下面的 右下 左上 右上 也加上同样的两句(要改一下朝向和坐标)

然后去体验下效果, 我只能提醒你, 结果可能和你想象的不一样

评分

参与人数 1星屑 +30 收起 理由
RyanBern + 30 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-23 13:28

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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