[SOLVED] Underscore - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (
https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (
https://sampforum.blast.hk/forumdisplay.php?fid=12)
+---- Forum: Help Archive (
https://sampforum.blast.hk/forumdisplay.php?fid=89)
+---- Thread:  [SOLVED] Underscore (
/showthread.php?tid=120686)
 
[SOLVED] Underscore - 
KnooL -  12.01.2010
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.
Re: [UNSOLVED] Underscore - 
RyDeR` -  12.01.2010
Maybe with strfind and strdel?
Re: [UNSOLVED] Underscore - 
Virtual1ty -  12.01.2010
pawn Код:
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;
}
 
Re: [UNSOLVED] Underscore - 
GTAguillaume -  12.01.2010
Код:
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;
}
 EDIT: Virtual1ty was first :b
Re: [UNSOLVED] Underscore - 
KnooL -  12.01.2010
NVM GOT IT FIXED WITH FORMAT(
Re: [UNSOLVED] Underscore - 
KnooL -  13.01.2010
Quote:
| 
 
					Originally Posted by Virtual1ty  
 
pawn Код: 
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; }  
  
 | 
 how i'd put this in onplayerconnect?
Re: [UNSOLVED] Underscore - 
AiVAMAN -  13.01.2010
Use GetPlayerNameEx(playerid) instead of GetPlayerName(playerid)
Re: [UNSOLVED] Underscore - 
Sergei -  13.01.2010
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;
}
 
Re: [UNSOLVED] Underscore - 
KnooL -  13.01.2010
Still no answer on my question on how to change the player's name in OnPlayerConnect
Thanks in advance.
Re: [UNSOLVED] Underscore - 
Kurence -  13.01.2010
no it can't be done because in nicknames can't be " " (space)