Jump to content

SKegnh - Dupe Skript (Blacklist)


kegnh

Recommended Posts

# SKegnh - Dupe Skript
# made by itskegnh#9344

options:
	# Permissions
    dupe-permission: skegnh.dupe
    random-item-permission: skegnh.item
    toggle-item-permission: skegnh.toggle
    blacklist-permission: skegnh.blacklist
    
    # Messages
    permission-message: &cInsufficient Permissions
    dupe-message: &f[&cSKegnh&f] &7Duped your hand.
    toggle-message: &f[&cSKegnh&f] &7toggled your item drops.
    inventory-full: &f[&cSKegnh&f] &7You do not have enough inventory space.
    blacklist-add: &f[&cSKegnh&f] &7Added.
    blacklist-remove: &f[&cSKegnh&f] &7Removed.
    
    # Other
    world: world
    cooldown: 0 seconds

command /dupe:
    trigger:
        if player doesn't have permission "{@dupe-permission}":
            send "{@permission-message}" to player
            stop
        if player can hold player's tool:
            give player player's tool
            send "{@dupe-message}"
            stop
        send "{@inventory-full}"

command /toggle:
    trigger:
        if player doesn't have permission "{@toggle-item-permission}":
            send "{@permission-message}" to player
           	stop
        add player's uuid to {toggle::*} if {toggle::*} doesn't contain player's uuid
        remove player's uuid from {toggle::*} if {toggle::*} contains player's uuid
        send "{@toggle-message}" to player

command /blackist <text="add">:
    trigger:
        if player doesn't have permission "{@toggle-item-permission}":
            send "{@permission-message}" to player
            stop
        if arg-1 = "add":
            add type of player's tool to {blacklisted.items::*}
            send "{@blacklist-added}" to player
        else if arg-1 = "remove":
            remove type of player's tool from {blacklisted.items::*}
            send "{@blacklist-removed}" to player
            
every {@cooldown} in world "{@world}":
    give all players where [player input has permission "{@random-item-permission}" and {toggle::*} doesn't contain player input's uuid] 1 of (random element out of all items where [{blacklisted.items::*} does not contain type of input])

If you need help, please DM itskegnh#9344.

Edited by itskegnh

Minecraft Ranks
[DEFAULT] - 9th October 2020
[PRO] - 21st November 2020
[PATRON] - 27th October 2021

Proficiency
Python - 8 Years
C/C++ - 5 Years
Skript - 4 Years
Javascript - 3 Year
Java - 1 Year

Links
Discord - kegnh#1234

 
Link to comment
Share on other sites

Some suggestions:

You can change this:

add player's uuid to {toggle::*} if {toggle::*} doesn't contain player's uuid
remove player's uuid from {toggle::*} if {toggle::*} contains player's uuid

To this:

add player's uuid to {toggle::*} if {toggle::*} doesn't contain player's uuid, else remove player's uuid from {toggle::*}


Skript has built in permissions for commands:
 

command example:
	permission: example
	trigger:

else if would have no effect here:

else if arg-1 = "remove":

as you have a stop in the if statement.

Cool skript though!

Edited by _omga

If I helped you at all, leave a like!

IGN: _omga
Discord: omega#1000

 

Link to comment
Share on other sites

  • kegnh changed the title to SKegnh - Dupe Skript (Blacklist)
  • 2 months later...

Is there a way to block blacklisted items in a shulker? This is the code I have now (From another post cause I can't code lol)

Variables:
  {dupedelay.%player%} = true
 
command /dupe [<text>]:  #delay is 30 seconds you can change it from line 19
  trigger:
    if arg 1 is not set:
      if player has permission "dupedelay.bypass":
        if {blockeditems::*} contains player's tool:
          send "&cYou can't dupe this item!" to player    
        else:
          give player's tool to player  
      else:
        if {dupedelay.%player%} is true:
          if {blockeditems::*} contains player's tool:
            send "&cYou can't dupe this item!" to player
          else:
            give player's tool to player
            set {dupedelay.%player%} to false
            wait 30 seconds # change the delay
            set {dupedelay.%player%} to true    
        else:
          send "&cYou have to wait before using that command again!" to player
    if arg 1 is "add" or "block":
      if player has permission "dupe.add" or "dupe.block":
        if {blockeditems::*} contains player's tool:
          send "&bThis item is already blocked." to player
        else:
          add player's tool to {blockeditems::*}
          send "&aSucesfully added &e%player's tool% &afrom blocked items." to player
      else:
        send "&cYou don't have permission for that command!"
 
    if arg 1 is "remove" or "unblock":      
      if player has permission "dupe.remove" or "dupe.unblock":
        if {blockeditems::*} contains player's tool:
          remove player's tool from {blockeditems::*}
          send "&cSucesfully removed &e%player's tool% &cfrom blocked items." to player
        else:
          send "&bThis item is not blocked." to player      
      else:
        send "&cYou don't have permission for that command!"
 

Link to comment
Share on other sites

  • pAxiee locked this topic
Guest
This topic is now closed to further replies.
×
×
  • Create New...