Minecraft(我的世界)中文论坛

 找回密码
 注册(register)

!header_login!

只需一步,立刻登录

查看: 3097|回复: 16

[教程] 【TCP|Ms】3D打砖块—1.9小游戏

[复制链接]
发表于 2016-1-30 11:05:19 | 显示全部楼层 |阅读模式

您尚未登录,立即登录享受更好的浏览体验!

您需要 登录 才可以下载或查看,没有帐号?注册(register)

x
本帖最后由 MsYqgzt 于 2016-8-7 18:11 编辑

哟大家好~这里是考试归来的Ms~今天给大家带来的是考后制作的小游戏作品—3D打砖块【Pong】
这个作品并没有周全考虑到游戏性的问题,比较偏向技术向的演示,所有要过关的话难度是蛮大的_(:зゝ∠)_


这里是较为简短的演示视频,希望大家给个五星评价~
地址 http://www.bilibili.com/video/av3696469/



存档在下面放出、


那么开始这次的技巧分享,这个打砖块啊,主要特点在于球,球体模型是材质包的作用。
可以看到是一个带有发光透视效果的球体物品模型,用到了1.9的{Passengers}和计分板的tag
  1. /execute @e[type=ArmorStand,tag=Board] ~0.5 ~ ~ /summon ArmorStand ~ ~ ~ {Invulnerable:1b,Invisible:1b,NoGravity:1b,CustomName:"Ball",Passengers:[0:{id:"Item",Item: {id:"minecraft:sea_lantern",Count:1b,Damage:0s},Glowing:1b,Tags:[0:"Ball"],CustomName:"Ball",PickupDelay:32767,Age:-32768}]}
复制代码


整个地图的所有运动组件都是以盔甲架为载体。一幅图直观表达



                               
登录/注册后可看大图


作为具有三维矢量运动属性的球,需要创建 三维变量 和 反弹判定 的变量,二者接口衔接,效果就达到了。同时考虑bug的触发问题,球体移动的速度不能过大。【否则穿墙飞出场地】



                               
登录/注册后可看大图


以坐标系为标准,指针方向为正,反方向为负。指定变量值为45
  1. /tp @e[type=ArmorStand,score_x=45,score_x_min=45,name=Ball] ~0.2 ~ ~
复制代码
  1. /tp @e[type=ArmorStand,score_x=-45,score_x_min=-45,name=Ball] ~-0.2 ~ ~
复制代码
  1. /tp @e[type=ArmorStand,score_y=45,score_y_min=45,name=Ball] ~ ~0.2 ~
复制代码
  1. /tp @e[type=ArmorStand,score_y=-45,score_y_min=-45,name=Ball] ~ ~-0.2 ~
复制代码
  1. /tp @e[type=ArmorStand,score_z=45,score_z_min=45,name=Ball] ~ ~ ~0.2
复制代码
  1. /tp @e[type=ArmorStand,score_z=-45,score_z_min=-45,name=Ball] ~ ~ ~-0.2
复制代码

如何取反的问题其实不难,穷举方法很多,个人使用的是设定一个定值—direction假名的变量为-1

场地内部裹着一层屏障方块。探测碰撞
  1. /execute @e[type=ArmorStand,name=Ball] ~ ~1 ~ detect ~0.3 ~ ~ minecraft:barrier 0 /scoreboard players operation @e[type=ArmorStand,score_x_min=30,score_x=60,c=1,name=Ball] x *= direction condition
复制代码
  1. /execute @e[type=ArmorStand,name=Ball] ~ ~1 ~ detect ~ ~0.3 ~ minecraft:barrier 0 /scoreboard players operation @e[type=ArmorStand,score_y_min=30,score_y=60,c=1] y *= direction condition
复制代码
  1. /execute @e[type=ArmorStand,name=Ball] ~ ~1 ~ detect ~ ~ ~0.3 minecraft:barrier 0 /scoreboard players operation @e[type=ArmorStand,score_z_min=30,score_z=60,c=1] z *= direction condition
复制代码

反方向原理相同,将X、Y、Z的存储数据直接取反,运动状态与tp的系统联动,产生反弹效果。



碰撞砖块并击碎也是利用了距离差来实现。
这里的所有砖块都是羊毛,通过材质包更改贴图。【除了裂纹砖是原型贴图】

这样一来穷举工作量就小了很多
  1. /execute @e[type=ArmorStand,name=Ball,score_Fire=0] ~ ~1 ~ detect ~0.3 ~ ~ minecraft:wool -1 /scoreboard players operation @e[type=ArmorStand,score_x_min=30,score_x=60,c=1,name=Ball,score_Fire=0] x *= direction condition
