网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
可签
7
级以上的吧
50
个
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
05月15日
漏签
0
天
gamemaker吧
关注:
13,582
贴子:
94,181
看贴
图片
吧主推荐
视频
玩乐
8
回复贴,共
1
页
<返回gamemaker吧
>0< 加载中...
gm8实现消除星星中的星星自然下落
只看楼主
收藏
回复
宋异人
初涉创业
14
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
消除星星或者叫消灭星星,消除宝石等是一款非常流行的小游戏,游戏开局会生成10*10的区域,区域中有不同颜色的星星,当玩家点击连在一起星星时,相当相连区域的星星就会被消除,而被消除的星星上方的所有星星都会向下掉落,当不存在连在一起的星星时本局就会结束。
这里不谈判断能否消除的算法,这里只谈方块消除之后,其他方块如何移动的方法。
送TA礼物
IP属地:河南
1楼
2020-03-29 17:00
回复
宋异人
初涉创业
14
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
方案一:
以前,我采用过最简单的方法,就是在每个方块的消除(instance destroy)事件中,执行一个动作:判断其上方是否存在方块,如果存在,则所有其上方的方块均向下位移一个方块高度单位:其伪代码如下:
for(i=y-64;i>=32;i-=64) //从当前位置的上边开始向上遍历
{
temp=instance_position(x,i,obj_ceil); //获取指定位置的方块
with(temp) //使用with结构
{
y+=64; //纵坐标增加一个方块高度单位
}
}
这样也能实现下落效果,但方块下落过程都是瞬移,比较突兀。那么如果对上面的代码做一下修改能不能实现呢?
完整版的我上传百度文库了,地址在这里:https冒号双斜杠wenku点baidu点com/view/f0147b40f66527d3240c844769eae009591ba27f
IP属地:河南
2楼
2020-03-29 17:02
回复
收起回复
大四象
软件架构
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
这样的效果?
?
IP属地:贵州
3楼
2020-03-29 18:22
回复(2)
收起回复
大四象
软件架构
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
创建里
ay=y;
步里
with(object5)
{
if(y<ay+60)
{
y+=6
}
}
刚我试了下可以同步下落了,,把上面的数值60改为变量就可以灵活应用了,ay也要在移动完毕后重新赋值
IP属地:贵州
4楼
2020-03-29 23:45
回复
收起回复
大四象
软件架构
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
我又测试了下,是可以用的
,去调试一下吧,
IP属地:贵州
5楼
2020-03-30 00:50
回复
收起回复
窝窝头
-
初涉语法
2
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
老哥外包吗
IP属地:浙江
来自
iPhone客户端
6楼
2020-04-05 00:09
回复(1)
收起回复
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧热议榜
1
歌手第二期竞演歌单
1518330
2
旮旯吧挑战:3个词猜GALGAME
1385475
3
你来打分!谁去歌手2024能乱杀
1000496
4
原神最受欢迎男角色榜
919755
5
为什么说玩军模的是真大佬
773292
6
TES 0-2 G2
675200
7
王曼昱不配奥运单打吗?
618840
8
我发网文小流派 吧友来打分
529483
9
yaoyao被罚款2万禁赛1场
427658
10
阿波罗登月是真是假?
358407
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示