Seite 3 von 4

Re: Eigene NPCs in der 1.8 erstellen! [UPDATE FÜR 1.8.3]

BeitragVerfasst: Mi 24. Jun 2015, 16:08
von PRiiSM
Gibt es die (oder eine Andere) Methode auch ohne das die in der TabList angezeigt werden, oder ist das in der 1.8 einfach so?

Re: Eigene NPCs in der 1.8 erstellen! [UPDATE FÜR 1.8.3]

BeitragVerfasst: Mi 24. Jun 2015, 16:24
von Jofkos
Sende einfach noch das TabList remove packet, dann wirds nicht mehr angezeigt.

Re: Eigene NPCs in der 1.8 erstellen! [UPDATE FÜR 1.8.3]

BeitragVerfasst: Mi 24. Jun 2015, 16:41
von PRiiSM
Jofkos hat geschrieben:Sende einfach noch das TabList remove packet, dann wirds nicht mehr angezeigt.


Dann wird der NPC nicht gespawnt... ^^

Re: Eigene NPCs in der 1.8 erstellen! [UPDATE FÜR 1.8.3]

BeitragVerfasst: Mi 24. Jun 2015, 17:03
von Jofkos
Nach dem spawn :)

Re: Eigene NPCs in der 1.8 erstellen! [UPDATE FÜR 1.8.3]

BeitragVerfasst: Mi 24. Jun 2015, 18:52
von Summerfeeling
UPDATE 3
NPCs können nun mit anderem Skin gespawnt werden, soweit es kein Account mit dem angegebenem Namen gibt!

Dafür muss folgender Constructor verwendet werden:
String skinName, String name, Location location, boolean hideTablist

Re: Eigene NPCs in der 1.8 erstellen! [UPDATE FÜR 1.8.3]

BeitragVerfasst: Do 25. Jun 2015, 18:47
von PRiiSM
Mit der neusten Klasse stimmt irgendwas nicht :D
Wenn man mehr als 3-4 spawnt gehen die TP/S sofort auf 8-9 runter

Re: Eigene NPCs in der 1.8 erstellen! [UPDATE FÜR 1.8.3]

BeitragVerfasst: Do 25. Jun 2015, 19:21
von Summerfeeling
PRiiSM hat geschrieben:Mit der neusten Klasse stimmt irgendwas nicht :D
Wenn man mehr als 3-4 spawnt gehen die TP/S sofort auf 8-9 runter

Also, ich habe 8 NPCs gespawned, und bin weiterhin im 20 TPS bereich. (Server hat 8GB Ram)

Bild

Bitte beachten, dass die NPCs ab der 1.8.3 ASYNCHRON gespawned werden müssen!

Re: Eigene NPCs in der 1.8 erstellen! [UPDATE FÜR 1.8.3]

BeitragVerfasst: Sa 1. Aug 2015, 22:32
von PRiiSM
Summerfeeling hat geschrieben:
PRiiSM hat geschrieben:Mit der neusten Klasse stimmt irgendwas nicht :D
Bitte beachten, dass die NPCs ab der 1.8.3 ASYNCHRON gespawned werden müssen!


Ja das war glaub ich auch der Fehler ^^

Re: Eigene NPCs in der 1.8 erstellen! [UPDATE FÜR 1.8.3]

BeitragVerfasst: Sa 8. Aug 2015, 21:46
von xMeWinatorx
Ich bin nicht so fit im Umgang mit Packets... ich will, dass der Spieler liegt (schläft) Dazu nutze ich diese Methode:

Code: Alles auswählen
  1.    public void sleep()
  2.    {
  3.       try{
  4.             PacketPlayOutBed packet = new PacketPlayOutBed();
  5.             BlockPosition posi = new BlockPosition(this.getX(), this.getY(), this.getZ());
  6.             this.setValue(packet, "a", this.entityID);
  7.             this.setValue(packet, "b", posi);
  8.             
  9.             for(Player online : Bukkit.getOnlinePlayers()) {
  10.                ((CraftPlayer) online).getHandle().playerConnection.sendPacket(packet);
  11.             }
  12.          }catch(Exception e) {
  13.             e.printStackTrace();
  14.          }
  15.    }


Es klappt nur leider visuell nicht richtig, d. h. der Spieler Name ist tiefer (nicht mehr über dem Kopf), wie wenn er schläft, nur leider schläft er halt nicht :(

Re: Eigene NPCs in der 1.8 erstellen! [UPDATE FÜR 1.8.3]

BeitragVerfasst: So 9. Aug 2015, 08:28
von naturboy
xMeWinatorx hat geschrieben:Ich bin nicht so fit im Umgang mit Packets... ich will, dass der Spieler liegt (schläft) Dazu nutze ich diese Methode:

Code: Alles auswählen
  1.    public void sleep()
  2.    {
  3.       try{
  4.             PacketPlayOutBed packet = new PacketPlayOutBed();
  5.             BlockPosition posi = new BlockPosition(this.getX(), this.getY(), this.getZ());
  6.             this.setValue(packet, "a", this.entityID);
  7.             this.setValue(packet, "b", posi);
  8.             
  9.             for(Player online : Bukkit.getOnlinePlayers()) {
  10.                ((CraftPlayer) online).getHandle().playerConnection.sendPacket(packet);
  11.             }
  12.          }catch(Exception e) {
  13.             e.printStackTrace();
  14.          }
  15.    }


Es klappt nur leider visuell nicht richtig, d. h. der Spieler Name ist tiefer (nicht mehr über dem Kopf), wie wenn er schläft, nur leider schläft er halt nicht :(
Das liegt daran das du seid der 1.8 ein bett darunter benötigt wird ;).