Obrigado por visitar a The Game Makers Brasil 😁 Use o fórum de Dúvidas para fazer perguntas. Se está em busca de aprender dê uma olhada nos tutoriais.

GameMaker não reconhece string

Perguntas? A comunidade te ajuda a resolver.
Avatar do usuário
Zero
Novato
Novato
Reações: 0
Mensagens: 19

GameMaker não reconhece string

Mensagem por Zero » Dom Dez 11, 2016 4:41 pm

Eu tenho uma string ca_sol[1,1], esses indices variam até 12. Eu salvo o  indice ca_sol[i,j] em uma variavel, ex: str=ca_sol[i,j]. Quando tento utilizar essa variavel com funções de string, ele me retorna um erro dizendo que a função esperava uma string do tipo YYGS, não sei do q se trata. Ex: string_length(str), retorna o erro dito anteriormente, mas se eu salvar str assim: str=ca_sol[1,1], funciona normalmente, o que é isso?

Avatar do usuário
Adilson
Membro
Membro
Reações: 0
Mensagens: 114
Localização: Curitiba Parana

Re: GameMaker não reconhece string

Mensagem por Adilson » Dom Dez 11, 2016 5:38 pm

tente converte-la, usando a função string
Exemplo:

Código: Selecionar todos

str = string(ca_sol[i,j]);//converter para string
size = string_length(str);//pega o numero de caracteres da  str convertida, simmmples :)
Vlw, Flw !!

Avatar do usuário
Zero
Novato
Novato
Reações: 0
Mensagens: 19

Re: GameMaker não reconhece string

Mensagem por Zero » Dom Dez 11, 2016 8:57 pm

Eu ja havia tentado, mas não funciona tb :/
A variável é uma string.

Avatar do usuário
Lima Loucão
Novato
Novato
Reações: 0
Mensagens: 16

Re: GameMaker não reconhece string

Mensagem por Lima Loucão » Dom Dez 11, 2016 9:19 pm

Quando você adiciona assim: str=ca_sol[i,j], mande este código logo abaixo: show_debug_message(str) e veja se ela é realmente uma string. Mostre-nos como você está tentando utilizar a variável com funções de string...

Avatar do usuário
Zero
Novato
Novato
Reações: 0
Mensagens: 19

Re: GameMaker não reconhece string

Mensagem por Zero » Dom Dez 11, 2016 11:15 pm

Este é o código :

Código: Selecionar todos

var pos_fix=58, char, left, fim, pos, str, count=0;
for(i=1;i<=12;i++)
{
    for(j=1;j<=12;j++)
    {
        str=ca_sol[i,j];
        show_debug_message(str);
        fim=false;
        pos=pos_fix;
        left=false;
        while !fim
        {
            if !left
            {
                char=string_char_at(str,pos);
                if (char=" ")
                {
                    str=string_delete(str,pos,1);
                    str=string_insert("#",str,pos);
                    pos+=pos_fix;
                    count++;
                }
                else
                    left=true;   
            }
            else
            {
                pos--;
                char = string_char_at(str,pos);
                if (char = " ")
                {
                    str=string_delete(str,pos,1);
                    str=string_insert("#",str,pos);
                    left = false;
                    pos+=pos_fix;
                    count++;
                }  
            }
            if (pos>string_length(str))
            {
                fim=true; 
                ca_sol[i,j]=str;  
            }
        }
    }
}
A ideia é que ele quebre o texto pra sempre caber na minha tela. Mas acontece o problema descrito.
str fica em forma de string e ca_sol é uma variavel que guarda um texto e ela vai de [1..12,1..12].

Avatar do usuário
Lima Loucão
Novato
Novato
Reações: 0
Mensagens: 16

Re: GameMaker não reconhece string

Mensagem por Lima Loucão » Dom Dez 11, 2016 11:33 pm

Você quer quebrar um texto toda vez que ele chega no final da sua tela? Já tentou usar a função: draw_text_ext?
draw_text_ext(x,y,texto para desenhar, distância em pixels entre as linhas, tamanho em pixels antes do texto quebrar)

Avatar do usuário
Zero
Novato
Novato
Reações: 0
Mensagens: 19

Re: GameMaker não reconhece string

Mensagem por Zero » Seg Dez 12, 2016 12:38 am

Sim, mas não pode quebrar do nada, só quando tiver um espaço, se não a palavra fica quebrada.
Testando vaaaaarias coisas, descobri o problema. O problema era que um dos textos tinha um texto dentro, tipo o simbolo de aspas xD

Responder

Quem está online

Usuários navegando neste fórum: Google [Bot] e 12 visitantes