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] Kod Java.


xAsky

Rekomendowane odpowiedzi

Opublikowano
		if(cmd.getName().equalsIgnoreCase("hajs")){
			hajs.put(p.getName(), 100);
			if(hajs.containsKey(p.getName())){
				Sprawdzony = hajs.get(p.getName());
				p.sendMessage("Posiadasz " + Sprawdzony + " zl");
				Sprawdzony = 0;
			}
		}
		if(cmd.getName().equalsIgnoreCase("daj")){
			if(hajs.containsKey(p.getName())){
				Sprawdzony = hajs.get(p.getName());
				Sprawdzony = Sprawdzony + 100;
				hajs.put(p.getName(), Sprawdzony);
				Sprawdzony = 0;

Wie ktoś może, o co chodzi?

Czemu to nie działa? ;c

Opublikowano

Komende rejestruję w plugin.yml i w głównej klasie, dzięki getCommand().

Ogółem, to komenda działa, bo faktycznie mam 100zł na koncie, ale gdy wpisuję /daj, to nie dostaję kolejnych 100. ;/

Opublikowano

Bo ty powinieneś to zrobić że pierw pobiera stan konta gracza a następnie dodaje wartość do tego konta a u ciebie jest że ją ustawia. A po za tym do zapisu danych nie stosuj hashmap bo po zresetowaniu serwera dane znikną polecam albo połączyć się z bazą danych typu: MySQL lub SQL albo zrobić plik w którym będzie się to zapisywać. Mam nadzieje że pomogłem :).

Opublikowano

@Skoxus

Z HashMapami sobie poradzę, ale gdzie Ty widzisz ten błąd? Bo jestem chyba ślepy.

No po prostu najpierw musisz pobrać stan konta gracza i dopiero wtedy do niego dodać wartość którą dodajesz za pomocą polecenia.

Mam nadzieje że teraz po wyjaśnieniu pomogłem.

Opublikowano

Ej, jestem głupi, bo nie rozumiem, o co Ci chodzi. xD


 


Bo jeśli chodzi o to:



Sprawdzony = hajs.get(p.getName());
Sprawdzony = Sprawdzony + 100;

To przecież tak jest.


 


Mógłbyś zaznaczyć linijke?


Opublikowano

Tak chodzi o tą komende musisz najpierw pobrać wartość gracza a następnie dodać do niej inną wartość :).

Na razie mnie ni będzie przez 3 godziny więc nie pisz pod mój nick.

Opublikowano

Już działa, i wszystko dzięki @Kamilkime.

 

Wielkie dzięki wszystkim za odpowiedzi i Wesołych Świąt. :)

 

Proszę o zamknięcie tematu.

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...