Sueta

Switcheroo

1.6.0

Get a player's head by clicking on them!

·Plugin

Information:
This plugin's purpose is simple. You can right click on a player and turn any player head (as long as it's not already of the player you're clicking) into the player that you have clicked. You may charge the player to do this action using either xp levels, vault currency, tokens from TokenManager or a specific item. The player also requires the permission "switcheroo.changeskull" to be able to do this action. There is also an optional cooldown feature that players must wait before changing skulls again. Every message and action is configurable in the configuration file as well as the skull that you get after changing it.

Video Example of Plugin In Action:
https://gyazo.com/4350d44a6a7324cf56e8bb4f93566b12

Permissions:
"switcheroo.changeskull" - to be able to switch skulls.
"switcheroo.admin" - to use the /switcheroo command.

Commands:
/switcheroo - to reload the config.yml from in-game.

Optional Hook Plugins:
- PlaceholderAPI (can use placeholders in the skull data name and lore and inside of the messages defined in the config)
- Vault (Essentials as well if planned to use for a currency payment type)
- TokenManager (if planned to use for a token payment type)

Default Config:

## SWITCHEROO CONFIG ##

Data:
  # The amount of experience levels the player needs to be able to switch a skull.
  # This is just an optional way to charge players you have many options.
  payment-options:
    # If you want to charge using xp levels.
    level-charge: 50
    # If you want to charge using vault/essentials economy.
    #vault-charge: 2500
    # If you want to charge using tokens.
    #tokens-charge: 20
    # If you want to charge using a specific item.
    #item-charge:
      #material: GOLD_INGOT
      #amount: 64
      #name: "&6Gold"
  skull-data:
    # The skull's new display name (Variables: %player%) Supports PlaceholderAPI variables!
    name: "%vault_rankprefix%%player%&f's Head"
    # The skull's new lore (Variables: %player% | %date% | %switcher%) Supports PlaceholderAPI variables and multiple lines!
    lore:
      - "&7Switched on &d%date%"
  # The amount of minutes that you need to wait to convert skulls between each other.
  # This is needed because if you request from mojang too many times it can send you errors saying it failed to get the player's skin to apply to the skull.
  cooldown: 1
  # Whether to add commas in proper spots for the payment types.
  comma-formatting: true
  # The sound to play when a skull is switched.
  conversion-sound: "ENTITY_EXPERIENCE_ORB_PICKUP"
  # Write how you want your date formatted:
  # MM = month in numbers.
  # MMM = month with the first 3 characters in the month so Jul for July.
  # MMMM = the entire month's name so July.
  # hh:mm:ss = the exact hour:minute:second they joined (can also be done with just hh or hh:mm or mm:ss etc..)
  # a = am/pm marker.
  # z = the timezone.
  # dd = day in numbers.
  # yy (only the ending) so 20"20" = 20.
  # yyyy (entire year) = 2020.
  # Can change the splitting symbols from - to / or anything else you'd prefer.
  date-format: "MM-dd-yyyy"

Messages:
  # Variables: %prefix% %cmd-label% %level% %money% %cooldown% %date% %player% %switcher% %tokens% %amount% %item-name% %item-type%
  prefix: "&7[&dSwitch&beroo&7]"
  no-permission: "%prefix% &cYou don't have permission to convert skulls!"
  inventory-is-full: "%prefix% &cYou don't have enough space in your inventory to convert a skull!"
  # Supports PlaceholderAPI variables! Used if level charging is used.
  switched-heads-using-levels: "%prefix% &eYou spent &a%level% &exp levels to switch the skull in hand to %vault_rankprefix%%player%&e's head!"
  not-enough-levels: "%prefix% &cYou don't have enough xp levels to switch this skull! You need &4%level% &cmore!"
  # Supports PlaceholderAPI variables! Used if vault charging is used.
  switched-heads-using-vault: "%prefix% &eYou spent &a$%money% &eto switch the skull in hand to %vault_rankprefix%%player%&e's head!"
  not-enough-money: "%prefix% &cYou don't have enough money to switch this skull! You need &4$%money% &cmore!"
  # Supports PlaceholderAPI variables! Used if token charging is used.
  switched-heads-using-tokens: "%prefix% &eYou spent &a%tokens% &etokens to switch the skull in hand to %vault_rankprefix%%player%&e's head!"
  not-enough-tokens: "%prefix% &cYou don't have enough tokens to switch this skull! You need &4%tokens% &cmore!"
  # Supports PlaceholderAPI variables! Used if item charging is used.
  switched-heads-using-items: "%prefix% &eYou spent &a%amount% &6%item-name% &7(&e%item-type%&7) &eto switch the skull in hand to %vault_rankprefix%%player%&e's head!"
  not-enough-items: "%prefix% &cYou don't have enough &6%item-name% &7(&e%item-type%&7) &cto switch this skull! You need &4%amount% &cmore!"
  # Supports PlaceholderAPI variables!
  skull-already-of-player: "%prefix% &cThis skull is already the same as %vault_rankprefix%%player%&c's head!"
  on-cooldown: "%prefix% &cYou can't convert skulls for another &4%cooldown%&c!"
  conversion-of-skull-log: "[%prefix%] &e%switcher% &bconverted a skull to %vault_rankprefix%%player%&b's head on &d%date%&b!"
  reloaded-config: "%prefix% &aThe config.yml has been reloaded!"
  admin-help-header: "%prefix% &cAdmin Help Commands:"
  admin-help-page:
    - " "
    - "&6/%cmd-label% reload &7- &eReload the config.yml!"
    - " "

Suggestions are welcome to make the plugin more unique and fun :)!

Similar projects

Plugin →