Advertisement
Guest User

autorski skrypt na case wymagania: pl skrypt pl SkQuery

a guest
Jan 19th, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 19.98 KB | None | 0 0
  1. # Author: PLmegaPL
  2. # Contact: tomczaak2007@gmail.com
  3. # Presentation: none
  4. # Launge: Polish
  5.  
  6. variables:
  7. {case::player::%player%::open} = false
  8. {case::player::%player%::openwait} = false
  9.  
  10. options:
  11.  
  12. # General
  13.  
  14. tag: &8[&6Case&8] # Przedrostek wiadomosci
  15.  
  16. # Drop case
  17.  
  18. chance drop key: 5% # Szansa na wykopanie klucza podana w procentach
  19. chance drop chest: 5% # Szansa na wykopanie skrzyni podana w procentach
  20. block drop: stone or dirt or glass or wood or gravel # Z jakiego bloku mozna wykopac skrzynie/klucz
  21.  
  22. chance death key: 100% # Szansa na wypadniecie klucza po zabiciu gracza
  23. chance death chest: 100% # Szansa na wypadniecie skrzyni po zabiciu gracza
  24.  
  25. # Colour message:
  26.  
  27. important: &6
  28. general: &7
  29. leere: &8
  30.  
  31. lore: &c
  32.  
  33. command /case [<text="help">] [<text>] [<text>] [<text>]:
  34. trigger:
  35. if player has permission "case.*":
  36. if arg 1 is "help":
  37. send "{@tag}"
  38. send "{@important}/case add <name> <type> {@leere}- {@general}Dodaje nowa skrzynke."
  39. send "{@important}/case remove <name> {@leere}- {@general}Usuwa skrzynke."
  40. send "{@important}/case edit <name> {@leere}- {@general}Edytuje zawartosc skrzyni."
  41. send "{@important}/case give <name> [<player/all>] [<number>] {@leere}- {@general}Daje nam klucz i skrzynie."
  42. send "{@important}/case list {@leere}- {@general}Lista skrzyn w gui."
  43. send "{@important}/case stats [<player>] {@leere}- {@general}Statystyki gracza."
  44. send "{@important}/case open <name> [<player>] {@leere}- {@general}Otwiera skrzynie."
  45. if arg 1 is "add":
  46. if arg 2 is set:
  47. set {_name} to arg 2
  48. replace all "_" with " " in {_name}
  49. loop {case::chestlist::*}:
  50. if loop-value is {_name}:
  51. send "{@tag} {@general}Taka skrzynia juz istnieje!"
  52. stop
  53. if arg 3 is "key" or "notkey":
  54. add {_name} to {case::chestlist::*}
  55. send "{@tag} {@general}Dodano skrzynie o nazwie {@important}%{_name}%{@general}."
  56. if arg 3 is "key":
  57. set {case::type::%{_name}%} to "key"
  58. send "{@tag} {@general}Skrzynia wymaga klucza."
  59. if arg 3 is "notkey":
  60. set {case::type::%{_name}%} to "notkey"
  61. send "{@tag} {@general}Skrzynia nie wymaga klucza."
  62. else:
  63. send "{@tag} {@important}/case add <name> <type=""key""or""notkey""> "
  64. else:
  65. send "{@tag} {@important}/case add <name> <type=""key""or""notkey""> "
  66. if arg 1 is "remove":
  67. if arg 2 is set:
  68. set {_name} to arg 2
  69. replace all "_" with " " in {_name}
  70. loop {case::chestlist::*}:
  71. if loop-value is {_name}:
  72. remove {_name} from {case::chestlist::*}
  73. delete {case::%{_name}%::itemlist::*}
  74. delete {case::type::%{_name}%}
  75. send "{@tag} {@general}Usunieto skrzynie o nazwie {@important}%{_name}%{@general}."
  76. stop
  77. send "{@tag} {@general}Taka skrzynia nie istnieje!"
  78. else:
  79. send "{@tag} {@important}/case remove <name>"
  80. if arg 1 is "edit":
  81. if arg 2 is set:
  82. set {_name} to arg 2
  83. replace all "_" with " " in {_name}
  84. loop {case::chestlist::*}:
  85. if loop-value is {_name}:
  86. open chest with 3 rows named "{@important}Edytujesz: {@lore}%{_name}%" to player
  87. wait 1 tick
  88. set {_slot} to 0
  89. loop {case::%{_name}%::itemlist::*}:
  90. set slot {_slot} of current inventory of player to loop-value-2
  91. add 1 to {_slot}
  92. set {case::player::%player%::openedit} to "%{_name}%"
  93. send "{@tag} {@general}Edytujesz zawartosc skrzyni {@important}%{_name}%{@general}." to player
  94. while inventory name of player is "{@important}Edytujesz: {@lore}%{_name}%":
  95. set {case::player::%player%::openedit} to "%{_name}%"
  96. wait 5 tick
  97. stop
  98. send "{@tag} {@general}Taka skrzynia nie istnieje!"
  99. else:
  100. send "{@tag} {@important}/case additem <name>"
  101. if arg 1 is "give":
  102. if arg 2 is set:
  103. set {_name} to arg 2
  104. replace all "_" with " " in {_name}
  105. loop {case::chestlist::*}:
  106. if loop-value is {_name}:
  107. set {_lore} to "%{case::%{_name}%::itemlist::*}%"
  108. replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  109. replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  110. if arg 3 is set:
  111. if arg 4 is set:
  112. set {_number} to arg 4 parsed as integer
  113. else:
  114. set {_number} to 64
  115. if arg 3 is "all":
  116. loop all players:
  117. if {case::type::%{_name}%} is "key":
  118. add {_number} of chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to loop-player's inventory
  119. add {_number} of tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_name}%" to loop-player's inventory
  120. else if {case::type::%{_name}%} is "notkey":
  121. add {_number} of ender chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to loop-player's inventory
  122. if arg 3 is not "all":
  123. set {_player} to arg 3 parsed as offlineplayer
  124. if {case::type::%{_name}%} is "key":
  125. add {_number} of chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to {_player}'s inventory
  126. add {_number} of tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_name}%" to {_player}'s inventory
  127. else if {case::type::%{_name}%} is "notkey":
  128. add {_number} of ender chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to {_player}'s inventory
  129. else:
  130. if {case::type::%{_name}%} is "key":
  131. add 64 of chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to player's inventory
  132. add 64 of tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_name}%" to player's inventory
  133. else:
  134. add 64 of ender chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to player's inventory
  135. stop
  136. send "{@tag} {@general}Taka skrzynia nie istnieje!"
  137. else:
  138. send "{@tag} {@important}/case give <name> [<type=""%%player%%""or""all"">] [<number>]"
  139. if arg 1 is "list":
  140. open chest with 6 rows named "{@important}Lista skrzynek:" to player
  141. wait 1 tick
  142. set {_slot} to 0
  143. loop {case::chestlist::*}:
  144. if loop-value contains "<none>":
  145. remove loop-value from {case::chestlist::*}
  146. set {_lore} to "%{case::%loop-value%::itemlist::*}%"
  147. set {_name%loop-index%} to loop-value
  148. replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  149. replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  150. replace all " " with "_" in {_name%loop-index%}
  151. if {case::type::%loop-value%} is "key":
  152. format slot {_slot} of player with 1 of chest named "{@important}%loop-value%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to run [close player's inventory]->[wait 2 tick]->[execute player command "case open %{_name%{_slot}%}%"]
  153. else:
  154. format slot {_slot} of player with 1 of ender chest named "{@important}%loop-value%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to run [close player's inventory]->[wait 2 tick]->[execute player command "case open %{_name%{_slot}%}%"]
  155. add 1 to {_slot}
  156. wait 1 tick
  157. if arg 1 is "stats":
  158. if arg 2 is set:
  159. set {_player} to arg 2 parsed as player
  160. else:
  161. set {_player} to player
  162. send "{@tag} {@general}Otworzone skrzynie gracza {@important}%{_player}%{@general}:"
  163. loop {case::chestlist::*}:
  164. if {case::player::%{_player}%::stats::%loop-value%} is set:
  165. send " {@important}%loop-value%{@leere}: {@general}%{case::player::%{_player}%::stats::%loop-value%}%"
  166. else:
  167. send " {@important}%loop-value%{@leere}: {@general}0"
  168. if arg 1 is "open":
  169. if arg 2 is set:
  170. if arg 3 is set:
  171. if player has permission "case.*":
  172. set {_player} to arg 3 parsed as player
  173. else:
  174. send "{@tag} {@general}Nie posiadasz uprawnien!"
  175. stop
  176. else:
  177. set {_player} to player
  178. set {_name} to arg 2
  179. replace all "_" with " " in {_name}
  180. loop {case::chestlist::*}:
  181. if loop-value is {_name}:
  182. set {_lore} to "%{case::%loop-value%::itemlist::*}%"
  183. replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  184. replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  185. set lore of player's tool to " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || "
  186. if {case::type::%{_name}%} is "key":
  187. if {_player}'s inventory contains tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_name}%":
  188. if {_player}'s inventory contains chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || ":
  189. if {case::player::%{_player}%::openwait} is true:
  190. send "{@tag} {@general}Juz otwierasz skrzynie!" to {_player}
  191. else:
  192. if (size of {case::%{_name}%::itemlist::*}) > 0:
  193. add 1 to {case::player::%{_player}%::stats::%{_name}%}
  194. remove 1 tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_name}%" from {_player}'s inventory
  195. remove 1 chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " from {_player}'s inventory
  196. set {case::player::%{_player}%::open} to true
  197. set {case::player::%{_player}%::openwait} to true
  198. open chest with 6 rows named "{@important}Skrzynia {@lore}%{_name}%" to {_player}
  199. wait 1 tick
  200. loop 9 times:
  201. set {_item%loop-number%} to random element out of {case::%{_name}%::itemlist::*}
  202. format slot loop-number + 8 of {_player} with {_item%loop-number%} to be unstealable
  203. format slot loop-number - 1 of {_player} with 1 of black stained glass pane to be unstealable
  204. format slot loop-number + 17 of {_player} with 1 of black stained glass pane to be unstealable
  205. format slot 4 of {_player} with 1 of hopper to be unstealable
  206. set {_slot} to 0
  207. loop {case::%{_name}%::itemlist::*}:
  208. if {case::player::%{_player}%::open} is true:
  209. add 1 to {_slot}
  210. format slot {_slot} + 26 of {_player} with loop-value-2 to be unstealable
  211. wait 1 tick
  212. set {_random} to random integer between 20 and 30
  213. wait 1 seconds
  214. loop {_random} times:
  215. if loop-number > 15:
  216. loop loop-number - 12 times:
  217. wait 1 tick
  218. else:
  219. wait 3 tick
  220. play raw sound "mob.skeleton.death" at {_player} with pitch 8 volume 1
  221. loop 8 times:
  222. set {_item%loop-number-2%} to {_item%loop-number-2 + 1%}
  223. if {case::player::%{_player}%::open} is true:
  224. format slot loop-number-2 + 8 of {_player} with {_item%loop-number-2%} to be unstealable
  225. set {_item9} to random element out of {case::%{_name}%::itemlist::*}
  226. if {case::player::%{_player}%::open} is true:
  227. format slot 17 of {_player} with {_item9} to be unstealable
  228. set {case::player::%{_player}%::open} to false
  229. wait 3 seconds
  230. broadcast "{@tag} {@general}Gracz {@important}%{_player}% {@general}wylosowal {@important}%{_item5}% {@general}ze skrzyni {@important}%{_name}%{@general}. Gratulacje!"
  231. launch flickering trailing ball firework colored green at {_player} timed 1
  232. add {_item5} to {_player}'s inventory
  233. play raw sound "mob.endermen.portal" at {_player} with pitch 0.1 volume 1
  234. set {case::player::%{_player}%::openwait} to false
  235. else:
  236. send "{@tag} {@general}W tej skrzyni nie mozna nic wylosowac!" to {_player}
  237. else:
  238. send "{@tag} {@general}Nie posiadasz tej skrzyni!" to {_player}
  239. else:
  240. send "{@tag} {@general}Nie posiadasz klucza do tej skrzyni!" to {_player}
  241. else:
  242. if {_player}'s inventory contains ender chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || ":
  243. if {case::player::%{_player}%::openwait} is true:
  244. send "{@tag} {@general}Juz otwierasz skrzynie!" to {_player}
  245. else:
  246. if (size of {case::%{_name}%::itemlist::*}) > 0:
  247. add 1 to {case::player::%{_player}%::stats::%{_name}%}
  248. remove 1 ender chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " from {_player}'s inventory
  249. set {case::player::%{_player}%::open} to true
  250. set {case::player::%{_player}%::openwait} to true
  251. open chest with 6 rows named "{@important}Skrzynia {@lore}%{_name}%" to {_player}
  252. wait 1 tick
  253. loop 9 times:
  254. set {_item%loop-number%} to random element out of {case::%{_name}%::itemlist::*}
  255. format slot loop-number + 8 of {_player} with {_item%loop-number%} to be unstealable
  256. format slot loop-number - 1 of {_player} with 1 of black stained glass pane to be unstealable
  257. format slot loop-number + 17 of {_player} with 1 of black stained glass pane to be unstealable
  258. format slot 4 of {_player} with 1 of hopper to be unstealable
  259. set {_slot} to 0
  260. loop {case::%{_name}%::itemlist::*}:
  261. if {case::player::%{_player}%::open} is true:
  262. add 1 to {_slot}
  263. format slot {_slot} + 26 of {_player} with loop-value-2 to be unstealable
  264. wait 1 tick
  265. set {_random} to random integer between 20 and 30
  266. wait 1 seconds
  267. loop {_random} times:
  268. if loop-number > 15:
  269. loop loop-number - 12 times:
  270. wait 1 tick
  271. else:
  272. wait 3 tick
  273. play raw sound "mob.skeleton.death" at {_player} with pitch 8 volume 1
  274. loop 8 times:
  275. set {_item%loop-number-2%} to {_item%loop-number-2 + 1%}
  276. if {case::player::%{_player}%::open} is true:
  277. format slot loop-number-2 + 8 of {_player} with {_item%loop-number-2%} to be unstealable
  278. set {_item9} to random element out of {case::%{_name}%::itemlist::*}
  279. if {case::player::%{_player}%::open} is true:
  280. format slot 17 of {_player} with {_item9} to be unstealable
  281. set {case::player::%{_player}%::open} to false
  282. wait 3 seconds
  283. broadcast "{@tag} {@general}Gracz {@important}%{_player}% {@general}wylosowal {@important}%{_item5}% {@general}ze skrzyni {@important}%{_name}%{@general}. Gratulacje!"
  284. launch flickering trailing ball firework colored green at {_player} timed 1
  285. add {_item5} to {_player}'s inventory
  286. play raw sound "mob.endermen.portal" at {_player} with pitch 0.1 volume 1
  287. set {case::player::%{_player}%::openwait} to false
  288. else:
  289. send "{@tag} {@general}W tej skrzyni nie mozna nic wylosowac!" to {_player}
  290. else:
  291. send "{@tag} {@general}Nie posiadasz tej skrzyni!" to {_player}
  292. stop
  293. send "{@tag} {@general}Taka skrzynia nie istnieje!" to {_player}
  294. on inventory close:
  295. if {case::player::%player%::open} is true:
  296. set {case::player::%player%::open} to false
  297. send "{@tag} {@general}Zamknieto podglad losowania."
  298. if {case::player::%player%::openedit} is set:
  299. clear {case::%{case::player::%player%::openedit}%::itemlist::*}
  300. loop 27 times:
  301. if slot "%loop-number - 1%" parsed as an integer of current inventory of player is not air:
  302. set {_item} to slot loop-number - 1 of current inventory of player
  303. add {_item} to {case::%{case::player::%player%::openedit}%::itemlist::*}
  304. clear {case::player::%player%::openedit}
  305. send "{@tag} {@general}Zapisano."
  306. on quit:
  307. set {case::player::%player%::open} to false
  308. set {case::player::%player%::openwait} to false
  309. clear {case::player::%player%::openedit}
  310. on death:
  311. set {case::player::%victim%::open} to false
  312. set {case::player::%victim%::openwait} to false
  313. clear {case::player::%player%::openedit}
  314. if attacker is a player:
  315. chance of {@chance death chest}:
  316. set {_element} to random element out of {case::chestlist::*}
  317. set {_lore} to "%{case::%{_element}%::itemlist::*}%"
  318. replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  319. replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  320. if {case::type::%{_element}%} is "key":
  321. drop chest named "{@important}%{_element}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " at location of victim
  322. else:
  323. drop ender chest named "{@important}%{_element}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " at location of victim
  324. chance of {@chance death key}:
  325. set {_element} to random element out of {case::chestlist::*}
  326. if {case::type::%{_element}%} is "notkey":
  327. drop tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_element}%" at location of victim
  328. on right click:
  329. if player's tool is chest or ender chest:
  330. loop {case::chestlist::*}:
  331. if uncolored name of player's tool is loop-value:
  332. cancel event
  333. set {_name} to uncolored name of player's tool
  334. replace all " " with "_" in {_name}
  335. execute player command "case open %{_name}%"
  336. stop
  337. if player's tool is tripwire hook:
  338. if name of player's tool contains "Klucz do skrzyni":
  339. cancel event
  340. open chest with 6 rows named "{@important}Lista skrzynek:" to player
  341. wait 1 tick
  342. set {_slot} to 0
  343. loop {case::chestlist::*}:
  344. if loop-value contains "<none>":
  345. remove loop-value from {case::chestlist::*}
  346. set {_lore} to "%{case::%loop-value%::itemlist::*}%"
  347. set {_name%loop-index%} to loop-value
  348. replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  349. replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  350. replace all " " with "_" in {_name%loop-index%}
  351. if {case::type::%loop-value%} is "key":
  352. format slot {_slot} of player with 1 of chest named "{@important}%loop-value%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to run [close player's inventory]->[wait 2 tick]->[execute player command "case open %{_name%{_slot}%}%"]
  353. else:
  354. format slot {_slot} of player with 1 of ender chest named "{@important}%loop-value%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to run [close player's inventory]->[wait 2 tick]->[execute player command "case open %{_name%{_slot}%}%"]
  355. add 1 to {_slot}
  356. wait 1 tick
  357. on mine of {@block drop}:
  358. chance of {@chance drop chest}:
  359. set {_element} to random element out of {case::chestlist::*}
  360. set {_lore} to "%{case::%{_element}%::itemlist::*}%"
  361. replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  362. replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  363. if {case::type::%{_element}%} is "key":
  364. drop chest named "{@important}%{_element}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || "
  365. else:
  366. drop ender chest named "{@important}%{_element}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || "
  367. play raw sound "mob.endermen.portal" at player with pitch 0.001 volume 1
  368. send "{@tag} {@general}Zdobyles skrzynie {@important}%{_element}%{@general}!"
  369. chance of {@chance drop key}:
  370. set {_element} to random element out of {case::chestlist::*}
  371. if {case::type::%{_element}%} is "key":
  372. drop tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_element}%"
  373. play raw sound "mob.endermen.portal" at player with pitch 0.001 volume 1
  374. send "{@tag} {@general}Zdobyles klucz do skrzyni {@important}%{_element}%{@general}!"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement