Project1

标题: 关于在事件前物品的使用 [打印本页]

作者: xyy13575650799    时间: 2019-8-16 20:48
标题: 关于在事件前物品的使用
如题,我想做出类似魔女之家那样在事件前使用特定物品触发剧情的效果。抄了论坛里大佬的脚本https://rpg.blue/thread-189882-1-1.html,但是如果不想让道具使用一次就消耗掉的话,那个事件就可以反复触发……(独立开关什么的也不顶用)请问有没有方法可以规避,或者有什么更好的思路吗?先谢谢了。
作者: Six_Fish    时间: 2019-8-16 21:31
用条件分歧:当XX开关打开的时候才可以触发你要的事件
-
其实这种必须在事件前才能使用的道具根本用不着脚本吧……
作者: Maplex    时间: 2019-8-16 22:23
我个人使用的方法是利用公共事件,先用角色的坐标、朝向等等给变量赋值,然后再以此判断角色是否面对着触发剧情的东西使用物品……
这么做缺点大概是每个物品都要单独做一个公共事件,但优点就是可以把剧情直接写在对应的物品的公共事件里(?这样算优点吗
想偷懒的话甚至可以把重复的部分也建成公共事件随时调用——



(虽然截图是VA的但是原理是一样的)
另外,在实践层点击地图上的任意地方,编辑器右下角就会显示地图ID以及该点的坐标了!
作者: guoxiaomi    时间: 2019-8-17 01:11
本帖最后由 guoxiaomi 于 2019-8-17 01:12 编辑

哈哈,这个链接挖出了黄鸡当年的黑历史,原帖14楼说的就是你这种情况吧?
作者: xyy13575650799    时间: 2019-8-17 08:09
guoxiaomi 发表于 2019-8-17 01:11
哈哈,这个链接挖出了黄鸡当年的黑历史,原帖14楼说的就是你这种情况吧? ...

对的!
作者: xyy13575650799    时间: 2019-8-17 08:13
Maplex 发表于 2019-8-16 22:23
我个人使用的方法是利用公共事件,先用角色的坐标、朝向等等给变量赋值,然后再以此判断角色是否面对着触发 ...

我昨天摸索出类似的方法,但后来想想,比如说我要做一个在泉水旁“持有空瓶”打水的事件,那我不是得对整个岸边做满事件么(而且判断条件还各不相同)……
作者: 灯笼菜刀王    时间: 2019-8-17 10:07
本帖最后由 灯笼菜刀王 于 2019-8-17 10:08 编辑
xyy13575650799 发表于 2019-8-17 08:13
我昨天摸索出类似的方法,但后来想想,比如说我要做一个在泉水旁“持有空瓶”打水的事件,那我不是得对整 ...


一般这种情况是用坐标判定,  让道具调用公共事件,然后先判断主角坐标是否在范围内, 是的话执行打水事件, 否的话把道具+1(消耗道具的情况下补回去)

不过如果范围不规则的话, 坐标判断起来很麻烦, 给你个比较便捷的方法, 用地形标志来判断
事件脚本
d = $game_player.direction
x,y = $game_player.x,$game_player.y
x += d == 4 ? -1 : d == 6 ? 1 : 0
y += d == 2 ? 1 : d == 8 ? -1 : 0
if $game_map.terrain_tag(x, y) == 10086
  $game_switches[10087] = true
else
  $game_switches[10087] = false
end

执行这个脚本,  当主角面前1格的地形标志为10086的时候, 就打开10087号开关, 之后要干嘛干嘛吧




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