复制代码
  1. /execute @e[type=ArmorStand,name=Ball,score_Fire=0] ~ ~1 ~ detect ~0.3 ~ ~ minecraft:wool -1 /setblock ~1 ~ ~ minecraft:air 0 destroy
复制代码

将石砖打成裂纹砖的方法相同,改变替换方块的种类即可。



有兴趣研究或者游玩的同学,这里放上下载地址:http://pan.baidu.com/s/1kVOtAbt

=================END====================






来自群组: The Command's Power

评分

参与人数 5人气 +10 金粒 +66 贡献 +1 收起 理由
rubeng + 1 + 15 看完视频就滚过来了
FHC红石 + 3 天哪这都能做
乙烯_中国 + 4 + 50 + 1 难产
苦力小小怕 + 1 + 1 我居然第一次认真看懂了!
lxc0123 + 1 第一排喊屌屌屌

查看全部评分

回复

使用道具 举报

头像被屏蔽
发表于 2016-1-30 11:09:02 | 显示全部楼层

评分

参与人数 1金粒 +3 收起 理由
MsYqgzt + 3 页面不存在的话,刷新即可

查看全部评分

回复

使用道具 举报

发表于 2016-1-30 11:53:12 | 显示全部楼层
这个厉害……
不精不是人系列……
回复

使用道具 举报

发表于 2016-1-30 11:55:25 | 显示全部楼层
我想知道你是怎么知道打到羊毛的哪个方向的

点评

跟反弹的原理相同,只要精确到在破坏方块之前  详情 回复 发表于 2016-1-30 13:25
回复

使用道具 举报

 楼主| 发表于 2016-1-30 13:25:41 | 显示全部楼层
chyx 发表于 2016-1-30 11:55
我想知道你是怎么知道打到羊毛的哪个方向的

跟反弹的原理相同,只要精确到在破坏方块之前
回复

使用道具 举报

发表于 2016-1-30 21:02:23 | 显示全部楼层
妥妥五星,妥妥净化
存档下载好就可以玩咯。
对了,支持多人么?

点评

只是单人地图  详情 回复 发表于 2016-1-31 09:57
回复

使用道具 举报

 楼主| 发表于 2016-1-31 09:57:53 | 显示全部楼层
屠灵神 发表于 2016-1-30 21:02
妥妥五星,妥妥净化
存档下载好就可以玩咯。
对了,支持多人么?

只是单人地图
回复

使用道具 举报

发表于 2016-6-21 16:19:49 | 显示全部楼层
6666666666666666
回复

使用道具 举报

发表于 2016-7-8 18:41:38 | 显示全部楼层
可以啊,楼主,不错
回复

使用道具 举报

发表于 2016-7-9 16:45:33 | 显示全部楼层
太厉害了这个,管理快加精
回复

使用道具 举报

发表于 2016-7-9 17:25:35 | 显示全部楼层
小游戏很不错。

点评

233顶啊顶啊顶搂搂上  详情 回复 发表于 2016-7-23 16:29
回复

使用道具 举报

发表于 2016-7-15 20:42:40 | 显示全部楼层
非常好的游戏啊,哈哈
回复

使用道具 举报

发表于 2016-7-17 18:25:06 | 显示全部楼层
eeeeeeeeeeeeeeeeeeeeeeeee
回复

使用道具 举报

头像被屏蔽
发表于 2016-7-17 19:41:58 | 显示全部楼层
可以 这很强势!~

点评

666666666666666666666666666666666666666666666666666666666666666666666666666666666666 楼主你太帅了  详情 回复 发表于 2016-7-22 19:32
回复

使用道具 举报

发表于 2016-7-22 19:32:52 | 显示全部楼层
祖宗 发表于 2016-7-17 19:41
可以 这很强势!~

666666666666666666666666666666666666666666666666666666666666666666666666666666666666
楼主你太帅了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册(register)

本版积分规则

Archiver|小黑屋|Mcbbs.net ( 京ICP备15023768号-1 ) | 手机版本

GMT+8, 2017-11-23 19:25 , Processed in 0.075044 second(s), 7 queries , Memcache On.

"Minecraft"以及"我的世界"为Mojang Synergies AB的商标。本站与Mojang以及微软公司没有从属关系。

© 2010-2017 我的世界中文论坛 版权所有。本站原创图文内容版权属于原创作者,未经许可不得转载。

快速回复 返回顶部 返回列表