-
Bele is kezdek, van egy asay parancsom, de ha /asay [akármiszöveg]-ként használom, hibásnak érzékeli. Ha simán /asay-t írok akkor meg
csak kiír egy szóközt asayként. Nem tudom, mi lehet a baja.
if(!strcmp(cmdtext, \"/asay\", true))
{
if(pInfo[playerid][Admin] >= 1)
{
new string[128],text[123];
format(string, sizeof(string), \"{f71616}((ADMIN :{a6e819} %s {f71616}))\",text);
SendPlayerMessageToAll(playerid, string);
return 1;
}
else
{
SendClientMessage(playerid,COLOR_RED,\"Nem vagy Admin...\");
}
return 1;
}
(Nincs loose identation, a sorok rendesen vannak csak itt bugosak.Errort nem érzékel. Ugyanez van a többi, /s, /b, stb. parancsoknál is, amikor valamit kell írni utána.)
-
[gmod]Téma áthelyezve. A Szkript kérésekhez akkor nyiss témát, ha egy szkriptre van szükséged, ne pedig akkor, ha egy szkripteddel kapcsolatban van van valami probléma![/gmod]
-
Asayt megoldottam dialoggal, de a /b /s, stb. utánairósakat nem csinálom meg azzal mert marhára nem lenne kényelmes használni.
(Nem fogsz futáskor asayozni, kiabálni annálinkább.)
-
Használj SSCANF-ot!
-
Ebből így nemsokat értek, ha erre csinálnál egy példát azt megköszönném :D
if(!strcmp(cmdtext, \"/b\", true))
{
new string[200],text[123];
{
format(string,sizeof(string),\"%s OOC: %s\",pName(playerid),text);
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
for(new i = 0; i < MAX_PLAYERS; i++)
if(IsPlayerInRangeOfPoint(i,5.0,x,y,z))
{
SendClientMessage(i,COLOR_WHITE,string);
}
else if(IsPlayerInRangeOfPoint(i,10.0,x,y,z))
{
SendClientMessage(i,COLOR_GREY,string);
}
}
return 1;
}
-
Nem teszteltem, de Mr.PAWNO szerint nincs hiba :D
A FS/GM elejére
#include <sscanf2>
if(!strcmp(cmdtext, \"/b\", true))
{
new string[128],text[128];
{
if(sscanf(cmdtext,\"s[128]\",text)) return SendClientMessage(playerid,-1, \"{FF0000}Használat:{FFFFFF} /b < Üzenet >\" );
format(string,sizeof(string),\"%s OOC: %s\",pName(playerid),text);
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
for(new i = 0; i < GetMaxPlayers(); i++)
{
if(!IsPlayerConnected(i)) continue;
if(IsPlayerInRangeOfPoint(i,5.0,x,y,z)) { SendClientMessage(i,COLOR_WHITE,string); }
else if(IsPlayerInRangeOfPoint(i,10.0,x,y,z)) { SendClientMessage(i,COLOR_GREY,string); }
} }
return 1;
}
Ha nincs meg az SSCANF2, akkor töltsd le :google2:
-
Nemjó :/
-
strtok -ot kell használnod.
http://sampforum.hu/index.php?topic=24788.0
-
[gmod]Kedves témanyitó! Ne hanyagold el a témát, ha megoldódott a problémád, zárd a témát![/gmod]
-
[gmod]A témanyitó jó ideje némítva van, zárok.[/gmod]