Conectar-se
Quem está conectado
13 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 13 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

[GMS] Acentuação

em Ter 11 Set 2012, 13:57
Precisei criar um script para retirar acentos das palavras do aplicativo que estou fazendo. Veja a rotina abaixo (na integra)
Código:

var acentos, s_acentos, str, i, j;
acentos  = "ÁÃÀáãàÉéÍíÓÕÔÔóõôòÚúÇç";
s_acentos = "AAAaaaEeIiOOOOooooUuCc";
str    = argument0;
str_new = "";
for (i = 0; i < string_length(str); i+= 1)
{
    ch  = string_copy(str, i + 1, 1);
    for (j = 0; j < string_length(acentos); j+= 1)
    {
        ac = string_copy(acentos, j + 1, 1);
        if (ch == ac) then
        {
            ch = string_copy(s_acentos, j + 1, 1)
            break; 
        }
    }
    str_new += ch;
}
return str_new;
Ela funciona perfeitamente no GM8 mas não está funcionando de jeito nenhum no GMS. Alguma sugestão ?
Flws!
Obs. Podia criar uma secao especifica para GMS ...
avatar
Ranking : Nota A
Notas recebidas : A+A
Data de inscrição : 20/03/2010
Número de Mensagens : 1134
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 108

Prêmios
   : 1
   : 0
   : 1
Ver perfil do usuáriohttps://www.facebook.com/seito.washiro.7

Re: [GMS] Acentuação

em Ter 11 Set 2012, 14:51
tente isso

Código:

var acentos,s_acentos,i,c,f;
acentos  = "ÁÃÀáãàÉéÍíÓÕÔÔóõôòÚúÇç";
s_acentos = "AAAaaaEeIiOOOOooooUuCc";

for(i=1;i<=string_length(argument0);i+=1)
{c=string_char_at(argument0,i);p=string_pos(c,acentos);
    if(p)
    {
    argument0=string_delete(argument0,i,1);
    argument0=string_insert(string_char_at(s_acentos,p),argument0,i)
    };
}
return(argument0);

aqui funcionou no [target]html5
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

Re: [GMS] Acentuação

em Ter 11 Set 2012, 15:08
Jiraya escreveu:tente isso

Código:

var acentos,s_acentos,i,c,f;
acentos  = "ÁÃÀáãàÉéÍíÓÕÔÔóõôòÚúÇç";
s_acentos = "AAAaaaEeIiOOOOooooUuCc";

for(i=1;i<=string_length(argument0);i+=1)
{c=string_char_at(argument0,i);p=string_pos(c,acentos);
    if(p)
    {
    argument0=string_delete(argument0,i,1);
    argument0=string_insert(string_char_at(s_acentos,p),argument0,i)
    };
}
return(argument0);

aqui funcionou no [target]html5
Aqui no meu ela funcionou igual a minha função, ou seja, retornou a string com acento... acho que pode ser alguma coisa da string do GM ser um ANSI_STRING e ele não tratar isso corretamente..
Flws!
avatar
Data de inscrição : 24/10/2009
Número de Mensagens : 873
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 14

Prêmios
   :
   :
   :
Ver perfil do usuáriohttp://inprovise.blogspot.com/

Re: [GMS] Acentuação

em Ter 11 Set 2012, 15:24
Aproveitando o tópico... Ué vc quer tirar? Eu é quero saber é como colocar acentos num draw text!
avatar
Ranking : Sem avaliações
Data de inscrição : 08/06/2008
Número de Mensagens : 2314
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 100

Prêmios
   : 3
   : 0
   : 1
Ver perfil do usuáriohttp://blackcapapps.blogspot.com.br/

Re: [GMS] Acentuação

em Ter 11 Set 2012, 17:33
Pelo visto
Código:
chr(ord('a')) = 'a' // true
chr(ord('á')) = 'á' // false

string_replace_all parece funcionar
Código:
var acentos,s_acentos,re,i;

acentos  = "ÁÃÀáãàÉéÍíÓÕÔÔóõôòÚúÇç";
s_acentos = "AAAaaaEeIiOOOOooooUuCc";
re = argument0;

for (i = 1; i <= string_length(acentos); i += 1) {
    re = string_replace_all(re,string_char_at(acentos,i),string_char_at(s_acentos,i));
}

return re;
avatar
Ranking : Nota D
Notas recebidas : D - C - D - C
Data de inscrição : 14/05/2009
Número de Mensagens : 712
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 7

Prêmios
   : 0
   : 0
   : 1
Ver perfil do usuário

Re: [GMS] Acentuação

em Ter 11 Set 2012, 17:49
Eu é quero saber é como colocar acentos num draw text!
Só respondendo, basta criar uma font, e depois seta-la como all digits na sua propria edição, depois usa-la livremente.
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

Re: [GMS] Acentuação

em Ter 11 Set 2012, 17:54
Kabeção escreveu:Pelo visto
Código:
chr(ord('a')) = 'a' // true
chr(ord('á')) = 'á' // false

string_replace_all parece funcionar
Código:
var acentos,s_acentos,re,i;

acentos  = "ÁÃÀáãàÉéÍíÓÕÔÔóõôòÚúÇç";
s_acentos = "AAAaaaEeIiOOOOooooUuCc";
re = argument0;

for (i = 1; i <= string_length(acentos); i += 1) {
    re = string_replace_all(re,string_char_at(acentos,i),string_char_at(s_acentos,i));
}

return re;
Nos testes que fiz aqui, ele devolveu a string do mesmo jeito que recebeu. Postei esta dúvida la na YoYo e me parece ser um problema das funções string do GMS pois é tudo UTF-8 e ele está fazendo alguma confusão na comparação, e lembrando, no GM 8 a minha função funciona perfeitamente.
Flws!
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum