Jump to content
  • 0

Problema ce tine de functia format din pawn...


burnfire

Question

Salutare SA:MP Romania!Am o mica problema si tot odata,foarte neobisniuta...Am facut o comanda cu ZCMD si SSCANF cu un mesaj care ar trebui sa se transmita la tot serverul,dar nu se intampla asta...

Defapt,asa mi se intampla la toate comenzile care tin de Admin Systemul,care este integrat in GM!Mai jos aveti comanda "goto":

[pawn]CMD:goto(playerid,params[])

{

new toplayerid,Float:Pos[3],interior,vw,rogoto[512],enggoto[512];

if(sscanf(params,"u",toplayerid))

{

if(limba[playerid] == 0) return SendClientMessage(playerid,0xFF0000FF,"Utilizare comanda:/goto <Playerid|Name>");

if(limba[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"Command Syntax:/goto <Playerid|Name>");

}

if(PInfo[playerid][Admin] < 2)

{

if(limba[playerid] == 0) return SendClientMessage(playerid,0xFF0000FF,"Trebuie sa ai minim level 2 pentru a utiliza aceasta comanda!");

if(limba[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"You must to be admin level 2 to use this command!");

}

if(!IsPlayerConnected(toplayerid))

{

if(limba[playerid] == 0) return SendClientMessage(playerid,0xFF0000FF,"Acest player nu este conectat!");

if(limba[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"This player isn't connected!");

}

GetPlayerPos(toplayerid,Pos[0],Pos[1],Pos[2]);

SetPlayerPos(playerid,Pos[0]+1,Pos[1],Pos[2]);

interior = GetPlayerInterior(toplayerid);

vw = GetPlayerVirtualWorld(toplayerid);

SetPlayerInterior(playerid,interior);

SetPlayerVirtualWorld(playerid,vw);

if(limba[playerid] == 0)

{

format(rogoto,sizeof(rogoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Adminul {FF0000}%s{FFFFFF}[iD:%d] s-a teleportat la playerul {FF0000}%s{FFFFFF}[iD:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);

SendClientMessageToAll(-1,rogoto);

}

if(limba[playerid] == 1)

{

format(enggoto,sizeof(enggoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Admininstrator {FF0000}%s{FFFFFF}[iD:%d] has go to player {FF0000}%s{FFFFFF}[iD:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);

SendClientMessageToAll(-1,enggoto);

}

return 1;

}[/pawn]

Problema este ca mesajul nu se transmite deloc...Am uitat sa precizez ca aceasta comanda este bilingva,adica daca playerul este roman,mesajul va fi trimis in romana,iar daca este in engleza,mesajul v-a fi trimis in engleza!Astept ajutorul vostru! :)

Link to comment
Share on other sites

17 answers to this question

Recommended Posts

PRIMA CE MI-A VENIT IN MINTE :)) :

[pawn]

CMD:goto(playerid,params[])

{

new toplayerid,Float:Pos[3],interior,vw,rogoto[512],enggoto[512];

if(sscanf(params,"u",toplayerid))

{

if(limba[playerid] == 0) return SendClientMessage(playerid,0xFF0000FF,"Utilizare comanda:/goto <Playerid|Name>");

if(limba[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"Command Syntax:/goto <Playerid|Name>");

}

if(PInfo[playerid][Admin] < 2)

{

if(limba[playerid] == 0) return SendClientMessage(playerid,0xFF0000FF,"Trebuie sa ai minim level 2 pentru a utiliza aceasta comanda!");

if(limba[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"You must to be admin level 2 to use this command!");

}

if(!IsPlayerConnected(toplayerid))

{

if(limba[playerid] == 0) return SendClientMessage(playerid,0xFF0000FF,"Acest player nu este conectat!");

if(limba[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"This player isn't connected!");

}

GetPlayerPos(toplayerid,Pos[0],Pos[1],Pos[2]);

SetPlayerPos(playerid,Pos[0]+1,Pos[1],Pos[2]);

interior = GetPlayerInterior(toplayerid);

vw = GetPlayerVirtualWorld(toplayerid);

SetPlayerInterior(playerid,interior);

SetPlayerVirtualWorld(playerid,vw);

if(limba[playerid] == 0)

{

format(rogoto,sizeof(rogoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Adminul {FF0000}%s{FFFFFF}[iD:%d] s-a teleportat la playerul {FF0000}%s{FFFFFF}[iD:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);

SendClientMessageToAll(-1,rogoto);

        print ( rogoto );

}

if(limba[playerid] == 1)

{

format(enggoto,sizeof(enggoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Admininstrator {FF0000}%s{FFFFFF}[iD:%d] has go to player {FF0000}%s{FFFFFF}[iD:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);

SendClientMessageToAll(-1,enggoto);

        print ( enggoto );

}

return 1;

}

Link to comment
Share on other sites

Ai incercat cu else if sau case?

Uite sa dau exemplu cu else if

Cum ai tu aici..

if(limba[playerid] == 0)
{
format(rogoto,sizeof(rogoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Adminul {FF0000}%s{FFFFFF}[ID:%d] s-a teleportat la playerul {FF0000}%s{FFFFFF}[ID:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);
SendClientMessageToAll(-1,rogoto);
}
if(limba[playerid] == 1)
{
format(enggoto,sizeof(enggoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Admininstrator {FF0000}%s{FFFFFF}[ID:%d] has go to player {FF0000}%s{FFFFFF}[ID:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);
SendClientMessageToAll(-1,enggoto);
}
  schimba cu
if(limba[playerid] == 0)
{
format(rogoto,sizeof(rogoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Adminul {FF0000}%s{FFFFFF}[ID:%d] s-a teleportat la playerul {FF0000}%s{FFFFFF}[ID:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);
SendClientMessageToAll(-1,rogoto);
}
else if(limba[playerid] == 1)
{
format(enggoto,sizeof(enggoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Admininstrator {FF0000}%s{FFFFFF}[ID:%d] has go to player {FF0000}%s{FFFFFF}[ID:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);
SendClientMessageToAll(-1,enggoto);
}
sau cu switch
switch ( limba [ playerid ] )
{
case 0:
{
format(rogoto,sizeof(rogoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Adminul {FF0000}%s{FFFFFF}[ID:%d] s-a teleportat la playerul {FF0000}%s{FFFFFF}[ID:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);
SendClientMessageToAll(-1,rogoto);
}
case 1:
{
format(enggoto,sizeof(enggoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Admininstrator {FF0000}%s{FFFFFF}[ID:%d] has go to player {FF0000}%s{FFFFFF}[ID:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);
SendClientMessageToAll(-1,enggoto);
}
}

PS:Am facut in graba

Massari e curva mea

Link to comment
Share on other sites

La else if tot nu merge,am facut un topic si pe .com....

Cu codul luo Spirite_,imi arata mesajul doar in consola...

Tin sa precizez ca la comenzile la care am folosit mai putin de 3 culori hex (de genu FFFFFF) mesajul s-a afisat pe tot serverul...Ce este de facut?

Link to comment
Share on other sites

[pawn]CMD:goto(playerid,params[])

{

new toplayerid,Float:Pos[3],interior,vw,rogoto[512],enggoto[512];

if(sscanf(params,"u",toplayerid))

{

if(limba[playerid] == 0) return SendClientMessage(playerid,0xFF0000FF,"Utilizare comanda:/goto <Playerid|Name>");

elseif(limba[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"Command Syntax:/goto <Playerid|Name>");

}

if(PInfo[playerid][Admin] < 2)

{

if(limba[playerid] == 0) return SendClientMessage(playerid,0xFF0000FF,"Trebuie sa ai minim level 2 pentru a utiliza aceasta comanda!");

elseif(limba[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"You must to be admin level 2 to use this command!");

}

if(!IsPlayerConnected(toplayerid))

{

if(limba[playerid] == 0) return SendClientMessage(playerid,0xFF0000FF,"Acest player nu este conectat!");

elseif(limba[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"This player isn't connected!");

}

GetPlayerPos(toplayerid,Pos[0],Pos[1],Pos[2]);

SetPlayerPos(playerid,Pos[0]+1,Pos[1],Pos[2]);

interior = GetPlayerInterior(toplayerid);

vw = GetPlayerVirtualWorld(toplayerid);

SetPlayerInterior(playerid,interior);

SetPlayerVirtualWorld(playerid,vw);

if(limba[playerid] == 0)

{

format(rogoto,sizeof(rogoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Adminul {FF0000}%s{FFFFFF}[iD:%d] s-a teleportat la playerul {FF0000}%s{FFFFFF}[iD:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);

SendClientMessageToAll(-1,rogoto);

}

if(limba[playerid] == 1)

{

format(enggoto,sizeof(enggoto),"{FF0000}Royal {FF8800}Stunt {00FF00}Gaming {FFFFFF}AdmCmd:Admininstrator {FF0000}%s{FFFFFF}[iD:%d] has go to player {FF0000}%s{FFFFFF}[iD:%d]!",GetName(playerid),playerid,GetName(toplayerid),toplayerid);

SendClientMessageToAll(-1,enggoto);

}

return 1;[/pawn]

Nu prea ajut la categoria RP/GF.

Link to comment
Share on other sites

Nu are cum,am pus un timer care,daca nu ai selectat o limba,sa iti trimita un mesaj din 10 in 10 secunde ;)Nu is chiar asa de incepator

Pai ii trimite mesaj..dar poate nu i se seteaza o valoare

Pune sa i se seteze automat pe eng daca nu alege ( eng pentru ca e limba cunoscuta aproape de toti )

Massari e curva mea

Link to comment
Share on other sites

Nu vi se pare si voua ca ii mesajul prea mare ?

Stringul este ok . Incearca in loc de Romania Gaming Super sau ce ai tu acolo sa pui doar initialele sau sa mai scurtezi .

Daca il vei pune intr-un dialog iti va merge 100% . Incearca sa pui intr-un dialog si o sa iti mearga . Daca nu vrei in dialog incearca ce ti-am scris eu xD

idiots.png
Link to comment
Share on other sites

1.O.K.Mesajul este trimis pe limba Engleza sau Romana, dar tu ai limba setata?

2.Ai incercat sa pui partea care contine "format"-urile inainte de GetPlayerPos(toplayerid,Pos[0],Pos[1],Pos[2]);?

1.Da

2.Da :))

Anakin link=topic=27682.msg146760#msg146760 date=1372088099]

Nu vi se pare si voua ca ii mesajul prea mare ?

Stringul este ok . Incearca in loc de Romania Gaming Super sau ce ai tu acolo sa pui doar initialele sau sa mai scurtezi .

Daca il vei pune intr-un dialog iti va merge 100% . Incearca sa pui intr-un dialog si o sa iti mearga . Daca nu vrei in dialog incearca ce ti-am scris eu xD

Revin cu edit ;)

LOOOOL Mersi Anakin ;)Chiar merge acum!In ambele limbi!!!!!!!!!Mersi muuuult!Dati TC!Ai +1

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.