@Grosim
Ich habe dafür, die ersten Leerzeichen allgemein weggemacht, fand ich für den Chat schöner.
Funktion:
Bsp.:
Code
public OnPlayerText(playerid, text[])
{
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
new chatMessage[136+MAX_PLAYER_NAME],chatMessage2[100];
//Was du wolltest------
chatMessage=RemoveFirstSpaces(text);
if(strlen(chatMessage)==0)
{
SendClientMessage(playerid,0xFFFFFF,"[Info]Du musst schon etwas schreiben");
return 0;
}
format(chatMessage,sizeof(chatMessage),"%s sagt: %s",Spielername(playerid),chatMessage);
//--------
if(strlen(chatMessage) > 128)
{
chatMessage2=chatMessage;
strdel(chatMessage,128,strlen(chatMessage));
strdel(chatMessage2,0,128);
chatMessage2=RemoveFirstSpaces(chatMessage2);
format(chatMessage2,sizeof(chatMessage2),"%s sagt: %s",Spielername(playerid),chatMessage2);
}
for(new i=0;i<MAX_PLAYERS;i++)
{
if(!IsPlayerConnected(i))continue;
if(!IsPlayerInRangeOfPoint(i,10,x,y,z))continue;
SendClientMessage(i,0xFFFFFF,chatMessage);
if(strlen(chatMessage2) > 0)
{
SendClientMessage(i,0xFFFFFF,chatMessage2);
}
}
return 0;
}
Alles anzeigen
Also, mit chatMessage=RemoveFirstSpaces(text); bekommst du den String ohne Leerzeichen, wenn dieser dann die Länge 0 hat, weißt Du das nichts im Text geschrieben wurde.
So hatte ich das gelöst. Mfg. Mogly1
