Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Czm mi ten plugin nie działa?


KurytPL

Rekomendowane odpowiedzi

Opublikowano

Mógłby mi ktoś napisać czm ten plugin nie działa:

 

Klasa Nether:

package pl.plugin.nether;

import org.bukkit.Location;
import org.bukkit.Server;
import org.bukkit.World;
import org.bukkit.World.Environment;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerTeleportEvent;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;

public class Nether
  extends JavaPlugin
  implements Listener
{
  public void onEnable()
  {
    getServer().getPluginManager().registerEvents(this, this);
  }
  
  @EventHandler
  public void onPortalEnter(PlayerTeleportEvent event)
  {
    Player p = event.getPlayer();
    if ((p.getWorld().getEnvironment() == World.Environment.NORMAL) && 
      (event.getCause() == PlayerTeleportEvent.TeleportCause.NETHER_PORTAL))
    {
      Location loc = p.getLocation();
      PlayerSaver.saveLoc(p, loc.getX(), loc.getY(), loc.getZ());
      PlayerSaver.getNether(p);
      event.setCancelled(true);
    }
    if ((p.getWorld().getEnvironment() == World.Environment.NETHER) && 
      (event.getCause() == PlayerTeleportEvent.TeleportCause.NETHER_PORTAL))
    {
      Location loc = p.getLocation();
      PlayerSaver.saveLoc(p, loc.getX(), loc.getY(), loc.getZ());
      PlayerSaver.getWorld(p);
      event.setCancelled(true);
    }
  }
}

Klasa PlayerSever:

package pl.plugin.nether;

import java.util.HashMap;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.entity.Player;

public class PlayerSaver
{
  public static HashMap<String, Double> x1 = new HashMap();
  public static HashMap<String, Double> y1 = new HashMap();
  public static HashMap<String, Double> z1 = new HashMap();
  
  public static void saveLoc(Player player, double d, double e, double f)
  {
    x1.put(player.getName(), Double.valueOf(d));
    y1.put(player.getName(), Double.valueOf(e));
    z1.put(player.getName(), Double.valueOf(f));
  }
  
  public static void getNether(Player player)
  {
    Location loc_world = new Location(Bukkit.getWorld("world_nether"), ((Double)x1.get(player.getName())).doubleValue() * 10.0D, ((Double)y1.get(player.getName())).doubleValue() * 10.0D, ((Double)z1.get(player.getName())).doubleValue());
    player.teleport(loc_world);
    x1.remove(player.getName());
    y1.remove(player.getName());
    z1.remove(player.getName());
  }
  
  public static void getWorld(Player player)
  {
    Location loc_world = new Location(Bukkit.getWorld("world"), ((Double)x1.get(player.getName())).doubleValue() / 10.0D, ((Double)y1.get(player.getName())).doubleValue() / 10.0D, ((Double)z1.get(player.getName())).doubleValue());
    player.teleport(loc_world);
    x1.remove(player.getName());
    y1.remove(player.getName());
    z1.remove(player.getName());
  }
}

??

Opublikowano

No jasne.

Jesteśmy wróżbitami maćkami i na pewno wiemy gdzie Ci sypie błąd..

Może daj błędy z konsoli?

 

@Edit
Po co to?

  public static void saveLoc(Player player, double d, double e, double f)
  {
    x1.put(player.getName(), Double.valueOf(d));
    y1.put(player.getName(), Double.valueOf(e));
    z1.put(player.getName(), Double.valueOf(f));
  }

Nie lepiej Location użyć? ;-;

784091427630431250239.png

Regulamin sygnatur

Opublikowano

Plugin nie jest mój. Błędów nie ma tylko, że nie działa tak jak powinien. Plugin miał teleportować z netheru do world'a tak jak na skkf. Czyli 1 kratka w netherze to 10 w normalnym world'zie. Plugin nie teleportuje.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...