翎·仲秋 发表于 2013-9-25 11:40:00

【VX/VA】新手教程-区域控制事件

既然这几天夕阳没有功夫,我就发一个自己的新手教程吧。

这次是利用区域控制事件开始

其实,这个用事件的条件分歧就可以做到了,但是,如果侍庞大的地图和大量的坐标哪种方法就显得很废柴

用VX默认的事件就可以做到大量的区域发生事件了

首先要在Game_Player加入以下脚本

#--------------------------------------------------------------------------
# ● 判断当前人物所在区域id
#--------------------------------------------------------------------------
def area_id
    for area in $data_areas.values
   if in_area?(area)
       return area.id
   end
   end
end

以上脚本作者:beside

然后,在地图上设置一个区域

VX主程序里的效果

看到那个没有阴影的地方了吗?当角色走到那里时就会有人说话的
放置一个事件

事件ID,一会儿会用到

再设置一个并行处理事件,判断角色是否在区域里

用到的事件脚本:area = $game_player.area_id
$game_map.events.start if area == M    #X代表地图上事件编号 M代表区域编号

然后运行游戏,见证奇迹吧!!!
效果:



异常简陋的工程:

华丽的谢幕

xingmot 发表于 2014-3-29 16:29:30

@翎·仲秋VA范例求发,我的会出错...

翎·仲秋 发表于 2014-3-29 20:54:42

xingmot 发表于 2014-3-29 16:29 static/image/common/back.gif
@翎·仲秋VA范例求发,我的会出错...

VA可以直接用事件的功能
获取一些角色的XY坐标,然后获取坐标上的区域ID带入变量,之后条件分歧

脚本只适用于VX
页: [1]
查看完整版本: 【VX/VA】新手教程-区域控制事件