Advertisement
Guest User

Minecraft-list.gg | Vote System Using Skript

a guest
Mar 26th, 2024
16
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.24 KB | None | 0 0
  1. #Skript publiched on https://minecraft-list.gg
  2. #Minecraft-list.gg - your favorite server listing site!
  3.  
  4. import:
  5. org.bukkit.Bukkit
  6. com.vexsoftware.votifier.model.Vote
  7. com.vexsoftware.votifier.model.VotifierEvent
  8.  
  9. VotifierEvent:
  10. set {_player} to (event.getVote().getUsername() parsed as offline player) #Gets the player who has entered a vote on a website.
  11. set {_site} to event.getVote().getServiceName() #Get the plain URL of the vote website.
  12.  
  13. voteReceived({_player}, {_site}) #Function called
  14.  
  15. function voteReceived(player: offlineplayer, site: text):
  16. set {_now} to unix timestamp of now
  17.  
  18. #{_player} is parsed as an offlineplayer.
  19.  
  20. #{_site} would output the plain URL of the server-list website.
  21. #If the link to your server-listing page is https://minecraft-list.gg/server/minemalia.20
  22. #Then {_site} would be "minecraft-list.gg"
  23.  
  24. #broadcast "%{_now}%" #Timestamp of the vote
  25. #broadcast "%{_player}%" #Example "Maaads_"
  26. #broadcast "%{_site}%" #Example "minecraft-list.gg"
  27.  
  28. {_site} contains "Minecraft-list.gg" or "Other Voting site 1" or "Other Voting site 2": # Checking the vote website
  29. give {_player} 1 diamond #Example for giving an reward
  30. command "coins add %{_player}% 25" #Example for giving an reward
  31. add 500 to {_player}'s balance #Example for giving an reward
  32. set {_uuid} to uuid of {_player}
  33. add 1 to {votes::%{_uuid}%::amount}
  34. if {_player} has played before: #Checks that the player has played on the server before broadcasting a message that the player has voted.
  35. broadcast "&8[&3&lVOTE&8] &f&l%{_player}% &7voted and received free rewards! &8(&7/vote&8)"
  36.  
  37. command /vote:
  38. trigger:
  39. voteGUI(player)
  40.  
  41. on load:
  42. set {votingLinks::name::1} to "Minecraft-list.gg"
  43. set {votingLinks::link::1} to "https://minecraft-list.gg/"
  44.  
  45. set {votingLinks::name::2} to "Minecraft-MP.com"
  46. set {votingLinks::link::2} to "https://minecraft-mp.com/"
  47.  
  48. set {votingLinks::name::3} to "Minecraft-Server-List.com"
  49. set {votingLinks::link::3} to "https://minecraft-server-list.com/"
  50.  
  51. function voteGUI(p: player):
  52. set {_gui} to chest inventory with 5 rows named "&a&lVOTE &f&lMENU &7- Information"
  53. set {_uuid} to uuid of {_p}
  54. set slot (integers from 0 to 8) of {_gui} to green stained glass pane named ""
  55.  
  56. set slot 4 of {_gui} to getHead("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMzU3NDcwMTBkODRhYTU2NDgzYjc1ZjYyNDNkOTRmMzRjNTM0NjAzNTg0YjJjYzY4YTQ1YmYzNjU4NDAxMDVmZCJ9fX0=") named "&a&lYOUR STATS" with lore "&8&m---------------------------%nl%%nl% &7Welcome to our &f&lVote System%nl%%nl% &7Here are your voting stats:%nl%&8【 &7Overall votes: &f%{votes::%{_uuid}%::amount} ? 0%&8】%nl%%nl%&8&m---------------------------"
  57.  
  58. set slot 19 of {_gui} to getHead("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGZlOGRhZmZlMzVjYTE4MzJmZjk5ZWVhZDQ2MTdhMzY5ZWEwMzNjMjRiODI1M2Y1MTFmZDhiOTE3MzdhN2UifX19") named "&a&lVOTING &f&lREWARDS" with lore "&8&m---------------------------%nl%%nl% &7When voting on our server,%nl% &7you will receive free rewards.%nl%%nl% &f&lRewards for voting:%nl% &8* &71x Diamond%nl% &8* &725x Coins%nl% &8* &7$500 ingame money %nl%%nl% &aYou can vote on each link every 24. hours.%nl%%nl%&8&m---------------------------"
  59.  
  60. set slot 21 of {_gui} to getHead("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNmQ2NWNlODNmMWFhNWI2ZTg0ZjliMjMzNTk1MTQwZDViNmJlY2ViNjJiNmQwYzY3ZDFhMWQ4MzYyNWZmZCJ9fX0=") named "&a&l%{votingLinks::name::1}%" with lore "&8&m---------------------------%nl%%nl% &7Click here to vote on this website.%nl% &7You can vote every 24 hours.%nl%%nl%&8&m---------------------------"
  61. set slot 22 of {_gui} to getHead("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGQ1NGQxZjhmYmY5MWIxZTdmNTVmMWJkYjI1ZTJlMzNiYWY2ZjQ2YWQ4YWZiZTA4ZmZlNzU3ZDMwNzVlMyJ9fX0=") named "&a&l%{votingLinks::name::2}%" with lore "&8&m---------------------------%nl%%nl% &7Click here to vote on this website.%nl% &7You can vote every 24 hours.%nl%%nl%&8&m---------------------------"
  62. set slot 23 of {_gui} to getHead("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMjFlNGVhNTliNTRjYzk5NDE2YmM5ZjYyNDU0OGRkYWMyYTM4ZWVhNmEyZGJmNmU0Y2NkODNjZWM3YWM5NjkifX19") named "&a&l%{votingLinks::name::3}%" with lore "&8&m---------------------------%nl%%nl% &7Click here to vote on this website.%nl% &7You can vote every 24 hours.%nl%%nl%&8&m---------------------------"
  63. set slot 24 of {_gui} to getHead("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMjM3MGNhNDdiNjE3M2FiNThlNmE4MDE4NDg2ZTJmOGJhYTgzOTdhYjYxNGFlMmU2OTY4NDkxOTZiYWE3YyJ9fX0=") named "&a&lCOMMING SOON" with lore "&8&m---------------------------%nl%%nl% &7More voting sites will be added in the future.%nl%%nl%&8&m---------------------------"
  64.  
  65. set slot (integers from 36 to 44) of {_gui} to white stained glass pane named ""
  66.  
  67. open {_gui} to {_p}
  68.  
  69. on inventory click:
  70. if name of player's current inventory is "&a&lVOTE &f&lMENU &7- Information":
  71. cancel event
  72. if clicked slot is 21:
  73. close player's inventory
  74. send "&7Link: &f%{votingLinks::link::1}%" with prefix "&a&lVOTE &f&lMENU" for player
  75. stop
  76. if clicked slot is 22:
  77. close player's inventory
  78. send "&7Link: &f%{votingLinks::link::2}%" with prefix "&a&lVOTE &f&lMENU" for player
  79. stop
  80. if clicked slot is 23:
  81. close player's inventory
  82. send "&7Link: &f%{votingLinks::link::3}%" with prefix "&a&lVOTE &f&lMENU" for player
  83. stop
  84.  
  85. function getHead(value: text = "Nothing") :: item:
  86. set {_i} to a player head
  87. set {_n} to nbt compound of {_i}
  88. add nbt compound of "{SkullOwner:{Id:[I;560730361,-2039592014,-1344041958,-1058039007],Properties:{textures:[{Value:""%{_value}%""}]}}}" to {_n}
  89. return {_i}
  90.  
  91. effect:
  92. patterns:
  93. send %text% with prefix %text% for %player%
  94. trigger:
  95. send "" to expression-3
  96. send "&8[ %expression-2% &8]" to expression-3
  97. send " &7%expression-1%" to expression-3
  98. send "" to expression-3
  99.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement