Sueta

SWAddon

[Abandoned]

AutoJoin on death, tab with kills count, Win Effects and more

·Plugin

dcb27c094dc47ce563b78bedbd4e0b45e1de9a88.png

  • Java 8
  • NametagEdit 4.0.2 (Click for download)
  • SkyWars of CookLoco (Optional, this is for the displayStats on death, Win Effects and hologram in chest empty)
  • ActionBarAPI (Optional, for use the ActionBar on kill)
  • CustomInventoriesAPI 1.7 (Click for download)
  • PlaceholderAPI (Execute /papi ecloud download Server)
  • HolographicDisplays (Optional, for the hologram in chest empty)

5e3eb668d03fa154b2ddbdcf324cdcd9910f8ecd.png

  • /addonswreload - Permission: addonsw.reload
  • /sweffects - Open the menu of Win Effects
  • /swsettings - Open the menu of More Settings
  • /swstoplag - Permission: sw.stoplag - If your server is going lag by the fault of the plugin use this command and you will recuperate a lot of TPS

49376387b9d7c51889332151333abbfcbdeadc4a.png

  • A text on death for go to another game with a click
  • Join to the games with the prefix &e with a count of kills in the tag of the player. Example: &eKeffisor21 3 <--- kills (Like CubeCraft)
  • Display a stats on death like CubeCraft, with a message that say the position that you get in the game and the kills.
  • ActionBar on kill with a custom message
  • Win Effects
  • When a chest is empty a hologram is created like Hypixel SkyWars

7ba35491e562005470f8b737c0213570f5ca3d4b.png

swaddon2.PNG
swaddon3.PNG
swaddon4.PNG



a37a43be28fce4451bde95a30444589718176586.png

  • WinEffects (100%)
  • Cages (10%)
  • Titles on death (100%)
  • Lines infinities in the message of autojoin (100%)
  • Empty Chest create hologram like Hypixel (100%)
  • Action Bars with the players remaining (0%)

dad0a5f1a018b486148041140ce6017b35f50b3c.png

Gameplay with SWAddon

YouTube

Gameplay with SWAddon 2

YouTube

8a2a8d856157d4d01c8a47f36504da55083ad6df - copia.png

Lobby: SetYourLobbyOfSkyWarsHere
TextOnKill1: |-
  "&7&m-----------------------------------"
  "      &e&lThanks for playing SkyWars"
TextOnKill3: "          &a&lPlay again &8&l●"
TextOnKill4: " &c&lExit"
TextOnKill5: |-
  "&7&m-----------------------------------"
TextOnKillHoverEvent1: "Click for go to another game of &bSkyWars"
TextOnKillHoverEvent2: "Click for left the game of &eSkyWars"
TextOnKillJoinCmd: "sw join"
TextOnKillLeaveCmd: "leave"
TextOnKillState: true
NameTagInGame: true
ActionBarInKill: false
ActionBarText: "&e⚔ You killed %killed% ⚔"
displayStatsOnDeath: false
displayStatsMsg: |-
  &7-----------------------------
  &8&l• &7You got §e%playersleft% &7place
  &8&l• &7Kills: &e%kills%
  &7-----------------------------
ItemJoin: "&6More Settings"
ItemJoinLore: "&7Customise your SkyWars gameplay!"
MenuPrincipalName: "&6More Settings SkyWars"
Item1: "&6&lWinEffects"
Item2: "&a&lMore Cages"
ItemLore1: "&7Change your effect on win a game"
ItemLore2: "&7Change your cage on games"

WinEffectsMenuName: "&6WinEffects Settings"
FireworksItem: "&e&lFireworks"
FireworksItemLore: "&7The default Win Effect"
DiscoBlocksItem: "&e&lDisco blocks"
DiscoBlocksItemLore: "&7An beautiful effect of wool"
WinEffectSelected: "&aYou have selected the win effect &eDisco blocks"
WinEffectSelected2: "&aYou have selected the win effect &eFireworks"
WinEffectNoPermissions: "&cYou don't have permission for this Win Effect"
LeaveInWinEffect: "&cYou must to wait to finish the win effect to return to the lobby"
CageMessage: "&cComing soon"
MoreSettings: true
MoreSettingsItem: true
TitleOnDeath: false
TitleOnDeathMsg: "&cYOU DIED"
Alert: "Learn to install the WinEffects in my page on Spigot (Important for work) https://www.spigotmc.org/resources/swaddon.60504/"

HOW TO INSTALL THE WIN EFFECTS
- In the case you need this API, click here for download it, you must to have the plugin of SkyWars of CookLoco, for install you have to go to the config.yml on the plugin of CookLoco, and you have to search "reward" in the config, finally put in true and add this in list - 100/wineffect %winner%

Example

reward:
# reward that receive every survivor when a player die
death: 1
# reward for kill some player
kill: 2
# reward for winner
win: 10
wincmd:
# Enable or disable winner commands (EXECUTED BY CONSOLE)
enabled: true
# Commands list (VARIABLES: %winner% , %map%)
# FORMAT: 'CHANCE/CMD'
# Example: 90/give %winner% minecraft:diamond_block 1
# CHANCE: 0-100
list:
- 100/wineffect %winner%

