Oh Danke ich habe meinen Fehler bemerkt. Also ich habe einfach mal .sendMessage() gemacht un d da ist das auch, jede Sek eine Nachricht mehr, ich suche dann mal den Fehler.Wie startest du den Scheduler?
Oh Danke ich habe meinen Fehler bemerkt. Also ich habe einfach mal .sendMessage() gemacht un d da ist das auch, jede Sek eine Nachricht mehr, ich suche dann mal den Fehler.Wie startest du den Scheduler?
Hast du Skype oder so?Das sollte meines Wissens nach vollkommen egal sein![]()
Zuerst musst du ein Projekt erstellen. Entweder importierst du ein existierendes (VCS->Checkout from Version Control->GitHub) oder du erstellst ein Projekt und pushst es zu GitLab (VCS->Import into Version Control->GitHub). Wenn du Änderungen in das Repository hochladen willst, drückst du STRG+K (=Commit) gibst dann im Textfeld deine Änderungen ein, es darf nicht leer sein!, dann gehst du zu den Buttons und hoverst über Commit. In der Liste klickst du dann auf Commit and Push. Nun werden deine Änderungen hochgeladen. Falls du einmal nur auf Commit gedrückt hast, ist dies nicht schlimm. Gehe dann in den Terminal-Tab von IntelliJ, dabei ist es wichtig, dass du bei der Installation von Git ausgewählt hast, dass man die sicheren Befehle über die Standard-Konsole accessen kann. Dann gibst du in der IntelliJ Konsole git push origin master ein. Dies ist das pushen. Solltest du die Option zum git in der Konsole nutzen abgewählt haben (nicht die mit der Warnung, die ist nicht wichtig) musst du das Programm ich glaube es hieß Git Bash öffnen und dich dann per CD zum Projektverzeichnis bewegen und den push Befehl dort ausführen.Ok. Danke.
Und wie kann ich, wenn ich das Projekt in IntelliJ angelegt habe, dass mit GitHub synchronisieren? Oder geht das immer automatisch, wenn ich etwas neues zum Code hinzufüge?
Zuerst musst du ein Projekt erstellen. Entweder importierst du ein existierendes (VCS->Checkout from Version Control->GitHub) oder du erstellst ein Projekt und pushst es zu GitLab (VCS->Import into Version Control->GitHub). Wenn du Änderungen in das Repository hochladen willst, drückst du STRG+K (=Commit) gibst dann im Textfeld deine Änderungen ein, es darf nicht leer sein!, dann gehst du zu den Buttons und hoverst über Commit. In der Liste klickst du dann auf Commit and Push. Nun werden deine Änderungen hochgeladen. Falls du einmal nur auf Commit gedrückt hast, ist dies nicht schlimm. Gehe dann in den Terminal-Tab von IntelliJ, dabei ist es wichtig, dass du bei der Installation von Git ausgewählt hast, dass man die sicheren Befehle über die Standard-Konsole accessen kann. Dann gibst du in der IntelliJ Konsole git push origin master ein. Dies ist das pushen. Solltest du die Option zum git in der Konsole nutzen abgewählt haben (nicht die mit der Warnung, die ist nicht wichtig) musst du das Programm ich glaube es hieß Git Bash öffnen und dich dann per CD zum Projektverzeichnis bewegen und den push Befehl dort ausführen.
Wenn du die Änderungen aus GitHub herunterladen willst, drückte STRG + T und wähle im Dialog Rebase aus.
Ich empfehle dir außerdem, eine .gitignore Datei zu erstellen. Diese bestimmt, was zum Repository gehören soll, und was nicht. Zu den nicht-dazugehörenden Dateien zählt z.B. Der komplette .idea Ordner, denn dieser wäre für Eclipse- Nutzer unbrauchbar wäre. Genauso wie bei Eclipse der bin Ordner. Eine gutes .gitignore Template findest du hier: http://hastebin.com/erexidabid.avrasm
Desweiteren empfehle ich dir, ein Dependency-Management System wie Maven zu verwenden. So musst du nicht deine Libraries mit hochladen und es erspart dir Lizenzprobleme, falls du externen Quellcode hochlädst, für den du zum weiterverbreiten keine Rechte hast.(was an sich aber ziemlich unwahrscheinlich ist.) Desweiteren spart Maven Zeit und man kann es gut mit CIs nutzen.
So das waren erstmal so ein paar Grundlagen, ich hoffe ich konnte dir weiterhelfen.
Wegen den genannten Menüpunkten am Anfang, (nicht die Tastenkürzel) , dort könnten ein paar Fehler drin sein, da ich gerade nur am Tablet bin und diese hier nicht überprüfen kann.
Ich hoffe, dass ich dir weiterhelfen konnte.
LG Erik
Da ich dieses Problem noch nie hatte und seit kurzem IntelliJ nutze, empfehle ich dir folgende Dinge zu probieren, ohne Garantie, dass es hinterher Funktioniert:So ich habe bei meinem anti speedhack plugin ganze Arbeit geleistet.Man wurde sogar dafür gekickt wenn man auf dem Eis gesprungen und am sprinten war.Jetzt will ich aber weiter machen allerdings will mein Eclipse nicht mehr.
So lautet die eclipse.ini:
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20120913-144807
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Dhelp.lucene.tokenizer=standard
-Xms40m
-Xmx512m
Und das steht wenn ich es mit Konsole starten will:http://prntscr.com/5ngxfi.
Laut der Fehlermeldung will Eclipse im 32bit Modus starten was aber nicht geht weil ich das developement kit auf 64 bit habe.Was soll ich tun?
Du setzt den Tieren immer einen Vector in deine richtungHätte jemand anders noch eine Lösung, wie die Tiere mich verfolgen?
Nope. Das so zu machen ist doch eig. zu primitiv, wo es doch die Navigation des Tieres gibt.Du setzt den Tieren immer einen Vector in deine richtung
Ich hab mich im NMS mal ein bisschen umgeschaut und hab dir ne Methode geschrieben, die du dann so jede Sekunde aufrufen solltest, damit es einigermaßen flüssig ist. (Kannst du im übrigen auch asynchron machen!)Hätte jemand anders noch eine Lösung, wie die Tiere mich verfolgen?
public static void move( LivingEntity entity, Location target ) {
if( entity.getLocation().distance(target) > 15 )
entity.teleport(target);
else {
if( entity.getLocation().distance(target) <= 1 )
return;
EntityCreature mob = ((CraftCreature) entity).getHandle();
PathEntity path = mob.getNavigation().a(target.getX(), target.getY(), target.getZ());
mob.getNavigation().a(path, 0.8);
}
}
[13:52:48 WARN]: [Haustiere] Task #8 for Haustiere v1.0 generated an exception
java.lang.NoClassDefFoundError: org/bukkit/craftbukkit/v1_7_R3/entity/CraftCreature
at de.spassballer.Haustiere.FollowingPets.move(FollowingPets.java:18) ~[?:?]
at de.spassballer.Haustiere.PetCmd$1.run(PetCmd.java:40) ~[?:?]
at org.bukkit.craftbukkit.v1_7_R4.scheduler.CraftTask.run(CraftTask.java:71) ~[Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb]
at org.bukkit.craftbukkit.v1_7_R4.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb]
at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:641) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb]
at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb]
at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb]
at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb]
at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb]
Jetzt stellt sich für mich die Frage ob du in der Lage bist Java Exception Stack-Traces richtig zu lesen oder nicht. Wenn nicht, dann helfe ich.Da kommt ein Fehler :/
Code:[13:52:48 WARN]: [Haustiere] Task #8 for Haustiere v1.0 generated an exception java.lang.NoClassDefFoundError: org/bukkit/craftbukkit/v1_7_R3/entity/CraftCreature at de.spassballer.Haustiere.FollowingPets.move(FollowingPets.java:18) ~[?:?] at de.spassballer.Haustiere.PetCmd$1.run(PetCmd.java:40) ~[?:?] at org.bukkit.craftbukkit.v1_7_R4.scheduler.CraftTask.run(CraftTask.java:71) ~[Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at org.bukkit.craftbukkit.v1_7_R4.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:641) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb]
Okay, Kommando zurück! Du verwendest Spigot 1.7.10 oder den Hack. Mein Code geht aber erst ab Spigot 1.8 - also hast du jetzt 2 Möglichkeiten: Erstens du updatest auf 1.8, zweitens du nimmst diesen Code hier:Da kommt ein Fehler :/
Code:[13:52:48 WARN]: [Haustiere] Task #8 for Haustiere v1.0 generated an exception java.lang.NoClassDefFoundError: org/bukkit/craftbukkit/v1_7_R3/entity/CraftCreature at de.spassballer.Haustiere.FollowingPets.move(FollowingPets.java:18) ~[?:?] at de.spassballer.Haustiere.PetCmd$1.run(PetCmd.java:40) ~[?:?] at org.bukkit.craftbukkit.v1_7_R4.scheduler.CraftTask.run(CraftTask.java:71) ~[Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at org.bukkit.craftbukkit.v1_7_R4.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:641) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb] at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [Spigot.jar:git-Spigot-1.7.9-R0.2-207-g03373bb]
public void movePet( LivingEntity entity, Location loc ) {
EntityCreature moveMob = ((CraftCreature)entity).getHandle();
PathEntity path = moveMob.world.a(moveMob, loc.getX(), loc.getY(), loc.getZ(), 100.0F, true, false, false, true);
moveMob.setPathEntity(path);
moveMob.getNavigation().a(path, 1.25f);
}
Was genau verstehst du denn nicht?Ne, kapier das leider net. Kannst du mir bitte helfen?
Erstens mal ein Tipp aus dem Hause @Datenstau: Du importierst im Projekt wohl Spigot Code aus der 1.7.x, lässt den Server jedoch mit der Spigot 1.8 laufen. Änder das mal als erstes. Dann zum Code:Ok, kannst du mir bitte den Code erklären?
Zuerst wird überprüft ob das Tier weiter als 15 Blöcke entfernt ist, wenn ja, dann wird es zur Zielposition teleportiert.Nope. Das so zu machen ist doch eig. zu primitiv, wo es doch die Navigation des Tieres gibt.
Ich hab mich im NMS mal ein bisschen umgeschaut und hab dir ne Methode geschrieben, die du dann so jede Sekunde aufrufen solltest, damit es einigermaßen flüssig ist. (Kannst du im übrigen auch asynchron machen!)
Ich hoffe mal, dass er dir weiterhilft! Wenn du ihn nicht verstehst, sag es mir!Code:public static void move( LivingEntity entity, Location target ) { if( entity.getLocation().distance(target) > 15 ) entity.teleport(target); else { if( entity.getLocation().distance(target) <= 1 ) return; EntityCreature mob = ((CraftCreature) entity).getHandle(); PathEntity path = mob.getNavigation().a(target.getX(), target.getY(), target.getZ()); mob.getNavigation().a(path, 0.8); } }
Meinst du:Wie binde ich mit Maven Spigot und andere Api's wie die EffectLib in ItelliJ ein?
Meinst du:
File -> Project Structure -> Libraries
Dann aufs grüne Plus Zeichen
Dafür müssen diese in einem sogenannten Repository sein. Jedes Maven-Projekt hat eine pom.xml. Diese enthält die Projektinformationen. Für diese anleitung gehe ich davon aus, dass du Maven bereits installiert hast.Wie binde ich mit Maven Spigot und andere Api's wie die EffectLib in ItelliJ ein?
<groupId>groupId</groupId>
<artifactId>projektname</artifactId>
<version>1.0-SNAPSHOT</version>
<repositories>
<repository>
<id>elmakers-repo</id>
<url>http://maven.elmakers.com/repository/ </url>
</repository>
</repositories>
<dependency>
<groupId>de.slikey</groupId>
<artifactId>EffectLib</artifactId>
<version>1.4</version>
<scope>provided</scope>
</dependency>
<repositories>
<repository>
<id>spigot-repo</id>
<url>https://hub.spigotmc.org/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.8-R0.1-SNAPSHOT</version>
<type>jar</type>
<scope>provided</scope>
</dependency>
</dependencies>