Skocz do zawartości
  • 0
deusowy_yt

Prośba o ocenę poprawności kodu

Pytanie

Użytkownik

Witam, dobrzę to robię?

package me.neroos.hash;

import java.util.HashMap;
import java.util.Map;

import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;

public class Main extends JavaPlugin{

	public static Map<Player, Boolean> map = new HashMap<Player, Boolean>();
	
	boolean bolean;

	public void onEnable() {
		System.out.println("ELO");
	}

	@Override
	public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
		Player p = (Player) sender;
		if(cmd.getName().equalsIgnoreCase("stan")) {
			if(map.get(p) == Boolean.TRUE) {
				sender.sendMessage("§aWlaczone");
				
			}
			else {
				sender.sendMessage("§cWylaczone");
			}
		}
		if(cmd.getName().equalsIgnoreCase("WLACZ")) {
			map.put(p, bolean = true);
			sender.sendMessage("§aWlaczone");
			return true;
		}
		if(cmd.getName().equalsIgnoreCase("wiadomosc")) {
			if(map.get(p) == Boolean.TRUE) {
				Bukkit.broadcastMessage("§cTestowa wiadomosc");
				return true;
			}
		}
		if(cmd.getName().equalsIgnoreCase("WYLACZ")) {
			map.put(p, bolean = false);
			sender.sendMessage("§cWylaczone");
			return true;
		}
		return false;
	}
	
	
}

 

Nicku

Zmieniam nazwę tematu.

Notatka dodana przez Nicku

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

7 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

Użytkownik
  • 0

Ziomek, kurczę, bez przesady, próbujesz napisać plugin nie mając jakiejkolwiek znajomości z programowaniem. Jest 1000 stron na temat javy i jej składni najpierw ją ogarnij a potem bierz się za jakiekolwiek API. 

Ogólnie również jest 10000 poradników do Bukkit/Spigot API, to zamiast najpierw zerknąć w internet pchasz się za każdym razem w forum w ogóle się nie ucząc.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Użytkownik
  • 0

Patrzyłem, ja tylko pytam czy dobrze to robię, może ktoś będzie chciał mnie poprawić. Co do pisania pluginu to jest to zwykły testowy kod.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Użytkownik
  • 0
11 godzin temu, KrejzolekPRO napisał:

Może być gdzieś literówka/błąd. Pisałem z głowy.

Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść!

kurde, uzywaj funkcji javy 8, masz cos takiego jak computeIfPresent, computeIfAbsent - bardzo przydatne,

do tego:

Cytat

            p.sendMessage("Stan: " map.get(e.getPlayer().getName().toString().replace("true", "wlaczone").replace("false", "wylaczone")));
 

;/ nie zadziala to raz, bo zle sa nawiasy, a dwa to takie replace nie ma sensu juz lepiej uzywac ternary operator czyli cos typu:  'mySet.contains(uuid) ? "wlaczone" : "wylaczone"`

no i oczywicie zamiast robienia map do takiego czegos jest o wiele lepszym rozwiazaniem uzyc listy lub setów - jezeli set zawiera uuid to boolean na true, inaczej na false

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Użytkownik
  • 0
26 minut temu, Kamilkime napisał:

@yooniks Czyżby Insertt cię przekonał do nowych, pięknych funkcji z Javy 8? ( ͡° ͜ʖ ͡°)

tylko z map ( ͡° ͜ʖ ͡°)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×