12.01.2010, 14:37
Is there any thing available that checks if a name has a underscore e.g. Frank_Pentangeli, and then removes it? so it would be Frank Pentangeli?
Thanks in advance.
Thanks in advance.
stock GetPlayerNameEx(playerid)
{
new string[24];
GetPlayerName(playerid,string,24);
new str[24];
strmid(str,string,0,strlen(string),24);
for(new i = 0; i < MAX_PLAYER_NAME; i++)
{
if (str[i] == '_') str[i] = ' ';
}
return str;
}
new name[MAX_PLAYER_NAME],tmp5[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,MAX_PLAYER_NAME]);
tmp5 = strreplace("_"," ",name);
SetPlayerName(playerid,tmp5);
stock strreplace(trg[],newstr[],src[]) { //dutils
new f=0;
new s1[MAX_STRING];
new tmp[MAX_STRING];
format(s1,sizeof(s1),"%s",src);
f = strfind(s1,trg);
tmp[0]=0;
while (f>=0) {
strcat(tmp,ret_memcpy(s1, 0, f));
strcat(tmp,newstr);
format(s1,sizeof(s1),"%s",ret_memcpy(s1, f+strlen(trg), strlen(s1)-f));
f = strfind(s1,trg);
}
strcat(tmp,s1);
return tmp;
}
ret_memcpy(source[],index=0,numbytes) {
new tmp[MAX_STRING];
new i=0;
tmp[0]=0;
if (index>=strlen(source)) return tmp;
if (numbytes+index>=strlen(source)) numbytes=strlen(source)-index;
if (numbytes<=0) return tmp;
for (i=index;i<numbytes+index;i++) {
tmp[i-index]=source[i];
if (source[i]==0) return tmp;
}
tmp[numbytes]=0;
return tmp;
}
|
Originally Posted by Virtual1ty
pawn Код:
|
stock GetPlayerNameEx(playerid)
{
new pname[MAX_PLAYER_NAME]; GetPlayerName(playerid,pname,sizeof(pname));
new i = strfind(pname,"_",true);
if(i != (-1)) pname[i] = ' ';
return pname;
}