Permissions:
Disco Wool: skywars.win.lana
Fireworks: Don't have permission

Inventory hooking for Developers on SkyWars Plugin (CookLoco)

I have made a code for hooking inventories of the plugin SkyWars of CookLoco, with the code that i made when i was bored you can add ítems/execute code when the inventory is open or a item is clicked.

MenuSettingsAddon.java
package com.Keffisor21;

import ak.CookLoco.SkyWars.SkyWars;
import ak.CookLoco.SkyWars.menus2.MenuListener;
import ak.CookLoco.SkyWars.menus2.arena.MenuSettings;
import ak.CookLoco.SkyWars.utils.ItemBuilder;
import ak.CookLoco.SkyWars.utils.MSG;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.inventory.InventoryClickEvent;

public class MenuSettingsAddon extends MenuSettings {
    Player p;
    public MenuSettingsAddon(Player player) {
        super(player);
        p = player;
    }
    @Override
    public void onClick(final InventoryClickEvent inventoryClickEvent) {
        if (inventoryClickEvent.getCurrentItem().getType() == Material.GLASS) {
            this.getPlayer().openInventory(MenuListener.getPlayerMenu(this.getPlayer(), "settingsBoxes").getInventory());
        }
        if (inventoryClickEvent.getCurrentItem().getType() == Material.ARROW) {
            this.getPlayer().openInventory(MenuListener.getPlayerMenu(this.getPlayer(), "settingsTrails").getInventory());
        }
         // Code addon
    }
 
   @Override
    public void update() {
        this.setItem(2, new ItemBuilder(Material.GLASS).setTitle(SkyWars.getMessage(MSG.SETTINGS_MENU_BOXES_NAME)).addLore(SkyWars.getMessage(MSG.SETTINGS_MENU_BOXES_LORE)));
        this.setItem(6, new ItemBuilder(Material.ARROW).setTitle(SkyWars.getMessage(MSG.SETTINGS_MENU_TRAILS_NAME)).addLore(SkyWars.getMessage(MSG.SETTINGS_MENU_TRAILS_LORE)));
     // Code addon
    }
}
MenuVoteAddon.java
package com.Keffisor21;

import ak.CookLoco.SkyWars.SkyWars;
import ak.CookLoco.SkyWars.arena.Arena;
import ak.CookLoco.SkyWars.menus2.MenuListener;
import ak.CookLoco.SkyWars.menus2.arena.MenuVote;
import ak.CookLoco.SkyWars.player.SkyPlayer;
import ak.CookLoco.SkyWars.utils.ItemBuilder;
import ak.CookLoco.SkyWars.utils.MSG;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.inventory.InventoryClickEvent;

public class MenuVoteAddon extends MenuVote {
    Player player;
    public MenuVoteAddon(Player p) {
        super(p);
        p = player;
    }
       @Override
        public void update() {
           final SkyPlayer skyPlayer = SkyWars.getSkyPlayer(this.getPlayer());
             if (skyPlayer.isInArena()) {
            final Arena arena = skyPlayer.getArena();
            if (arena.getConfig().getBoolean("options.vote.chest")) {
                this.setItem(11, new ItemBuilder(Material.ENDER_CHEST).setTitle(SkyWars.getMessage(MSG.VOTE_CHESTS_NAME)).addLore(SkyWars.getMessage(MSG.VOTE_CHESTS_LORE)));
            }
            if (arena.getConfig().getBoolean("options.vote.time")) {
                this.setItem(15, new ItemBuilder(Material.WATCH).setTitle(SkyWars.getMessage(MSG.VOTE_TIME_NAME)).addLore(SkyWars.getMessage(MSG.VOTE_TIME_LORE)));
            }
            // Code addon
             }
        }
    @Override
    public void onClick(final InventoryClickEvent inventoryClickEvent) {
        if (inventoryClickEvent.getCurrentItem().getType() == Material.CHEST) {
            this.getPlayer().openInventory(MenuListener.getPlayerMenu(this.getPlayer(), "voteChest").getInventory());
        }
        if (inventoryClickEvent.getCurrentItem().getType() == Material.WATCH) {
            this.getPlayer().openInventory(MenuListener.getPlayerMenu(this.getPlayer(), "voteTime").getInventory());
        }
         // Code addon
    }
}
Main
package com.Keffisor21;

import ak.CookLoco.SkyWars.SkyWars;
import org.bukkit.event.*;
import org.bukkit.*;
import org.bukkit.plugin.*;
import org.bukkit.entity.*;
import org.bukkit.event.player.*;
import org.bukkit.plugin.java.JavaPlugin;

public class CookLoco extends JavaPlugin implements Listener {

    @Override
    public void onEnable() {
      Bukkit.getServer().getPluginManager().registerEvents(this, this);
    }
      @EventHandler
    public void onPlayerJoin(final PlayerJoinEvent playerJoinEvent) {
        final Player player = playerJoinEvent.getPlayer();
         Bukkit.getScheduler().runTaskLater((Plugin)SkyWars.getPlugin(), () -> {
         new MenuVoteAddon(player);
         new MenuSettingsAddon(player);
        }, 20L);
    }
}

Add this class or code to your plugin, in the part of "// Code addon" you can add new items or code to execute.

Similar projects

Plugin →