Szerző Téma: Hibás parancs kiírása  (Megtekintve 1456 alkalommal)

Hibás parancs kiírása
« Dátum: 2014. november 19. - 11:56:33 »
0 Show voters
Sziasztok!Azt szeretném kérdezni,hogy hogyan lehetne azt megoldani,amikor valaki beír egy olyan parancsot ami nincs a szerveren akkor kiírja az hogy \"Nincs ilyen parancs (és ide azt a parancsot írja amit beírt)\" szóval Például beírja hogy /pénz  és akkor kiírja a szerver hogy \"Nincs ilyen parancs ( /pénz)\".
A válaszokat előre is köszönöm. :)

Hibás parancs kiírása
« Válasz #1 Dátum: 2014. november 19. - 15:44:11 »
0 Show voters
ycmd, zcmd, cmdtext?

Hibás parancs kiírása
« Válasz #2 Dátum: 2014. november 19. - 15:56:02 »
0 Show voters
zcmd :)

Nem elérhető GUN

Hibás parancs kiírása
« Válasz #3 Dátum: 2014. november 19. - 16:09:09 »
0 Show voters
Szia,
Ha sima cmdtext:
Az eljárás végén visszatérsz(return) hogy \'Hibás a parancs.\'.
Ha zcmd:
A
public OnPlayerCommandPerformed(playerid, cmdtext[], success)

 eljárással, a success paraméter segítségével.
Pl.:
 
public OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
if (!success) {
    SendClientMessage(playerid, -1, \"Hibás parancs!\");
       }
  return 1;
}

 
E: Kijavítottam, módból szedtem ki, elnézést!
« Utoljára szerkesztve: 2014. november 19. - 16:16:50 írta GUN »

Hibás parancs kiírása
« Válasz #4 Dátum: 2014. november 19. - 16:39:34 »
0 Show voters
Szia.Köszi csak nekem úgy kellene hogy, azt is kiírja amit beírt szóval beírja : /pénz - és a szerver azt írja ki hogy: Nincs ilyen parancs (/pénz).
Csak ezt nemtudom hogy hogyan kellene megoldani string-el kellene valamit csinálni meg format-olni azt hiszem.

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Hibás parancs kiírása
« Válasz #5 Dátum: 2014. november 19. - 16:44:55 »
0 Show voters
format(string, sizeof(string), \"%s használta: %s és azt mondta: K.\", name, cmdtext);

Nem elérhető GUN

Hibás parancs kiírása
« Válasz #6 Dátum: 2014. november 19. - 16:58:23 »
0 Show voters
Idézetet írta: Dfoglalo date=1416411895\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"51417\" data-ipsquote-contentclass=\"forums_Topic

format(string, sizeof(string), \"%s használta: %s és azt mondta: K.\", name, cmdtext);

 

Elfelejtetted a nevet lekérni.
Elé:
 
new name[36];
GetPlayerName(playerid, name, 36);

 
VAGY
A módba valahova szúrd be:
(Szerintem könnyebb ezzel eljárni. Használata: pName(playerid) )
 
stock pName(id)
{
new name[24];
GetPlayerName(id, name, 24);
return name;
}

 
De akkor erre módosul a format:
   
format(string, sizeof(string), \"%s használta: %s és azt mondta: K.\", pName(playerid), cmdtext);
« Utoljára szerkesztve: 2014. november 19. - 17:00:10 írta GUN »

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Hibás parancs kiírása
« Válasz #7 Dátum: 2014. november 19. - 17:03:10 »
0 Show voters
Nem felejtettem el, szándékosan nem írtam oda. Ahogyan a string változó deklarálását sem jelenítettem meg. Remélve, hogy erre önmagától is képes lesz a kedves témanyitó.


Szerk.: de ha már nevek. Akkor már így csinálja:
 
Nev(playerid) // stock-ot nem muszáj írni
{
        new Neve[MAX_PLAYER_NAME]; // Esetleg MAX_PLAYER_NAME + 1, bár nem hiszem, hogy a sor végi karakter bezavarna
        GetPlayerName(playerid, Neve, sizeof(Neve)); // sizeof-al lekérjük a változó méretét, hogy ne kelljen ismét megadni
        return Neve; // Visszatérünk a lekérdezett névvel
}
« Utoljára szerkesztve: 2014. november 19. - 17:06:40 írta Dfoglalo »

Nem elérhető GUN

Hibás parancs kiírása
« Válasz #8 Dátum: 2014. november 19. - 17:11:26 »
0 Show voters
Azért írtam oda, mert feltételeztem, hogy a témanyitó kezdő.
Costarica, ha kérdésed van még, írd le nyugodtan.

Hibás parancs kiírása
« Válasz #9 Dátum: 2014. november 19. - 17:16:05 »
0 Show voters
public OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
    if(!success)
    {
       
          new string[1280];
format(string, sizeof(string), \"{00FF00}HIBA: {FFFFFF}Ismeretlen parancs   \'\'{FF0000}%s{FFFFFF}\'\' Parancsokért {FF0000}/cmds /help{FFFFFF}!\", cmdtext);
SendClientMessage(playerid,0x33AA33AA, string);
    return true;
    }
    return true;
}

 
[gmod]Kitettem a

taget.[/gmod]
« Utoljára szerkesztve: 2014. november 19. - 17:26:26 írta Dfoglalo »

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Hibás parancs kiírása
« Válasz #10 Dátum: 2014. november 19. - 17:19:40 »
0 Show voters
Idézetet írta: GUN date=1416413486\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"51417\" data-ipsquote-contentclass=\"forums_Topic
Azért írtam oda, mert feltételeztem, hogy a témanyitó kezdő.
 
Valószínűleg az. De ha az is, valószínűleg a név lekérdezést és a változó deklarálást azért csak ismeri... Ha pedig nem, rákeres és azonnal megtalálja. De mindegy is, mert végül csak leírtam én is a név lekérdezését :D



 
new string[1280];

 

[/quote]
Nem lesz ez egy kicsit sok? :D

Hibás parancs kiírása
« Válasz #11 Dátum: 2014. november 19. - 17:21:27 »
0 Show voters
Nem nekem így tökéletesen megy :D De lehet kevesebb is!!!

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Hibás parancs kiírása
« Válasz #12 Dátum: 2014. november 19. - 17:25:02 »
0 Show voters
Az egy dolog, hogy \"tökéletesen\" működik, de feleslegesen foglal le memóriát. A tökéletest pedig azért tettem idézőjelbe, mert a forráskód nem az elképzelhető leghatékonyabb formában lett megírva, így az nem tökéletes.

Hibás parancs kiírása
« Válasz #13 Dátum: 2014. november 19. - 17:30:11 »
0 Show voters
Erre nem gondoltam ,köszönöm a javítást! ::|

Hibás parancs kiírása
« Válasz #14 Dátum: 2014. november 19. - 18:48:42 »
0 Show voters
Köszönöm szépen a válasokat! :) És valóban kezdő vagyok. Na mindegy, kösz a válaszokat mégegyszer

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal