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

Problem spawnowanie Entity Player - znowu :/


ShakeeTeFau

Rekomendowane odpowiedzi

Opublikowano

Witam! Od dłuższego czasu próbuję zespawnować entity playera... Kompletnie mi nie wychodzi. Wie ktoś co tu jest nie tak?

public class Main 
extends JavaPlugin 
implements Listener{
	
	public void onEnable(){
		
	}
	public WrapperPlayServerNamedEntitySpawn onJoin(PlayerJoinEvent s){
		
		Player p = s.getPlayer();
		
	    WrapperPlayServerNamedEntitySpawn w = new WrapperPlayServerNamedEntitySpawn();
	    w.setEntityID(0);
	    w.setPosition(p.getLocation().toVector());
	    w.setPlayerUUID(UUID.randomUUID().toString());
	    w.setPlayerName("Gracz");
	    w.setYaw(p.getLocation().getYaw());
	    w.setPitch(p.getLocation().getPitch());
	    WrappedDataWatcher watcher = new WrappedDataWatcher();
		boolean visible = false;
		watcher.setObject(0, Byte.valueOf((byte)(visible ? 0 : 32)));
	    watcher.setObject(6, Float.valueOf(0.5F));
	    watcher.setObject(11, Byte.valueOf((byte)1));
	    w.setMetadata(watcher);
	    return w;
}
}
Opublikowano

To jest kod sprzed dwóch dni ok.

Aktualnie: (dużo się zmieniło D:)

import java.util.UUID;

import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.plugin.java.JavaPlugin;

import com.comphenix.packetwrapper.WrapperPlayServerNamedEntitySpawn;

public class Main 
extends JavaPlugin 
implements Listener{
	
	public void onEnable(){
		Bukkit.getServer().getPluginManager().registerEvents(this, this);
		
	}
	@EventHandler
	public WrapperPlayServerNamedEntitySpawn onJoin(PlayerJoinEvent s){

		Player p = s.getPlayer();
	    WrapperPlayServerNamedEntitySpawn w = new WrapperPlayServerNamedEntitySpawn();
	    w.setEntityID(0);
	    w.setPosition(p.getLocation().toVector());
	    w.setPlayerUUID(UUID.randomUUID().toString());
	    w.setPlayerName("Gracz");
	    w.setYaw(p.getLocation().getYaw());
	    w.setPitch(p.getLocation().getPitch());
		return w;
	}
}
Opublikowano

Pozostaje to tylko wysłać temu graczowi. Nigdzie tego nie robisz.

 

A poza tym sądzę że Unia Europejska musi być zniszczona.

Q8eOMob.png

Opublikowano

Czekaj, czekaj..

 

Co Ty zrobiłeś? Listenery powinny być metodami niezwracającymi nic (czyt. void)..

Tu masz coś na ten temat:

http://wiki.bukkit.org/Event_API_Reference

 

Poza tym musisz jeszcze zadeklarować i zdefiniować zmienną odwołującą się do obiektu ProtocolManager, dodać DataWatchera i wysłać ten pakiet do gracza.

  • 2 tygodnie później...

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...