Existe sim outra maneira, basta usar um loop dentro das variбveis que sгo partes da string
Fiz esses exemplos pra vocк na callback OnPlayerText no qual tem uma variбvel de texto (
text) que nгo tem valor prй-definido:
Este usando apenas um loop.
TextoFinal seria o texto no qual os nъmeros seriam colocados.
pawn Код:
public OnPlayerText(playerid, text[])
{
new TextoFinal[70] = "Oi";
for(new y = 0; y != strlen(text); y += 1)
{
if(text[y] == '1')//Checarб se parte da string й igual б 1
{
strcat(TextoFinal, text[y]);//Se for, essa parte (text[y]) serб acoplada б string final
}
}
return 1;
}
Ou usando a funзгo
IsNumeric (
http://pastebin.com/rbcYFubV) :
pawn Код:
public OnPlayerText(playerid, text[])
{
new TextoFinal[70] = "Oi";
for(new y = 0; y != strlen(text); y += 1)
{
new ParteString[4];
format(ParteString,4,"%s",text[y]);
if(IsANumber(ParteString))//Checarб se a parte da string й um nъmero
{
strcat(TextoFinal, text[y]);//Se for, essa parte (text[y]) serб acoplada б string final
}
}
return 1;
}
O resto dependerб da sua criatividade ao usar esses recursos
Espero ter ajudado