华夏魂

这个插件,因为很多人都说有卡OP后门
别人给我发了个修复版的插件可是我还是不放心感觉存在后门
有无大佬帮看一下。
FMXT.jar (36.99 KB, 下载次数: 7)

好像是利用发包还是什么雪花什么还是0ACBF配合这个插件给自己卡OP
咱是个萌新服竹完全不懂

Hanssc
代码写的很烂,shit一样的插件,非常不建议使用,
里面是把玩家设为op 再设回去来实现功能 太nt了
  1.   @EventHandler
  2.   public void OnEntityDeath(EntityDeathEvent event) {
  3.     LivingEntity livingEntity = event.getEntity();
  4.     String CustomName = null;
  5.     Damageable damageable = (Damageable)livingEntity;
  6.     Player player1 = event.getEntity().getKiller();
  7.     if (!(player1 instanceof Player) && !(player1 instanceof Projectile))
  8.       return;
  9.     Player player = player1;
  10.     if (event.getEntity().getKiller() instanceof Projectile) {
  11.       Projectile YC = (Projectile)event.getEntity().getKiller();
  12.       ProjectileSource TestEntityYC = YC.getShooter();
  13.       if (TestEntityYC instanceof Player)
  14.         player = (Player)TestEntityYC;
  15.     }
  16.     if (livingEntity instanceof Player)
  17.       return;
  18.     FEntity = (Entity)livingEntity;
  19.     String SpawnName = null;
  20.     if (version.equals("1.7.10")) {
  21.       SpawnName = R1_7_10.get();
  22.     } else if (version.equals("1.12.2")) {
  23.       SpawnName = R1_12_2.get();
  24.     } else if (version.equals("1.16.1")) {
  25.       SpawnName = R1_16_1.get();
  26.     } else if (version.equals("1.14.4")) {
  27.       SpawnName = R1_14_4.get();
  28.     }
  29.     if (event.getEntity().getType().getName().equalsIgnoreCase("Botania-botaniadoppleganger") || SpawnName.equalsIgnoreCase("Guardian-of-Gaia")) {
  30.       FEntity = (Entity)livingEntity;
  31.       if (version.equals("1.7.10")) {
  32.         SpawnName = R1_7_10.CheckGaia();
  33.       } else if (version.equals("1.12.2")) {
  34.         SpawnName = R1_12_2.CheckGaia();
  35.       } else if (version.equals("1.16.1")) {
  36.         SpawnName = R1_16_1.CheckGaia();
  37.       } else if (version.equals("1.14.4")) {
  38.         SpawnName = R1_14_4.CheckGaia();
  39.       }
  40.     }
  41.     for (int RecoverNameCS = 0; RecoverNameCS < getConfig().getStringList("List.OldName").size(); RecoverNameCS++) {
  42.       String TempStringRecover = getConfig().getStringList("List.NewName").get(RecoverNameCS);
  43.       if (TempStringRecover.equals(SpawnName)) {
  44.         CustomName = getConfig().getStringList("List.NewName").get(RecoverNameCS);
  45.         SpawnName = getConfig().getStringList("List.OldName").get(RecoverNameCS);
  46.       }
  47.     }
  48.     if (!getConfig().getBoolean(String.valueOf(SpawnName) + ".Switch"))
  49.       return;
  50.     if (damageable.getMaxHealth() != getConfig().getDouble(String.valueOf(SpawnName) + ".Health"))
  51.       return;
  52.     this.Priex = getConfig().getString("Priex.Priex");
  53.     int level = getConfig().getInt(String.valueOf(SpawnName) + ".level");
  54.     player.setLevel(player.getLevel() + level);
  55.     player.sendMessage(String.valueOf(this.Priex) + "+ level + ");
  56.     double money = getConfig().getDouble(String.valueOf(SpawnName) + ".money");
  57.     Bukkit.dispatchCommand((CommandSender)getServer().getConsoleSender(), "eco give " + player.getName() + " " + money);
  58.     player.sendMessage(String.valueOf(this.Priex) + "+ money + ");
  59.     if (getConfig().getBoolean(String.valueOf(SpawnName) + ".broadcast"))
  60.       for (int hangshu = 0; hangshu < getConfig().getStringList("BroadcastInfo.line").size(); hangshu++) {
  61.         String GongGaoNeiRong = getConfig().getStringList("BroadcastInfo.line").get(hangshu);
  62.         if (GongGaoNeiRong.contains("&"))
  63.           GongGaoNeiRong = GongGaoNeiRong.replaceAll("&", ");
  64.         if (GongGaoNeiRong.contains("<priex>"))
  65.           GongGaoNeiRong = GongGaoNeiRong.replaceAll("<priex>", this.Priex);
  66.         if (GongGaoNeiRong.contains("<player>"))
  67.           GongGaoNeiRong = GongGaoNeiRong.replaceAll("<player>", player.getName());
  68.         if (GongGaoNeiRong.contains("<world>")) {
  69.           String WorldName = livingEntity.getWorld().getName();
  70.           for (int WorldLine = 0; WorldLine < getConfig().getStringList("Alias.Worlds").size(); WorldLine++) {
  71.             String TempWorldName = getConfig().getStringList("Alias.Worlds").get(WorldLine);
  72.             if (TempWorldName.equalsIgnoreCase(WorldName)) {
  73.               String ReplaceWorldName = getConfig().getStringList("Alias.Replace").get(WorldLine);
  74.               if (ReplaceWorldName.contains("&"))
  75.                 ReplaceWorldName = ReplaceWorldName.replaceAll("&", ");
  76.               GongGaoNeiRong = GongGaoNeiRong.replaceAll("<world>", ReplaceWorldName);
  77.             }
  78.           }
  79.         }
  80.         if (GongGaoNeiRong.contains("<boss>"))
  81.           GongGaoNeiRong = GongGaoNeiRong.replaceAll("<boss>", getConfig().getString(String.valueOf(SpawnName) + ".Name"));
  82.         if (GongGaoNeiRong.contains("<money>"))
  83.           GongGaoNeiRong = GongGaoNeiRong.replaceAll("<money>", "+ money);
  84.         if (GongGaoNeiRong.contains("<level>"))
  85.           GongGaoNeiRong = GongGaoNeiRong.replaceAll("<level>", "+ level);
  86.         Bukkit.broadcastMessage(GongGaoNeiRong);
  87.       }  
  88.     if (getConfig().getBoolean(String.valueOf(SpawnName) + ".commandSwitch"))
  89.       if (!player.isOp()) {
  90.         try {
  91.           player.setOp(true);
  92.           for (int commandline = 0; commandline < getConfig().getStringList(String.valueOf(SpawnName) + ".command").size(); commandline++) {
  93.             String CommandNeiRong = getConfig().getStringList(String.valueOf(SpawnName) + ".command").get(commandline);
  94.             if (CommandNeiRong.contains("<player>"))
  95.               CommandNeiRong = CommandNeiRong.replaceAll("<player>", player.getName());
  96.             Bukkit.dispatchCommand((CommandSender)player, CommandNeiRong);
  97.           }
  98.           player.setOp(false);
  99.         } catch (Exception ex) {
  100.           player.setOp(false);
  101.         } finally {
  102.           player.setOp(false);
  103.         }
  104.       } else {
  105.         for (int commandline = 0; commandline < getConfig().getStringList(String.valueOf(SpawnName) + ".command").size(); commandline++) {
  106.           String CommandNeiRong = getConfig().getStringList(String.valueOf(SpawnName) + ".command").get(commandline);
  107.           if (CommandNeiRong.contains("<player>"))
  108.             CommandNeiRong = CommandNeiRong.replaceAll("<player>", player.getName());
  109.           Bukkit.dispatchCommand((CommandSender)player, CommandNeiRong);
  110.         }
  111.       }  
  112.     if (getConfig().getBoolean(String.valueOf(SpawnName) + ".ChanceCommandSwitch")) {
  113.       double chance = Math.random() * 100.0D;
  114.       double ChanceCommand = getConfig().getDouble(String.valueOf(SpawnName) + ".ChanceCommand");
  115.       if (chance < ChanceCommand)
  116.         if (!player.isOp()) {
  117.           try {
  118.             player.setOp(true);
  119.             for (int commandline = 0; commandline < getConfig().getStringList(String.valueOf(SpawnName) + ".ChanceCommandList").size(); commandline++) {
  120.               String CommandNeiRong = getConfig().getStringList(String.valueOf(SpawnName) + ".ChanceCommandList").get(commandline);
  121.               if (CommandNeiRong.contains("<player>"))
  122.                 CommandNeiRong = CommandNeiRong.replaceAll("<player>", player.getName());
  123.               Bukkit.dispatchCommand((CommandSender)player, CommandNeiRong);
  124.             }
  125.             player.setOp(false);
  126.           } catch (Exception ex) {
  127.             player.setOp(false);
  128.           } finally {
  129.             player.setOp(false);
  130.           }
  131.         } else {
  132.           for (int commandline = 0; commandline < getConfig().getStringList(String.valueOf(SpawnName) + ".ChanceCommandList").size(); commandline++) {
  133.             String CommandNeiRong = getConfig().getStringList(String.valueOf(SpawnName) + ".ChanceCommandList").get(commandline);
  134.             if (CommandNeiRong.contains("<player>"))
  135.               CommandNeiRong = CommandNeiRong.replaceAll("<player>", player.getName());
  136.             Bukkit.dispatchCommand((CommandSender)player, CommandNeiRong);
  137.           }
  138.         }  
  139.     }
  140.     if (getConfig().getBoolean(String.valueOf(SpawnName) + ".ClearBossDrop"))
  141.       event.getDrops().clear();
  142.   }
复制代码

下一页 最后一页