Minecraft Spigot-Plugin | Schusswaffe programmieren

Guten Tag zusammen!

Ich sitze nun schon seit etwas längerer Zeit an einem Minecraft-Plugin, welches den Spielmodus "Paintball" ermöglichen soll.
Ich bin nun an einer Position angelangt, an der ich eine Minigun programmieren möchte, welche mehrere Geschosse auf einmal feuert, jedoch am besten ohne Verzögerung. Um dies umzusetzen habe ich folgenden Code verwendet:

Java:
@SuppressWarnings("deprecation")
@EventHandler
public void onItemUse(PlayerInteractEvent e) {
    if (e.getItem() != null) {
    //Minigun
        if (e.getItem().getType() == Material.WOOD_PICKAXE) {
                        Player p = e.getPlayer();
                        for (int i = 0; i < 4; i++) {
                        String uuid = p.launchProjectile(Snowball.class).getUniqueId().toString();
                        Entity snowball = Bukkit.getEntity(UUID.fromString(uuid));
                        TraceEffect te = new TraceEffect (Main.effectManager);
                        te.setEntity(snowball);
                        te.start();
                        p.playSound(p.getLocation(), Sound.ENTITY_ENDERPEARL_THROW, 2, 2);
                        p.playSound(p.getLocation(), Sound.ENTITY_ENDERPEARL_THROW, 2, 2);
                        p.playSound(p.getLocation(), Sound.ENTITY_ENDERPEARL_THROW, 2, 2);
                        try {
                            TimeUnit.MILLISECONDS.sleep(50);
                        } catch (InterruptedException e1) {
                            // TODO Auto-generated catch block
                            e1.printStackTrace();
                        }
                    }
        }
    }
    }

Mein Problem ist es jetzt, dass der Server während der Verwendung der Minigun durch die ständigen kurzen Pausen anfängt zu hängen und alles total langsam wird.
Ich habe die Pause eingebaut, damit die Schussanimation besser aussieht und die Geschosse nicht als "gestackte/gehäufte Items" geschossen werden.
Kann mir jemand weiterhelfen, wie ich das Hängen des Servers unterbinden kann, oder besser gesagt, gibt es eine andere Pause, die man verwenden kann, ohne dass der Server für kurze Zeit "pausiert" wird?
Falls es auch komplett ohne Pause funktioniert, dass die Geschosse mit einer leichten Verzögerung (also nicht alle auf einmal) abgeschossen werden, würde das auch genügen.

Ich bedanke mich im Voraus für jede hilfreiche Antwort!
 

LimDul

Top Contributor
Ohne die genauen Innereien zu kennen - du wirst vermutlich das gleiche Problem haben, wie bei GUIs.

