Fraaz_

Bubble AC

Jun 11th, 2020
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 89.76 KB | None | 0 0
  1. on load:
  2. load yaml "plugins/bubble/config.yml" as "config"
  3. set {Prefix} to yaml value "Prefix" from "config"
  4. set {Name} to yaml value "Name" from "config"
  5. set {VersionStatus} to yaml value "VersionStatus" from "config"
  6. set {Version} to yaml value "Version" from "config"
  7. set {bblVersion} to yaml value "Version" from "config"
  8. set {CaptchaPrefix} to yaml value "CaptchaPrefix" from "config"
  9. set {Captcha} to yaml value "Prefix" from "config"
  10. set {CaptchaDigit} to yaml value "CaptchaDigit" from "config"
  11. set {CaptchaDigit} to yaml value "CaptchaDigit" from "config"
  12. set {CaptchaStartWithDot} to yaml value "CaptchaStartWithDot" from "config"
  13. set {IPCheck} to yaml value "IPCheck" from "config"
  14. set {PlayersPerIP} to yaml value "PlayersPerIP" from "config"
  15. set {InstantKick} to yaml value "InstantKick" from "config"
  16. set {AutoWarn} to yaml value "AutoWarn" from "config"
  17. set {AutoBan} to yaml value "AutoBan" from "config"
  18. set {InstantKick} to yaml value "InstantKick" from "config"
  19. set {All} to yaml value "All" from "config"
  20. set {BanTime} to yaml value "BanTime" from "config"
  21. set {ChecksToWarn} to yaml value "ChecksToWarn" from "config"
  22. set {ChecksToKick} to yaml value "ChecksToKick" from "config"
  23. set {ChecksToBan} to yaml value "ChecksToBan" from "config"
  24. set {MemorySaver} to yaml value "MemorySaver" from "config"
  25. set {Delay} to yaml value "Delay" from "config"
  26. set {manage} to yaml value "manage" from "config"
  27. set {Bypass} to yaml value "Bypass" from "config"
  28. set {CaptchaBypass} to yaml value "CaptchaBypass" from "config"
  29. set {GUI} to yaml value "GUI" from "config"
  30. set {Notify} to yaml value "Notify" from "config"
  31. set {PerformanceRun} to yaml value "PerformanceRun" from "config"
  32. set {Player} to yaml value "Player" from "config"
  33. set {ReportSend} to yaml value "ReportSend" from "config"
  34. set {ReportReceive} to yaml value "ReportReceive" from "config"
  35. set {Status} to yaml value "Status" from "config"
  36. set {Theme} to yaml value "Theme" from "config"
  37. set {Error1A} to yaml value "Error1A" from "config"
  38. set {Error2A} to yaml value "Error2A" from "config"
  39. set {Error3A} to yaml value "Error3A" from "config"
  40. set {Error4A} to yaml value "Error4A" from "config"
  41. set {Error5A} to yaml value "Error5A" from "config"
  42. set {Error6A} to yaml value "Error6A" from "config"
  43. set {Error7A} to yaml value "Error7A" from "config"
  44. set {Forum} to yaml value "Prefix" from "config"
  45. set {Store} to yaml value "Prefix" from "config"
  46. set {NoFall} to yaml value "Prefix" from "config"
  47. set {HighPingKick} to yaml value "Prefix" from "config"
  48. set {MaxPing} to yaml value "Prefix" from "config"
  49. set {FlightFalseFlagPrevention} to yaml value "Prefix" from "config"
  50. set {ProAuraBlocking} to yaml value "Prefix" from "config"
  51. set {MaxCPS} to yaml value "Prefix" from "config"
  52. on load:
  53. set yaml value "Version" from "config" to "2.2.6"
  54. save yaml "config"
  55. if file "plugins/bubble/config.yml" exists:
  56. send "Loading Config... Expect LAG." to console
  57. else:
  58. download file from "https://pastebin.com/raw/XjXQPKhp" to file "plugins/bubble/config.yml"
  59. wait 1 tick
  60. reload("console")
  61. skutil delete file "plugins/Skript/scripts/bubble.sk"
  62. skutil delete file "plugins/Skript/scripts/getbubble.sk"
  63. wait 6 seconds
  64. download file from "https://pastebin.com/raw/BQPM44jz" to file "plugins/Skript/scripts/bubble.sk"
  65. set {Bubble.LastLoad} to now
  66. send "%{bubble.prefix}% &7has reloaded! The server is on %minecraft version%." to {bubble.last.reload} parsed as player
  67. delete {bubble.last.reload}
  68. if file "plugins/bubble/config.yml" exists:
  69. send "Great, your installation is complete" to console
  70. else:
  71. download file from "https://www.spigotmc.org/resources/json-sk.8851/download?version=124153" to file "plugins/yamlsk.jar"
  72. download file from "https://github.com/Sashie/skript-yaml/releases/download/v1.3.2/skript-yaml.jar" to file "plugins/skyaml.jar"
  73. download file from "https://dev.bukkit.org/projects/skrayfall/files/2897860/download" to file "plugins/skrayfall.jar"
  74. if first 3 characters of minecraft version is "1.8":
  75. download file from "https://www.spigotmc.org/resources/skquery-3-1-7-1-8.69828/download?version=286435" to file "plugins/skquery.jar"
  76. else:
  77. download file from "https://www.spigotmc.org/resources/skquery-1-9-1-15.36631/download?version=311805" to file "plugins/skquery.jar"
  78. download file from "https://www.spigotmc.org/resources/skript-java-addon-skellett.34361/download?version=295547" to file "plugins/skellet.jar"
  79. wait 120 seconds
  80. set yaml value "Version" from "config" to "2.2.6"
  81. save yaml "config"
  82. loop all players:
  83. if %loop-player% has permission "op":
  84. send "&cRestarting Server In 10 seconds!" to %loop-player%
  85. wait 5 seconds
  86. execute console command "kickall Finishing Installation"
  87. else:
  88. wait 5 seconds
  89. send "&cRestarting Server.." to %loop-player%
  90. kick player
  91. execute console command "restart"
  92. every 8 seconds:
  93. if {FlightFalseFlagPrevention} is true:
  94. loop all players:
  95. if {HighPingKick} is true:
  96. if loop-player's ping is greater than or equal to {MaxPing}:
  97. kick loop-player due to "%{bubble.prefix}% &cPing is greater than &4{MaxPing}&c!"
  98. delete {%loop-player's uuid%.bubble.slime}
  99. set {_find} to loop-player's location
  100. set {_count} to 255 - y coordinate of loop-player
  101. loop {_count} times:
  102. if block at {_find} is slime block:
  103. stop
  104. set {%loop-player's uuid%.bubble.slime} to true
  105. else:
  106. remove 1 from y coordinate of {_find}
  107.  
  108. every 5 minutes:
  109. if {MemorySaver} is true:
  110. set {_entity} to 0
  111. loop all entities:
  112. if loop-value is not a player:
  113. if loop-value is not a item frame:
  114. if name of loop-value is not set:
  115. add 1 to {_entity}
  116. kill loop-value
  117. set {_loc} to location of loop-value
  118. loop all dropped items in radius 1 of {_loc}:
  119. kill loop-value-2
  120. send "%{Bubble.Prefix}% &cKilled &a%{_entity}%&c entities!" to console
  121. if {All} is true:
  122. loop all players:
  123. wait 3 ticks
  124. if {%loop-player's uuid%.bubble.bypass} is not set:
  125. if loop-player's gamemode is not creative or spectator:
  126. if {%loop-player's uuid%.bubble.warn.all} is not set:
  127. if {%loop-player's uuid%.bubble} >= {ChecksToWarn}:
  128. send " %nl%&7-&8[%{Name}%&8]&7-%nl% %nl%&4%loop-player% &chas been warned!%nl%&8%{%loop-player's uuid%.bubble.cheat::*}%" to loop-player
  129. add 1 to {bubble.warn.amount}
  130. set {%loop-player's uuid%.bubble.warn.all} to true
  131. else if {%loop-player's uuid%.bubble.kick.all} is not set:
  132. if {%loop-player's uuid%.bubble} >= {ChecksToKick}:
  133. kick loop-player due to "%nl% %{Bubble.Prefix}% %nl% &8%{%loop-player's uuid%.bubble.cheat::*}%"
  134. broadcast "&7-=-=-=-=-=-=-=-&8[%{Name}%&8]&7-=-=-=-=-=-=-=-"
  135. broadcast " "
  136. broadcast "&4%loop-player% &cwas kicked for:"
  137. broadcast "&8%{%loop-player's uuid%.bubble.cheat::*}%"
  138. broadcast " "
  139. broadcast "&7-=-=-=-=-=-=-=-&8[%{Name}%&8]&7-=-=-=-=-=-=-=-"
  140. add 1 to {bubble.kick.amount}
  141. set {%loop-player's uuid%.bubble.kick.all} to true
  142. else:
  143. if {%loop-player's uuid%.bubble} >= {ChecksToBan}:
  144. if "{Forum}" is not "none":
  145. set {_display} to "%nl% &cForum: &7{Forum}"
  146. if "{Store}" is not "none":
  147. if {_display} is set:
  148. set {_display} to "%nl% &cForum: &7{Forum} %nl% &cStore: &7{Store}"
  149. else:
  150. set {_display} to "%nl% &cStore: &7{Store}"
  151. if {_display} is not set:
  152. set {_display} to ""
  153. execute console command "tempban %loop-player% %{Bubble.Prefix}% %{loop-player's uuid.bubble.cheat::*}% %{BanTime}%"
  154. kick loop-player due to "%nl% %{Bubble.Prefix}% %nl% &8%{%loop-player's uuid%.bubble.cheat::*}%"
  155. broadcast "&7-=-=-=-=-=-=-=-&8[%{Name}%&8]&7-=-=-=-=-=-=-=-"
  156. broadcast " "
  157. broadcast "&4%loop-player% &cwas banned for {BanTime}&c for using:"
  158. broadcast "&8%{%loop-player's uuid%.bubble.cheat::*}%"
  159. broadcast " "
  160. broadcast "&7-=-=-=-=-=-=-=-&8[%{Name}%&8]&7-=-=-=-=-=-=-=-"
  161. delete {%loop-player's uuid%.bubble.warn.all}
  162. delete {%loop-player's uuid%.bubble.kick.all}
  163. delete {%loop-player's uuid%.bubble.cheat::*}
  164. delete {%loop-player's uuid%.bubble}
  165. add 1 to {bubble.ban.amount}
  166. if {AutoWarn} is true:
  167. loop all players:
  168. if {%loop-player's uuid%.bubble.bypass} is not set:
  169. if loop-player's gamemode is not creative or spectator:
  170. if {%loop-player's uuid%.bubble} >= {ChecksToWarn}:
  171. if {%loop-player's uuid%.bubble.warn} is not set:
  172. send "&7-&8[%{Name}%&8]&7-%nl%&4%loop-player% &chas been warned!%nl%&8%{%loop-player's uuid%.bubble.cheat::*}%" to loop-player
  173. add 1 to {bubble.warn.amount}
  174. set {%loop-player's uuid%.bubble.warn} to true
  175. if {AutoKick} is true:
  176. loop all players:
  177. if {%loop-player's uuid%.bubble.bypass} is not set:
  178. if loop-player's gamemode is not creative or spectator:
  179. if {AutoWarn} is true:
  180. if {%loop-player's uuid%.bubble.warn} is not set:
  181. stop
  182. else:
  183. if {%loop-player's uuid%.bubble} >= {ChecksToKick}:
  184. kick loop-player due to "%nl% %{Bubble.Prefix}% %nl% &8%{%loop-player's uuid%.bubble.cheat::*}%"
  185. broadcast "&7-=-=-=-=-=-=-=-&8[%{Name}%&8]&7-=-=-=-=-=-=-=-"
  186. broadcast " "
  187. broadcast "&4%loop-player% &cwas kicked for:"
  188. broadcast "&8%{%loop-player's uuid%.bubble.cheat::*}%"
  189. broadcast " "
  190. broadcast "&7-=-=-=-=-=-=-=-&8[%{Name}%&8]&7-=-=-=-=-=-=-=-"
  191. delete {%loop-player's uuid%.bubble.warn}
  192. delete {%loop-player's uuid%.bubble.cheat::*}
  193. delete {%loop-player's uuid%.bubble}
  194. add 1 to {bubble.kick.amount}
  195. else:
  196. if {AutoBan} is true:
  197. loop all players:
  198. if {%loop-player's uuid%.bubble.bypass} is not set:
  199. if loop-player's gamemode is not creative or spectator:
  200. if {AutoWarn} is true:
  201. if {%loop-player's uuid%.bubble.warn} is not set:
  202. stop
  203. else:
  204. if {%loop-player's uuid%.bubble} >= {ChecksToBan}:
  205. if "{Forum}" is not "none":
  206. set {_display} to "%nl% &cForum: &7{Forum}"
  207. if "{Store}" is not "none":
  208. if {_display} is set:
  209. set {_display} to "%nl% &cForum: &7{Forum} %nl% &cStore: &7{Store}"
  210. else:
  211. set {_display} to "%nl% &cStore: &7{Store}"
  212. if {_display} is not set:
  213. set {_display} to ""
  214. execute console command "tempban %loop-player% %{Bubble.Prefix}% %{loop-player's uuid.bubble.cheat::*}% %{BanTime}%"
  215. kick loop-player due to "%nl% %{Bubble.Prefix}% %nl% &8%{%loop-player's uuid%.bubble.cheat::*}%"
  216. broadcast "&7-=-=-=-=-=-=-=-&8[%{Name}%&8]&7-=-=-=-=-=-=-=-"
  217. broadcast " "
  218. broadcast "&4%loop-player% &cwas banned for {BanTime}&c for using:"
  219. broadcast "&8%{%loop-player's uuid%.bubble.cheat::*}%"
  220. broadcast " "
  221. broadcast "&7-=-=-=-=-=-=-=-&8[%{Name}%&8]&7-=-=-=-=-=-=-=-"
  222. delete {%loop-player's uuid%.bubble.warn}
  223. delete {%loop-player's uuid%.bubble.cheat::*}
  224. delete {%loop-player's uuid%.bubble}
  225. add 1 to {bubble.ban.amount}
  226.  
  227. command /bubble [<text>] [<offline player>] [<text>]:
  228. aliases: /bp, /bubblespeed, /bubbleanticheat, /ac, /bubbleinfo, /bubble-info, /bac, /bubble, /anticheat-info, /ac-info, /anticheat, /bubblegum
  229. trigger:
  230. if arg-1 is "help" or "?":
  231. send "&8-&7[%{Name}%&7]&8-%nl%&8(1) &7/bubble bypass%nl%&8(2) &7/bubble bypass <player>%nl%&8(3) &7/bubble bypass clear%nl%&8(4) &7/bubble bypass list%nl%&8(5) &7/bubble notify%nl%&8(6) &7/bubble notify <player>%nl%&8(7) &7/bubble notify <player> -s%nl%&8(8) &7/bubble player <player> clear%nl%&8(9) &7/bubble theme%nl%&8(10) &7/bubble themes%nl%&8(11) &7/flagtoggle <cheat>. "
  232. if arg-1 is not set:
  233. send "Need a Better Bans Plugin? Get Adminbans Today and get a FREE WEBHOSTING PLAN! https://bit.ly/2XO9sf2 and use promocode BUBBLE10 for 10 Percent Off."
  234. execute player command "/bacgui"
  235. if arg-1 is "player", "checks", "detects", "detect", "info", "playerinfo", "playerdetect", "userinfo", "check" or "view":
  236. if player has permission "{Status}":
  237. if arg-2 is not set:
  238. if arg-3 is not set:
  239. if {%player's uuid%.bubble.cheat::*} is not set:
  240. set {_cheatsfailed::*} to "Nothing!"
  241. else:
  242. set {_cheatsfailed::*} to {_cheatsfailed::*}
  243. send "&7-&8[%{Name}%&8]&7-%nl%&8Player: &7%player%%nl%&8UUID: &7%player's uuid%%nl%&8Detections: &7%{%player's uuid%.bubble}%%nl%&cJust &cFailed: &7%{_cheatsfailed::*}"
  244. if arg-2 is set:
  245. if arg-3 is not set:
  246. if {%arg-2's uuid%.bubble} is set:
  247. if {%arg-2's uuid%.bubble.cheat::*} is not set:
  248. set {_cheatsfailed::*} to "Nothing!"
  249. else:
  250. set {_cheatsfailed::*} to {%arg-2's uuid%.bubble.cheat::*}
  251. send "&7-&8[%{Name}%&8]&7-%nl%&8Player: &7%arg-2%%nl%&8UUID: &7%arg-2's uuid%%nl%&8Detections: &7%{%arg-2's uuid%.bubble}%%nl%&cJust Failed: &7%{_cheatsfailed::*}%"
  252. else:
  253. send "%{Bubble.Prefix}% &cCouldn't find that player!"
  254. else:
  255. if arg-3 is "clear":
  256. delete {%arg-2's uuid%.bubble.cheat::*}
  257. set {%arg-2's uuid%.bubble} to 0
  258. delete {%arg-2's uuid%.bubble.warn}
  259. send "%{Bubble.Prefix}% &cCleared &a%arg-2%&c's detections!"
  260. else:
  261. send "%{Bubble.Prefix}% &cCouldn't understand that command!""
  262. if arg-1 is "bypass", "tbypass" or "togglebypass":
  263. if player has permission "{Bypass}":
  264. if arg-2 is not set:
  265. if {%player's uuid%.bubble.bypass} is not set:
  266. send "&7&8[%{Name}%&8] &7Bypass&8[&aON&8]"
  267. add "%player%" to {bubble.bypass.list::*}
  268. set {%player's uuid%.bubble.bypass} to "true"
  269. stop
  270. if {%player's uuid%.bubble.bypass} is set:
  271. send "&7&8[%{Name}%&8] &7Bypass&8[&aOFF&8]"
  272. remove "%player%" from {bubble.bypass.list::*}
  273. delete {%player's uuid%.bubble.bypass}
  274. delete {%player's uuid%::just.joined}
  275. stop
  276. if arg-2 is set:
  277. if arg-2 is not "list" or "clear":
  278. if {%player's uuid%.bubble.bypass} is set:
  279. send "&7&8[%{Name}%&8] &7Bypass&8[&aOFF&8]"
  280. remove "%arg-2%" from {bubble.bypass.list::*}
  281. delete {%player's uuid%.bubble.bypass}
  282. stop
  283. if {%arg-2's uuid%.bubble.bypass} is set:
  284. send "&7&8[%{Name}%&8] &7Bypass&8[&aOFF&8]"
  285. remove "%arg-2%" from {bubble.bypass.list::*}
  286. delete {%arg-2's uuid%.bubble.bypass}
  287. stop
  288. else:
  289. send "&7&8[%{Name}%&8] &7Bypass&8[&aOFF&8]"
  290. add "%arg-2%" to {bubble.bypass.list::*}
  291. set {%arg-2's uuid%.bubble.bypass} to true
  292. stop
  293. if arg-2 is "clear":
  294. loop {bubble.bypass.list::*}:
  295. remove "%loop-value%" from {bubble.bypass.list::*}
  296. delete {%loop-value's uuid%.bubble.bypass}
  297. send "%{Bubble.Prefix}% &cDisabled &4%loop-value%&c's bypass!"
  298. delete {bubble.bypass.list::*}
  299. send "%{Bubble.Prefix}% &cCleared bypass list!"
  300. if arg-2 is "list":
  301. send " "
  302. send "&7-=-=-=-=-=&8[&6Bypass &eList&8]&7=-=-=-=-=-&7"
  303. send " "
  304. loop {bubble.bypass.list::*}:
  305. if loop-value is set:
  306. add 1 to {_check}
  307. send "%{Bubble.Prefix}% &7%loop-value%"
  308. if {_check} is not set:
  309. send "%{Bubble.Prefix}% &cNo staff with bypass enabled!"
  310. send " "
  311. send "&7-=-=-=-=-=&8[&6Bypass &eList&8]&7=-=-=-=-=-&7"
  312. send " "
  313. if arg-1 is "notifications", "notification", "notify", "viewdetect", "viewdetects", "viewdetections", "viewcheck" or "viewchecks":
  314. if player has permission "{Notify}":
  315. if arg-2 is not set:
  316. if {%player's uuid%.bubble.view.report} is not set:
  317. set {%player's uuid%.bubble.view.report} to true
  318. send " "
  319. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-"
  320. send " &7Notifications&8[&aON&8]"
  321. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-"
  322. send " "
  323. else:
  324. delete {%player's uuid%.bubble.view.report}
  325. send " "
  326. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-"
  327. send " &7Notifications&8[&cOFF&8]"
  328. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-"
  329. send " "
  330. else:
  331. if {%arg-2's uuid%.bubble.view.report} is not set:
  332. set {%arg-2's uuid%.bubble.view.report} to true
  333. send " "
  334. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-"
  335. send " &7Notifications&8[&aON&8]"
  336. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-"
  337. send " "
  338. if arg-3 is not "-s":
  339. send " " to arg-2
  340. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-" to arg-2
  341. send " &7Notifications&8[&aON&8]" to arg-2
  342. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-" to arg-2
  343. send " " to arg-2
  344. else:
  345. delete {%arg-2's uuid%.bubble.view.report}
  346. send " "
  347. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-"
  348. send " &7Notifications&8[&cOFF&8]"
  349. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-"
  350. send " "
  351. if arg-3 is not "-s":
  352. send " " to arg-2
  353. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-" to arg-2
  354. send " &7Notifications&8[&aON&8]" to arg-2
  355. send "&7-=-=-=-=-=&8[%{Name}%&8]&7=-=-=-=-=-" to arg-2
  356. send " " to arg-2
  357. if arg-1 is "theme" or "mode":
  358. if player has permission "{Theme}":
  359. if {Bubble.Theme} is "Bubble":
  360. set {Bubble.Theme} to "Ocean"
  361. send "&1[&9%{Name}%&1]&b Theme is now &6Ocean&b!"
  362. set {Bubble.Prefix} to "&1[&9%{Name}%&1]"
  363. stop
  364. if {Bubble.Theme} is "Ocean":
  365. set {Bubble.Theme} to "World"
  366. send "&6[&a%{Name}%&6]&e Theme is now &6World&e!"
  367. set {Bubble.Prefix} to "&6[&a%{Name}%&6]"
  368. stop
  369. if {Bubble.Theme} is "World":
  370. set {Bubble.Theme} to "Nether"
  371. send "&4[&c%{Name}%&4]&8 Theme is now &6Nether&8!"
  372. set {Bubble.Prefix} to "&4[&c%{Name}%&4]"
  373. stop
  374. if {Bubble.Theme} is "Nether":
  375. set {Bubble.Theme} to "End"
  376. send "&5[&d%{Name}%&5]&7 Theme is now &6End&7!"
  377. set {Bubble.Prefix} to "&5[&d%{Name}%&5]"
  378. stop
  379. else:
  380. set {Bubble.Theme} to "Bubble"
  381. send "&c[&8%{Name}%&c]&7 Theme is now &6Bubble&7!"
  382. set {Bubble.Prefix} to "&c[&8%{Name}%&c]"
  383. stop
  384. if arg-1 is "theme-list" or "themes":
  385. if player has permission "{Theme}":
  386. send "&c[&8%{Name}%&c]&7 Theme is now &6Bubble&7!"
  387. send "&1[&9%{Name}%&1]&b Theme is now &6Ocean&b!"
  388. send "&6[&a%{Name}%&6]&e Theme is now &6World&e!"
  389. send "&4[&c%{Name}%&4]&8 Theme is now &6Nether&8!"
  390. send "&5[&d%{Name}%&5]&7 Theme is now &6End&7!"
  391. if arg-1 is "info" or "stats":
  392. if {bubble.warn.amount} is not set:
  393. set {bubble.warn.amount} to 0
  394. if {bubble.kick.amount} is not set:
  395. set {bubble.kick.amount} to 0
  396. if {bubble.ban.amount} is not set:
  397. set {bubble.ban.amount} to 0
  398. send " "
  399. send " &8-=-=-=-=-=&7[%{Name}%&7]&8=-=-=-=-=-"
  400. send " "
  401. send " &cVersion: &7{VersionStatus} &7{Version}"
  402. send " &cStatus: &7{Stable}"
  403. send " &cDeveloper: &7Free"
  404. send " "
  405. send " &8-=-=-=-=-=&7[%{Name}%&7]&8=-=-=-=-=-"
  406. send " "
  407. send " &cWarns: &7%{bubble.warn.amount}%"
  408. send " &cKicks: &7%{bubble.kick.amount}%"
  409. send " &cBans: &7%{bubble.ban.amount}%"
  410. send " "
  411. send " &cTotal Detections: &7%{bubble.detections}%"
  412. send " "
  413. send " &8-=-=-=-=-=&7[%{Name}%&7]&8=-=-=-=-=-"
  414. send " "
  415.  
  416. on unload:
  417. delete {Bubble.Delay}
  418. loop all players:
  419. delete {%loop-player's uuid%.bubble.bypass}
  420. delete {%loop-player's uuid%.bubble.nochecks}
  421.  
  422. on break:
  423. if event-block is not player's targeted block:
  424. if "%event-block%" contains "bed" or "dragon egg":
  425. if distance between player and player's targeted block is less than distance between player and event-block:
  426. {%player's uuid%.bubble.nochecks} is not set
  427. {%player's uuid%.bubble.epteleport} is not set
  428. {%player's uuid%.bubble.teleport} is not set
  429. player's gamemode is not creative or spectator
  430. {%player's uuid%.bubble.bypass} is not set
  431. cancel event
  432. if "%event-block%" contains "bed" or "dragon egg":
  433. if "%event-block%" contains "bed":
  434. detect(player, "BreakAura", "|||", "Bed")
  435. else:
  436. detect(player, "BreakAura", "|||", "Egg")
  437. else:
  438. if distance between player and player's targeted block is less than distance between player and event-block:
  439. {%player's uuid%.bubble.nochecks} is not set
  440. {%player's uuid%.bubble.epteleport} is not set
  441. {%player's uuid%.bubble.teleport} is not set
  442. player's gamemode is not creative or spectator
  443. {%player's uuid%.bubble.bypass} is not set
  444. cancel event
  445. detect(player, "Invalid Block Breaking", "|||", "%event-block%")
  446.  
  447. on left click:
  448. if clicked block is not targeted block:
  449. {%player's uuid%.bubble.nochecks} is not set
  450. {%player's uuid%.bubble.epteleport} is not set
  451. {%player's uuid%.bubble.teleport} is not set
  452. player's gamemode is not creative or spectator
  453. {%player's uuid%.bubble.bypass} is not set
  454. if event-block is cake:
  455. cancel event
  456. if event-block is cake:
  457. detect(player, "BreakAura", "|||", "CakeEater")
  458.  
  459. on right click:
  460. if clicked block is not targeted block:
  461. {%player's uuid%.bubble.nochecks} is not set
  462. {%player's uuid%.bubble.epteleport} is not set
  463. {%player's uuid%.bubble.teleport} is not set
  464. player's gamemode is not creative or spectator
  465. {%player's uuid%.bubble.bypass} is not set
  466. if event-block is dragon egg or cake:
  467. cancel event
  468. if event-block is cake:
  469. detect(player, "CakeEater", "|||", "Cake")
  470. else:
  471. detect(player, "BreakAura", "|||", "Egg")
  472.  
  473. on any movement:
  474. {Bubble.Step} is true
  475. set {_loc} to player's location
  476. set {_y} to y coordinate of {_loc}
  477. wait 2 ticks
  478. set {_y} to player's y coordinate - {_y}
  479. player doesn't have jump boost
  480. block under player is not carpet or water
  481. if {_y} is greater than 1.25:
  482. wait 1 tick
  483. player's chestplate is not an elytra
  484. {%player's uuid%.bubble.nochecks} is not set
  485. {%player's uuid%.bubble.epteleport} is not set
  486. {%player's uuid%.bubble.teleport} is not set
  487. player's gamemode is not creative or spectator
  488. {%player's uuid%.bubble.bypass} is not set
  489. player's flight mode is false
  490. player is not riding
  491. player is not on ground
  492. if block under player is not air:
  493. if {%player's uuid%.bubble.step.player} is not set:
  494. detect(player, "Illegal Player Movement", "|||", "Speed/Step")
  495. else:
  496. {Bubble.Flight} is true
  497. detect(player, "Flight", "||", "Y-Coordinate")
  498. teleport player to {_loc}
  499.  
  500. on jump:
  501. set {_loc} to player's location
  502. set {_y} to y coordinate of {_loc}
  503. wait 2 ticks
  504. set {_y} to player's y coordinate - {_y}
  505. player doesn't have jump boost
  506. block under player is not carpet or water
  507. if {_y} > 1.1:
  508. wait 1 tick
  509. player's chestplate is not an elytra
  510. {%player's uuid%.bubble.nochecks} is not set
  511. {%player's uuid%.bubble.epteleport} is not set
  512. {%player's uuid%.bubble.teleport} is not set
  513. player's gamemode is not creative or spectator
  514. {%player's uuid%.bubble.bypass} is not set
  515. player's flight mode is false
  516. player is not riding
  517. if {_y} is between 1.1 and 2.5:
  518. {Bubble.Step} is true
  519. set {%player's uuid%.bubble.step.player} to true
  520. detect(player, "Illegal Player Movement", "|||", "Speed/Step")
  521. else:
  522. {Bubble.HighJump} is true
  523. if {%player's uuid%.bubble.damage.other} is set:
  524. detect(player, "HighJump", "|||", "Damage")
  525. else:
  526. detect(player, "HighJump", "|||", "Vanilla")
  527. teleport player to {_loc}
  528. delete {%player's uuid%.bubble.step.player}
  529.  
  530. on load:
  531. loop all players:
  532. set {%loop-player's uuid%.bubble.nochecks} to true
  533. set {%loop-player's uuid%.bubble.bypass} to true
  534. wait 5 second
  535. delete {%loop-player's uuid%.bubble.bypass}
  536. delete {%loop-player's uuid%.bubble.nochecks}
  537. send "%{Bubble.Prefix}% &8TPS &cmay go down &7please wait a bit to &aoptimize&7!" to console
  538. if {Bubble.Delay} is not set:
  539. set {Bubble.Delay} to {Delay} * 5
  540. wait 2 ticks
  541. if "{InstantKick}" is not "true" or "false":
  542. send "%{Bubble.Prefix}% {Error6A}" to console
  543. if {InstantKick} is true:
  544. if {AutoWarn} is true:
  545. send "%{Bubble.Prefix}% {Error7A}" to console
  546. stop
  547. if {AutoKick} is true:
  548. send "%{Bubble.Prefix}% {Error7A}" to console
  549. stop
  550. if {AutoBan} is true:
  551. send "%{Bubble.Prefix}% {Error7A}" to console
  552. stop
  553. if {All} is true:
  554. send "%{Bubble.Prefix}% {Error5A}" to console
  555. stop
  556. if {All} is true:
  557. if {AutoWarn} is true:
  558. send "%{Bubble.Prefix}% {Error5A}" to console
  559. stop
  560. if {AutoKick} is true:
  561. send "%{Bubble.Prefix}% {Error5A}" to console
  562. stop
  563. if {AutoBan} is true:
  564. send "%{Bubble.Prefix}% {Error5A}" to console
  565. stop
  566. if "{AutoWarn}" is not "true":
  567. if "{AutoWarn}" is not "false":
  568. send "%{Bubble.Prefix}% {Error4A}" to console
  569. stop
  570. if "{AutoBan}" is "true":
  571. if "{AutoKick}" is "true":
  572. send "%{Bubble.Prefix}% {Error3A}" to console
  573. stop
  574. else if "{AutoKick}" is not "false":
  575. send "%{Bubble.Prefix}% {Error2A}" to console
  576. stop
  577. else if "{AutoBan}" is not "false":
  578. send "%{Bubble.Prefix}% {Error1A}" to console
  579. stop
  580.  
  581. on any movement:
  582. set {_y} to player's y coordinate
  583. wait 1 tick
  584. block under player is not air
  585. set {_y} to player's y coordinate - {_y}
  586. set {_loc} to player's location
  587. player's flight mode is false
  588. if player's gamemode is not creative or spectator:
  589. if {%player's uuid%.bubble.bypass} is not set:
  590. if player doesn't have speed or jump:
  591. if {%player's uuid%.bubble.nochecks} is true:
  592. stop
  593. if {%player's uuid%.bubble.epteleport} is true:
  594. stop
  595. if {%player's uuid%.bubble.teleport} is true:
  596. stop
  597. if "%{_y}%" is "-0.08":
  598. {Bubble.Jesus} is true
  599. block at player's head is not water
  600. block at player is water
  601. wait 3 ticks
  602. block at player's head is not water
  603. block at player is water
  604. set {_y} to player's y coordinate
  605. wait 1 tick
  606. block under player is not air
  607. set {_y} to player's y coordinate - {_y}
  608. if "%{_y}%" is "-0.08":
  609. set {_tp} to true
  610. detect(player, "Jesus", "|||", "Bhop")
  611. if "%{_y}%" is "-0.14":
  612. {Bubble.Jesus} is true
  613. set {_y} to player's y coordinate
  614. wait 1 tick
  615. block 2 under player is water
  616. block at player's head is not water
  617. set {_y} to player's y coordinate - {_y}
  618. if "%{_y}%" is "0.1":
  619. set {_tp} to true
  620. detect(player, "Jesus", "|||", "Motion/Dolphin")
  621. if {_y} is 0.02:
  622. {Bubble.Jesus} is true
  623. block under player is water
  624. wait 3 ticks
  625. block under player is water
  626. set {_tp} to true
  627. detect(player, "Jesus", "|||", "Solid")
  628. if {_y} is -1 or 1:
  629. detect(player, "Illegal Player Movement", "||", "Y-Coord")
  630. set {_tp} to true
  631. if {_tp} is true:
  632. teleport player to {%player's uuid%.bubble.tp.loc}
  633.  
  634. on any movement:
  635. if player's gamemode is not creative or spectator:
  636. if {%player's uuid%.bubble.bypass} is not set:
  637. player's flight mode is false
  638. set {_loc} to player's location
  639. set {_t.b} to player's targeted block
  640. wait 1 tick
  641. set {_loc2} to player's location
  642. set y coordinate of {_loc} to 0
  643. set y coordinate of {_loc2} to 0
  644. set {_dif} to distance between {_loc} and {_loc2}
  645. if {_dif} >= 0.18:
  646. set {%player's uuid%.bubble.walking} to true
  647. set {%player's uuid%.bubble.walk.speed} to {_dif}
  648. wait 1 tick
  649. delete {%player's uuid%.bubble.walking}
  650. delete {%player's uuid%.bubble.walk.speed}
  651. if {%player's uuid%.bubble.nochecks} is true:
  652. stop
  653. if {%player's uuid%.bubble.epteleport} is true:
  654. stop
  655. if {%player's uuid%.bubble.teleport} is true:
  656. stop
  657. player is not riding
  658. difference between {Bubble.LastLoad} and now is greater than 15 seconds
  659. if {_dif} >= 5:
  660. if {%player's uuid%.bubble.teleport} is true:
  661. stop
  662. set {%player's uuid%.bubble.cheat.speed} to {_dif} * 20
  663. if block under player is not {_t.b}:
  664. if block under player is not air:
  665. {Bubble.Blink} is true
  666. detect(player, "Blink", "|||", "Vanilla")
  667. teleport player to {%player's uuid%.bubble.tp.loc}
  668. else:
  669. {Bubble.Flight} is true
  670. detect(player, "Flight", "||", "Vanilla")
  671. teleport player to {%player's uuid%.bubble.tp.loc}
  672. else:
  673. {Bubble.ClickTP} is true
  674. detect(player, "ClickTP", "|||", "Vanilla")
  675. teleport player to {%player's uuid%.bubble.tp.loc}
  676. teleport player to {%player's uuid%.bubble.tp.loc}
  677.  
  678. on eating:
  679. if player's gamemode is not creative or spectator:
  680. if {%player's uuid%.bubble.bypass} is not set:
  681. {Bubble.NoSlow} is true
  682. player's flight mode is false
  683. if player has speed:
  684. stop
  685. if {%player's uuid%.bubble.nochecks} is true:
  686. stop
  687. wait 1 second
  688. delete {%player's uuid%.bubble.nochecks}
  689. if {%player's uuid%.bubble.epteleport} is true:
  690. stop
  691. if {%player's uuid%.bubble.teleport} is true:
  692. stop
  693. if {%player's uuid%.bubble.walking} is set:
  694. cancel event
  695. if {%player's uuid%.bubble.cancel.eat} is set:
  696. cancel event
  697. set {%player's uuid%.bubble.cancel.eat} to true
  698. detect(player, "NoSlow", "||", "Eat")
  699. wait 5 seconds
  700. delete {%player's uuid%.bubble.cancel.eat}
  701. if {%player's uuid%.bubble.cancel.eat} is set:
  702. {%player's uuid%.bubble.bypass} is not set
  703. if {%player's uuid%.bubble.reach} is set:
  704. set {%player's uuid%.bubble.cancel.eat} to true
  705. detect(player, "Killaura", "||", "Malicious Hits")
  706. wait 5 seconds
  707. delete {%player's uuid%.bubble.cancel.eat}
  708. {Bubble.NoSlow} is true
  709. set {_loc} to player's location
  710. set y coordinate of {_loc} to 0
  711. wait 1 tick
  712. set {_loc1} to player's location
  713. set y coordinate of {_loc1} to 0
  714. set {_loc} to distance between {_loc1} and {_loc}
  715. if {_loc} > 0.20:
  716. set {%player's uuid%.bubble.cancel.eat} to true
  717. detect(player, "NoSlow", "|||", "Eat")
  718. wait 5 seconds
  719. delete {%player's uuid%.bubble.cancel.eat}
  720.  
  721. on any movement:
  722. set {_loc} to player's location
  723. if player's chestplate is an elytra:
  724. stop
  725. if {%player's uuid%.bubble.nochecks} is true:
  726. stop
  727. if {%player's uuid%.bubble.epteleport} is true:
  728. stop
  729. if {%player's uuid%.bubble.teleport} is true:
  730. stop
  731. if player's gamemode is not creative or spectator:
  732. if {%player's uuid%.bubble.bypass} is not set:
  733. player's flight mode is false
  734. if block under player is not air or water:
  735. set {%player's uuid%.bubble.tp.loc} to {_loc}
  736. if {%player's uuid%.bubble.flight.delay} is not set:
  737. set {%player's uuid%.bubble.flight.delay} to true
  738. set {_y} to player's y coordinate
  739. wait 10 ticks
  740. set {_y} to player's y coordinate - {_y}
  741. set {_y} to floor({_y})
  742. if {%player's uuid%.bubble.slime} is not set:
  743. if {_y} > 5:
  744. {Bubble.Flight} is true
  745. teleport player to {%player's uuid%.bubble.tp.loc}
  746. detect(player, "Flight", "||", "Vanilla")
  747. if {_y} = 0:
  748. {Bubble.Float} is true
  749. {%player's uuid%.bubble.jump} is not set
  750. block under player is air
  751. player is not on ground
  752. teleport player to {%player's uuid%.bubble.tp.loc}
  753. detect(player, "Flight", "||", "Float")
  754. if player's y coordinate is y coordinate of {_loc}:
  755. {Bubble.Float} is true
  756. {%player's uuid%.bubble.jump} is not set
  757. block under player is air
  758. player is not on ground
  759. teleport player to {%player's uuid%.bubble.tp.loc}
  760. detect(player, "Flight", "||", "Float")
  761. loop {Bubble.Delay} times:
  762. wait 0.21 second
  763. delete {%player's uuid%.bubble.flight.delay}
  764.  
  765. on any movement:
  766. set {_loc} to player's location
  767. if player's chestplate is an elytra:
  768. stop
  769. if {%player's uuid%.bubble.epteleport} is true:
  770. stop
  771. if {%player's uuid%.bubble.teleport} is true:
  772. stop
  773. else if player's gamemode is not creative or spectator:
  774. if {%player's uuid%.bubble.nochecks} is set:
  775. wait 1 second
  776. delete {%player's uuid%.bubble.nochecks}
  777. stop
  778. if {%player's uuid%.bubble.bypass} is not set:
  779. if {%player's uuid%.bubble.cheat.cooldown} is not set:
  780. set {%player's uuid%.bubble.cheat.cooldown} to true
  781. if block under player is not air or water:
  782. set {%player's uuid%.bubble.tp.loc} to {_loc}
  783. #NoFall
  784. {Bubble.NoFall} is true
  785. if {NoFall} is true:
  786. if player's flight mode is false:
  787. if {%player's uuid%.bubble.jump} is not set:
  788. if block under player is air:
  789. set {_yloc} to player's y coordinate
  790. set {_health} to player's health
  791. wait 0.5 seconds
  792. set {_yloc1} to player's y coordinate
  793. if player is on ground:
  794. block under player is not slime block
  795. set {_dis} to {_yloc} - {_yloc1}
  796. block under player is not air
  797. block at player is not cobweb, ladder, water or flowing water
  798. {%player's uuid%.bubble.nofall} is not set
  799. if {_dis} is greater than or equal to 5.5:
  800. if player's health = {_health}-0.5:
  801. set {_dmg} to floor({_dis} / 1)
  802. detect(player, "NoFall", "||", "Damage")
  803. set {%player's uuid%.bubble.nofall} to true
  804. wait 1 second
  805. delete {%player's uuid%.bubble.nofall}
  806. damage the player by {_dmg} heart
  807. if {_dis} is greater than or equal to 4.25:
  808. if player's health = {_health}:
  809. set {_dmg} to floor({_dis} / 1)
  810. detect(player, "NoFall", "|||", "Vanilla")
  811. set {%player's uuid%.bubble.nofall} to true
  812. wait 1 second
  813. delete {%player's uuid%.bubble.nofall}
  814. damage the player by {_dmg} heart
  815. #Spider
  816. {Bubble.Spider} is true
  817. if block under player is air:
  818. if block 2 under player is air:
  819. if block 3 under player is air:
  820. set {_y} to player's y coordinate
  821. wait 1 tick
  822. player's targeted block is not ladder
  823. block at player is not water
  824. if {%player's uuid%.bubble.jump} is not set:
  825. if difference between {_y} and player's y coordinate is greater than 0.5:
  826. if difference between {_y} and player's y coordinate is less than 1:
  827. if distance between player and player's targeted block is less than 1.25:
  828. detect(player, "Spider", "|||", "Vanilla")
  829. else:
  830. if distance between player and player's targeted block is less than 1.25:
  831. {Bubble.Speed} is true
  832. detect(player, "Spider", "|||", "Speed")
  833. else:
  834. if difference between {_y} and player's y coordinate is greater than 0.5:
  835. if distance between player and player's targeted block is less than 1.25:
  836. detect(player, "Spider", "||", "Jump")
  837. #Flight
  838. if player's flight mode is false:
  839. if block under player is air:
  840. if player's chestplate is not an elytra:
  841. if player doesn't have jump boost:
  842. set {_y} to player's y coordinate
  843. wait 10 ticks
  844. if block under player is air:
  845. set {_y} to player's y coordinate - {_y}
  846. if {_y} >= 2:
  847. wait 1 tick
  848. if {%player's uuid%.bubble.fix.slime} is not set:
  849. set {_find} to player's location
  850. set {_count} to 255 - y coordinate of player
  851. loop 255 times:
  852. if block at {_find} is slime block:
  853. stop
  854. set {%player's uuid%.bubble.slime} to true
  855. wait 10 second
  856. delete {%player's uuid%.bubble.slime}
  857. else:
  858. remove 1 from y coordinate of {_find}
  859. if {%player's uuid%.bubble.slime} is not set:
  860. if block under player is air:
  861. if {%player's uuid%.bubble.slime} is not set:
  862. {Bubble.Flight} is true
  863. player's targeted block is not ladder
  864. block at player is not water
  865. teleport player to {%player's uuid%.bubble.tp.loc}
  866. detect(player, "Flight", "|||", "Vanilla")
  867. set {%player's uuid%::bubble.flight.status} to true
  868. wait 5 second
  869. delete {%player's uuid%::bubble.flight.status}
  870. else if {_y} = 0:
  871. if block under player is air:
  872. set {_y} to y coordinate of player - y coordinate of {%player's uuid%.bubble.tp.loc}
  873. if {_y} = 0:
  874. set {_b} to block under player
  875. set {_b1} to block under {_b}
  876. if {_b} is air:
  877. if {_b1} is air:
  878. if player is not on ground:
  879. {Bubble.Float} is true
  880. remove 1 from y coordinate of {%player's uuid%.bubble.tp.loc}
  881. teleport player to {%player's uuid%.bubble.tp.loc}
  882. detect(player, "Flight", "|||", "Float")
  883. add 1 to y coordinate of {%player's uuid%.bubble.tp.loc}
  884. else:
  885. #HOVER | FLIGHT | SPEED | CRITICALS
  886. if {%player's uuid%.bubble.nochecks} is true:
  887. stop
  888. wait 1 second
  889. delete {%player's uuid%.bubble.nochecks}
  890. if {%player's uuid%.bubble.teleport} is true:
  891. stop
  892. if {%player's uuid%.bubble.epteleport} is true:
  893. stop
  894. else if {%player's uuid%.bubble.jump} is true:
  895. stop
  896. else:
  897. if {%player's uuid%.bubble.falldmg} is not set:
  898. if player's chestplate is not an elytra:
  899. if player is not on ground:
  900. if {%player's uuid%.bubble.jump} is not set:
  901. set {_loc1} to player's location
  902. set {_ycheck} to player's y coordinate
  903. set {_123.loc} to player's location
  904. wait 10 ticks
  905. set {_ycheck1} to player's y coordinate
  906. if {_ycheck1} >= {_ycheck}:
  907. if player is not on ground:
  908. set {_loop} to 255 - y coordinate of player
  909. set y coordinate of {_123.loc} to 255
  910. loop {_loop} times:
  911. if block at {_123.loc} is slime block:
  912. stop
  913. set {%player's uuid%.bubble.slime} to true
  914. wait 10 second
  915. delete {%player's uuid%.bubble.slime}
  916. if block at {_123.loc} is air:
  917. remove 1 from y coordinate of {_123.loc}
  918. if {_loc1} = {_123.loc}:
  919. if player is not on ground:
  920. wait 3 ticks
  921. if {%player's uuid%.bubble.slime} is not set:
  922. if {%player's uuid%.bubble.damage} is not set:
  923. if {%player's uuid%.bubble.jump} is not set:
  924. wait 2 ticks
  925. if {%player's uuid%.bubble.fix.slime} is not set:
  926. set {_find} to player's location
  927. set {_count} to 255 - y coordinate of player
  928. loop 255 times:
  929. if block at {_find} is slime block:
  930. stop
  931. set {%player's uuid%.bubble.slime} to true
  932. wait 5 second
  933. delete {%player's uuid%.bubble.slime}
  934. else:
  935. remove 1 from y coordinate of {_find}
  936. wait 1 tick
  937. if player is not on ground:
  938. if block under player is air:
  939. player's chestplate is not an elytra
  940. set {_b} to block under player
  941. set {_b1} to block under {_b}
  942. if {_b1} is air:
  943. {Bubble.Flight} is true
  944. detect(player, "Flight", "|||", "Vanilla")
  945. teleport player to {%player's uuid%.bubble.tp.loc}
  946. else:
  947. if {%player's uuid%.bubble.falldmg} is not set:
  948. if block at player is not water:
  949. wait 1 tick
  950. if {%player's uuid%.bubble.damage} is not set:
  951. if block at player is not ladder:
  952. {Bubble.Hover} is true
  953. detect(player, "Flight", "||", "Hover")
  954. teleport player to {%player's uuid%.bubble.tp.loc}
  955. else:
  956. detect(player, "Illegal Player Movement", "||", "NoFall")
  957. teleport player to {%player's uuid%.bubble.tp.loc}
  958. else:
  959. {Bubble.Criticals} is true
  960. detect(player, "Criticals", "|||", "Vanilla")
  961. else:
  962. {Bubble.Criticals} is true
  963. detect(player, "Criticals", "|||", "Vanilla")
  964. #Speed
  965. if player's flight mode is false:
  966. if player doesn't have speed or jump boost:
  967. if {%player's uuid%.bubble.nochecks} is not set:
  968. if {%player's uuid%.bubble.teleport} is true:
  969. stop
  970. else if {%player's uuid%.bubble.epteleport} is true:
  971. stop
  972. else:
  973. set {_x} to player's x coordinate
  974. set {_z} to player's z coordinate
  975. set {_bap} to block above player's head
  976. wait 5 ticks
  977. set {_bap2} to block above player's head
  978. set {_x1} to player's x coordinate
  979. set {_z1} to player's z coordinate
  980. set {_x} to difference between {_x1} and {_x}
  981. set {_z} to difference between {_z1} and {_z}
  982. replace all "-" with "" in {_x}
  983. replace all "-" with "" in {_z}
  984. if {_x} > {_z}:
  985. set {_speed} to {_x}
  986. if {_z} > {_x}:
  987. set {_speed} to {_z}
  988. if {_x} = {_z}:
  989. set {_speed} to {_x}
  990. player's walking speed is between 0 and 0.3
  991. if {_speed} is greater than 2.1:
  992. if {%player's uuid%.bubble.teleport} is true:
  993. stop
  994. else if {%player's uuid%.bubble.epteleport} is true:
  995. stop
  996. set {%player's uuid%.bubble.cheat.speed} to {_speed} * 4
  997. if player is not riding:
  998. if {%player's uuid%.bubble.jump.bhop} is not set:
  999. if player is not flying:
  1000. if block under player is not air:
  1001. if block 2 under player is not air:
  1002. {Bubble.Speed} is true
  1003. teleport player to {%player's uuid%.bubble.tp.loc}
  1004. detect(player, "Speed", "|||", "Vanilla")
  1005. else:
  1006. {Bubble.Speed} is true
  1007. teleport player to {%player's uuid%.bubble.tp.loc}
  1008. detect(player, "Speed", "|||", "Flight")
  1009. else:
  1010. {Bubble.Speed} is true
  1011. teleport player to {%player's uuid%.bubble.tp.loc}
  1012. detect(player, "Speed", "|||", "Flight")
  1013. else:
  1014. {Bubble.Bhop} is true
  1015. {_bap} is air
  1016. {_bap2} is air
  1017. block above player is air
  1018. teleport player to {%player's uuid%.bubble.tp.loc}
  1019. detect(player, "Speed", "||", "Bhop")
  1020. #Jesus
  1021. if player's flight mode is false:
  1022. if block under player is water:
  1023. if block at player is not water:
  1024. loop 3 times:
  1025. wait 4 ticks
  1026. if block under player is water:
  1027. if block at player is not water:
  1028. add 1 to {_check}
  1029. if {_check} is greater than or equal to 2:
  1030. set {_loc.check} to player's location
  1031. remove 0.5 from y coordinate of {_loc.check}
  1032. player is not on ground
  1033. set {_locj} to player's location
  1034. remove 1 from y coordinate of {_locj}
  1035. teleport player to {_locj}
  1036. {Bubble.Jesus} is true
  1037. if {_check} is 2:
  1038. detect(player, "Jesus", "|||", "Solid/Bhop")
  1039. else:
  1040. detect(player, "Jesus", "|||", "Solid")
  1041. loop {Bubble.Delay} times:
  1042. wait 0.21 second
  1043. delete {%player's uuid%.bubble.cheat.cooldown}
  1044.  
  1045. on jump:
  1046. if player's gamemode is not creative or spectator:
  1047. if {%player's uuid%.bubble.bypass} is not set:
  1048. if difference between {%player's uuid%.bubble.last.jump} and now is less than or equal to 1 seconds:
  1049. set {%player's uuid%.bubble.jump.bhop} to true
  1050. wait 10 ticks
  1051. delete {%player's uuid%.bubble.jump.bhop}
  1052. set {%player's uuid%.bubble.last.jump} to now
  1053. set {%player's uuid%.bubble.jump} to true
  1054. wait 10 ticks
  1055. delete {%player's uuid%.bubble.jump}
  1056.  
  1057. on teleport:
  1058. if player's gamemode is not creative or spectator:
  1059. if {%player's uuid%.bubble.bypass} is not set:
  1060. set {%player's uuid%.bubble.teleport} to true
  1061. wait 1 second
  1062. delete {%player's uuid%.bubble.teleport}
  1063.  
  1064. on right click:
  1065. if player's gamemode is not creative or spectator:
  1066. if {%player's uuid%.bubble.bypass} is not set:
  1067. if player's held item is an enderpearl:
  1068. set {%player's uuid%.bubble.epteleport} to true
  1069. wait 1 second
  1070. delete {%player's uuid%.bubble.epteleport}
  1071.  
  1072. on damage:
  1073. if {Bubble.Autoclicker} is true:
  1074. if attacker's gamemode is not creative or spectator:
  1075. if {%attacker's uuid%.bubble.bypass} is not set:
  1076. add 1 to {%attacker's uuid%.bubble.cps}
  1077.  
  1078. every 2 seconds:
  1079. if {Bubble.Autoclicker} is true:
  1080. loop all players:
  1081. if loop-player's gamemode is not creative or spectator:
  1082. if {%loop-player's uuid%.bubble.bypass} is not set:
  1083. if {%loop-player's uuid%.bubble.bypass} >= {MaxCPS}:
  1084. detect(loop-player, "Autoclicker", "||", "%{_cps}%")
  1085. delete {%loop-player's uuid%.bubble.cps}
  1086.  
  1087. on death:
  1088. #Killaura
  1089. if victim is a player:
  1090. set {%victim's uuid%.bubble.death} to true
  1091. wait 5 second
  1092. delete {%victim's uuid%.bubble.death}
  1093. if victim is a chicken:
  1094. if name of victim is "Choinky":
  1095. clear the drops
  1096. else if name of victim is "Choinken":
  1097. cancel event
  1098. if attacker is a player:
  1099. if attacker's gamemode is not creative or spectator:
  1100. if {%attacker's uuid%.bubble.bypass} is not set:
  1101. if {%attacker's uuid%.bubble.cheat.cooldown.damage} is not set:
  1102. set {%attacker's uuid%.bubble.cheat.cooldown.damage} to true
  1103. if "%damage cause%" is not "fall", "void" or "unknown":
  1104. if projectile doesn't exist:
  1105. set {%attacker's uuid%.bubble.damage} to true
  1106. wait 1 second
  1107. delete {%attacker's uuid%.bubble.damage}
  1108. if victim is a player:
  1109. if victim's gamemode is not creative or spectator:
  1110. if {%victim's uuid%.bubble.bypass} is not set:
  1111. if damage cause is fall:
  1112. set {%victim's uuid%.bubble.falldmg} to true
  1113. wait 10 ticks
  1114. delete {%victim's uuid%.bubble.falldmg}
  1115. if {%attacker's uuid%.bubble.killaura.check} is not set:
  1116. if name of victim is "Choinky":
  1117. stop
  1118. else:
  1119. set {%attacker's uuid%.bubble.killaura.check} to true
  1120. set {_loc} to attacker's location
  1121. add 3 to y coordinate of {_loc}
  1122. wait 2 ticks
  1123. spawn chicken at {_loc}
  1124. hide spawned chicken from all players
  1125. set name of last spawned chicken to "Choinky"
  1126. wait 3 ticks
  1127. set y coordinate of {_loc} to 255
  1128. teleport last spawned chicken to {_loc}
  1129. kill last spawned chicken
  1130. wait 1 second
  1131. delete {%attacker's uuid%.bubble.killaura.check}
  1132.  
  1133. on damage:
  1134. victim is a player:
  1135. set {%victim's uuid%.bubble.damage} to true
  1136. set {%victim's uuid%.bubble.damage.other} to true
  1137. wait 2 ticks
  1138. delete {%victim's uuid%.bubble.damage}
  1139. wait 2 ticks
  1140. delete {%victim's uuid%.bubble.damage.other}
  1141.  
  1142. on damage:
  1143. #REACH
  1144. {Bubble.Reach} is true
  1145. delete {%attacker's uuid%.bubble.cheat.cooldown.damage}
  1146. if distance between attacker and victim is greater than 4.25:
  1147. set {_r} to distance between attacker and victim
  1148. if attacker is a player:
  1149. if {%attacker's uuid%.bubble.bypass} is not set:
  1150. if {%attacker's uuid%.bubble.cheat.cooldown.damage} is not set:
  1151. set {%attacker's uuid%.bubble.cheat.cooldown.damage} to true
  1152. if "%damage cause%" is not "fall", "void" or "unknown":
  1153. if projectile doesn't exist:
  1154. if {%attacker's uuid%.bubble.autoclicker.check} is not set:
  1155. if {_r} is less than 4.5:
  1156. detect(attacker, "Reach", "||", "Ghost")
  1157. else if {_r} is less than 5.5:
  1158. detect(attacker, "Reach", "||", "Vanilla")
  1159. else:
  1160. detect(attacker, "Reach", "|||", "Blatant")
  1161. set {%attacker's uuid%.bubble.reach} to true
  1162. wait 2 seconds
  1163. delete {%attacker's uuid%.bubble.reach}
  1164. else:
  1165. if {%attacker's uuid%.bubble} > 5:
  1166. detect(attacker, "Killaura", "|||", "Vanilla")
  1167. delete {%attacker's uuid%.bubble.cheat.cooldown.damage}
  1168.  
  1169. on damage:
  1170. #Velocity or AntiKB
  1171. if victim is a chicken:
  1172. if attacker is a player:
  1173. if attacker's gamemode is not creative or spectator:
  1174. if {%attacker's uuid%.bubble.bypass} is not set:
  1175. if name of victim is "Choinky":
  1176. detect(attacker, "Killaura", "|||", "MobAura")
  1177. else if name of victim is "Choinken":
  1178. detect(attacker, "Killaura", "||", "MobAura")
  1179. if victim is a player:
  1180. {Bubble.Velocity} is true
  1181. victim's gamemode is survival or adventure
  1182. {%attacker's uuid%.bubble.bypass} is not set
  1183. set {_loc} to victim's location
  1184. if {%victim's uuid%.bubble.cheat.cooldown.damage} is not set:
  1185. set {%victim's uuid%.bubble.cheat.cooldown.damage} to true
  1186. if damage cause is not contact, fall, burning, hunger, drown or unknown:
  1187. "%damage cause%" is not "unknown"
  1188. push the victim backwards with force 0.1
  1189. wait 2 ticks
  1190. set {_d} to distance between victim's location and {_loc}
  1191. if {_d} is between -0 and 0.2:
  1192. if {%victim's uuid%.bubble.death} is not set:
  1193. loop all blocks in radius 1 around victim:
  1194. if loop-block is not air:
  1195. if loop-block is not block under victim or block above victim's head:
  1196. add 1 to {_count}
  1197. set {_loc.player} to victim's location
  1198. add 1 to y coordinate of {_loc.player}
  1199. loop all blocks in radius 1 around {_loc.player}:
  1200. if loop-block is not air:
  1201. if loop-block is not block under victim or block above victim's head:
  1202. add 1 to {_count}
  1203. if {_count} > 1:
  1204. stop
  1205. projectile doesn't exist
  1206. block at victim is air
  1207. detect(victim, "Velocity", "||", "%damage cause%")
  1208. loop {Bubble.Delay} times:
  1209. wait 0.21 second
  1210. if victim is a player:
  1211. delete {%victim's uuid%.bubble.cheat.cooldown.damage}
  1212. if attacker is a player:
  1213. delete {%attacker's uuid%.bubble.cheat.cooldown.damage}
  1214.  
  1215. on damage:
  1216. if attacker is a player:
  1217. set {_a.v} to distance between attacker and victim
  1218. set {_a.atb} to distance between attacker and attacker's targeted block
  1219. attacker's targeted block is not block under victim
  1220. if attacker's gamemode is not creative or spectator:
  1221. if {%attacker's uuid%.bubble.bypass} is not set:
  1222. set {%victim's uuid%.bubble.cheat.cooldown.damage} to true
  1223. if projectile doesn't exist:
  1224. if {_a.v} > {_a.atb}:
  1225. detect(attacker, "Killaura", "|||", "Malicious Hits")
  1226. delete {%attacker's uuid%.bubble.killaura.check}
  1227. loop {Bubble.Delay} times:
  1228. wait 0.21 second
  1229. delete {%attacker's uuid%.bubble.cheat.cooldown.damage}
  1230.  
  1231. function reload(p: text):
  1232. if {Bubble.Theme} is not set:
  1233. set {Bubble.Theme} to 1
  1234. if {Bubble.Prefix} is not set:
  1235. set {Bubble.Prefix} to "{Prefix}"
  1236. if {Bubble.Autoclicker} is not set:
  1237. set {Bubble.Autoclicker} to true
  1238. if {Bubble.Criticals} is not set:
  1239. set {Bubble.Criticals} to true
  1240. if {Bubble.Reach} is not set:
  1241. set {Bubble.Reach} to true
  1242. if {Bubble.Velocity} is not set:
  1243. set {Bubble.Velocity} to true
  1244. if {Bubble.Bhop} is not set:
  1245. set {Bubble.Bhop} to true
  1246. if {Bubble.Blink} is not set:
  1247. set {Bubble.Blink} to true
  1248. if {Bubble.ClickTP} is not set:
  1249. set {Bubble.ClickTP} to true
  1250. if {Bubble.Flight} is not set:
  1251. set {Bubble.Flight} to true
  1252. if {Bubble.Float} is not set:
  1253. set {Bubble.Float} to true
  1254. if {Bubble.HighJump} is not set:
  1255. set {Bubble.HighJump} to true
  1256. if {Bubble.Hover} is not set:
  1257. set {Bubble.Hover} to true
  1258. if {Bubble.Jesus} is not set:
  1259. set {Bubble.Jesus} to true
  1260. if {Bubble.NoFall} is not set:
  1261. set {Bubble.NoFall} to true
  1262. if {Bubble.NoSlow} is not set:
  1263. set {Bubble.NoSlow} to true
  1264. if {Bubble.Scaffold} is not set:
  1265. set {Bubble.Scaffold} to true
  1266. if {Bubble.Speed} is not set:
  1267. set {Bubble.Speed} to true
  1268. if {Bubble.Spider} is not set:
  1269. set {Bubble.Spider} to true
  1270. if {Bubble.Step} is not set:
  1271. set {Bubble.Step} to true
  1272. if {_p} is "console":
  1273. send "%{bubble.prefix}% &7has reloaded!" to console
  1274. else:
  1275. send "%{bubble.prefix}% &7has reloaded!" to {_p} parsed as player
  1276.  
  1277.  
  1278. function detect(p: player, cheat: text, vl:text, type: text):
  1279. set {_uuid} to uuid of {_p}
  1280. if {_vl} is "||":
  1281. add 0.5 to {bubble.detections}
  1282. add 0.5 to {%{_uuid}%.bubble}
  1283. if {_vl} is "|||":
  1284. add 1 to {bubble.detections}
  1285. add 1 to {%{_uuid}%.bubble}
  1286. set {_uuid} to uuid of {_p}
  1287. loop all players:
  1288. if {%loop-player's uuid%.bubble.view.report} is set:
  1289. if {Bubble.Theme} is "Bubble":
  1290. if {_type} is not set:
  1291. send "%{Bubble.Prefix}% &4%{_p}% &7failed &6%{_cheat}%&7! &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1292. else if {_type} is "Autoclicker":
  1293. send "%{Bubble.Prefix}% &4%{_p}% &7failed &6%{_cheat}%&7! &8[&7CPS: &c%{_type}%&8] 8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1294. else if {_cheat} is "Speed", "ClickTP" or "Blink":
  1295. send "%{Bubble.Prefix}% &4%{_p}% &7failed &6%{_cheat}%&7! &8(&7Speed: &e%{%{_uuid}%.bubble.cheat.speed}%&6/s&8) &8(&7Type: &c%{_type}%&8) &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1296. else:
  1297. send "%{Bubble.Prefix}% &4%{_p}% &7failed &6%{_cheat}%&7! &8(&7Type: &c%{_type}%&8) &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1298. if {Bubble.Theme} is "Ocean":
  1299. if {_type} is not set:
  1300. send "%{Bubble.Prefix}% &1%{_p}% &bfailed &6%{_cheat}%&b! &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1301. else if {_type} is "Autoclicker":
  1302. send "%{Bubble.Prefix}% &1%{_p}% &bfailed &6%{_cheat}%&b! &8[&7CPS: &c%{_type}%&8] &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1303. else if {_cheat} is "Speed", "ClickTP" or "Blink":
  1304. send "%{Bubble.Prefix}% &1%{_p}% &bfailed &6%{_cheat}%&b! &8(&7Speed: &e%{%{_uuid}%.bubble.cheat.speed}%&6/s&8) &8(&7Type: &c%{_type}%&8) &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1305. else:
  1306. send "%{Bubble.Prefix}% &1%{_p}% &bfailed &6%{_cheat}%&b! &8(&7Type: &c%{_type}%&8) &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1307. if {Bubble.Theme} is "World":
  1308. if {_type} is not set:
  1309. send "%{Bubble.Prefix}% &6%{_p}% &efailed &6%{_cheat}%&e! &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1310. else if {_type} is "Autoclicker":
  1311. send "%{Bubble.Prefix}% &6%{_p}% &efailed &6%{_cheat}%&e! &8[&7CPS: &c%{_type}%&8] &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1312. else if {_cheat} is "Speed", "ClickTP" or "Blink":
  1313. send "%{Bubble.Prefix}% &6%{_p}% &efailed &6%{_cheat}%&e! &8(&7Speed: &e%{%{_uuid}%.bubble.cheat.speed}%&6/s&8) &8(&7Type: &c%{_type}%&8) &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1314. else:
  1315. send "%{Bubble.Prefix}% &6%{_p}% &efailed &6%{_cheat}%&e! &8(&7Type: &c%{_type}%&8) &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1316. if {Bubble.Theme} is "Nether":
  1317. if {_type} is not set:
  1318. send "%{Bubble.Prefix}% &8%{_p}% &4failed &6%{_cheat}%&4! &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1319. else if {_type} is "Autoclicker":
  1320. send "%{Bubble.Prefix}% &8%{_p}% &4failed &6%{_cheat}%&4! &8[&7CPS: &c%{_type}%&8] &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1321. else if {_cheat} is "Speed", "ClickTP" or "Blink":
  1322. send "%{Bubble.Prefix}% &8%{_p}% &4failed &6%{_cheat}%&4! &8(&7Speed: &e%{%{_uuid}%.bubble.cheat.speed}%&6/s&8) &8(&7Type: &c%{_type}%&8) &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1323. else:
  1324. send "%{Bubble.Prefix}% &8%{_p}% &4failed &6%{_cheat}%&4! &8(&7Type: &c%{_type}%&8) &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1325. if {Bubble.Theme} is "End":
  1326. if {_type} is not set:
  1327. send "%{Bubble.Prefix}% &d%{_p}% &5failed &6%{_cheat}%&d! &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1328. else if {_type} is "Autoclicker":
  1329. send "%{Bubble.Prefix}% &5%{_p}% &dfailed &6%{_cheat}%&d! &8[&7CPS: &c%{_type}%&8] &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1330. else if {_cheat} is "Speed", "ClickTP" or "Blink":
  1331. send "%{Bubble.Prefix}% &5%{_p}% &dfailed &6%{_cheat}%&d! &8(&7Speed: &e%{%{_uuid}%.bubble.cheat.speed}%&6/s&8) &8(&7Type: &c%{_type}%&8) &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1332. else:
  1333. send "%{Bubble.Prefix}% &5%{_p}% &dfailed &6%{_cheat}%&d! &8(&7Type: &c%{_type}%&8) &4[&8VL: &c%{_vl}%&4] &8(&e%{%{_uuid}%.bubble}%&8) &8(&7Ping: &a%{_p}'s ping%&8)" to loop-player
  1334. if "%{_cheat}%" is not "Illegal Player Movement":
  1335. if {%{_uuid}%.bubble.cheat::*} doesn't contain "%{_cheat}%":
  1336. add "%{_cheat}%" to {%{_uuid}%.bubble.cheat::*}
  1337. if {bubble.report.bubble::*} is not set:
  1338. add {_p} to {bubble.report.bubble::*}
  1339. if {InstantKick} is true:
  1340. kick {_p} due to "%{Bubble.Prefix}% &c%{_cheat}%"
  1341.  
  1342. command /report [<offline player>] [<text>]:
  1343. permission: {ReportSend}
  1344. permission message: %{bubble.prefix}% &cNo Perms!
  1345. trigger:
  1346. if arg-1 is not set:
  1347. send "%{Bubble.Prefix}% &cInvalid Usage! &4(&c/report <player> <reason>&4)"
  1348. else:
  1349. if arg-2 is not set:
  1350. send "%{Bubble.Prefix}% &cInvalid Usage! &4(&c/report <player> <reason>&4)"
  1351. else:
  1352. if arg-1 is offline:
  1353. send "%{Bubble.Prefix}% &cThat player is offline!"
  1354. else:
  1355. if arg-1 is sender:
  1356. send "%{Bubble.Prefix}% &cYou can't report yourself!"
  1357. else:
  1358. if {bubble.report.by.%arg-1's uuid%::*} contains "%sender%":
  1359. send "%{Bubble.Prefix}% &cYou have already reported that player!"
  1360. else:
  1361. send "%{Bubble.Prefix}% &e%sender% &7reported &e%arg-1% &7for &6%arg-2%&7!" to all players where [player input has permission "{ReportReceive}"]
  1362. if {bubble.report.players::*} doesn't contain arg-1:
  1363. add argument 1 to {bubble.report.players::*}
  1364. add argument 2 to {bubble.report.reason.%arg-1's uuid%::*}
  1365. add "%sender%" to {bubble.report.by.%arg-1's uuid%::*}
  1366.  
  1367. command /flagtoggle [<text>]:
  1368. permission: togglecheat, tc
  1369. permission: {manage}
  1370. trigger:
  1371. if arg-1 is "Autoclicker", "Criticals", "Reach", "Killaura", "Velocity", "Bhop", "Blink", "ClickTP", "Flight", "Float", "HighJump", "Hover", "Jesus", "NoFall", "NoSlow", "Scaffold", "Speed", "Spider" or "Step":
  1372. if {Bubble.%arg-1%} is false:
  1373. send "%{Bubble.Prefix}% &e%sender% &7has &aenabled &6%arg-1%&7!" to all players where [player input has permission "{manage}"]
  1374. set {Bubble.%arg-1%} to true
  1375. stop
  1376. else:
  1377. send "%{Bubble.Prefix}% &e%sender% &7has &cdisabled &6%arg-1%&7!" to all players where [player input has permission "{manage}"]
  1378. set {Bubble.%arg-1%} to false
  1379. stop
  1380. else:
  1381. send "%{Bubble.Prefix}% &cInvalid Argument! &8(&6Autoclicker, Bhop, Blink, ClickTP, Criticals, Flight, Float, HighJump, Hover, Jesus, Killaura, NoFall, NoSlow, Reach, Scaffold, Speed, Spider, Step, Velocity&8)"
  1382.  
  1383. command /bacgui [<text>] [<text>] [<text>]:
  1384. aliases: /reports, /reportlist, /reportslist, /bubblegui
  1385. permission: {GUI}
  1386. permission message: %{Bubble.Prefix}% &cNo Perms!
  1387. trigger:
  1388. if arg-1 is not set:
  1389. open chest with 1 row named "%{Bubble.Prefix}% &8%player%&8\" to player
  1390. set slot 0 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1391. set slot 1 of player's current inventory to paper named "&7Reports" with lore "&7", "&7View bubble reports and player reports." and "&7"
  1392. set slot 2 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1393. set slot 3 of player's current inventory to arrow named "&7Detections" with lore "&7", "&7Enable or disable detections." and "&7"
  1394. set slot 4 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1395. set slot 5 of player's current inventory to redstone torch named "&7Skript" with lore "&7" and "&7"
  1396. set slot 6 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1397. set slot 7 of player's current inventory to barrier named "&cComing Soon!" with lore "&7Will Toggle your Notifications when Complete" and "&7"
  1398. set slot 8 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1399. if arg-1 is "detections":
  1400. if arg-2 is not set:
  1401. open chest with 1 row named "%{Bubble.Prefix}% &8%player%&8\&8Detections" to player
  1402. set slot 0 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1403. set slot 1 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1404. set slot 2 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1405. set slot 3 of player's current inventory to diamond sword named "&6Combat Detections" with lore "&7", "&7Manage Combat Detections" and "&7"
  1406. set slot 4 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1407. set slot 5 of player's current inventory to diamond boots named "&6Movement Detections" with lore "&7", "&7Manage Movement Detections" and "&7"
  1408. set slot 6 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1409. set slot 7 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1410. set slot 8 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1411. if arg-2 is "movement":
  1412. open chest with 2 rows named "%{Bubble.Prefix}% &8%player%&8\&8Detections\&8Movement" to player
  1413. set slot 0 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1414. set slot 8 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1415. set slot 9 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1416. set slot 16 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1417. set slot 17 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1418. if {Bubble.Bhop} is false:
  1419. set slot 1 of player's current inventory to red wool named "&cBhop" with lore "&7", "&7Click to Enable!" and "&7"
  1420. else:
  1421. set slot 1 of player's current inventory to lime wool named "&aBhop" with lore "&7", "&7Click to Disable!" and "&7"
  1422. if {Bubble.Blink} is false:
  1423. set slot 2 of player's current inventory to red wool named "&cBlink" with lore "&7", "&7Click to Enable!" and "&7"
  1424. else:
  1425. set slot 2 of player's current inventory to lime wool named "&aBlink" with lore "&7", "&7Click to Disable!" and "&7"
  1426. if {Bubble.ClickTP} is false:
  1427. set slot 3 of player's current inventory to red wool named "&cClickTP" with lore "&7", "&7Click to Enable!" and "&7"
  1428. else:
  1429. set slot 3 of player's current inventory to lime wool named "&aClickTP" with lore "&7", "&7Click to Disable!" and "&7"
  1430. if {Bubble.Flight} is false:
  1431. set slot 4 of player's current inventory to red wool named "&cFlight" with lore "&7", "&7Click to Enable!" and "&7"
  1432. else:
  1433. set slot 4 of player's current inventory to lime wool named "&aFlight" with lore "&7", "&7Click to Disable!" and "&7"
  1434. if {Bubble.Float} is false:
  1435. set slot 5 of player's current inventory to red wool named "&cFloat" with lore "&7", "&7Click to Enable!" and "&7"
  1436. else:
  1437. set slot 5 of player's current inventory to lime wool named "&aFloat" with lore "&7", "&7Click to Disable!" and "&7"
  1438. if {Bubble.HighJump} is false:
  1439. set slot 6 of player's current inventory to red wool named "&cHighJump" with lore "&7", "&7Click to Enable!" and "&7"
  1440. else:
  1441. set slot 6 of player's current inventory to lime wool named "&aHighJump" with lore "&7", "&7Click to Disable!" and "&7"
  1442. if {Bubble.Hover} is false:
  1443. set slot 7 of player's current inventory to red wool named "&cHover" with lore "&7", "&7Click to Enable!" and "&7"
  1444. else:
  1445. set slot 7 of player's current inventory to lime wool named "&aHover" with lore "&7", "&7Click to Disable!" and "&7"
  1446. if {Bubble.Jesus} is false:
  1447. set slot 7 of player's current inventory to red wool named "&cJesus" with lore "&7", "&7Click to Enable!" and "&7"
  1448. else:
  1449. set slot 7 of player's current inventory to lime wool named "&aJesus" with lore "&7", "&7Click to Disable!" and "&7"
  1450. if {Bubble.NoFall} is false:
  1451. set slot 10 of player's current inventory to red wool named "&cNoFall" with lore "&7", "&7Click to Enable!" and "&7"
  1452. else:
  1453. set slot 10 of player's current inventory to lime wool named "&aNoFall" with lore "&7", "&7Click to Disable!" and "&7"
  1454. if {Bubble.NoSlow} is false:
  1455. set slot 11 of player's current inventory to red wool named "&cNoSlow" with lore "&7", "&7Click to Enable!" and "&7"
  1456. else:
  1457. set slot 11 of player's current inventory to lime wool named "&aNoSlow" with lore "&7", "&7Click to Disable!" and "&7"
  1458. if {Bubble.Scaffold} is false:
  1459. set slot 12 of player's current inventory to red wool named "&cScaffold" with lore "&7", "&7Click to Enable!" and "&7"
  1460. else:
  1461. set slot 12 of player's current inventory to lime wool named "&aScaffold" with lore "&7", "&7Click to Disable!" and "&7"
  1462. if {Bubble.Speed} is false:
  1463. set slot 13 of player's current inventory to red wool named "&cSpeed" with lore "&7", "&7Click to Enable!" and "&7"
  1464. else:
  1465. set slot 13 of player's current inventory to lime wool named "&aSpeed" with lore "&7", "&7Click to Disable!" and "&7"
  1466. if {Bubble.Spider} is false:
  1467. set slot 14 of player's current inventory to red wool named "&cSpider" with lore "&7", "&7Click to Enable!" and "&7"
  1468. else:
  1469. set slot 14 of player's current inventory to lime wool named "&aSpider" with lore "&7", "&7Click to Disable!" and "&7"
  1470. if {Bubble.Step} is false:
  1471. set slot 15 of player's current inventory to red wool named "&cStep" with lore "&7", "&7Click to Enable!" and "&7"
  1472. else:
  1473. set slot 15 of player's current inventory to lime wool named "&aStep" with lore "&7", "&7Click to Disable!" and "&7"
  1474. if arg-2 is "combat":
  1475. open chest with 1 row named "%{Bubble.Prefix}% &8%player%&8\&8Detections\&8Combat" to player
  1476. set slot 0 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1477. set slot 1 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1478. if {Bubble.Autoclicker} is false:
  1479. set slot 2 of player's current inventory to red wool named "&cAutoclicker" with lore "&7", "&7Click to Enable!" and "&7"
  1480. else:
  1481. set slot 2 of player's current inventory to lime wool named "&aAutoclicker" with lore "&7", "&7Click to Disable!" and "&7"
  1482. if {Bubble.Criticals} is false:
  1483. set slot 3 of player's current inventory to red wool named "&cCriticals" with lore "&7", "&7Click to Enable!" and "&7"
  1484. else:
  1485. set slot 3 of player's current inventory to lime wool named "&aCriticals" with lore "&7", "&7Click to Disable!" and "&7"
  1486. if {Bubble.Killaura} is false:
  1487. set slot 4 of player's current inventory to red wool named "&cKillaura" with lore "&7", "&7Click to Enable!" and "&7"
  1488. else:
  1489. set slot 4 of player's current inventory to lime wool named "&aKillaura" with lore "&7", "&7Click to Disable!" and "&7"
  1490. if {Bubble.Reach} is false:
  1491. set slot 5 of player's current inventory to red wool named "&cReach" with lore "&7", "&7Click to Enable!" and "&7"
  1492. else:
  1493. set slot 5 of player's current inventory to lime wool named "&aReach" with lore "&7", "&7Click to Disable!" and "&7"
  1494. if {Bubble.Velocity} is false:
  1495. set slot 6 of player's current inventory to red wool named "&cVelocity" with lore "&7", "&7Click to Enable!" and "&7"
  1496. else:
  1497. set slot 6 of player's current inventory to lime wool named "&aVelocity" with lore "&7", "&7Click to Disable!" and "&7"
  1498. set slot 7 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1499. set slot 8 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1500. if arg-1 is "skript":
  1501. if arg-2 is not set:
  1502. open chest with 1 row named "%{Bubble.Prefix}% &8%player%&8\&8Skript" to player
  1503. set slot 0 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1504. set slot 1 of player's current inventory to redstone repeater named "&6Reload &8(&7Player&8)" with lore "&7", "&7Reload this skript!" and "&7"
  1505. set slot 2 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1506. set slot 3 of player's current inventory to redstone repeater named "&6Reload &8(&7Console&8)" with lore "&7", "&7Reload this skript!" and "&7"
  1507. set slot 4 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1508. set slot 5 of player's current inventory to redstone torch named "&eSoft Reload &8(&7Player&8)" with lore "&7", "&7Reload this skript!" and "&7"
  1509. set slot 6 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1510. set slot 7 of player's current inventory to redstone torch named "&eSoft Reload &8(&7Console&8)" with lore "&7", "&7Reload this skript!" and "&7"
  1511. set slot 8 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1512. if arg-1 is "reports":
  1513. if arg-2 is not set:
  1514. open chest with 1 row named "%{Bubble.Prefix}% &8%player%&8\Reports\" to player
  1515. set slot 0 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1516. set slot 1 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1517. set slot 2 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1518. set slot 3 of player's current inventory to paper named "&7By Player" with lore "&7", "&7" and "&7"
  1519. set slot 4 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1520. set slot 5 of player's current inventory to redstone named "&7By Bubble" with lore "&7" and "&7"
  1521. set slot 6 of player's current inventory to red stained glass pane named "&7" with lore "&7" and "&7"
  1522. set slot 7 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1523. set slot 8 of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1524. if arg-2 is "player":
  1525. open chest with 6 rows named "%{Bubble.Prefix}% &8%player%&8\Reports\Player\" to player
  1526. set {_count} to 44
  1527. loop 9 times:
  1528. add 1 to {_count}
  1529. set slot {_count} of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1530. set {_count} to -1
  1531. loop {bubble.report.players::*}:
  1532. if {_count} is less than 45:
  1533. if loop-value is online:
  1534. add 1 to {_count}
  1535. set slot {_count} of player's current inventory to paper named "&c%loop-value%" with lore "&7", "&8Reason: &7%{bubble.report.reason.%loop-value's uuid%::*}%" and "&8Reported By: &7%{bubble.report.by.%loop-value's uuid%::*}%"
  1536. set slot 49 of player's current inventory to door named "&eBack" with lore "&7" and "&7"
  1537. if {_count} is -1:
  1538. set slot 22 of player's current inventory to barrier named "&cNo Players Found!" with lore "&7" and "&7"
  1539. if arg-2 is "bubble":
  1540. open chest with 6 rows named "%{Bubble.Prefix}% &8%player%&8\Reports\Bubble\" to player
  1541. set {_count} to 44
  1542. loop 9 times:
  1543. add 1 to {_count}
  1544. set slot {_count} of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1545. set {_count} to -1
  1546. loop {bubble.report.players::*}:
  1547. if {_count} is less than 45:
  1548. add 1 to {_count}
  1549. set slot {_count} of player's current inventory to black stained glass pane named "&7" with lore "&7", "&7" and "&7"
  1550. set {_count} to 8
  1551. set {_count} to -1
  1552. loop {bubble.report.bubble::*}:
  1553. if {_count} is less than 45:
  1554. if loop-value is online:
  1555. add 1 to {_count}
  1556. set slot {_count} of player's current inventory to paper named "&c%loop-value%" with lore "&7", "&8Reason: &7%{%loop-value's uuid%.bubble.cheat::*}%" and "&7"
  1557. set slot 49 of player's current inventory to door named "&eBack" with lore "&7" and "&7"
  1558. if {_count} is -1:
  1559. set slot 22 of player's current inventory to barrier named "&cNo Players Found!" with lore "&7" and "&7"
  1560.  
  1561. on inventory click:
  1562. if clicked slot is 7:
  1563. if clicked item is diamond boots:
  1564. if name of clicked item contains "Notifications":
  1565. close inventory of player
  1566. player command "bubble notify"
  1567. if inventory name of player's current inventory contains "%{Bubble.Prefix}%":
  1568. if inventory name of player's current inventory contains "%{Bubble.Prefix}% &8%player%&8\&8Detections\&8":
  1569. if inventory name of player's current inventory contains "Movement":
  1570. close inventory of player
  1571. set {_name} to uncolored name of clicked item
  1572. if {_name} is "Autoclicker", "Criticals", "Reach", "Killaura", "Velocity", "Bhop", "Blink", "ClickTP", "Flight", "Float", "HighJump", "Hover", "Jesus", "NoFall", "NoSlow", "Scaffold", "Speed", "Spider" or "Step":
  1573. player command "/flagtoggle %{_name}%"
  1574. player command "/bacgui detections movement"
  1575. else if inventory name of player's current inventory contains "Combat":
  1576. close inventory of player
  1577. set {_name} to uncolored name of clicked item
  1578. if {_name} is "Autoclicker", "Criticals", "Reach", "Killaura", "Velocity", "Bhop", "Blink", "ClickTP", "Flight", "Float", "HighJump", "Hover", "Jesus", "NoFall", "NoSlow", "Scaffold", "Speed", "Spider" or "Step":
  1579. player command "/flagtoggle %{_name}%"
  1580. player command "/bacgui detections combat"
  1581. if clicked slot is 3:
  1582. if clicked item is arrow:
  1583. if name of clicked item is "&7Detections":
  1584. close inventory of player
  1585. player command "bacgui detections"
  1586. if clicked item is diamond sword:
  1587. if name of clicked item is "&6Combat Detections":
  1588. close inventory of player
  1589. player command "bacgui detections combat"
  1590. if clicked slot is 5:
  1591. if clicked item is diamond boots:
  1592. if name of clicked item is "&6Movement Detections":
  1593. close inventory of player
  1594. player command "bacgui detections movement"
  1595. if clicked slot is 1 or 3:
  1596. if clicked item is redstone repeater:
  1597. if name of clicked item is "&6Reload &8(&7Player&8)":
  1598. close inventory of player
  1599. player command "skript reload %script%"
  1600. else:
  1601. if name of clicked item is "&6Reload &8(&7Console&8)":
  1602. close inventory of player
  1603. console command "skript reload %script%"
  1604. if clicked slot is 5 or 7:
  1605. if clicked item is redstone torch:
  1606. if name of clicked item is "&eSoft Reload &8(&7Player&8)":
  1607. close inventory of player
  1608. reload("%player%")
  1609. else:
  1610. if name of clicked item is "&eSoft Reload &8(&7Console&8)":
  1611. close inventory of player
  1612. reload("console")
  1613. if clicked slot is 5:
  1614. if clicked item is a redstone torch:
  1615. if name of clicked item is "&7Skript":
  1616. close inventory of player
  1617. player command "/bacgui skript"
  1618. if clicked slot is 49:
  1619. if inventory name of player's current inventory contains "\Reports\Bubble\" or "\Reports\Player\":
  1620. if clicked item is a door:
  1621. if name of clicked item is "&eBack":
  1622. close inventory of player
  1623. player command "/bacgui reports"
  1624. if clicked slot is 1:
  1625. if clicked item is a paper:
  1626. if name of clicked item is "&7Reports":
  1627. close inventory of player
  1628. player command "/bacgui reports"
  1629. if clicked slot is 3:
  1630. if clicked item is a paper:
  1631. if name of clicked item is "&7By Player":
  1632. close inventory of player
  1633. player command "/bacgui reports player"
  1634. if clicked slot is 5:
  1635. if clicked item is a redstone:
  1636. if name of clicked item is "&7By Bubble":
  1637. close inventory of player
  1638. player command "/bacgui reports bubble"
  1639. if clicked slot is between 0 and 44:
  1640. if clicked item is a paper:
  1641. if inventory name of player's current inventory contains "\Reports\Player\":
  1642. close inventory of player
  1643. set {_player} to uncolored name of clicked item
  1644. loop {bubble.report.players::*}:
  1645. if loop-value's name is {_player}:
  1646. set {_player} to loop-value
  1647. set {_player.uuid} to loop-value's uuid
  1648. set {_player.loc} to loop-value's location
  1649. add 3 to y coordinate of {_player.loc}
  1650. remove {_player} from {bubble.report.players::*}
  1651. delete {bubble.report.reason.%{_player.uuid}%::*}
  1652. delete {bubble.report.by.%{_player.uuid}%::*}
  1653. teleport the player to {_player.loc}
  1654. player command "/bacgui reports player"
  1655. if inventory name of player's current inventory contains "\Reports\Bubble\":
  1656. close inventory of player
  1657. set {_player} to uncolored name of clicked item
  1658. loop {bubble.bubble.players::*}:
  1659. if loop-value's name is {_player}:
  1660. set {_player} to loop-value
  1661. set {_player.uuid} to loop-value's uuid
  1662. set {_player.loc} to loop-value's location
  1663. add 3 to y coordinate of {_player.loc}
  1664. remove {_player} from {bubble.bubble.players::*}
  1665. teleport the player to {_player.loc}
  1666. player command "/bacgui reports bubble"
  1667. else:
  1668. cancel event
  1669. else:
  1670. cancel event
  1671.  
  1672. on any movement:
  1673. if {ProAuraBlocking} is true:
  1674. set {_uuid} to player's uuid
  1675. if {%{_uuid}%.last.spawn.chicken} is not set:
  1676. spawn chicken 1 meter below player
  1677. apply invisibility to last spawned chicken for 9999 days
  1678. set name of last spawned chicken to "Choinken"
  1679. set health of last spawned chicken to 1000000
  1680. heal last spawned chicken
  1681. set {%{_uuid}%.last.spawn.chicken} to "%last spawned chicken%"
  1682. else if last spawned chicken is alive:
  1683. teleport {%{_uuid}%.last.spawn.chicken} parsed as entity 3.5 meters above player
  1684. else:
  1685. delete {%{_uuid}%.last.spawn.chicken}
  1686.  
  1687. on command:
  1688. if full command is "sk reload %script%" or "skript reload %script%":
  1689. set {bubble.last.reload} to "%sender%"
  1690.  
  1691. on chat:
  1692. if message contains "stupid", "dumb", "bad", "garbage", "aweful", "suck" or "shit":
  1693. if message contains "anti cheat", "anticheat" or "bubble":
  1694. kick the player due to "{Prefix} &cdetected &cidiot!"
  1695.  
  1696. on disconnect:
  1697. delete {%player's uuid%.bubble.flight.delay}
  1698. delete {%player's uuid%.bubble.cheat.cooldown}
  1699. delete {%player's uuid%.bubble.cheat.cooldown.damage}
  1700. delete {%player's uuid%.bubble.bypass}
  1701. delete {%player's uuid%.bubble.nochecks}
  1702. delete {%player's uuid%.bubble.cancel.eat}
  1703. delete {%player's uuid%.bubble.jump}
  1704. delete {%player's uuid%.bubble.slime}
  1705.  
  1706. on join:
  1707. set {%player's uuid%.bubble.bypass} to true
  1708. set {%player's uuid%.bubble.nochecks} to true
  1709. wait 3 seconds
  1710. delete {%player's uuid%.bubble.bypass}
  1711. delete {%player's uuid%.bubble.nochecks}
  1712.  
  1713.  
  1714. on block place:
  1715. {Bubble.Scaffold} is true
  1716. if {Bubble.Diable} is set:
  1717. stop
  1718. #SCAFFOLD
  1719. if {%player's uuid%.bubble.teleport} is true:
  1720. stop
  1721. if tps < 20:
  1722. stop
  1723. else:
  1724. set {_b} to block under player
  1725. set {_b} to block under {_b}
  1726. if {_b} is not air:
  1727. stop
  1728. else:
  1729. if block under event-block is not air:
  1730. stop
  1731. else:
  1732. if player's gamemode is not creative or spectator:
  1733. if {%player's uuid%.bubble.bypass} is not set:
  1734. if {%player's uuid%.bubble.scaffold.cooldown} is not set:
  1735. set {%player's uuid%.bubble.scaffold.cooldown} to true
  1736. set {_loc} to player's location
  1737. if y coordinate of event-block < y coordinate of player:
  1738. if player's pitch is between 9 and -90:
  1739. teleport player to {_loc}
  1740. add 1 to {%player's uuid%.bubble}
  1741. add 1 to {bubble.detections}
  1742. send "%{Prefix}% &4%player% &7is using &6Scaffold&7! &8[&e%{%player's uuid%.bubble}%&8]" to all players where [player input has permission {Warn}]
  1743. teleport player to {_loc}
  1744. if {%player's uuid%.bubble.cheat::*} doesn't contain "Scaffold":
  1745. add "Scaffold" to {%player's uuid%.bubble.cheat::*}
  1746. else:
  1747. set {%player's uuid%.bubble.old.pitch.time} to {%player's uuid%.bubble.new.pitch.time}
  1748. set {%player's uuid%.bubble.old.pitch} to {%player's uuid%.bubble.new.pitch}
  1749. set {%player's uuid%.bubble.new.pitch} to player's pitch
  1750. set {%player's uuid%.bubble.new.pitch.time} to now
  1751. set {_dif.time} to difference between {%player's uuid%.bubble.old.pitch.time} and {%player's uuid%.bubble.new.pitch.time}
  1752. set {_dif.pitch} to difference between {%player's uuid%.bubble.old.pitch} and {%player's uuid%.bubble.new.pitch}
  1753. if {_dif.time} <= 0.3 seconds:
  1754. if {_dif.pitch} <= 2.5:
  1755. add 1 to {%player's uuid%.bubble}
  1756. add 1 to {bubble.detections}
  1757. send "%{Prefix}% &4%player% &7is using &6Scaffold&7! &8[&e%{%player's uuid%.bubble}%&8]" to all players where [player input has permission {Warn}]
  1758. teleport player to {_loc}
  1759. if {%player's uuid%.bubble.cheat::*} doesn't contain "Scaffold":
  1760. add "Scaffold" to {%player's uuid%.bubble.cheat::*}
  1761. if {_dif.time} = 0 seconds:
  1762. send "%{Prefix}% &4%player% &7is using &6Speed&7! &8[&e%{%player's uuid%.bubble}%&8]" to all players where [player input has permission {Warn}]
  1763. teleport player to {_loc}
  1764. if {%player's uuid%.bubble.cheat::*} doesn't contain "Speed":
  1765. add "Speed" to {%player's uuid%.bubble.cheat::*}
  1766. delete {%player's uuid%.bubble.scaffold.cooldown}
Add Comment
Please, Sign In to add comment