Project1

标题: 用事件做天气系统,解决室内的问题。 [打印本页]

作者: 1243852    时间: 2012-9-24 20:25
标题: 用事件做天气系统,解决室内的问题。
  游戏,,是一个带有昼夜系统的无限循环游戏。。


我想加入随机天气。

即,在每天开始时(7点钟。)设置一个随机数0-3

条件分歧,=0的时候,下雨 =1 下大雨 =2 下雪  =3 天晴(即什么都不下。)。

这样一来,就遇到一个问题。如果下雨的天气,当玩家进入室内时,天气仍然是下雨,明显不显示。

我本来想过,在进入室内的场所移动事件里面,加入关闭天气这一说。。但是关闭了天气的话,从室内再出来。天气也就是跟着停下来了。换句话说带雨带雪的天气,只能维持到玩家进入室内之前。进入室内再出来后,就没了。。。这明显也会成为一个BUG。

于是我又想到,在出室内的时候,加入一个天气打开。。 但是仍然有问题,假如是晴天,我进入室内,再出来,就变成下雨了。明显仍然是BUG。


所以,咨询请教一下各位大神。。如果在本是下雨(雪)天的情况下,室外可以继续下雨,进入室内后,就停止了呢?
作者: 布里蓝    时间: 2012-9-24 21:05
在场所移动那个事件下加天气
作者: 双黄连    时间: 2012-9-24 21:18
用开关,在室外建个自动执行事件,打开天气,暂时消除事件;在室内建个自动执行事件,关闭天气,暂时消除事件。
作者: 1243852    时间: 2012-9-24 23:23
双黄连 发表于 2012-9-24 21:18
用开关,在室外建个自动执行事件,打开天气,暂时消除事件;在室内建个自动执行事件,关闭天气,暂时消除事 ...

现在有个新问题。。关于设置天气的问题。

首先,我设置了个公共事件,“天气开始”  “游戏开始”开关打开后,并行处理该公共事件

条件分歧
当变量“天气”=0的时候
打开雨天气开关。
关闭晴天气开关
=1的时候
关闭雨天气
打开晴天气


公共事件2 天气计算  同样“游戏开始”开关打开时,并行处理此公共事件

内容

条件分歧
当时变量等于7时,打开“天气”开关。

公共事件3 天气计算2 当“天气”开关打开后,并行处理该公共事件

设置天气随机数0-1
关闭“天气”开关


这样出现了个问题,事件不断的在刷新。 因为时间7点钟,要现实时间半个小时后才会过去,所以时间变量只要在7这个位置时,此时间就会不断刷新,“天气”开关会一直 开、关、开、关。而天气随机数也会跟着,不断刷新,0、1、0、1

有没有什么办法让他只刷新一次就好。。
而又是公共事件一样的,控制全局?

(因为此游戏,玩家有多个房子,我不确定以后的玩家会从那个房子开始新的一天。)
作者: alann    时间: 2012-9-25 09:11
这种写法麻烦得快射了……别用公共事件了。

就在你要有天气效果的地图上建一个并行透明事件,
当时变量等于7时,你那堆麻烦计算完成一次之后打开独立开关A,
新建一页,触发条件是打开独立开关A,当时间等于8的时候,独立开关A关闭

然后在那个事件旁边再建一个并行透明事件,
里面写
当变量“天气”=0的时候
打开雨天气开关。
关闭晴天气开关
=1的时候
关闭雨天气
打开晴天气

然后
在进入室内的场所移动事件里面,加入关闭天气


后面需要有天气的地图就把这两个事件不知粘贴过去,看看行不行
作者: 亿万星辰    时间: 2012-9-25 10:04
总的来说,公共事件还是不错的选择,可以在场景移动后先打开或关闭一个用于控制的开关,然后在开关后执行公共事件。
公共事件里,根据刚才的开关时打开还是关闭,来决定是否进行天气切换,还是直接切回没有天气的状态。
作者: Password    时间: 2012-9-25 18:28
嘛,这样也许可以
这样,先设置个变量,是判断变量,即这个变量=天气的随机数,在一开始的时候就设置
进入房间的时候,天气=0
出房间的时候再用判断变量,相当于一个临时储存。
主体思路就是这样……复杂的话可能还需要点开关辅助,这个苏君没有试过。

作者: 1119062607    时间: 2012-9-27 17:57
{:2_274:}脚本改编...牛
作者: 1119062607    时间: 2012-11-8 18:58
1119062607 发表于 2012-9-27 17:57
脚本改编...牛

洛洛,人家不是故意的,只是不知道灌水是啥...




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