Thread.sleep ist böse, weil du damit den ganzen Server lahmlegst, du musst also deine Schleife in einen eigenen Thread auslagern (ich weiß aber nicht, inwieweit es dann Probleme beim Zugriff auf die Server Resourcen gibt, bei Swing GUIs gibt es dafür SwingUtils.invokeXXX.
 
Ohne die genauen Innereien zu kennen - du wirst vermutlich das gleiche Problem haben, wie bei GUIs.

Thread.sleep ist böse, weil du damit den ganzen Server lahmlegst, du musst also deine Schleife in einen eigenen Thread auslagern (ich weiß aber nicht, inwieweit es dann Probleme beim Zugriff auf die Server Resourcen gibt, bei Swing GUIs gibt es dafür SwingUtils.invokeXXX.

Kannst du mir diesbezüglich ein Beispiel schicken, wie das ganze am Ende aussehen könnte/sollte?
 

Lasnik

Mitglied
Ich bin Anfänger aber hatte ein ähnliches Problem, hier ist meine Lösung. Ich hoffe es hilft :)

import java.util.Timer;
import java.util.TimerTask;
public void onReceivedMessage(ChatInputEvent event)
{
Timer timer = new Timer();
timer.schedule(new TimerTask() {
//dein Programm
},2*1000);
}

Das Programm wartet 2 Sekunden, bevor es dies ausführt ohne den ganzen Server zu stoppen
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Minecraft Spigot Plugin kompilieren Spiele- und Multimedia-Programmierung 4
T Minecraft Spigot Plugin [Minecraft] Spiele- und Multimedia-Programmierung 1
T Minecraft Spigot Plugin [Minecraft] Spiele- und Multimedia-Programmierung 2
C Minecraft Spigot Entities 1.8 Spiele- und Multimedia-Programmierung 2
F Spigot 1.14 Minecraft Welt file löschen Spiele- und Multimedia-Programmierung 6
JeremyStarTM Minecraft Minecraft Spigot Server akzeptiert JAR-Version nicht Spiele- und Multimedia-Programmierung 8
L Minecraft [Minecraft] Spigot und JavaFX mit fxml Spiele- und Multimedia-Programmierung 0
E Minecraft Ich bekomme diesen unbekannten Fehlercode von Minecraft Spiele- und Multimedia-Programmierung 2
S Minecraft Server Status Abfragen Spiele- und Multimedia-Programmierung 9
Lord_Joker Minecraft Server Bat error Spiele- und Multimedia-Programmierung 2
A [HILFE] - Minecraft-Problem! Spiele- und Multimedia-Programmierung 1
N Minecraft Frage für einen Minecraft Server Spiele- und Multimedia-Programmierung 2
W Minecraft Client exportieren Spiele- und Multimedia-Programmierung 0
Joris Minecraft Minecraft Java Server Spiele- und Multimedia-Programmierung 6
Shanic Minecraft Minecraft Forge Server "Falsche Java Version" Spiele- und Multimedia-Programmierung 6
Plug-inMacher Minecraft Plugin mit Itemstack kreierte Items weiterverwenden Spiele- und Multimedia-Programmierung 2
KIWILETSPLAY How can i delete a Minecraft world Spiele- und Multimedia-Programmierung 0
Taknax Minecraft: Export der Mod dupliziert Dateien Spiele- und Multimedia-Programmierung 0
Mika_MDF Minecraft Eclipse startet Minecraft nicht? Spiele- und Multimedia-Programmierung 23
C Eigene Minecraft Enchantements Spiele- und Multimedia-Programmierung 1
C Minecraft Enchantements Spiele- und Multimedia-Programmierung 1
Z Minecraft Hilfe bei Minecraft PvP Client Spiele- und Multimedia-Programmierung 21
K Minecraft Minecraft "Griefergames" CobbleBot Spiele- und Multimedia-Programmierung 10
lolzo Minecraft Minecraft: Exit Code: 0 Spiele- und Multimedia-Programmierung 3
N Musikplayer in Minecraft Spiele- und Multimedia-Programmierung 0
G Minecraft PlayerBot (Listener Thread für jeden Spieler?) Spiele- und Multimedia-Programmierung 3
T Minecraft Event Plugin Spiele- und Multimedia-Programmierung 6
I Minecraft Support Bot Mod Spiele- und Multimedia-Programmierung 8
M Minecraft Minecraft 1.12.2 Plotrand ändern Spiele- und Multimedia-Programmierung 1
L wo sehe ich die Range und die Hitbox im Minecraft Sourcecode? Spiele- und Multimedia-Programmierung 2
M Minecraft Spieler move/run (bewegen) Spiele- und Multimedia-Programmierung 0
M Minecraft neue setDirection() (Blickrichtung) setzten Spiele- und Multimedia-Programmierung 5
D Minecraft [Minecraft] Java Start Fehler (Core-Dump) Spiele- und Multimedia-Programmierung 1
Z Minecraft Multiplayer geht nicht Spiele- und Multimedia-Programmierung 2
A Minecraft Withdraw und Deposit Spiele- und Multimedia-Programmierung 1
A Minecraft Plugin, welches nur bestimmten Block zum bebauen festlegt Spiele- und Multimedia-Programmierung 26
L Minecraft 1.7.10 Server startet nicht Spiele- und Multimedia-Programmierung 1
B Minecraft Scoreboard Spiele- und Multimedia-Programmierung 3
B Programmieren wie der Befehl /ban in Minecraft geblockt wird aber nicht /ban mit einem Argument Spiele- und Multimedia-Programmierung 1
T Minecraft Minecraft Scoreboard Spiele- und Multimedia-Programmierung 1
I Minecraft Minecraft Minigame Plugin (Bug) Spiele- und Multimedia-Programmierung 0
L Minecraft Minecraft Bukkit Entwickler Spiele- und Multimedia-Programmierung 0
C [Minecraft] Launcher Spiele- und Multimedia-Programmierung 14
T Minecraft Minecraft-Server pingt lange Spiele- und Multimedia-Programmierung 3
J Minecraft Coding BlockBreakEvent Spiele- und Multimedia-Programmierung 2
KeexZDeveoper Launcher (Minecraft) Spiele- und Multimedia-Programmierung 1
M Minecraft Minecraft Plugin Fehlermeldung! Spiele- und Multimedia-Programmierung 2
J Minecraft Minecraft Obfuscation Spiele- und Multimedia-Programmierung 1
C Minecraft Coding Spiele- und Multimedia-Programmierung 8
C Minecraft Coding Spiele- und Multimedia-Programmierung 5
I Minecraft Suche Plugin Developer für Minecraft Netzwerk! Spiele- und Multimedia-Programmierung 2
I Minecraft Plugin: Auf Spielerantwort warten Spiele- und Multimedia-Programmierung 1
M Minecraft Minecraft Plugin Fehlermeldung Spiele- und Multimedia-Programmierung 13
C Minecraft Minecraft Plugin Problem Spiele- und Multimedia-Programmierung 17
S Minecraft Minecraft crasht! Spiele- und Multimedia-Programmierung 3
I Minecraft: Craftingrecipe für Braustand ändern Spiele- und Multimedia-Programmierung 9
A Minecraft Minecraft Autojump Spiele- und Multimedia-Programmierung 2
H Minecraft Minecraft Error Spiele- und Multimedia-Programmierung 7
D Minecraft Java JDK installiert - Minecraft läuft nichtmehr in 64 Bit Spiele- und Multimedia-Programmierung 2
DanielsLPecke Minecraft Bukkit Scheduler. ALLGEMEIN. Spiele- und Multimedia-Programmierung 1
K Minecraft-Forge Mod Programmierung Spiele- und Multimedia-Programmierung 1
L Minecraft Minecraft Serversoftware Entwickler gesucht Spiele- und Multimedia-Programmierung 5
T Problem mit Eclipse (java)-(minecraft) Spiele- und Multimedia-Programmierung 3
C Minecraft Plugin 'Ancient Gates' Spiele- und Multimedia-Programmierung 0
W Minecraft wie Minidumps aktivierren ? (kein Minecraft) Spiele- und Multimedia-Programmierung 0
C +++Minecraft Plug-In Programmierer gesucht+++ Spiele- und Multimedia-Programmierung 3
L Minecraft - BungeePerms Spiele- und Multimedia-Programmierung 1
F Minecraft Bot Mouse Inputs Spiele- und Multimedia-Programmierung 3
U Minecraft Mit Java auf Minecraft Server anmelden Spiele- und Multimedia-Programmierung 11
lord239123 Minecraft Nur sichtbare Objekte rendern Spiele- und Multimedia-Programmierung 5
T Minecraft Bukkit Plugin Text Datei auslesen Spiele- und Multimedia-Programmierung 1
M Minecraft Minecraft Kit Plugin mit Eclipse Spiele- und Multimedia-Programmierung 8
X Minecraft Wie kann ich eine Karte erstellen wie zb:(Bei Minecraft) Spiele- und Multimedia-Programmierung 1
OnDemand Minecraft Minecraft Anforderungen Spiele- und Multimedia-Programmierung 1
A Minecraft Plugin Teleport Fehler Spiele- und Multimedia-Programmierung 1
H Minecraft Minecraft Plugin Spiele- und Multimedia-Programmierung 3
L Minecraft Minecraft Plugin programmieren (Craftbukkit 1.7.2) Problem Spiele- und Multimedia-Programmierung 4
OnDemand Minecraft Minecraft Spiele- und Multimedia-Programmierung 5
B Minecraft mehr Ram zuweißen Problem Spiele- und Multimedia-Programmierung 0
J Minecraft Problem mit dem JRE - Minecraft Spiele- und Multimedia-Programmierung 3
H [Minecraft] Eclipse Spiele- und Multimedia-Programmierung 3
H Minecraft Minecraft counter Spiele- und Multimedia-Programmierung 1
N Minecraft Minecraft Mod Launcher Spiele- und Multimedia-Programmierung 1
D Minecraft Config in andere Class laden/Minecraft Plugin Spiele- und Multimedia-Programmierung 1
A Minecraft Java Ubuntu Minecraft Server startet nicht - ERROR (SIGSEGV) Spiele- und Multimedia-Programmierung 7
A Minecraft Minecraft, Programm funktioniert nur in Eclipse richtig Spiele- und Multimedia-Programmierung 24
N Minecraft java lernen minecraft Spiele- und Multimedia-Programmierung 20
T Minecraft Launcher Minecraft Spiele- und Multimedia-Programmierung 29
T Minecraft Minecraft im Forum Spiele- und Multimedia-Programmierung 16
M Minecraft weitere Java Entwickler für minecraft projekt gesucht Spiele- und Multimedia-Programmierung 0
I Minecraft Java programmierungs fehler "MineCraft" Spiele- und Multimedia-Programmierung 6
I Minecraft NBT Minecraft *.dat-Datei - Verständnisproblem Spiele- und Multimedia-Programmierung 26
R Minecraft Minecraft läuft nicht paralel mit minecraft server ? Spiele- und Multimedia-Programmierung 3
G Minecraft Minecraft / Knuddels Spiele- und Multimedia-Programmierung 7
1 Minecraft Minecraft Plugins programmieren Spiele- und Multimedia-Programmierung 6
J Minecraft Eigene Buttons "bauen" á la MineCraft Spiele- und Multimedia-Programmierung 11
D Minecraft Spieleranzahl von Minecraft Server abfragen Spiele- und Multimedia-Programmierung 8
F Minecraft Bukkit Plugin - Inventory wiederherstellung? Spiele- und Multimedia-Programmierung 2
A Minecraft Hilfe bei Minecraft Mod Spiele- und Multimedia-Programmierung 1
M Minecraft Bukkit Programmierung Spiele- und Multimedia-Programmierung 3

Ähnliche Java Themen

Neue Themen


Oben