2.0.0.7
This commit is contained in:
1 parent
f4693c8aae
commit
f12afa1972
6 files changed
+235
-173
No files matched your search
@@ -10,13 +10,25 @@ A Minecraft Datapack
|
|||||||
- 支持Minecraft1.16.x
|
- 支持Minecraft1.16.x
|
||||||
- 抬头并按一下shift来打开设置界面
|
- 抬头并按一下shift来打开设置界面
|
||||||
- 压缩包中的tagplayer.sc
|
- 压缩包中的tagplayer.sc
|
||||||
- 把它放在world/scripts中然后“/reload”!
|
- 把它放在“存档名/scripts”中然后“/script load tagplayer”!
|
||||||
- 使用/tagplayer 命令生成假人可以避免假人被数据包提供的记分板捕捉到~
|
- 使用/tagplayer 命令生成假人可以避免假人被数据包提供的记分板捕捉到~
|
||||||
- tagplayer现在需要地毯mod1.4.18或以上版本来运行
|
- tagplayer需要地毯mod1.4.21或以上版本来运行
|
||||||
|
- 使用帮助可以在游戏中输入“/tagplayer”查看
|
||||||
- 压缩包中的restore_scores.sc工具可以恢复或从1.0版本升级记分板~
|
- 压缩包中的restore_scores.sc工具可以恢复或从1.0版本升级记分板~
|
||||||
- 把它放在world/scripts中然后“/reload”
|
- 把它放在“存档名/scripts”中然后“/script load restore_scores”
|
||||||
- *该工具会先删除旧的记分板*
|
- *该工具会先删除旧的记分板*
|
||||||
- 输入“/restore_scores by_whitelist”恢复白名单内的玩家的记分板
|
- 输入“/restore_scores by_whitelist”恢复白名单内的玩家的记分板
|
||||||
|
- *用完记得删除它并“/script unload restore_scores”*
|
||||||
|
- restore_scores需要地毯mod1.4.13或以上版本来运行
|
||||||
|
##### - v2.0.0.8(计划)
|
||||||
|
- 添加单独的记分板升级工具
|
||||||
|
##### - v2.0.0.7
|
||||||
|
- tagplayer添加了新版carpet新指令,可以为假人切换热键栏
|
||||||
|
- 现在tagplayer需要carpet1.4.21或以上版本运行!
|
||||||
|
- 现在tagplayer可以给自己设置动作了
|
||||||
|
- 添加“/tagplayer shadow”指令将自己变为前缀为“挂机”的假人
|
||||||
|
##### - v2.0.0.6
|
||||||
|
- 修复restore_scores.sc工具不能恢复受伤害榜(抖M榜)的bug
|
||||||
##### - v2.0.0.5
|
##### - v2.0.0.5
|
||||||
- 修复挖掘榜部分工具不起作用的bug
|
- 修复挖掘榜部分工具不起作用的bug
|
||||||
- 添加restore_scores.sc工具便于恢复或从1.0版本升级记分板
|
- 添加restore_scores.sc工具便于恢复或从1.0版本升级记分板
|
||||||
|
|||||||
@@ -3,6 +3,3 @@ carpet setDefault commandScript true
|
|||||||
carpet setDefault commandScriptACE ops
|
carpet setDefault commandScriptACE ops
|
||||||
carpet setDefault scriptsAutoload true
|
carpet setDefault scriptsAutoload true
|
||||||
carpet setDefault commandPlayer ops
|
carpet setDefault commandPlayer ops
|
||||||
execute store success score tagplayer parameter run script load tagplayer
|
|
||||||
#提示已安装
|
|
||||||
execute if score tagplayer parameter matches 1 run tellraw @a {"text": "[信息]Tagplayer已启用","color": "#5fff00"}
|
|
||||||
@@ -16,15 +16,15 @@ function fz:login/logintips/install
|
|||||||
function fz:carpet/carpet
|
function fz:carpet/carpet
|
||||||
#版本信息
|
#版本信息
|
||||||
data merge storage fz.installed {installed:1b}
|
data merge storage fz.installed {installed:1b}
|
||||||
data merge storage fz {version:Beta-2.0.0.5}
|
data merge storage fz {version:Beta-2.0.0.7}
|
||||||
data merge storage fz {date:2020-12.7}
|
data merge storage fz {date:2020-12.15}
|
||||||
data merge storage fz {time:"04:06"}
|
data merge storage fz {time:"19:32"}
|
||||||
data merge storage fz {snapshot:-SNAPSHOT}
|
data merge storage fz {snapshot:-SNAPSHOT}
|
||||||
##data remove storage fz snapshot
|
##data remove storage fz snapshot
|
||||||
tellraw @a {"text": "[信息]启动完毕","color": "#5fff00"}
|
tellraw @a {"text": "[信息]启动完毕","color": "#5fff00"}
|
||||||
#提示已安装
|
#提示已安装
|
||||||
tellraw @a {"text": "[信息]安装完成!","color": "#5fff00"}
|
tellraw @a {"text": "[信息]安装完成!","color": "#5fff00"}
|
||||||
#info: #5fff00
|
#info: #5fff00 信息
|
||||||
#alert: #d7ff00
|
#alert: #d7ff00 提醒
|
||||||
#warn: #ffd900
|
#warn: #ffd900 警告
|
||||||
#error: #ff6100
|
#error: #ff6100 错误
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
#如果未安装且未卸载则安装
|
#如果未安装且未卸载则安装
|
||||||
execute unless data storage fz.installed {installed:1b} unless data storage fz.installed {installed:0b} run function fz:install
|
execute unless data storage fz.installed {installed:1b} unless data storage fz.installed {installed:0b} run function fz:install
|
||||||
#如果版本正确且已安装则开始运行
|
#如果版本正确且已安装则开始运行
|
||||||
execute if data storage fz {version:Alpha-2.0.0.5} if data storage fz.installed {installed:1b} run function fz:start
|
execute if data storage fz {version:Beta-2.0.0.7} if data storage fz.installed {installed:1b} run function fz:start
|
||||||
#如果版本不符则更新
|
#如果版本不符则更新
|
||||||
execute unless data storage fz {version:Alpha-2.0.0.5} run function fz:update
|
execute unless data storage fz {version:Beta-2.0.0.7} run function fz:update
|
||||||
#输出版本信息
|
#输出版本信息
|
||||||
tellraw @a [{"text": "[版本信息]FZ's Datapack-","color": "#ffd900"},{"nbt":"version","storage":"fz","color": "#ffd900"},{"nbt": "snapshot", "storage": "fz","color": "red"}]
|
tellraw @a [{"text": "[版本信息]FZ's Datapack-","color": "#ffd900"},{"nbt":"version","storage":"fz","color": "#ffd900"},{"nbt": "snapshot", "storage": "fz","color": "red"}]
|
||||||
+9
-7
@@ -1,7 +1,9 @@
|
|||||||
|
global_version = '1.1.0';
|
||||||
__config() -> {
|
__config() -> {
|
||||||
'scope' -> 'global'
|
'scope' -> 'global',
|
||||||
|
'stay_loaded' -> false
|
||||||
};
|
};
|
||||||
__command() -> 'root command';
|
__command() -> print('版本:' + global_version);
|
||||||
global_bl = l('stone', 'granite', 'polished_granite', 'diorite', 'polished_diorite', 'andesite', 'polished_andesite', 'grass_block',
|
global_bl = l('stone', 'granite', 'polished_granite', 'diorite', 'polished_diorite', 'andesite', 'polished_andesite', 'grass_block',
|
||||||
'dirt', 'coarse_dirt', 'podzol', 'crimson_nylium', 'warped_nylium', 'cobblestone', 'oak_planks', 'spruce_planks', 'birch_planks',
|
'dirt', 'coarse_dirt', 'podzol', 'crimson_nylium', 'warped_nylium', 'cobblestone', 'oak_planks', 'spruce_planks', 'birch_planks',
|
||||||
'jungle_planks', 'acacia_planks', 'dark_oak_planks', 'crimson_planks', 'warped_planks', 'sand', 'red_sand', 'gravel', 'gold_ore',
|
'jungle_planks', 'acacia_planks', 'dark_oak_planks', 'crimson_planks', 'warped_planks', 'sand', 'red_sand', 'gravel', 'gold_ore',
|
||||||
@@ -133,10 +135,10 @@ __restore(pl, s_player) ->(
|
|||||||
print(actime);
|
print(actime);
|
||||||
scoreboard('activation', pl:i, actime);
|
scoreboard('activation', pl:i, actime);
|
||||||
total_actime += actime;
|
total_actime += actime;
|
||||||
//活跃时间
|
//抖M榜
|
||||||
hurt = statistic(pl:i, 'custom', 'play_one_minute')/72000;
|
hurt = statistic(pl:i, 'custom', 'damage_taken')/100;
|
||||||
print(hurt);
|
print(hurt);
|
||||||
scoreboard('activation', pl:i, hurt);
|
scoreboard('damageTaken', pl:i, hurt);
|
||||||
total_hurt += hurt;
|
total_hurt += hurt;
|
||||||
//死亡榜
|
//死亡榜
|
||||||
death = statistic(pl:i, 'custom', 'deaths');
|
death = statistic(pl:i, 'custom', 'deaths');
|
||||||
@@ -181,8 +183,8 @@ __restore(pl, s_player) ->(
|
|||||||
scoreboard('totalList', '全部木大', total_death);
|
scoreboard('totalList', '全部木大', total_death);
|
||||||
scoreboard('activation', '总在线时间(h)', total_actime);
|
scoreboard('activation', '总在线时间(h)', total_actime);
|
||||||
scoreboard('totalList', '总在线时间(h)', total_actime);
|
scoreboard('totalList', '总在线时间(h)', total_actime);
|
||||||
scoreboard('damageTaken', '群p抖m', total_hurt);
|
scoreboard('damageTaken', '群p抖M', total_hurt);
|
||||||
scoreboard('totalList', '群p抖m)', total_hurt);
|
scoreboard('totalList', '群p抖M)', total_hurt);
|
||||||
game_tick(50);
|
game_tick(50);
|
||||||
run('function fz:scoreboards/install')
|
run('function fz:scoreboards/install')
|
||||||
);
|
);
|
||||||
|
|||||||
+202
-151
@@ -2,16 +2,20 @@
|
|||||||
//************请将该文件放入"world\scripts"文件夹中************
|
//************请将该文件放入"world\scripts"文件夹中************
|
||||||
//*************************************************************
|
//*************************************************************
|
||||||
scoreboard_add('carpetBot');
|
scoreboard_add('carpetBot');
|
||||||
run('team add carpetBot');
|
team_add('carpetBot');
|
||||||
run('team modify carpetBot prefix "假的 "');
|
team_add('shadowedPlayer');
|
||||||
global_version = '2.0.0';
|
team_property('carpetBot', 'prefix', '假的');
|
||||||
|
team_property('shadowedPlayer', 'prefix', '挂机');
|
||||||
|
global_version = '2.1.0';
|
||||||
|
global_carpet_version = split('\\+v',system_info('scarpet_version'));
|
||||||
|
global_filename = system_info('app_name');
|
||||||
__config() -> {
|
__config() -> {
|
||||||
'stay_loaded' -> true,
|
'stay_loaded' -> true,
|
||||||
'allow_command_conflicts' -> true,
|
'allow_command_conflicts' -> true,
|
||||||
'commands' -> {
|
'commands' -> {
|
||||||
'' -> 'help',
|
'' -> 'help',
|
||||||
'spawn <player>' -> 'summon',
|
'spawn <player>' -> 'summon',
|
||||||
'kill <bot>' -> 'kill',
|
'kill <killbot>' -> 'kill',
|
||||||
'killall' -> 'killall',
|
'killall' -> 'killall',
|
||||||
'attack <bot>' -> 'attack_once',
|
'attack <bot>' -> 'attack_once',
|
||||||
'attack <bot> continuous' -> 'attack_continuous',
|
'attack <bot> continuous' -> 'attack_continuous',
|
||||||
@@ -66,16 +70,39 @@ __config() -> {
|
|||||||
'move <bot> right' -> 'move_right',
|
'move <bot> right' -> 'move_right',
|
||||||
'move <bot> stop' -> 'move_stop',
|
'move <bot> stop' -> 'move_stop',
|
||||||
'stop <bot>' -> 'stop',
|
'stop <bot>' -> 'stop',
|
||||||
'check <bot>' -> 'check',
|
'check <player>' -> 'check',
|
||||||
'checkall' -> 'checkall',
|
'checkall' -> 'checkall',
|
||||||
'tp <bot> <position>' -> 'tp',
|
'tp <bot> <position>' -> 'tp',
|
||||||
'tp <bot> <position> <rotation>' -> 'tp_with_rotation',
|
'tp <bot> <position> <rotation>' -> 'tp_with_rotation',
|
||||||
'tp <bot> <player>' -> 'tp_to_player',
|
'tp <bot> <player>' -> 'tp_to_player',
|
||||||
'tp <bot> <position> atBot' -> 'tp_at_bot',
|
'tp <bot> <position> atBot' -> 'tp_at_bot',
|
||||||
'tp <bot> <position> <rotation> atBot' -> 'tp_at_bot_with_rotation',
|
'tp <bot> <position> <rotation> atBot' -> 'tp_at_bot_with_rotation',
|
||||||
|
'hotbar <bot> <hotbar>' -> 'hotbar',
|
||||||
|
'shadow' -> 'shadow',
|
||||||
},
|
},
|
||||||
'arguments' -> {
|
'arguments' -> {
|
||||||
|
'hotbar' -> {
|
||||||
|
'type' -> 'int',
|
||||||
|
'min' -> 1,
|
||||||
|
'max' -> 9,
|
||||||
|
'suggest' -> [1,2,3,4,5,6,7,8,9]
|
||||||
|
},
|
||||||
'bot' -> {
|
'bot' -> {
|
||||||
|
'type' -> 'term',
|
||||||
|
'suggester' -> _(args) -> (
|
||||||
|
player_list = player('all');
|
||||||
|
bot_list = l();
|
||||||
|
c_for(i = 0, i < length(player_list), i += 1,
|
||||||
|
one_player_str = player_list:i;
|
||||||
|
if (scoreboard('carpetBot', one_player_str) == 1,
|
||||||
|
put(bot_list, length(bot_list), player_list:i)
|
||||||
|
);
|
||||||
|
);
|
||||||
|
put(bot_list, length(bot_list), player());
|
||||||
|
return(bot_list)
|
||||||
|
)
|
||||||
|
},
|
||||||
|
'killbot' -> {
|
||||||
'type' -> 'term',
|
'type' -> 'term',
|
||||||
'suggester' -> _(args) -> (
|
'suggester' -> _(args) -> (
|
||||||
player_list = player('all');
|
player_list = player('all');
|
||||||
@@ -106,18 +133,51 @@ __config() -> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
__check_offline(player_name) ->(
|
__on_player_disconnects(player, reason) ->(
|
||||||
|
delete_all_files(player);
|
||||||
|
if(scoreboard('carpetBot', player) == 1,
|
||||||
|
scoreboard_remove('actimeCounter', player);
|
||||||
|
scoreboard_remove('carpetBot', player);
|
||||||
|
team_leave(player);
|
||||||
|
leaveGame = scoreboard('leaveGame', player);
|
||||||
|
scoreboard('leaveGame', player, leaveGame + 1);
|
||||||
|
);
|
||||||
|
);
|
||||||
|
__on_server_shuts_down() ->(
|
||||||
|
player_list = player('all');
|
||||||
|
c_for(i = 0, i < length(player_list), i += 1,
|
||||||
|
delete_all_files(player_list:i);
|
||||||
|
if(scoreboard('carpetBot', player) == 1,
|
||||||
|
scoreboard_remove('actimeCounter', player_list:i);
|
||||||
|
team_leave(player);
|
||||||
|
)
|
||||||
|
);
|
||||||
|
scoreboard_remove('carpetBot');
|
||||||
|
team_remove('carpetBot');
|
||||||
|
team_remove('shadowedPlayer')
|
||||||
|
);
|
||||||
|
check_fakeplayer(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
if (!f_player,
|
if (!f_player,
|
||||||
|
(
|
||||||
print('§4假人'+player_name+'未在线');
|
print('§4假人'+player_name+'未在线');
|
||||||
exit()
|
exit()
|
||||||
);
|
),
|
||||||
if (scoreboard('carpetBot', f_player) != 1,
|
scoreboard('carpetBot', f_player) != 1 && f_player != player(),
|
||||||
|
(
|
||||||
print('§4'+f_player+'不是假人');
|
print('§4'+f_player+'不是假人');
|
||||||
exit()
|
exit()
|
||||||
)
|
)
|
||||||
|
)
|
||||||
);
|
);
|
||||||
__check_online(player_name) ->(
|
check_offline(player_name) ->(
|
||||||
|
f_player = player(player_name);
|
||||||
|
if (!f_player,
|
||||||
|
print('§4玩家或假人'+player_name+'未在线');
|
||||||
|
exit()
|
||||||
|
)
|
||||||
|
);
|
||||||
|
check_online(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
if (f_player,
|
if (f_player,
|
||||||
if (scoreboard('carpetBot', f_player) == 1,
|
if (scoreboard('carpetBot', f_player) == 1,
|
||||||
@@ -128,7 +188,7 @@ __check_online(player_name) ->(
|
|||||||
exit()
|
exit()
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
__check_pos(x) ->(
|
check_pos(x) ->(
|
||||||
x = number(x);
|
x = number(x);
|
||||||
if(x == null,
|
if(x == null,
|
||||||
print('§4请输入正确的坐标');
|
print('§4请输入正确的坐标');
|
||||||
@@ -136,33 +196,13 @@ __check_pos(x) ->(
|
|||||||
);
|
);
|
||||||
return(x)
|
return(x)
|
||||||
);
|
);
|
||||||
__check_dim(s_player,f_player) ->(
|
check_dim(s_player,f_player) ->(
|
||||||
if (s_player~'dimension' != f_player~'dimension',
|
if (s_player~'dimension' != f_player~'dimension',
|
||||||
print('§4不在同一维度!');
|
print('§4不在同一维度!');
|
||||||
exit()
|
exit()
|
||||||
);
|
);
|
||||||
);
|
);
|
||||||
__player_list(i,player_list) ->(
|
delete_all_files(f_player) ->(
|
||||||
one_player_list = split(' ',join('',slice(player_list,i,i+1)));
|
|
||||||
if(slice(one_player_list,0,1) == l('假的'),
|
|
||||||
one_player_str = join('',slice(one_player_list,1,2));
|
|
||||||
''
|
|
||||||
);
|
|
||||||
if(slice(one_player_list,0,1) != l('假的'),
|
|
||||||
one_player_str = join('',one_player_list);
|
|
||||||
''
|
|
||||||
);
|
|
||||||
return(one_player_str)
|
|
||||||
);
|
|
||||||
__on_player_disconnects(player, reason) ->(
|
|
||||||
if(scoreboard('carpetBot', player) == 1,
|
|
||||||
scoreboard_remove('actimeCounter', player);
|
|
||||||
__delete_all_files(player);
|
|
||||||
scoreboard_remove('carpetBot', player);
|
|
||||||
run('team leave '+ player)
|
|
||||||
);
|
|
||||||
);
|
|
||||||
__delete_all_files(f_player) ->(
|
|
||||||
delete_file(f_player + '-' + 'attack', 'text');
|
delete_file(f_player + '-' + 'attack', 'text');
|
||||||
delete_file(f_player + '-' + 'drop', 'text');
|
delete_file(f_player + '-' + 'drop', 'text');
|
||||||
delete_file(f_player + '-' + 'drop_stack', 'text');
|
delete_file(f_player + '-' + 'drop_stack', 'text');
|
||||||
@@ -170,42 +210,48 @@ __delete_all_files(f_player) ->(
|
|||||||
delete_file(f_player + '-' + 'swap_hands', 'text');
|
delete_file(f_player + '-' + 'swap_hands', 'text');
|
||||||
delete_file(f_player + '-' + 'use', 'text');
|
delete_file(f_player + '-' + 'use', 'text');
|
||||||
delete_file(f_player + '-' + 'move_vertical', 'text');
|
delete_file(f_player + '-' + 'move_vertical', 'text');
|
||||||
delete_file(f_player + '-' + 'move_transverse', 'text');
|
delete_file(f_player + '-' + 'move_transverse', 'text')
|
||||||
);
|
);
|
||||||
help() ->(
|
help() ->(
|
||||||
print('--使用帮助:');
|
print('--使用帮助:');
|
||||||
print('/tagplayer spawn <玩家名>\n - 生成假人');
|
print('/' + global_filename + ' spawn <玩家名>\n - 生成假人');
|
||||||
print('/tagplayer kill <玩家名>\n - 删除假人');
|
print('/' + global_filename + ' kill <玩家名>\n - 删除假人');
|
||||||
print('/tagplayer killall\n - 删除全部假人');
|
print('/' + global_filename + ' killall\n - 删除全部假人');
|
||||||
print('/tagplayer tp <玩家名> <x> <y> <z> (<仰俯> <偏转>) (atBot)\n - 传送假人到<x>,<y>,<z>,可选<仰俯>和<偏转>角度,如以<atBot>结尾则相对坐标以假人为原点');
|
print('/' + global_filename + ' tp <玩家名> <x> <y> <z> (<仰俯> <偏转>) (atBot)\n - 传送假人到<x>,<y>,<z>,可选<仰俯>和<偏转>角度,如以<atBot>结尾则相对坐标以假人为原点');
|
||||||
print('/tagplayer look <玩家名> <仰俯> <偏转>\n - 转动假人视角,<x>、<y>可替换为“s”来代表你的视角方向');
|
print('/' + global_filename + ' look <玩家名> <仰俯> <偏转>\n - 转动假人视角,<x>、<y>可替换为“s”来代表你的视角方向');
|
||||||
print('/tagplayer look <玩家名> <up/down/east/west/south/north>\n - 让假人向<上/下/东/西/南/北>方向看');
|
print('/' + global_filename + ' look <玩家名> <up/down/east/west/south/north>\n - 让假人向<上/下/东/西/南/北>方向看');
|
||||||
print('/tagplayer look <玩家名> <back/left/right>\n - 让假人向<后/左/右>方向看');
|
print('/' + global_filename + ' look <玩家名> <back/left/right>\n - 让假人向<后/左/右>方向看');
|
||||||
print('/tagplayer move <玩家名> <backward/forward/left/right>\n - 让假人<向前/向后/向左/向右>移动');
|
print('/' + global_filename + ' move <玩家名> <backward/forward/left/right>\n - 让假人<向前/向后/向左/向右>移动');
|
||||||
print('/tagplayer <attack/drop/dropStack/jump/swapHands/use> <玩家名> continuous\n - 让假人持续<攻击或挖掘/丢一个物品/丢一组物品/跳跃/换手/使用物品>');
|
print('/' + global_filename + ' <attack/drop/dropStack/jump/swapHands/use> <玩家名> continuous\n - 让假人持续<攻击或挖掘/丢一个物品/丢一组物品/跳跃/换手/使用物品>');
|
||||||
print('/tagplayer <attack/drop/dropStack/jump/swapHands/use> <玩家名> interval <整数>\n - 让假人每<整数>游戏刻<攻击/丢一个物品/丢一组物品/跳跃/换手/使用物品>一次');
|
print('/' + global_filename + ' <attack/drop/dropStack/jump/swapHands/use> <玩家名> interval <整数>\n - 让假人每<整数>游戏刻<攻击/丢一个物品/丢一组物品/跳跃/换手/使用物品>一次');
|
||||||
print('/tagplayer <attack/drop/dropStack/jump/swapHands/use> <玩家名> once\n - 让假人<攻击或挖掘/丢一个物品/丢一组物品/跳跃/换手/使用物品>一次');
|
print('/' + global_filename + ' <attack/drop/dropStack/jump/swapHands/use> <玩家名> once\n - 让假人<攻击或挖掘/丢一个物品/丢一组物品/跳跃/换手/使用物品>一次');
|
||||||
print('/tagplayer <drop/dropStack> <玩家名> <mainhand/offhand>\n - 让假人<丢一个/丢一组><主手/副手>的物品');
|
print('/' + global_filename + ' <hotbar> <玩家名> <1-9>\n - 更改假人使用的热键栏');
|
||||||
print('/tagplayer <sneak/unsneak> <玩家名>\n - 让假人<潜行/站立>');
|
print('/' + global_filename + ' <drop/dropStack> <玩家名> <mainhand/offhand>\n - 让假人<丢一个/丢一组><主手/副手>的物品');
|
||||||
print('/tagplayer <sprint/unsprint> <玩家名>\n - 让假人准备<疾跑/行走>,在水中疾跑以游泳');
|
print('/' + global_filename + ' <sneak/unsneak> <玩家名>\n - 让假人<潜行/站立>');
|
||||||
print('/tagplayer <mount/dismount> <玩家名>\n - 让假人<乘坐/卸下>');
|
print('/' + global_filename + ' <sprint/unsprint> <玩家名>\n - 让假人准备<疾跑/行走>,在水中疾跑以游泳');
|
||||||
print('/tagplayer stop <玩家名>\n - 停止假人的一切动作');
|
print('/' + global_filename + ' <mount/dismount> <玩家名>\n - 让假人<乘坐/卸下>');
|
||||||
print('/tagplayer check <玩家名>\n - 检查假人状态');
|
print('/' + global_filename + ' stop <玩家名>\n - 停止假人的一切动作');
|
||||||
print('/tagplayer checkall\n - 检查所有假人状态');
|
print('/' + global_filename + ' check <玩家名>\n - 检查假人状态');
|
||||||
print('Version: '+global_version);
|
print('/' + global_filename + ' checkall\n - 检查所有假人状态');
|
||||||
|
print('tagplayer版本: ' + global_version);
|
||||||
|
print('carpet版本: ' + global_carpet_version:0);
|
||||||
|
if(number(global_carpet_version:1) < 201216 || global_carpet_version == null,
|
||||||
|
print('§4tagplayer需要地毯1.4.21或以上来运行!否则会出现预期之外的问题')
|
||||||
|
);
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
reload() ->(
|
reload() ->(
|
||||||
run('script unload tagplayer');
|
run('script load ' + global_filename);
|
||||||
run('script load tagplayer');
|
run('tellraw @a {"text":"+ global_filename +重载成功!"}');
|
||||||
run('tellraw @a {"text":"tagplayer重载成功!"}');
|
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
summon(player_name) ->(
|
summon(player_name) ->(
|
||||||
player_name = slice(player_name,0,15);
|
player_name = slice(player_name,0,15);
|
||||||
__check_online(player_name);
|
check_online(player_name);
|
||||||
s_player = player();
|
s_player = player();
|
||||||
run(str('player %s spawn at %f %f %f facing %f %f', player_name, s_player~'x', s_player~'y', s_player~'z', query(s_player, 'yaw'), query(s_player, 'pitch')
|
run(
|
||||||
|
str('player %s spawn at %f %f %f facing %f %f',
|
||||||
|
player_name, s_player~'x', s_player~'y', s_player~'z', query(s_player, 'yaw'), query(s_player, 'pitch')
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
@@ -213,35 +259,30 @@ summon(player_name) ->(
|
|||||||
print('§4生成失败');
|
print('§4生成失败');
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
__delete_all_files(f_player);
|
delete_all_files(f_player);
|
||||||
run('team join carpetBot '+ f_player);
|
team_add('carpetBot', f_player);
|
||||||
run('tellraw @a {"text":"↑假的"}');
|
run('tellraw @a {"text":"↑假的"}');
|
||||||
scoreboard('carpetBot', f_player, 1);
|
scoreboard('carpetBot', f_player, 1);
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
kill(player_name) ->(
|
kill(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
|
if(f_player != player(),
|
||||||
|
(
|
||||||
|
run('tellraw @a {"text":"↓假的"}');
|
||||||
run(str('player %s kill', f_player));
|
run(str('player %s kill', f_player));
|
||||||
game_tick(50);
|
),
|
||||||
run('tellraw @a {"text":"↑假的"}');
|
print('§4你不是假人')
|
||||||
|
);
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
killall() ->(
|
killall() ->(
|
||||||
i = 0;
|
player_list = team_list('carpetBot');
|
||||||
player_list = player('all');
|
c_for(i = 0, i < length(player_list), i += 1,
|
||||||
loop(2147483647,,,
|
run(str('player %s kill', player_list:i));
|
||||||
one_player_str = __player_list(i,player_list);
|
|
||||||
if(one_player_str == '',
|
|
||||||
break()
|
|
||||||
);
|
);
|
||||||
if(scoreboard('carpetBot', one_player_str) == 1,
|
if(player_list == l(),
|
||||||
do_fake_player = 1
|
|
||||||
);
|
|
||||||
run(str('player %s kill', one_player_str));
|
|
||||||
i += 1
|
|
||||||
);
|
|
||||||
if(do_fake_player != 1,
|
|
||||||
print('§4不存在假人');
|
print('§4不存在假人');
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
@@ -249,10 +290,23 @@ killall() ->(
|
|||||||
run('tellraw @a {"text":"已清除全部假人"}');
|
run('tellraw @a {"text":"已清除全部假人"}');
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
|
//挂机
|
||||||
|
shadow() ->(
|
||||||
|
f_player = player();
|
||||||
|
run(str('player %s shadow', f_player));
|
||||||
|
scoreboard('carpetBot', f_player, 1);
|
||||||
|
team_add('shadowedPlayer', f_player);
|
||||||
|
return()
|
||||||
|
);
|
||||||
|
//热键栏
|
||||||
|
hotbar(player_name, hotbar) ->(
|
||||||
|
run(str('player %s hotbar %d', player_name, hotbar));
|
||||||
|
return()
|
||||||
|
);
|
||||||
//攻击
|
//攻击
|
||||||
attack_continuous(player_name) ->(
|
attack_continuous(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s attack continuous', player_name));
|
run(str('player %s attack continuous', player_name));
|
||||||
delete_file(f_player + '-' + 'attack', 'text');
|
delete_file(f_player + '-' + 'attack', 'text');
|
||||||
write_file(f_player + '-' + 'attack', 'text', 0);
|
write_file(f_player + '-' + 'attack', 'text', 0);
|
||||||
@@ -260,7 +314,7 @@ attack_continuous(player_name) ->(
|
|||||||
);
|
);
|
||||||
attack_interval(player_name,tick) ->(
|
attack_interval(player_name,tick) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s attack interval %d', player_name, tick));
|
run(str('player %s attack interval %d', player_name, tick));
|
||||||
delete_file(f_player + '-' + 'attack', 'text');
|
delete_file(f_player + '-' + 'attack', 'text');
|
||||||
write_file(f_player + '-' + 'attack', 'text', tick);
|
write_file(f_player + '-' + 'attack', 'text', tick);
|
||||||
@@ -268,14 +322,14 @@ attack_interval(player_name,tick) ->(
|
|||||||
);
|
);
|
||||||
attack_once(player_name) ->(
|
attack_once(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s attack once', player_name));
|
run(str('player %s attack once', player_name));
|
||||||
delete_file(f_player + '-' + 'attack', 'text');
|
delete_file(f_player + '-' + 'attack', 'text');
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
attack_stop(player_name) ->(
|
attack_stop(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s attack', player_name));
|
run(str('player %s attack', player_name));
|
||||||
delete_file(f_player + '-' + 'attack', 'text');
|
delete_file(f_player + '-' + 'attack', 'text');
|
||||||
return()
|
return()
|
||||||
@@ -283,7 +337,7 @@ attack_stop(player_name) ->(
|
|||||||
//丢弃
|
//丢弃
|
||||||
drop_continuous(player_name) ->(
|
drop_continuous(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s drop continuous', player_name));
|
run(str('player %s drop continuous', player_name));
|
||||||
delete_file(f_player + '-' + 'drop', 'text');
|
delete_file(f_player + '-' + 'drop', 'text');
|
||||||
write_file(f_player + '-' + 'drop', 'text', 0);
|
write_file(f_player + '-' + 'drop', 'text', 0);
|
||||||
@@ -291,46 +345,46 @@ drop_continuous(player_name) ->(
|
|||||||
);
|
);
|
||||||
drop_interval(player_name,tick) ->(
|
drop_interval(player_name,tick) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);␍ run(str('player %s drop interval %d', player_name, tick));
|
check_fakeplayer(player_name);␍ run(str('player %s drop interval %d', player_name, tick));
|
||||||
delete_file(f_player + '-' + 'drop', 'text');
|
delete_file(f_player + '-' + 'drop', 'text');
|
||||||
write_file(f_player + '-' + 'drop', 'text', tick);
|
write_file(f_player + '-' + 'drop', 'text', tick);
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
drop_once(player_name) ->(
|
drop_once(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s drop once', player_name));
|
run(str('player %s drop once', player_name));
|
||||||
delete_file(f_player + '-' + 'drop', 'text');
|
delete_file(f_player + '-' + 'drop', 'text');
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
drop_stop(player_name) ->(
|
drop_stop(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s drop', player_name));
|
run(str('player %s drop', player_name));
|
||||||
delete_file(f_player + '-' + 'drop', 'text');
|
delete_file(f_player + '-' + 'drop', 'text');
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
drop_all(player_name) ->(
|
drop_all(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s drop all', player_name));
|
run(str('player %s drop all', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
drop_offhand(player_name) ->(
|
drop_offhand(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
drop_mainhand(player_name) ->(
|
drop_mainhand(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s drop mainhand', player_name));
|
run(str('player %s drop mainhand', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
//丢弃一组
|
//丢弃一组
|
||||||
drop_stack_continuous(player_name) ->(
|
drop_stack_continuous(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s dropStack continuous', player_name));
|
run(str('player %s dropStack continuous', player_name));
|
||||||
delete_file(f_player + '-' + 'drop_stack', 'text');
|
delete_file(f_player + '-' + 'drop_stack', 'text');
|
||||||
write_file(f_player + '-' + 'drop_stack', 'text', 0);
|
write_file(f_player + '-' + 'drop_stack', 'text', 0);
|
||||||
@@ -338,7 +392,7 @@ drop_stack_continuous(player_name) ->(
|
|||||||
);
|
);
|
||||||
drop_stack_interval(player_name,tick) ->(
|
drop_stack_interval(player_name,tick) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s dropStack interval %d', player_name, tick));
|
run(str('player %s dropStack interval %d', player_name, tick));
|
||||||
delete_file(f_player + '-' + 'drop_stack', 'text');
|
delete_file(f_player + '-' + 'drop_stack', 'text');
|
||||||
write_file(f_player + '-' + 'drop_stack', 'text', tick);
|
write_file(f_player + '-' + 'drop_stack', 'text', tick);
|
||||||
@@ -346,41 +400,40 @@ drop_stack_interval(player_name,tick) ->(
|
|||||||
);
|
);
|
||||||
drop_stack_once(player_name) ->(
|
drop_stack_once(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s dropStack once', player_name));
|
run(str('player %s dropStack once', player_name));
|
||||||
delete(global_bot_state:f_player:'drop_stack');
|
|
||||||
delete_file(f_player + '-' + 'drop_stack', 'text');
|
delete_file(f_player + '-' + 'drop_stack', 'text');
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
drop_stack_stop(player_name) ->(
|
drop_stack_stop(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s dropStack', player_name));
|
run(str('player %s dropStack', player_name));
|
||||||
delete_file(f_player + '-' + 'drop_stack', 'text');
|
delete_file(f_player + '-' + 'drop_stack', 'text');
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
drop_stack_all(player_name) ->(
|
drop_stack_all(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s dropStack all', player_name));
|
run(str('player %s dropStack all', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
drop_stack_offhand(player_name) ->(
|
drop_stack_offhand(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s dropStack offhand', player_name));
|
run(str('player %s dropStack offhand', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
drop_stack_mainhand(player_name) ->(
|
drop_stack_mainhand(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s dropStack mainhand', player_name));
|
run(str('player %s dropStack mainhand', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
//跳跃
|
//跳跃
|
||||||
jump_continuous(player_name) ->(
|
jump_continuous(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s jump continuous', player_name));
|
run(str('player %s jump continuous', player_name));
|
||||||
delete_file(f_player + '-' + 'jump', 'text');
|
delete_file(f_player + '-' + 'jump', 'text');
|
||||||
write_file(f_player + '-' + 'jump', 'text', 0);
|
write_file(f_player + '-' + 'jump', 'text', 0);
|
||||||
@@ -388,7 +441,7 @@ jump_continuous(player_name) ->(
|
|||||||
);
|
);
|
||||||
jump_interval(player_name,tick) ->(
|
jump_interval(player_name,tick) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s jump interval %d', player_name, tick));
|
run(str('player %s jump interval %d', player_name, tick));
|
||||||
delete_file(f_player + '-' + 'jump', 'text');
|
delete_file(f_player + '-' + 'jump', 'text');
|
||||||
write_file(f_player + '-' + 'jump', 'text', tick);
|
write_file(f_player + '-' + 'jump', 'text', tick);
|
||||||
@@ -396,14 +449,14 @@ jump_interval(player_name,tick) ->(
|
|||||||
);
|
);
|
||||||
jump_once(player_name) ->(
|
jump_once(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s jump once', player_name));
|
run(str('player %s jump once', player_name));
|
||||||
delete_file(f_player + '-' + 'jump', 'text');
|
delete_file(f_player + '-' + 'jump', 'text');
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
jump_stop(player_name) ->(
|
jump_stop(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s jump', player_name));
|
run(str('player %s jump', player_name));
|
||||||
delete_file(f_player + '-' + 'jump', 'text');
|
delete_file(f_player + '-' + 'jump', 'text');
|
||||||
return()
|
return()
|
||||||
@@ -411,7 +464,7 @@ jump_stop(player_name) ->(
|
|||||||
//换手
|
//换手
|
||||||
swap_hands_continuous(player_name) ->(
|
swap_hands_continuous(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s swapHands continuous', player_name));
|
run(str('player %s swapHands continuous', player_name));
|
||||||
delete_file(f_player + '-' + 'swap_hands', 'text');
|
delete_file(f_player + '-' + 'swap_hands', 'text');
|
||||||
write_file(f_player + '-' + 'swap_hands', 'text', 0);
|
write_file(f_player + '-' + 'swap_hands', 'text', 0);
|
||||||
@@ -419,7 +472,7 @@ swap_hands_continuous(player_name) ->(
|
|||||||
);
|
);
|
||||||
swap_hands_interval(player_name,tick) ->(
|
swap_hands_interval(player_name,tick) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s swapHands interval %d', player_name, tick));
|
run(str('player %s swapHands interval %d', player_name, tick));
|
||||||
delete_file(f_player + '-' + 'swap_hands', 'text');
|
delete_file(f_player + '-' + 'swap_hands', 'text');
|
||||||
write_file(f_player + '-' + 'swap_hands', 'text', tick);
|
write_file(f_player + '-' + 'swap_hands', 'text', tick);
|
||||||
@@ -427,14 +480,14 @@ swap_hands_interval(player_name,tick) ->(
|
|||||||
);
|
);
|
||||||
swap_hands_once(player_name) ->(
|
swap_hands_once(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s swapHands once', player_name));
|
run(str('player %s swapHands once', player_name));
|
||||||
delete_file(f_player + '-' + 'swap_hands', 'text');
|
delete_file(f_player + '-' + 'swap_hands', 'text');
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
swap_hands_stop(player_name) ->(
|
swap_hands_stop(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s swapHands', player_name));
|
run(str('player %s swapHands', player_name));
|
||||||
delete_file(f_player + '-' + 'swap_hands', 'text');
|
delete_file(f_player + '-' + 'swap_hands', 'text');
|
||||||
return()
|
return()
|
||||||
@@ -442,7 +495,7 @@ swap_hands_stop(player_name) ->(
|
|||||||
//右键
|
//右键
|
||||||
use_continuous(player_name) ->(
|
use_continuous(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s use continuous', player_name));
|
run(str('player %s use continuous', player_name));
|
||||||
delete_file(f_player + '-' + 'use', 'text');
|
delete_file(f_player + '-' + 'use', 'text');
|
||||||
write_file(f_player + '-' + 'use', 'text', 0);
|
write_file(f_player + '-' + 'use', 'text', 0);
|
||||||
@@ -450,21 +503,21 @@ use_continuous(player_name) ->(
|
|||||||
);
|
);
|
||||||
use_interval(player_name,tick) ->(
|
use_interval(player_name,tick) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);␍ run(str('player %s use interval %d', player_name, tick));
|
check_fakeplayer(player_name);␍ run(str('player %s use interval %d', player_name, tick));
|
||||||
delete_file(f_player + '-' + 'use', 'text');
|
delete_file(f_player + '-' + 'use', 'text');
|
||||||
write_file(f_player + '-' + 'use', 'text', tick);
|
write_file(f_player + '-' + 'use', 'text', tick);
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
use_once(player_name) ->(
|
use_once(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s use once', player_name));
|
run(str('player %s use once', player_name));
|
||||||
delete_file(f_player + '-' + 'use', 'text');
|
delete_file(f_player + '-' + 'use', 'text');
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
use_stop(player_name) ->(
|
use_stop(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s use', player_name));
|
run(str('player %s use', player_name));
|
||||||
delete_file(f_player + '-' + 'use', 'text');
|
delete_file(f_player + '-' + 'use', 'text');
|
||||||
return()
|
return()
|
||||||
@@ -472,27 +525,27 @@ use_stop(player_name) ->(
|
|||||||
//骑乘
|
//骑乘
|
||||||
mount(player_name) ->(
|
mount(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s mount', player_name));
|
run(str('player %s mount', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
dismount(player_name) ->(
|
dismount(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s dismount', player_name));
|
run(str('player %s dismount', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
//冲刺
|
//冲刺
|
||||||
sprint(player_name) ->(
|
sprint(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s sprint', player_name));
|
run(str('player %s sprint', player_name));
|
||||||
write_file(f_player + '-' + 'sprint', 'text', tick);
|
write_file(f_player + '-' + 'sprint', 'text', tick);
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
unsprint(player_name) ->(
|
unsprint(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s unsprint', player_name));
|
run(str('player %s unsprint', player_name));
|
||||||
delete_file(f_player + '-' + 'sprint', 'text');
|
delete_file(f_player + '-' + 'sprint', 'text');
|
||||||
return()
|
return()
|
||||||
@@ -500,14 +553,14 @@ unsprint(player_name) ->(
|
|||||||
//下蹲
|
//下蹲
|
||||||
sneak(player_name) ->(
|
sneak(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s sneak', player_name));
|
run(str('player %s sneak', player_name));
|
||||||
write_file(f_player + '-' + 'sneak', 'text', tick);
|
write_file(f_player + '-' + 'sneak', 'text', tick);
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
unsneak(player_name) ->(
|
unsneak(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s unsneak', player_name));
|
run(str('player %s unsneak', player_name));
|
||||||
delete_file(f_player + '-' + 'sneak', 'text');
|
delete_file(f_player + '-' + 'sneak', 'text');
|
||||||
return()
|
return()
|
||||||
@@ -515,19 +568,19 @@ unsneak(player_name) ->(
|
|||||||
//转向
|
//转向
|
||||||
turn_back(player_name) ->(
|
turn_back(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s turn back', player_name));
|
run(str('player %s turn back', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
turn_left(player_name) ->(
|
turn_left(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s turn left', player_name));
|
run(str('player %s turn left', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
turn_right(player_name) ->(
|
turn_right(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s turn right', player_name));
|
run(str('player %s turn right', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
@@ -535,7 +588,7 @@ turn_right(player_name) ->(
|
|||||||
look(player_name,rotation) ->(
|
look(player_name,rotation) ->(
|
||||||
print(rotation);
|
print(rotation);
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
s_player = player();
|
s_player = player();
|
||||||
x = (rotation:1)%360;
|
x = (rotation:1)%360;
|
||||||
y = (rotation:0)%180;
|
y = (rotation:0)%180;
|
||||||
@@ -558,50 +611,50 @@ look(player_name,rotation) ->(
|
|||||||
);
|
);
|
||||||
look_up(player_name) ->(
|
look_up(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s look up', player_name));
|
run(str('player %s look up', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
look_down(player_name) ->(
|
look_down(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s look down', player_name));
|
run(str('player %s look down', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
look_east(player_name) ->(
|
look_east(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s look east', player_name));
|
run(str('player %s look east', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
look_north(player_name) ->(
|
look_north(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s look north', player_name));
|
run(str('player %s look north', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
look_south(player_name) ->(
|
look_south(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s look south', player_name));
|
run(str('player %s look south', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
look_west(player_name) ->(
|
look_west(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s look west', player_name));
|
run(str('player %s look west', player_name));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
look_pos(player_name, position) ->(
|
look_pos(player_name, position) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s look at %f %f %f', player_name, position:0, position:1, position:2));
|
run(str('player %s look at %f %f %f', player_name, position:0, position:1, position:2));
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
//移动
|
//移动
|
||||||
move_backward(player_name) ->(
|
move_backward(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s move backward', player_name));
|
run(str('player %s move backward', player_name));
|
||||||
delete_file(f_player + '-' + 'move_vertical', 'text');
|
delete_file(f_player + '-' + 'move_vertical', 'text');
|
||||||
write_file(f_player + '-' + 'move_vertical', 'text', 'backward');
|
write_file(f_player + '-' + 'move_vertical', 'text', 'backward');
|
||||||
@@ -609,7 +662,7 @@ move_backward(player_name) ->(
|
|||||||
);
|
);
|
||||||
move_forward(player_name) ->(
|
move_forward(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s move forward', player_name));
|
run(str('player %s move forward', player_name));
|
||||||
delete_file(f_player + '-' + 'move_vertical', 'text');
|
delete_file(f_player + '-' + 'move_vertical', 'text');
|
||||||
write_file(f_player + '-' + 'move_vertical', 'text', 'forward');
|
write_file(f_player + '-' + 'move_vertical', 'text', 'forward');
|
||||||
@@ -617,7 +670,7 @@ move_forward(player_name) ->(
|
|||||||
);
|
);
|
||||||
move_left(player_name) ->(
|
move_left(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s move left', player_name));
|
run(str('player %s move left', player_name));
|
||||||
delete_file(f_player + '-' + 'move_transverse', 'text');
|
delete_file(f_player + '-' + 'move_transverse', 'text');
|
||||||
write_file(f_player + '-' + 'move_transverse', 'text', 'left');
|
write_file(f_player + '-' + 'move_transverse', 'text', 'left');
|
||||||
@@ -625,7 +678,7 @@ move_left(player_name) ->(
|
|||||||
);
|
);
|
||||||
move_right(player_name) ->(
|
move_right(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s move right', player_name));
|
run(str('player %s move right', player_name));
|
||||||
delete_file(f_player + '-' + 'move_transverse', 'text');
|
delete_file(f_player + '-' + 'move_transverse', 'text');
|
||||||
write_file(f_player + '-' + 'move_transverse', 'text', 'right');
|
write_file(f_player + '-' + 'move_transverse', 'text', 'right');
|
||||||
@@ -633,7 +686,7 @@ move_right(player_name) ->(
|
|||||||
);
|
);
|
||||||
move_stop(player_name) ->(
|
move_stop(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s move', player_name));
|
run(str('player %s move', player_name));
|
||||||
delete_file(f_player + '-' + 'move_vertical', 'text');
|
delete_file(f_player + '-' + 'move_vertical', 'text');
|
||||||
delete_file(f_player + '-' + 'move_transverse', 'text');
|
delete_file(f_player + '-' + 'move_transverse', 'text');
|
||||||
@@ -642,15 +695,15 @@ move_stop(player_name) ->(
|
|||||||
//停止
|
//停止
|
||||||
stop(player_name) ->(
|
stop(player_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
run(str('player %s stop', player_name));
|
run(str('player %s stop', player_name));
|
||||||
__delete_all_files(f_player);
|
delete_all_files(f_player);
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
//传送
|
//传送
|
||||||
tp(player_name, position) ->(
|
tp(player_name, position) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
s_player = player();
|
s_player = player();
|
||||||
x = position:0;
|
x = position:0;
|
||||||
y = position:1;
|
y = position:1;
|
||||||
@@ -666,7 +719,7 @@ tp(player_name, position) ->(
|
|||||||
);
|
);
|
||||||
tp_with_rotation(player_name, position, rotation) ->(
|
tp_with_rotation(player_name, position, rotation) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
s_player = player();
|
s_player = player();
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
x = position:0;
|
x = position:0;
|
||||||
@@ -696,7 +749,7 @@ tp_with_rotation(player_name, position, rotation) ->(
|
|||||||
);
|
);
|
||||||
tp_to_player(player_name, target_name) ->(
|
tp_to_player(player_name, target_name) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
s_player = player(target_name);
|
s_player = player(target_name);
|
||||||
if (!s_player,
|
if (!s_player,
|
||||||
print('§4玩家未在线');
|
print('§4玩家未在线');
|
||||||
@@ -708,7 +761,7 @@ tp_to_player(player_name, target_name) ->(
|
|||||||
);
|
);
|
||||||
tp_at_bot(player_name, position) ->(
|
tp_at_bot(player_name, position) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
s_player = player();
|
s_player = player();
|
||||||
x = position:0;
|
x = position:0;
|
||||||
y = position:1;
|
y = position:1;
|
||||||
@@ -724,7 +777,7 @@ tp_at_bot(player_name, position) ->(
|
|||||||
);
|
);
|
||||||
tp_at_bot_with_rotation(player_name, position, rotation) ->(
|
tp_at_bot_with_rotation(player_name, position, rotation) ->(
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
check_fakeplayer(player_name);
|
||||||
s_player = player();
|
s_player = player();
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
x = position:0;
|
x = position:0;
|
||||||
@@ -754,9 +807,14 @@ tp_at_bot_with_rotation(player_name, position, rotation) ->(
|
|||||||
);
|
);
|
||||||
//状态检查
|
//状态检查
|
||||||
check(player_name) ->(
|
check(player_name) ->(
|
||||||
|
check_offline(player_name);
|
||||||
f_player = player(player_name);
|
f_player = player(player_name);
|
||||||
__check_offline(player_name);
|
if(scoreboard('carpetBot', f_player) == 1,
|
||||||
|
(
|
||||||
print('假人“'+f_player+'”:');
|
print('假人“'+f_player+'”:');
|
||||||
|
),
|
||||||
|
print('玩家“'+f_player+'”:');
|
||||||
|
);
|
||||||
//血量
|
//血量
|
||||||
inner_health = number(str('%d',query(f_player,'health')+0.9));
|
inner_health = number(str('%d',query(f_player,'health')+0.9));
|
||||||
if(inner_health <= 5,
|
if(inner_health <= 5,
|
||||||
@@ -1120,26 +1178,19 @@ check(player_name) ->(
|
|||||||
noAct = false
|
noAct = false
|
||||||
);
|
);
|
||||||
if(noAct == true,
|
if(noAct == true,
|
||||||
print('- 无动作')
|
print('- 无地毯动作')
|
||||||
);
|
);
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
checkall() ->(
|
checkall() ->(
|
||||||
i = 0;
|
|
||||||
player_list = player('all');
|
player_list = player('all');
|
||||||
loop(2147483647,,,
|
c_for(i = 0, i < length(player_list), i += 1,
|
||||||
one_player_str = __player_list(i,player_list);
|
check(player_list:i);
|
||||||
if(one_player_str == '',
|
|
||||||
break()
|
|
||||||
);
|
|
||||||
if(scoreboard('carpetBot', one_player_str) == 1,
|
|
||||||
check(one_player_str);
|
|
||||||
do_fake_player = 1
|
|
||||||
);
|
|
||||||
i += 1
|
|
||||||
);
|
|
||||||
if(do_fake_player != 1,
|
|
||||||
print('§4当前无假人')
|
|
||||||
);
|
);
|
||||||
return()
|
return()
|
||||||
);
|
);
|
||||||
|
run(str('tellraw @a {"text": "[版本信息]tagplayer版本: ' + global_version + '", "color": "#ffd900"}'));
|
||||||
|
run(str('tellraw @a {"text": "[版本信息]carpet版本: ' + global_carpet_version:0 + '", "color": "#ffd900"}'));
|
||||||
|
if(number(global_carpet_version:1) < 201216 || global_carpet_version == null,
|
||||||
|
run(str('tellraw @a {"text": "[错误]tagplayer需要地毯1.4.21或以上来运行!否则会出现预期之外的问题", "color": "#ff6100"}');)
|
||||||
|
);
|
||||||
Reference in new issue
Block a user