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] Własny plugin na logowanie


Rekomendowane odpowiedzi

Opublikowano

Witam , napisałem plugin na logowanie (proszę żeby nie było hejtów że źle napisałem czy nie umiem pisać bo dopiero się uczę)
Więc tak są tam komendy:

- login
- register
- zmienhaslo


Gdy wpisze np. Register to jest napisane:
http://screenshooter.net/101982467/gqfgkqb

a w konsoli jest napisane:
http://www.pastebin.pl/view/02e7b9c7

kod:

http://www.pastebin.pl/view/3e203f6d


(Proszę nie zamykać tematu jak pomogą mi z tym bo mam jeszcze parę problemów z tym pluginem)
Ps. Tresc Tematu nie jest moja, lecz kolegi ktory chcial abym tutaj wstawił, procze nie traktować mnie jako PROGRAMISTE ;-)

Opublikowano

Jeżeli masz się uczyć to nie ucz się tak do przodu pisz małe pluginy później średnie, a w dobrym czasie to wysokie takie jak ten co pisałeś na login itp. i nie będziesz musiał wtedy pisać taki temat, bo będziesz ogarniać już nie całkowicie ale te ważne/średnie rzeczy tak :).

Opublikowano

Jeżeli się uczyć to nie ucz się tak do przodu pisz małe pluginy później średnie, a później wysokie takie jak te i nie będziesz musiał wtedy pisać takie tematu...

Prosze pisac zgodnie z ortografia bo pierwsze 5/6 slow nie ma znaczenia w tym zdaniu :-)

Ps. Prosze o przeczytanie na samym dole czerwonej linijki :D

Opublikowano

Cegli  Nie było żadnych czerwonych linijki

POST Poprawiłem...

Życzę powodzenia w pisaniu pluginów :c.

Dzieki, ps szukam osoby ktora mi pomorze a nie pospami :D

Opublikowano

Prosze pisac zgodnie z ortografia

 

 

Dzieki, ps szukam osoby ktora mi pomorze a nie pospami :D

                     
  if(args.length !=3){ 
zmien na 
 if(args.length ==4 albo <=4
Opublikowano

Dzieki, ps szukam osoby ktora mi pomorze a nie pospami :D

Teraz paczaj:

 

1. Nie sprawdzaj hasła IgnoreCase bo wielkość ma znaczenie :)

2. na samym początku pisze "

  1. [17:42:36 ERROR]: null

"

Czyli jest problem z nullem.

To teraz szukamy gdzie i mamy "

  1.         at pl.mranimek.xanim.Commandd.onCommand(Commandd.java:45) ~[?:?]

"

i wiemy ze to wina linijki 45 w classie Commandd

 

I paczymy dalej w kod:

 

"

  1. if(args.length !=3){
  2.                                 sender.sendMessage("§4Blad: §cPodano zla ilosc argumentow. Poprawne uzycie to /register <haslo> <haslo> <kod>");
  3.                                 sender.sendMessage("§ckod jest wyswietlany przy wejsciu na serwer.");
  4.                         }

"

i widzimy ze nawet jak jest mniej niz 3 argi to i tak cmd jest wykonywane bo nie dodałeś "return true;"

 

Zresztą tak jak w całym kodzie :)

 

jak używasz takiego sposobu pisania to używaj returnów lub pisz

 

if(){

   if(){

      if(){

      } else

   } else

} else 

 

==

 

Pozdrawiam Padaambo.

 

Jeśli pomogłem to daj like :3

Opublikowano

Teraz paczaj:

 

1. Nie sprawdzaj hasła IgnoreCase bo wielkość ma znaczenie :)

2. na samym początku pisze "

  1. [17:42:36 ERROR]: null

"

Czyli jest problem z nullem.

To teraz szukamy gdzie i mamy "

  1.         at pl.mranimek.xanim.Commandd.onCommand(Commandd.java:45) ~[?:?]

"

i wiemy ze to wina linijki 45 w classie Commandd

 

I paczymy dalej w kod:

 

"

  1. if(args.length !=3){
  2.                                 sender.sendMessage("§4Blad: §cPodano zla ilosc argumentow. Poprawne uzycie to /register <haslo> <haslo> <kod>");
  3.                                 sender.sendMessage("§ckod jest wyswietlany przy wejsciu na serwer.");
  4.                         }

"

i widzimy ze nawet jak jest mniej niz 3 argi to i tak cmd jest wykonywane bo nie dodałeś "return true;"

 

Zresztą tak jak w całym kodzie :)

 

jak używasz takiego sposobu pisania to używaj returnów lub pisz

 

if(){

   if(){

      if(){

      } else

   } else

} else 

 

==

 

Pozdrawiam Padaambo.

 

"@❤Padaambo❤ Ale jak wbijam to nie dostaje kodu"

Opublikowano

To jedziem:

 

Nie radze używać plików przy logowaniu.

 

 

W tym kodzie:

if(!e.getPlayer().hasPlayedBefore() || !register.contains(p)){
			 Random ran = new Random();
			 int a = 10;
			 ran.nextInt(a);
			 int b = 10;
			 ran.nextInt(;
			 int c = 10;
			 ran.nextInt(c);
			 int d = 10;
			 ran.nextInt(d);
			 Main.getInst().getConfig().set("players." + p + ".kod", a + b + c + d);
			 p.sendMessage("§aZarejestruj sie komenda /register <haslo> <haslo> <kod>");
			 p.sendMessage("§aTwoj kod to: §b" + Main.getInst().getConfig().getString("players." + p + ".kod"));
			 register.add(p);
			 
		 }
	 }

sprawdzasz czy:

gracz jest w arrayu LUB czy jego plik znajduje się w NazwaSwiata/players

 

Radze używać uuid lub nicków ,a nie Playerów bo może sypać :)

 

 

Pomyśl trochę i dodaj debugi.

 

//edit

 

a b c d zawsze będzie wynosiło 10, ale to sam przemyśl :)

 

--

Pozdrawia chora panda.

 

Jeśli pomogłem to daj like :3

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...