Entrar
Últimos assuntos
» Retorno da GMBR!!!por theguitarmester Ter 19 Mar 2024, 22:38
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27
» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30
» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42
» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17
» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18
» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34
» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13
» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18
» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12
» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02
» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55
» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42
» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56
» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49
» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21
» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21
» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39
» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16
» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05
» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55
» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39
» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28
» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01
2 erros, colisão e movimentação
5 participantes
Página 1 de 1
2 erros, colisão e movimentação
Bom, mais uma duvida no meu jogo:
COMPILATION ERROR in Script: Movimentação
Error in code at line 19:
x -= 30;
^
at position 7: Variable name expected.
E quando eu retiro essa linha 19, dá erro na linha do " x += 30;".
Erro 2 - O objeto não para quando se encontra uma posição acima de outro objeto, o que era o esperado por mim.
E ai, onde está o problema?
- Código:
if keyboard_check_pressed(vk_left) {
x -= 30;
}
if keyboard_check_pressed(vk_right) {
x += 30;
}
if ( !place_free(x,y-1) ){
vspeed = 0; //Foco do erro 2(eu acho)
}
COMPILATION ERROR in Script: Movimentação
Error in code at line 19:
x -= 30;
^
at position 7: Variable name expected.
E quando eu retiro essa linha 19, dá erro na linha do " x += 30;".
Erro 2 - O objeto não para quando se encontra uma posição acima de outro objeto, o que era o esperado por mim.
E ai, onde está o problema?
namikazealexandre- Data de inscrição : 31/05/2013
Reputação : 0
Número de Mensagens : 52
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: 2 erros, colisão e movimentação
Com ESSE código não tem nada de errado. O erro está no nome do script!
Você colocou o nome de "Movimentação". Você não pode, em nenhum nome de recurso (Scripts, sprites, sons e etc) e variável usar acentuação e Ç (Cedilha).
Troque o nome por "Movimento" que deve resolver .
A segunda dúvida não entendi, explique melhor.
FLWS!
Você colocou o nome de "Movimentação". Você não pode, em nenhum nome de recurso (Scripts, sprites, sons e etc) e variável usar acentuação e Ç (Cedilha).
Troque o nome por "Movimento" que deve resolver .
A segunda dúvida não entendi, explique melhor.
FLWS!
Re: 2 erros, colisão e movimentação
1- Consertei o nome e mesmo erro:
___________________________________________
COMPILATION ERROR in Script: Movimento
Error in code at line 19:
x -= 30;
^
at position 7: Variable name expected.
2- Aqui:
if ( !place_free(x,y-1) ){
vspeed = 0;
}
Eu queria que o objeto parasse quando houvesse algo embaixo dele... mas nao dá certo
___________________________________________
COMPILATION ERROR in Script: Movimento
Error in code at line 19:
x -= 30;
^
at position 7: Variable name expected.
2- Aqui:
if ( !place_free(x,y-1) ){
vspeed = 0;
}
Eu queria que o objeto parasse quando houvesse algo embaixo dele... mas nao dá certo
namikazealexandre- Data de inscrição : 31/05/2013
Reputação : 0
Número de Mensagens : 52
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: 2 erros, colisão e movimentação
Amigo, aonde estas a executar esse código?
Gabreel- Data de inscrição : 02/10/2009
Reputação : 52
Número de Mensagens : 2232
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Javascript
- Outros
Re: 2 erros, colisão e movimentação
No evento STEP!
namikazealexandre- Data de inscrição : 31/05/2013
Reputação : 0
Número de Mensagens : 52
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: 2 erros, colisão e movimentação
Primeiramente, você tem que indicar de quem é o x que vai ser movimentado. Se você já tiver alguma experiência com programação, orientação a objetos, etc vai entender melhor o que eu estou dizendo.
Como você está fazendo por script, você tem que indicar a instancia que será movida utilizando o nome do seu objeto.
Por exemplo:
Como você está fazendo por script, você tem que indicar a instancia que será movida utilizando o nome do seu objeto.
Por exemplo:
- Código:
if (keyboard_check_pressed(vk_left))
{
objeto_player.x -= 30
}
Re: 2 erros, colisão e movimentação
patrick9as, o script roda no evento step... no game maker, o step só existe dentro de objetos. O game maker interpreta que o "x" se refere ao objeto que roda o script. ERA pra estar certo.
Entretanto, se o erro está acontecendo, realmente é tentador presumir que o código está rodando fora de um objeto.
...position 7... é onde fica o "30", certo? Estranho, parece que o programa não está entendendo que "30" é a variação de "x", parece que está perguntando "é pra subtrair 30 de quê?"
Não deveria acontecer. Deve ter algum erro lá de trás sendo propagado até aqui. Você poderia postar o script completo?
Quanto ao outro erro, só vendo pra saber. Eu posso chutar. O primeiro chute é que você está se movimentando através da mudança de posição (y += valor; y -= valor) e, como nesse caso o valor de vspeed e nada são a mesma coisa, o objeto não está parando.
O segundo chute é que você está verificando por uma colisão ACIMA do objeto e espera que ele pare quando existe uma colisão ABAIXO dele. Note que no game maker, o eixo "y" cresce de cima pra baixo.
Entretanto, se o erro está acontecendo, realmente é tentador presumir que o código está rodando fora de um objeto.
...position 7... é onde fica o "30", certo? Estranho, parece que o programa não está entendendo que "30" é a variação de "x", parece que está perguntando "é pra subtrair 30 de quê?"
Não deveria acontecer. Deve ter algum erro lá de trás sendo propagado até aqui. Você poderia postar o script completo?
Quanto ao outro erro, só vendo pra saber. Eu posso chutar. O primeiro chute é que você está se movimentando através da mudança de posição (y += valor; y -= valor) e, como nesse caso o valor de vspeed e nada são a mesma coisa, o objeto não está parando.
O segundo chute é que você está verificando por uma colisão ACIMA do objeto e espera que ele pare quando existe uma colisão ABAIXO dele. Note que no game maker, o eixo "y" cresce de cima pra baixo.
saim- Games Ranking :
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios :
x 1 x 6 x 0
x 1 x 0 x 3
x 0 x 0 x 0
Re: 2 erros, colisão e movimentação
Tentarei especificar o objeto, mas pensei que nao era necessário já que o script está sendo rodado no objeto em si. Mas vou tentar e digo se deu certopatrick9as escreveu:Primeiramente, você tem que indicar de quem é o x que vai ser movimentado. Se você já tiver alguma experiência com programação, orientação a objetos, etc vai entender melhor o que eu estou dizendo.
Como você está fazendo por script, você tem que indicar a instancia que será movida utilizando o nome do seu objeto.
Por exemplo:Segundo erro: Você tem que verificar o início da sprite corretamente. Mande o código que você está utilizando para fazer o objeto parar que eu posso te ajudar!
- Código:
if (keyboard_check_pressed(vk_left))
{
objeto_player.x -= 30
}
Jájá posto o código
namikazealexandre- Data de inscrição : 31/05/2013
Reputação : 0
Número de Mensagens : 52
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: 2 erros, colisão e movimentação
1 - hmm... agora toh confuso, enfim, sim, a posição 7 eh a do 30. Jaja posto o codigo.saim escreveu:patrick9as, o script roda no evento step... no game maker, o step só existe dentro de objetos. O game maker interpreta que o "x" se refere ao objeto que roda o script. ERA pra estar certo.
Entretanto, se o erro está acontecendo, realmente é tentador presumir que o código está rodando fora de um objeto.
...position 7... é onde fica o "30", certo? Estranho, parece que o programa não está entendendo que "30" é a variação de "x", parece que está perguntando "é pra subtrair 30 de quê?"
Não deveria acontecer. Deve ter algum erro lá de trás sendo propagado até aqui. Você poderia postar o script completo?
Quanto ao outro erro, só vendo pra saber. Eu posso chutar. O primeiro chute é que você está se movimentando através da mudança de posição (y += valor; y -= valor) e, como nesse caso o valor de vspeed e nada são a mesma coisa, o objeto não está parando.
O segundo chute é que você está verificando por uma colisão ACIMA do objeto e espera que ele pare quando existe uma colisão ABAIXO dele. Note que no game maker, o eixo "y" cresce de cima pra baixo.
2 - Nao, acredito eu, que toh movimentando com a speed msm.
Script de movimento
- Código:
//Script de movimentação blocos
vspeed = 5;
if keyboard_check_pressed(vk_up) { //Rotaciona para direita
if (image_index < image_number){
image_index = image_index + 1;
}
else {
image_index = 0;
}
}
if keyboard_check(vk_down) { //Aumenta a velocidade do bloco
vspeed *= 3;
}
if keyboard_check_pressed(vk_left) {
x -= 30;
}
if keyboard_check_pressed(vk_right) {
x += 30;
}
if ( !place_free(x,y+1) ){ //consertei aki, tirei y-1 e pus y+1
vspeed = 0;
}
Tah ai! Em relação ao erro 2, vi agora que é o contrário. Sabia que o eixo Y era invertido mas msm assim ainda nao me acostumei, ai bugou minha mente kk.
EDIT: Mesmo consertando o y-1, ainda nao deu certo
P/patrick9as: Tentei especificar o objeto lá, e mesmo nao deu certo, deu erro logo no script. Se essa solução funcionasse seria um inconveniente já que estou pondo o script em um objeto e esse objeto é um "objeto-pai" de outros semelhantes, ou seja, especificando o objeto no script, eu teria que reformular muita coisa.
namikazealexandre- Data de inscrição : 31/05/2013
Reputação : 0
Número de Mensagens : 52
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: 2 erros, colisão e movimentação
erro 2:tente substituir "+1" por "+vspeed". Já que ela é definida como "5" logo no começo do script, isso não deve dar problema.
erro 1: não sei resolver (não achei erro nenhum) e não tenho como baixar a engine, se você postar... mas poste ela (o .gmk), de qualquer forma, que outra pessoa pode tentar.
erro 1: não sei resolver (não achei erro nenhum) e não tenho como baixar a engine, se você postar... mas poste ela (o .gmk), de qualquer forma, que outra pessoa pode tentar.
saim- Games Ranking :
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios :
x 1 x 6 x 0
x 1 x 0 x 3
x 0 x 0 x 0
Re: 2 erros, colisão e movimentação
Realmente, eu achei estranho não ter dado certo, o Game Maker tem alguns problemas quanto a você tentar movimentar o objeto em outro lugar a não ser dentro do "Step", o que eu te recomendo é colocar esse código no objeto mesmo, aí é certeza de não dar nada errado.namikazealexandre escreveu:1 - hmm... agora toh confuso, enfim, sim, a posição 7 eh a do 30. Jaja posto o codigo.saim escreveu:patrick9as, o script roda no evento step... no game maker, o step só existe dentro de objetos. O game maker interpreta que o "x" se refere ao objeto que roda o script. ERA pra estar certo.
Entretanto, se o erro está acontecendo, realmente é tentador presumir que o código está rodando fora de um objeto.
...position 7... é onde fica o "30", certo? Estranho, parece que o programa não está entendendo que "30" é a variação de "x", parece que está perguntando "é pra subtrair 30 de quê?"
Não deveria acontecer. Deve ter algum erro lá de trás sendo propagado até aqui. Você poderia postar o script completo?
Quanto ao outro erro, só vendo pra saber. Eu posso chutar. O primeiro chute é que você está se movimentando através da mudança de posição (y += valor; y -= valor) e, como nesse caso o valor de vspeed e nada são a mesma coisa, o objeto não está parando.
O segundo chute é que você está verificando por uma colisão ACIMA do objeto e espera que ele pare quando existe uma colisão ABAIXO dele. Note que no game maker, o eixo "y" cresce de cima pra baixo.
2 - Nao, acredito eu, que toh movimentando com a speed msm.
Script de movimento
- Código:
//Script de movimentação blocos
vspeed = 5;
if keyboard_check_pressed(vk_up) { //Rotaciona para direita
if (image_index < image_number){
image_index = image_index + 1;
}
else {
image_index = 0;
}
}
if keyboard_check(vk_down) { //Aumenta a velocidade do bloco
vspeed *= 3;
}
if keyboard_check_pressed(vk_left) {
x -= 30;
}
if keyboard_check_pressed(vk_right) {
x += 30;
}
if ( !place_free(x,y+1) ){ //consertei aki, tirei y-1 e pus y+1
vspeed = 0;
}
Tah ai! Em relação ao erro 2, vi agora que é o contrário. Sabia que o eixo Y era invertido mas msm assim ainda nao me acostumei, ai bugou minha mente kk.
EDIT: Mesmo consertando o y-1, ainda nao deu certo
P/patrick9as: Tentei especificar o objeto lá, e mesmo nao deu certo, deu erro logo no script. Se essa solução funcionasse seria um inconveniente já que estou pondo o script em um objeto e esse objeto é um "objeto-pai" de outros semelhantes, ou seja, especificando o objeto no script, eu teria que reformular muita coisa.
Bom, para o segundo erro tente utilizar esse código:
- Código:
if (other.y < y)//Se o outro objeto está acima de mim
{
vspeed = 0;//Eu paro
}
Negativo = pra cima
Positivo = pra baixo
vspeed = velocidade na vertical
hspeed = velocidade na horizontal
y - 1 = enxergar pra cima (ou seja, seu código está certo)
Só me diz o porquê de vc estar usando o image_index e o image_number.
Re: 2 erros, colisão e movimentação
@Patrick9as:
Quanto ao eixo y eu já tinha entendido, era só um pequeno bug na minha cabeça msm...
Quanto ao image_index e image_number, nao sei se é idiotice ou se tinha um jeito mais fácil, mas eu coloquei todos as imagens de um bloco em apenas um sprite(nao sei se mecionei aki que o jogo é um generico de tetris).
Tipo, em um sprite tem o bloco L em todas as suas 4 posições. Ai quando o player aperta UP, ele rotaciona, ou seja, muda de imagem...
Nao sei se fui claro...
Quanto ao eixo y eu já tinha entendido, era só um pequeno bug na minha cabeça msm...
Quanto ao image_index e image_number, nao sei se é idiotice ou se tinha um jeito mais fácil, mas eu coloquei todos as imagens de um bloco em apenas um sprite(nao sei se mecionei aki que o jogo é um generico de tetris).
Tipo, em um sprite tem o bloco L em todas as suas 4 posições. Ai quando o player aperta UP, ele rotaciona, ou seja, muda de imagem...
Nao sei se fui claro...
namikazealexandre- Data de inscrição : 31/05/2013
Reputação : 0
Número de Mensagens : 52
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: 2 erros, colisão e movimentação
Agora é final-de-semana. Pode ser que eu consiga dar uma olhada na sua engine, se você postá-la.
saim- Games Ranking :
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios :
x 1 x 6 x 0
x 1 x 0 x 3
x 0 x 0 x 0
Re: 2 erros, colisão e movimentação
kkk Só vi a msg agora, eu posto depois e se vc ainda puder dar uma olhada!
namikazealexandre- Data de inscrição : 31/05/2013
Reputação : 0
Número de Mensagens : 52
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» [Problemas] Colisão e movimentação
» Plataforma - Movimentação e colisão
» Colisão com inimigo e movimentação do mesmo
» colisão de queda após outra colisão dando problema
» [ajuda]colisao reinicia a room e sobre o ojb colisao
» Plataforma - Movimentação e colisão
» Colisão com inimigo e movimentação do mesmo
» colisão de queda após outra colisão dando problema
» [ajuda]colisao reinicia a room e sobre o ojb colisao
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos