PDA

Просмотр полной версии : [Вопрос] Ник без нижнего подчеркивания



pustomerzha
15.02.2017, 13:40
Как сделать чтобы в чате в никах было написано так:
Если ник "1_2_3", то нужно чтобы писало "1 2 3", а если "1_2" то "1 2"

Нужно именно в чате, а не в нике игрока

VVWVV
15.02.2017, 13:47
Можно заменить символы подчёркивания в нике на пробелы.



public OnPlayerText(playerid, text[])
{
new
name[MAX_PLAYER_NAME + 1],
i = sizeof name - 1;

GetPlayerName(playerid, name, sizeof name);

while (i--)
{
if (str[i] == '_')
str[i] = ' ';
}

// Далее отправка сообщения.
}


Но! Лучшем вариантом было бы, если бы вы сохранили получившийся ник в массив ещё при подключении.

pustomerzha
15.02.2017, 15:03
Благослови тебя господь, да причислят тебя к лику святых. Аминь.

pustomerzha
15.02.2017, 15:55
А можешь дать пример использования твоего спобоса?

Alpano
15.02.2017, 16:10
А можешь дать пример использования твоего спобоса?

public OnPlayerText(playerid, text[])
{
new
name[MAX_PLAYER_NAME + 1],
i = sizeof name - 1,
str[144];

GetPlayerName(playerid, name, sizeof name);

while (i--)
{
if (str[i] == '_')
str[i] = ' ';
}
format(str,sizeof str,"%s[%d]: %s",name,playerid,text);
SendClientMessageToAll(-1,str);
return false;
}

vovandolg
15.02.2017, 20:55
public OnPlayerText(playerid, text[])
{
new
name[MAX_PLAYER_NAME + 1],
i = sizeof name - 1,
str[144];

GetPlayerName(playerid, name, sizeof name);

while (i--)
{
if (str[i] == '_')
str[i] = ' ';
}
format(str,sizeof str,"%s[%d]: %s",name,playerid,text);
SendClientMessageToAll(-1,str);
return true;
}



public OnPlayerText(playerid, text[])
{
new
name[MAX_PLAYER_NAME + 1],
i = sizeof name - 1,
str[144];

GetPlayerName(playerid, name, sizeof(name));

while (i--)
{
if (name[i] == '_')
name[i] = ' ';
}
format(str, sizeof(str),"%s[%d]: %s", name, playerid, text);
SendClientMessageToAll(-1,str);
return true;
}
http://picademy.net/wp-content/uploads/2014/04/GoSy53DEPyM.jpg

Там же каша вылезет если вернёшь положительный результат

Alpano
15.02.2017, 22:25
Ну ошибся чутка, с кем не бывает