here is example but it has little problem lol
pawn Код:
new Stexttarget[MAX_PLAYERS]; // on top
pawn Код:
new cmd[256];
if(strcmp(cmd, "/set3dtext", true) == 0)
{
new tmp[256],idx;
tmp = strtok(cmdtext, idx);
Stexttarget[playerid] = strval(tmp);
ShowPlayerDialog(playerid,535,DIALOG_STYLE_INPUT,"TextLabel Fun","Input ID","Ok","Cancel");
return 1;
}
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 534)
{
if(!response) return SendClientMessage(playerid, 0xFFFFFFFF, "You canceled!");
new message[128];
new Float:X, Float:Y, Float:Z;
GetPlayerPos(Stexttarget[playerid], X, Y, Z );
new Text3D:label = Create3DTextLabel(inputtext,0x008080FF,X,Y,Z, 40.0, 0);
Attach3DTextLabelToPlayer(label,Stexttarget[playerid], 0.0, 0.0, 0.7);
format(message, sizeof(message), "You entered: %s", inputtext);
SendClientMessage(playerid, 0xFFFFFFFF, message);
return 1;
}
if(dialogid == 535)
{
if(!response) return SendClientMessage(playerid, 0xFFFFFFFF, "You canceled!");
new idx;
new tmp[256];
tmp = strtok(inputtext, idx);
if(!IsNumeric(tmp))
{
SendClientMessage(playerid, 0xAA3333AA, "ID Must be a number");
return 1;
}
if(strval(tmp) == Stexttarget[playerid])
{
ShowPlayerDialog(playerid,534,DIALOG_STYLE_INPUT,"TextLabel Fun","text:","Ok","Cancel");
}
else
{
SendClientMessage(playerid, 0xAA3333AA, "That player is not connected!");
}
return 1;
}
return 1;
}
pawn Код:
public OnPlayerDisconnect(playerid, reason)
{
new Text3D:label
Delete3DTextLabel(Text3D:label);
return 1;
}
pawn Код:
IsNumeric(const string[])
{
for (new i = 0, j = strlen(string); i < j; i++)
{
if (string[i] > '9' || string[i] < '0') return 0;
}
return 1;
}