Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Плагин [TP/INFO] YourHome v1.0 - Установка домов и многое другое [1.7.2+]

Статус
Закрыто для дальнейших ответов.
Вообщем скину сорцы
Ну так ты бы тогда хоть декомпилировал их нормально. Или у меня одного так твои "сорцы" отображает?

qgXe48xvlR.png
 
Ну так ты бы тогда хоть декомпилировал их нормально. Или у меня одного так твои "сорцы" отображает?

qgXe48xvlR.png
Luyten наверно юзал для декомпила.
Вот через jd-gui
Java:
package ru.lucatjuh.yourhome;

import java.util.logging.Logger;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.Server;
import org.bukkit.Sound;
import org.bukkit.World;
import org.bukkit.block.Block;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
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.block.BlockBreakEvent;
import org.bukkit.event.entity.PlayerDeathEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;

public class YourHome
  extends JavaPlugin
  implements Listener
{
  private static YourHome instance;
  FileConfiguration config = getConfig();

  public static YourHome instance()
  {
    return instance;
  }

  public void onEnable()
  {
    Bukkit.getServer().getPluginManager().registerEvents(this, this);
    Bukkit.getServer().getPluginManager().registerEvents(new KillMob(), this);
    getLogger().info("YourHome plugin was Enabled");
  }

  public void onDisable()
  {
    getLogger().info("YourHome plugin was Disabled");
    saveConfig();
  }

  @EventHandler
  public void onBlockBreak(BlockBreakEvent e)
  {
    Player p = e.getPlayer();
    p.giveExp(5);
    if (e.getBlock().getType() != Material.DIAMOND_BLOCK) {
      return;
    }
    p.giveExp(10);
    p.damage(20.0D);
    MessageManager.getManager().msg(p, MessageManager.MessageType.BAD, new String[] { "Зачем ты слмоал этот блок?" });
  }

  @EventHandler
  public void onPlayerDeath(PlayerDeathEvent event)
  {
    Player player = event.getEntity();
    event.setDeathMessage(ChatColor.AQUA + player.getDisplayName() + ChatColor.RED + " Умер!");
  }

  @EventHandler
  public void onJoin(PlayerJoinEvent event)
  {
    event.setJoinMessage(ChatColor.AQUA + event.getPlayer().getName() + ChatColor.GREEN + " Вошёл на сервер!");
  }

  @EventHandler
  public void onQuit(PlayerQuitEvent event)
  {
    event.setQuitMessage(ChatColor.AQUA + event.getPlayer().getName() + ChatColor.RED + " Покинул сервер!");
  }

  public boolean checkSender(CommandSender sender)
  {
    if ((sender instanceof Player)) {
      return false;
    }
    return true;
  }

  public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
  {
    if (cmd.getName().equalsIgnoreCase("savehome"))
    {
      if (checkSender(sender))
      {
        MessageManager.getManager().msg(sender, MessageManager.MessageType.BAD, new String[] { "Only players can use this command!" });
        return true;
      }
      Player p = (Player)sender;
    
      locToConfig(p.getName(), p.getLocation());
      MessageManager.getManager().msg(p, MessageManager.MessageType.GOOD, new String[] { "Дом успешно установлен!" });
      p.playSound(p.getLocation(), Sound.CLICK, 1.0F, 1.0F);
      return true;
    }
    if (cmd.getName().equalsIgnoreCase("tphome"))
    {
      if (checkSender(sender))
      {
        MessageManager.getManager().msg(sender, MessageManager.MessageType.BAD, new String[] { "Only players can use this command!" });
        return true;
      }
      Player p = (Player)sender;
    
      Location home = configToLoc(p.getName());
      p.teleport(home);
      MessageManager.getManager().msg(p, MessageManager.MessageType.GOOD, new String[] { "Вы успешно телепортировались домой!" });
      p.playSound(p.getLocation(), Sound.PORTAL_TRAVEL, 1.0F, 1.0F);
      p.playSound(p.getLocation(), Sound.CLICK, 1.0F, 1.0F);
      return true;
    }
    return false;
  }

  public void locToConfig(String name, Location loc)
  {
    this.config.set("locations." + name + ".world", loc.getWorld().getName());
    this.config.set("locations." + name + ".x", Double.valueOf(loc.getX()));
    this.config.set("locations." + name + ".y", Double.valueOf(loc.getY()));
    this.config.set("locations." + name + ".z", Double.valueOf(loc.getZ()));
    saveConfig();
  }

  public Location configToLoc(String name)
  {
    Location loc = new Location(Bukkit.getWorld(this.config.getString("locations." + name + ".world")),
      this.config.getDouble("locations." + name + ".x"),
      this.config.getDouble("locations." + name + ".y"),
      this.config.getDouble("locations." + name + ".z"));
    return loc;
  }

  @EventHandler
  public void onPlayerJoin(PlayerJoinEvent e)
  {
    Player p = e.getPlayer();
    MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Author: Lucatjuh, Skype: lucatjuhcraft, Commands: /savehome, /tphome, Version: 1.0, Russia Plugin!" });
    p.playSound(p.getLocation(), Sound.CAT_MEOW, 1.0F, 1.0F);
  }
}
Java:
package ru.lucatjuh.yourhome;

import org.bukkit.entity.EntityType;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDeathEvent;

