Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.evdokimov.helmetset;
- import com.comphenix.protocol.ProtocolLibrary;
- import com.comphenix.protocol.ProtocolManager;
- import lowbrain.armorequip.ArmorEquipEvent;
- import net.skinsrestorer.api.PlayerWrapper;
- import net.skinsrestorer.api.SkinsRestorerAPI;
- import net.skinsrestorer.api.exception.SkinRequestException;
- import net.skinsrestorer.api.property.GenericProperty;
- import net.skinsrestorer.api.property.IProperty;
- import org.bukkit.Bukkit;
- import org.bukkit.Material;
- import org.bukkit.configuration.file.FileConfiguration;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.inventory.InventoryCloseEvent;
- import org.bukkit.plugin.Plugin;
- import org.bukkit.plugin.java.JavaPlugin;
- public class HelmetSet extends JavaPlugin implements Listener
- {
- private ProtocolManager protocolManager;
- private SkinsRestorerAPI skinsRestorerAPI;
- boolean skinAply;
- FileConfiguration config;
- public HelmetSet() {
- this.config = this.getConfig();
- }
- public void onEnable() {
- protocolManager = ProtocolLibrary.getProtocolManager();
- Bukkit.getServer().getPluginManager().registerEvents((Listener)this, (Plugin)this);
- this.getLogger().info(this.config.getString("message"));
- this.saveDefaultConfig();
- this.skinsRestorerAPI = SkinsRestorerAPI.getApi();
- }
- public void onDisable() {
- this.getLogger().info("Bye!!!");
- }
- @EventHandler
- public void equip(final ArmorEquipEvent e) {
- final Player p = e.getPlayer();
- if (e.getNewArmorPiece().getItemMeta() == null)
- {
- return;
- };
- if (e.getNewArmorPiece().getType() != null && e.getNewArmorPiece().getType() != Material.AIR) {
- for (int model = 0; model < this.config.getInt("max_model"); ++model) {
- if (e.getNewArmorPiece().getItemMeta().getCustomModelData() == model) {
- p.sendMessage("слот: " + model );
- p.sendMessage("слот: " + e.getNewArmorPiece().getType().getEquipmentSlot() );
- final Long time = 0L;
- try {
- this.skinsRestorerAPI.setSkinData(this.config.getString("skin." + model + ".name"), (IProperty)new GenericProperty("textures", this.config.getString("skin." + model + ".set_value"), this.config.getString("skin." + model + ".set_signature")), (Long)null);
- this.skinsRestorerAPI.setSkin(p.getName(), this.config.getString("skin." + model + ".name"));
- }
- catch (SkinRequestException ex) {
- ex.printStackTrace();
- }
- }
- else if (e.getNewArmorPiece().getItemMeta() == null)
- {
- return;
- };
- }
- }
- if (e.getOldArmorPiece().getType() != Material.AIR && e.getNewArmorPiece().getType() != Material.PLAYER_HEAD) {
- if (e.getNewArmorPiece() != null) {
- if (e.getNewArmorPiece().getType() != Material.AIR) {
- return;
- }
- }
- try {
- this.skinsRestorerAPI.setSkinData(this.config.getString("skin.0.name"), (IProperty) new GenericProperty("textures", this.config.getString("skin.0.set_value"), this.config.getString("skin.0.set_signature")), (Long) null);
- this.skinsRestorerAPI.setSkin(p.getName(), this.config.getString("skin.0.name"));
- } catch (SkinRequestException ex2) {
- throw new RuntimeException((Throwable) ex2);
- }
- }
- }
- @EventHandler
- public void onInventoryClose(final InventoryCloseEvent e) {
- if (skinAply == true) {
- skinAply = false;
- try {
- this.skinsRestorerAPI.applySkin(new PlayerWrapper((Object)e.getPlayer()));
- }
- catch (SkinRequestException ex) {
- throw new RuntimeException((Throwable)ex);
- }
- }
- }
- @EventHandler
- public void Check(final ArmorEquipEvent e) {
- if (e.getOldArmorPiece().getType() != e.getNewArmorPiece().getType()) {
- skinAply = true;
- }
- if ((e.getNewArmorPiece().getItemMeta().getCustomModelData() != e.getOldArmorPiece().getItemMeta().getCustomModelData())) {
- skinAply = true;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment