Minecraft(我的世界)中文论坛

标题: [1.8][kongbai,87]用指令方块模拟枪器(含后坐力,换弹速度,弹夹设置)

作者: 捌柒    时间: 2014-5-3 11:27
标题: [1.8][kongbai,87]用指令方块模拟枪器(含后坐力,换弹速度,弹夹设置)
本帖最后由 ghyzhi10086 于 2014-5-3 11:29 编辑

前言:这个作品其实做主要的部分是空白菌做的,但因为它发不了贴,所以我增加了一些功能并帮他发了上来
空白菌原本得作品:
/scoreboard objectives add explode dummy 创建一个名为explode的变量
高频
/scoreboard players set @e[type=Arrow] explode 1 {inGround:1b} 给所有落在地上的箭的explode分数设置为1
/execute @e[type=Snowball] ~ ~ ~ kill @e[type=Arrow,r=3] 以雪球杀死周围半径3内的所有箭
/execute @e[type=Snowball] ~ ~1 ~ summon Arrow ~ ~ ~ 在雪球上方召唤一只箭
超高频
/execute @e[type=Snowball] ~ ~ ~ execute @e[type=Arrow,r=3] ~ ~ ~ tp @e[type=Arrow,r=0] @e[type=Snowball,r=3] 把离雪球最近的弓箭传送到雪球的位置
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ summon Creeper ~ ~ ~ {ignited:1,Fuse:3} 在explode分数为1的箭召唤一只待爆的苦力怕
/kill @e[type=Arrow,score_explode_min=1] 杀死所有explode分数为1的弓箭

如上,顺序必须十分严谨!
而我改进是基于上文之上,先是
/scoreboard objectives add quantity dummy 创造一个名为quantity的变量
然后将
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ summon Creeper ~ ~ ~ {ignited:1,Fuse:3} 指令的位置改为:
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ effect @p[team=blue,r=1] 7 1 1 在explode分数为1的箭给半径为1内的蓝队玩家一个1秒的瞬间伤害效果
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ tp @p[team=red] ~ ~ ~ ~ ~-5 在explode分数为1的箭给最近的红队玩家角度上调5度(后座力)
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ clear @p[team=red] snowball 1 1 在explode分数为1的箭清除最近红队玩家的一个雪球
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ scoreboard players remove @p[team=red] quantity 1 在explode分数为1的箭给最近红队玩家的quantity分数减一
然后放一个中继器(档数就是换弹速度)
与/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ testfor @p[score_quantity_min=1,team=red](在explode分数为1的箭检测最近的红队玩家是否quantity分数不小于1)构成与门
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~  give @p[team=red] snowball 1 1 在explode分数为1的箭给予最近红队玩家一个雪球
而弹夹更是简单
/scoreboard objectives add 20 dummy 创造一个20的变量
/scoreboard objectives add number dummy 创造一个名为number的变量
/scoreboard objectives add quantity2 dummy 创造一个名为quantity2的变量
然后设置进入服务器就触发:/scoreboard players add @a number 1 给所有玩家的number分数加1
然后/scoreboard players set @a 20 20 给所有玩家的20变量设置为20
高频:
/testfor @p[score_number_min=x,ccore_number=x] {SelectedItemSlot:5} 检测number分数为x的玩家是否选中6号物品栏(x为任意数字,或者用tellraw,不过我不会用这个指令)
   -true
    /clear @p[score_number_min=x,ccore_number=x] redstone 1 1 给number分数为x的玩家清除1格红石(这里的redstone只是代表弹夹,任何物品不限)
    /scoreboard players operation @p[score_number_min=x,ccore_number=x] 20  -= @p quantity 将玩家的20变量减去quantity变量
    /scoreboard players operation @p[score_number_min=x,ccore_number=x] quantity2  -= @p 20 将玩家的quantity2变量减去20变量
    /testfor @p[score_number_min=x,ccore_number=x,score_quantity2_min=1] 检测玩家的quantity2变量是否不小于1
       -true
        /give @p[score_number_min=x,ccore_number=x] snowball 给玩家一个雪球
        /scoreboard players set @p[score_number_min=x,ccore_number=x] quantity 20 将玩家的quantity分数设置为20
        /scoreboard players set @a 20 20 给所有玩家的20变量设置为20
QAQ哎哟妈呀我终于打完了,虽然我也知道没有图片没人看,但还是手贱发一个贴把
前文:
手雷系统
爆破系统

[groupid=546]Command Block Logic[/groupid]
作者: 494917508    时间: 2014-5-3 11:28
大神我们做朋友吧,好厉害啊
作者: wkyyzhb    时间: 2014-5-3 11:30
为何要这么屌!
汝甚屌也,令尊知否!
插件mod什么的弱爆了都!
作者: asddasd54    时间: 2014-5-3 11:30
感谢lzhhhh
作者: kongbaiyo    时间: 2014-5-3 11:32
我是懒得发而已嘛233
作者: 捌柒    时间: 2014-5-3 11:33
kongbaiyo 发表于 2014-5-3 11:32
我是懒得发而已嘛233

懒得发……=A=你个坟蛋
作者: kongbaiyo    时间: 2014-5-3 11:38
变量名只能以数字、字母和下划线“_”构成
变量名不能以数字开头= =
变量名不要与编程语言中原有的特殊关键字相同
大多数编程语言都有这类规定...
计分板中变量名最好也不要有下划线...因为score_name_min
会有误解
你居然还不吸取申奥的教训= =
作者: 审奥不解释    时间: 2014-5-3 11:42
狩猎开始了!Let the hunt begin!
话说你千辛万苦就为了发这个啊!
作者: 1525967679    时间: 2014-5-3 11:47
我去 LZ厉害{:10_492:}
作者: songfeitong    时间: 2014-5-3 14:00
求图片QAQ
作者: ⭐✔️    时间: 2014-5-3 15:58
无图无代码
作者: 月颜丿    时间: 2014-5-4 00:15
kongbaiyo 发表于 2014-5-3 11:32
我是懒得发而已嘛233

如果你发了那么你也是大神了,可惜你没发
作者: 可可可可可乐    时间: 2015-3-8 23:09
不知道论坛有没有挖坟这一说法  但是你的后座系统如果有俩个玩家距离很近会不会误判?
作者: chyx    时间: 2015-3-9 13:00
kongbaiyo 发表于 2014-5-3 11:38
变量名只能以数字、字母和下划线“_”构成
变量名不能以数字开头= =
变量名不要与编程语言中原有的特殊关键 ...

我上次就呵呵了 查了半天发现是实体名有特殊字符
作者: 爱心魔王FHC    时间: 2015-3-9 20:18
为什么不来点图,一堆代码看下去好累
作者: 捌柒    时间: 2015-3-11 14:51
可可可可可乐 发表于 2015-3-8 23:09
不知道论坛有没有挖坟这一说法  但是你的后座系统如果有俩个玩家距离很近会不会误判? ...

你挖坟了,现在应该有更好的算法了
作者: adfdswcwc    时间: 2015-3-11 18:27
误区,这么拽,请收膝盖。
作者: adfdswcwc    时间: 2015-3-11 18:27
饿饿饿饿饿饿饿饿饿饿饿饿饿饿饿饿饿
作者: 咕噜and呼噜    时间: 2015-3-22 13:20
表示你为什么也是PotatoMaster的头像?
作者: cossining    时间: 2019-7-5 20:08
吾乃小白,此种指令乃天书也,内含不知一二,只将复制ctrl+v也