网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
可签
7
级以上的吧
50
个
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
12月29日
漏签
0
天
gamemaker吧
关注:
13,690
贴子:
95,853
看贴
图片
吧主推荐
视频
玩乐
7
回复贴,共
1
页
<返回gamemaker吧
>0< 加载中...
问一个GM8的房间问题。可不可以让两个房间里的实例同时保持运
只看楼主
收藏
回复
lalalacn90
面向对象
7
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
问一个GM8的房间问题。可不可以让两个房间里的实例同时保持运行?比如我第一个房间设置全局变量money,设置持续。在第二个房间的可见实例里设个时钟,不设持续,每分钟money增加100。这时我再切回第一个房间,但是money却不会再增加了。有没有什么办法让第一个房间继续增加,并且不让第二个房间的实例出现在第一个房间?
送TA礼物
来自
Android客户端
1楼
2020-04-29 12:32
回复
q糖豆p
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
Q:可不可以让两个房间里的实例同时保持运行?
A:不可以,只有“房间内存在的实例”才会执行相关动作。
Q:比如我第一个房间设置全局变量money,设置持续。
A:不可以,变量没有“持续”属性。但全局变量不会在房间切换时消失。
Q:在第二个房间的可见实例里设个时钟,不设持续,每分钟money增加100。这时我再切回第一个房间,但是money却不会再增加了。
A:理论上这里不单单是“不再增加”,而应该会“回到初始值”,除非你有些地方的描述与制作事实不符。
Q:有没有什么办法让第一个房间继续增加,并且不让第二个房间的实例出现在第一个房间?
A:只要A房间里有实例能确保global.money每分钟增加100,方法实在是太多了……不过我有几个问题要反问:
RQ1:(目的/设计意图)money是在什么时间定义的初始值?
RQ2:(目的/设计意图)money是在什么情况下自行增加,一开始就会还是进过房间2以后才会?
RQ3:(目的/设计意图)money在什么情况下需要回到初始值?
RQ4:(方法/架构)房间1和房间2存在较大的逻辑差异还是仅仅是地图编辑上的“地理位置”差异?//即是否考虑按单个房间来处理
RQ5:(现状/BUG处理)如果是在房间1进行的初始化全局变量/生成某个持续的instance,每次从房间2回到房间1时是否会发生全局变量的值被重置/持续的instance数量增加?
IP属地:北京
2楼
2020-04-29 15:07
回复(1)
收起回复
2025-12-29 23:54:07
广告
不感兴趣
开通SVIP免广告
坐着的天神
语法提高
4
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
楼上吧主大大已经回答不可以了。。
不过,仔细看了下楼楼的问题,我猜测下你的目的,你是希望在特定房间内获得一个buff对吗?
那么这种的常见做法是不是可以换个思路解决,直接把代码写在人物的object身上,通过判定当前所在房间来增加buff,
比如
if(当前房间 == 增加money的房间){
timer += 1;
if(timer == 3600){
money += 100;
timer = 0;
}
}
IP属地:河南
3楼
2020-04-29 19:29
回复(2)
收起回复
lalalacn90
面向对象
7
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
嗯,知道两个房间的实例不可同时运行就好了。我的设置是这样的,在第一个房间里放一个不可见的实例,让它持续,命名全局变量money,并且把money的数值绘制在房间上方。然后设置一个按钮点击就会切换到第二个房间。第二个房间里放一个实例,每十秒增加50money,并且也设置按钮可以回到第一个房间。这样只要在第二个房间money每十秒就会增加50,切回第一个界面后,money不会回到初始值,但是也不会再增加。我现在明白了只有当前房间的实例会运行就可以了,我就麻烦点,给那个实例设置持续,让实例在第一个房间不可见在第二个房间可见。
来自
Android客户端
4楼
2020-04-30 18:39
回复
收起回复
MikuScarlet
团队之首
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
让两个房间的实例同时运行有一个很邪道的方法。
给每一个实例都写上一个变量_room,用来保存它们所在的房间,在执行各种事件的时候如果当前房间不是那个房间的话就直接返回,并且全部都勾选保持。
在碰撞啥的时候,检测_room不一样就不碰撞。(最好别使用默认的碰撞函数,会出大问题)
不过鉴于这种方法特别麻烦,而且会导致有大量实例,所以想想就好。
IP属地:广东
5楼
2020-04-30 19:13
回复
收起回复
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧热议榜
1
俩娃非亲生,男子怒告前妻赔22w
2118060
2
商K毁三观,纯爱作者转写后宫文
1531780
3
村里壕气发钱,吧友秒变柠檬精
1468096
4
高校现不雅标语,学生举报反挨骂
1092393
5
抄袭?仙剑4RE神似33号远征队
950274
6
局座神预言,斩杀线下美军无人用
874425
7
网易失策滑跪,兔头学姐硬刚对线
827928
8
抖友硬编移民潮,剧本堪称逆天
703164
9
大的来了!东部战区台岛周边演习
565740
10
弟弟拒养天降外甥,怒告甩锅亲姐
416620
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示