Project1

标题: 怎样判断一系列事件所在的地形标志和是否移动 [打印本页]

作者: 精灵使者    时间: 2008-6-18 07:10
标题: 怎样判断一系列事件所在的地形标志和是否移动
精灵碰到这么一个问题:
能否判定一个事件面对的墙壁等是否通行?
以前可以用
$game_player.moving?来判断角色是否通行,现在如何来判断事件呢。
另外一件事就是判断某个事件地形标志的脚本是什么? [LINE]1,#dddddd[/LINE]本贴由论坛斑竹精灵使者结贴,如楼主认为问题未解决,请重新将此贴编辑为“有事请教”,并回帖叙述疑点即可~ ^-^
作者: TERENCE    时间: 2008-6-18 07:24
$game_player.moving?
是判断角色是否移動

判断某个事件地形标志的脚本:
$game_map.terrain_tag($game_map.events[A].x, $game_map.events[A].y)

其中A事件ID编号 [LINE]1,#dddddd[/LINE]版主对此帖的认可:『正确答案,认可你一个 by 精灵』,积分『+100』。
作者: 精灵使者    时间: 2008-6-18 07:44
现在是剩下事件是否可以通行的判定的问题了……
另外附加一个bug:如果设置移动路线的时候移动到了不可移动的地方会死机。
作者: TERENCE    时间: 2008-6-18 08:10
判定一个事件面对的墙壁等是否通行?
$game_player.passable?($game_map.events[A].x,$game_map.events[A].y,方向)

其中A事件ID编号

方向:
789
4X6
123
X是某处位置,
支持8方向。

試試??

作者: 精灵使者    时间: 2008-6-18 08:37
试验过,另外还有考虑好多情况,例如事件之间的相撞情况等等……太复杂了……
作者: TERENCE    时间: 2008-6-18 18:07
以下引用精灵使者于2008-6-18 0:37:12的发言:

试验过,另外还有考虑好多情况,例如事件之间的相撞情况等等……太复杂了……

其实都能用
通式
X=$game_map.events[A].x
Y=$game_map.events[A].y

unless $game_map.events[A].passable?(X,Y,方向)
....
end
来判断事件与事件是否相鄰近(相撞时)
但是在方向的部份可能需要4个判断式
如果是八方就需要8个判断式

只要事件A四周有事件,这判断式就会回传FALSE(可以利用FALSE的瞬間)
但你地图上每个事件都要有相撞情况~~~那就得写上每个事件的鄰近(相撞时)判断式

就四方举例:
如果该地图上有N个事件
就需要N*4个該判断式
作者: 精灵使者    时间: 2008-6-18 18:09
准备做小游戏而准备的……最多要计算24个事件的是否相撞……
没有其他太多的办法了吗?
作者: TERENCE    时间: 2008-6-18 18:23
以下引用精灵使者于2008-6-18 10:09:47的发言:

准备做小游戏而准备的……最多要计算24个事件的是否相撞……
没有其他太多的办法了吗?

我囧了~~~24个事件~~~~这么多
目前我只有想到这个办法了~~~~

作者: TERENCE    时间: 2008-6-18 18:39
問一下精灵
在相撞判断式内的
叙述句(所執行的東西)
都一样吗??
作者: link006007    时间: 2008-6-18 20:12
简单得说  Game_Player 怎么用 Game_Event 就怎么用
作者: 怪乖小韩呀    时间: 2008-6-18 20:57
提示: 作者被禁止或删除 内容自动屏蔽
作者: 精灵使者    时间: 2008-6-19 01:22
以下引用TERENCE于2008-6-18 10:39:04的发言:

問一下精灵
在相撞判断式内的
叙述句(所執行的東西)
都一样吗??

不一样,当我移动东西的时候,那些被判定相撞的东西会排除在外。我不知道哪些时间和哪些时间相撞……看来我只能用少一些的事件来做了……(目前在做小游戏中)
作者: 精灵使者    时间: 2008-6-19 02:42
成功了!
我的核心系统已经完成,抓紧时间继续做去……
奖励就给龙皇好了。
多谢!~




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