public class KillMob
  implements Listener
{
  @EventHandler
  public void onKillMob(EntityDeathEvent e)
  {
    LivingEntity Killer = e.getEntity().getKiller();
    if (!(Killer instanceof Player)) {
      return;
    }
    Player p = (Player)Killer;
    if (e.getEntityType() == EntityType.COW)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Корову!" });
      return;
    }
    if (e.getEntityType() == EntityType.BAT)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Летающую мышь!" });
      return;
    }
    if (e.getEntityType() == EntityType.BLAZE)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Ифрита!" });
      return;
    }
    if (e.getEntityType() == EntityType.CAVE_SPIDER)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Пещерного паука!" });
      return;
    }
    if (e.getEntityType() == EntityType.CHICKEN)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Курицу!" });
      return;
    }
    if (e.getEntityType() == EntityType.CREEPER)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Крипера!" });
      return;
    }
    if (e.getEntityType() == EntityType.ENDER_CRYSTAL)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы уничтожили Эндер Кристал!" });
      return;
    }
    if (e.getEntityType() == EntityType.ENDER_DRAGON)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Эндер Дракона!" });
      return;
    }
    if (e.getEntityType() == EntityType.ENDERMAN)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Эндермена!" });
      return;
    }
    if (e.getEntityType() == EntityType.GHAST)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Гаста!" });
      return;
    }
    if (e.getEntityType() == EntityType.GIANT)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Гиганта!" });
      return;
    }
    if (e.getEntityType() == EntityType.HORSE)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Лошадь!" });
      return;
    }
    if (e.getEntityType() == EntityType.IRON_GOLEM)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Железного Голема!" });
      return;
    }
    if (e.getEntityType() == EntityType.MAGMA_CUBE)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Адского Слизня!" });
      return;
    }
    if (e.getEntityType() == EntityType.OCELOT)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Оцелота!" });
      return;
    }
    if (e.getEntityType() == EntityType.PIG)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Свинью!" });
      return;
    }
    if (e.getEntityType() == EntityType.PIG_ZOMBIE)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Свинозомби!" });
      return;
    }
    if (e.getEntityType() == EntityType.PLAYER)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Игрока!" });
      return;
    }
    if (e.getEntityType() == EntityType.SHEEP)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Овцу!" });
      return;
    }
    if (e.getEntityType() == EntityType.SILVERFISH)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Чешуйнецу!" });
      return;
    }
    if (e.getEntityType() == EntityType.SKELETON)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Скелета!" });
      return;
    }
    if (e.getEntityType() == EntityType.SLIME)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Слизня!" });
      return;
    }
    if (e.getEntityType() == EntityType.SNOWMAN)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Снеговика!" });
      return;
    }
    if (e.getEntityType() == EntityType.SPIDER)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Паука!" });
      return;
    }
    if (e.getEntityType() == EntityType.SQUID)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Спрута!" });
      return;
    }
    if (e.getEntityType() == EntityType.VILLAGER)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Жителя!" });
      return;
    }
    if (e.getEntityType() == EntityType.WITCH)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Ведьму!" });
      return;
    }
    if (e.getEntityType() == EntityType.WITHER)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Иссушителя!" });
      return;
    }
    if (e.getEntityType() == EntityType.WOLF)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Волка!" });
      return;
    }
    if (e.getEntityType() == EntityType.ZOMBIE)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Зомби!" });
      return;
    }
    if (e.getEntityType() == EntityType.MUSHROOM_COW)
    {
      MessageManager.getManager().msg(p, MessageManager.MessageType.INFO, new String[] { "Вы убили Мухоморную Корову!" });
      return;
    }
  }
}
Java:
package ru.lucatjuh.yourhome;

import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;

public class MessageManager
{
  private static MessageManager manager = new MessageManager();

  public static MessageManager getManager()
  {
    return manager;
  }

  public static enum MessageType
  {
    INFO(ChatColor.YELLOW),  GOOD(ChatColor.GREEN),  BAD(ChatColor.RED);
  
    private ChatColor color;
  
    private MessageType(ChatColor color)
    {
      this.color = color;
    }
  
    public ChatColor getColor()
    {
      return this.color;
    }
  }

  private String prefix = ChatColor.BLUE + "[" + ChatColor.YELLOW + "Your" + ChatColor.GREEN + "Home" + ChatColor.BLUE + "] " + ChatColor.RESET;

  public void msg(CommandSender sender, MessageType type, String... msgs)
  {
    for (String msg : msgs) {
      sender.sendMessage(this.prefix + type.getColor() + msg);
    }
  }
}
 
YourHome - Плагин на установку дома, и многое другое. Всё Вы это увидите в теме!
Версия:
v1.0
Здесь будет всё подробно написано, и Вы узнаете о том, как его использовать!
Добавит команду - /savehome - Установить точку дома! - Будет звук клика!
Добавит команду - /tphome - Телепортироваться в точку дома! Так же при телепорте будет издаваться звук!

При убийстве моба будет писать сообщение!
При ломание алмазного блока будет уменьшаться 20-15 XP
При заходе на сервер будет писать -
<ник> Зашёл на сервер! - Если у Вас на сервере много плагинов может не работать! (Проверенно)
При выходе из сервера будет писать - <ник> Вышел с сервера! - Так же не будет всегда работать как и при входе! (Проверенно)
При умерании будет писать - <ник> Умер! - Будет всегда работать! (Проверенно)

При ломание любого 1 блока будет даваться 5 опыта - Если Вам не нравится могу убрать эту функцию, тоже самое с алм. блоком!
При заходе на сервер будет звук "Мяу"!
Если получится то добавлю пермишены и чтобы можно было телепортироваться в чужой установленный дом! (Уже в разроботке)
v.1.0 - Релиз моего плагина!
Если будут баги то пишите в скайп или в тему!
(Если что мой плагин заменяет MyHome, т.к. там могут быть ошибки!)
Чем хуже Essentials или-же MyHome?
 
Статус
Закрыто для дальнейших ответов.

Поделиться этой страницей

Назад
Верх