GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» player não consegue andar
por lovn7 Qui 21 Nov 2024, 13:33

» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22

» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31

» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23

» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49

» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58

» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36

» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36

» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33

» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51

» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28

» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18

» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08

» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10

» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16

» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40

» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01

» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45

» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34

» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28

» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48

» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54

» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14

» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50


Duvida muito simples,mas não entra na minha cabeça

+2
Luan Maia
DiegoBr
6 participantes

Ir para baixo

Duvida muito simples,mas não entra na minha cabeça Empty Duvida muito simples,mas não entra na minha cabeça

Mensagem por DiegoBr Sáb 11 Fev 2012, 15:45

Bom dia gente Very Happy
Bom,sou um membro muito antigo desse fórum,ja faz dois anos,estou muito avançado em programação no game maker jah.
Olhei muitos tópicos de perguntas e respotas e inclusive tutoriais,ví que quase todos eu sei resolver,não respondi por que seriam muitos e eu to com preguiça kkk Rolling Eyes
Mas bem ,tem algumas coisas que não ficam direito,já fiz muitos jogos,e estou cansando com uma coisa que está me incomodando.
Prestem atenção ,por que se não vocês não irão entender:
1 - Eu criei um objeto que controla todas as variaveis globais por exemplo :
Código:
global.sexo
2 - Uma das variaves que coloquei no Game Start do Obj_Controler
Foi Esta :
Código:
Global.HP =100
Ela significa Vida do Obj_Player,até aí problema nenhum .

3 - O Grande Problema é que,no Step do Obj_Player, foi posto :
Código:
if place_meeting(x,y,Obj_Inimigo)
{
global.HP -=10
}
Quem não sabe,place_meeting é um código que você utiliza para substituir a Colisão !
Ok agora designei que o ao colidir com o Obj_Inimigo o Hp irá descer 10% ok.

4 - O Problema é que criei outro objeto (Obj_Def1),que ele faz a animação do player levando um golpe,até aí tudo bem kkk.

5 - O problema realmente é que ja tentei no step do Obj_Player por :
Código:
if global.Hp -=10
{
instance_changed(Obj_Def1,1)
}
E isso não deu certo nunca e nunca vai dar,alguém sabe uma solução para isso ? Sad
Quem não intendeu a pergunta é só tentar intender o código no item 5,e eu não vou explicar interpretem ae Very Happy Happy
A e quem for me dar uma solução com variaveis,não utilize mais de duas por favor,já tenho muitaaas aqui !
Se eu descobrir a solução eu posto/edito para vocês Happy
DiegoBr
DiegoBr

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 11/03/2011
Reputação : 2
Número de Mensagens : 156
Prêmios : Duvida muito simples,mas não entra na minha cabeça Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • Java
  • C#
  • Unreal
  • Javascript


https://www.youtube.com/channel/UCbXNlbl7fWz1Lw5F_D4c4Ng

Ir para o topo Ir para baixo

Duvida muito simples,mas não entra na minha cabeça Empty Re: Duvida muito simples,mas não entra na minha cabeça

Mensagem por Luan Maia Sáb 11 Fev 2012, 15:56

Se entendi, é só colocar:
Código:

instance_changed(Obj_Def1,1)

No meio da decisão:
Código:

if place_meeting(x,y,Obj_Inimigo)
{
    global.HP -=10
}

Ficando assim:
Código:

if place_meeting(x,y,Obj_Inimigo)
{
   global.HP -= 10;
   instance_changed(Obj_Def1,1);
}

Acho que é isso!
flw
Luan Maia
Luan Maia

Games Ranking : Sem avaliações

Notas recebidas : D+C+C+D
Data de inscrição : 01/07/2010
Reputação : 2
Número de Mensagens : 404
Prêmios : Duvida muito simples,mas não entra na minha cabeça Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Duvida muito simples,mas não entra na minha cabeça Empty Re: Duvida muito simples,mas não entra na minha cabeça

Mensagem por Lucas 5293 Sáb 11 Fev 2012, 15:57

DiegoBr escreveu:Bom dia gente Very Happy
Bom,sou um membro muito antigo desse fórum,ja faz dois anos
Dois anos?
A sua data de inscrição foi: 11/03/2011
Que eu saiba nem completou um ano ainda...

DiegoBr escreveu:estou muito avançado em programação no game maker jah.
Então por que fez essa pergunta boba...

Bom a sua pergunta:

Esse código esta totalmente errado:
Código:
if global.Hp -=10
{
instance_changed(Obj_Def1,1)
}
Como o compilador vai checar um valor diminuindo o mesmo.
Delete ele.

E substituem aquele do item 3 para esse:

Código:
if place_meeting(x,y,Obj_Inimigo)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}

O.o Cara era só unir os códigos
Lucas 5293
Lucas 5293

Games Ranking : Nota C

Notas recebidas : C-D-B-B-B-C-C-C
Data de inscrição : 10/12/2010
Reputação : 18
Número de Mensagens : 695
Prêmios : Duvida muito simples,mas não entra na minha cabeça Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://dopxgames.blogspot.com

Ir para o topo Ir para baixo

Duvida muito simples,mas não entra na minha cabeça Empty Re: Duvida muito simples,mas não entra na minha cabeça

Mensagem por gustavo ferreira Sáb 11 Fev 2012, 16:07

e ai cara blz na minha opnião você deveria fazer uma variavel que checa quando o player perde vida tipo, quando ele perde vida a variavel fica verdadeira e logo em seguida fica falsa, outra coisa eu acho que se é sá uma mudança do sprite num tem necessidade de mudar o objeto mude apenas a sprite é muito mais simples tem um tutorial acho que do Willy sobre troca de sprites da uma procurada. flow
gustavo ferreira
gustavo ferreira

Games Ranking : Nota C

Notas recebidas : C+C+C+C
Data de inscrição : 03/12/2010
Reputação : 28
Número de Mensagens : 470
Prêmios : Duvida muito simples,mas não entra na minha cabeça Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Duvida muito simples,mas não entra na minha cabeça Empty Re: Duvida muito simples,mas não entra na minha cabeça

Mensagem por vinians Sáb 11 Fev 2012, 16:51

Este seu código:
Código:

if global.Hp -=10
{
instance_changed(Obj_Def1,1)
}
Não esta correto. Isso não é linguagem C heheeh.
Quando usar IF use operadores de comparação como == ou (=) ou < ou etc etc. Neste comando você "estaria" apenas subtraindo 10 da variavel global.Hp.
Flws
vinians
vinians

Games Ranking : Nota B

Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Reputação : 90
Número de Mensagens : 2716
Prêmios : Duvida muito simples,mas não entra na minha cabeça Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Construct 2
  • Java
  • C#
  • Javascript
  • C ou C++
  • Outros


https://vinians.itch.io

Ir para o topo Ir para baixo

Duvida muito simples,mas não entra na minha cabeça Empty Re: Duvida muito simples,mas não entra na minha cabeça

Mensagem por DiegoBr Dom 12 Fev 2012, 00:31

Aff gente,vocês acham que este código bobo eu já não tentei?
Código:
if place_meeting(x,y,Obj_Inimigo)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
Isso dá certo sim,não vou negar,eu usava isso em outro jogo que fiz,só que o problema é que são uns 20 objetos para cada personagem,eu quero poupar trabalho e ir direito ao assunto,nestes outros jogos que usei exatamente um código assim no final resulta em 300,400,600 linhas,e quando algo dá errado ,tenho que lá procurar no meio dessas linhas.
Iria ficar mais ou menos assim ó :
Código:
if place_meeting(x,y,Obj_Inimigo)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
if place_meeting(x,y,Obj_Inimigo_atk1)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
if place_meeting(x,y,Obj_Inimigo_atk2)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
if place_meeting(x,y,Obj_Inimigo_atk3)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
if place_meeting(x,y,Obj_Inimigo_atk4)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
if place_meeting(x,y,Obj_Inimigo_atk5)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
E por aí vai ! Pois existem uns 50 inimigos kkkk
Eu até Poderia reduzir este código deste geito(em seguida) ,mas mesmo assim ficaria muita coisa para minha cabeçinha que já tem que prestar atenção em muitas coisas para não dar Bug

Código:
if place_meeting(x,y,Obj_Inimigo){global.HP -=10instance_changed(Obj_Def1,1)}
if place_meeting(x,y,Obj_Inimigo_atk1){global.HP -=10instance_changed(Obj_Def1,1)}
if place_meeting(x,y,Obj_Inimigo_atk2){global.HP -=10instance_changed(Obj_Def1,1)}
if place_meeting(x,y,Obj_Inimigo_atk3){global.HP -=10instance_changed(Obj_Def1,1)}
if place_meeting(x,y,Obj_Inimigo_atk4){global.HP -=10instance_changed(Obj_Def1,1)}
if place_meeting(x,y,Obj_Inimigo_atk5){global.HP -=10instance_changed(Obj_Def1,1)}
E por aí vai ! Pois existem uns 50 inimigos kkkk
E gente você me interpretaram mal,eu não usei aquele código besta do
Código:
if global.HP -=10
eu só testei umas 2x e não deu certo Sad
Alguém tem algum geito de agilizar?
E meu amigo Gustavo Ferreira isso tenho certeza absoluta que o que você falou dá certo mas eu tenho muita variavel já no meu projeto aqui,e eu teria mais uma agora.
Vou te dar um exemplinho Happy
Código:
///////////////////////Configurações
global.hp=100
global.mp=100
global.exp1=0
global.textlv=0
global.expok=false
global.finaleval=false
global.status=false
global.money=0
global.superitem=0
global.cpersonagem1=false
global.cpersonagem2=false
global.cpersonagem3=false
global.cpersonagem4=false
Entre outras em outros objetos Sad


Última edição por DiegoBr em Dom 12 Fev 2012, 00:34, editado 1 vez(es) (Motivo da edição : Sou gay)
DiegoBr
DiegoBr

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 11/03/2011
Reputação : 2
Número de Mensagens : 156
Prêmios : Duvida muito simples,mas não entra na minha cabeça Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • Java
  • C#
  • Unreal
  • Javascript


https://www.youtube.com/channel/UCbXNlbl7fWz1Lw5F_D4c4Ng

Ir para o topo Ir para baixo

Duvida muito simples,mas não entra na minha cabeça Empty Re: Duvida muito simples,mas não entra na minha cabeça

Mensagem por saim Dom 12 Fev 2012, 00:49

DiegoBr escreveu:Aff
Não use "aff" a menos que você esteja cansado e irritado. É essa a impressão que eu tenho quando leio "aff" - o cara está cansado e a ponto de perder a paciência.

DiegoBr escreveu: o problema é que são uns 20 objetos para cada personagem,eu quero poupar trabalho e ir direito ao assunto,nestes outros jogos que usei exatamente um código assim no final resulta em 300,400,600 linhas,e quando algo dá errado ,tenho que lá procurar no meio dessas linhas.
Iria ficar mais ou menos assim ó :
Código:
if place_meeting(x,y,Obj_Inimigo)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
if place_meeting(x,y,Obj_Inimigo_atk1)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
if place_meeting(x,y,Obj_Inimigo_atk2)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
if place_meeting(x,y,Obj_Inimigo_atk3)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
if place_meeting(x,y,Obj_Inimigo_atk4)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
if place_meeting(x,y,Obj_Inimigo_atk5)
{
global.HP -=10
instance_changed(Obj_Def1,1)
}
E por aí vai ! Pois existem uns 50 inimigos kkkk
Já tentou usar parents?

Aliás, deixa eu dar uma destacada nisso aqui, porque é a resposta que você está procurando.

JÁ TENTOU USAR PARENTS?

DiegoBr escreveu:Eu até Poderia reduzir este código deste geito(em seguida) ,mas mesmo assim ficaria muita coisa para minha cabeçinha que já tem que prestar atenção em muitas coisas para não dar Bug

Código:
if place_meeting(x,y,Obj_Inimigo){global.HP -=10instance_changed(Obj_Def1,1)}
if place_meeting(x,y,Obj_Inimigo_atk1){global.HP -=10instance_changed(Obj_Def1,1)}
if place_meeting(x,y,Obj_Inimigo_atk2){global.HP -=10instance_changed(Obj_Def1,1)}
if place_meeting(x,y,Obj_Inimigo_atk3){global.HP -=10instance_changed(Obj_Def1,1)}
if place_meeting(x,y,Obj_Inimigo_atk4){global.HP -=10instance_changed(Obj_Def1,1)}
if place_meeting(x,y,Obj_Inimigo_atk5){global.HP -=10instance_changed(Obj_Def1,1)}
E por aí vai ! Pois existem uns 50 inimigos kkkk
isso não é reduzir, é eliminar uma quebra de linha. Pro processador - que deveria ser a sua preocupação - não faz diferença. Ou melhor, se você fizer direito, não faz diferença, mas você esqueceu de usar ";".
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Duvida muito simples,mas não entra na minha cabeça Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Duvida muito simples,mas não entra na minha cabeça Empty Re: Duvida muito simples,mas não entra na minha cabeça

Mensagem por DiegoBr Dom 12 Fev 2012, 02:20

Caro amigo Sam,acho que não é necessario eu usar ; , pois estou usando este código aí,e está dando certo O.o.
Mas se alguém tiver outra maneira aí,eu agradeço por que ta muito trabalhoso Sad Happy
DiegoBr
DiegoBr

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 11/03/2011
Reputação : 2
Número de Mensagens : 156
Prêmios : Duvida muito simples,mas não entra na minha cabeça Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • Java
  • C#
  • Unreal
  • Javascript


https://www.youtube.com/channel/UCbXNlbl7fWz1Lw5F_D4c4Ng

Ir para o topo Ir para baixo

Duvida muito simples,mas não entra na minha cabeça Empty Re: Duvida muito simples,mas não entra na minha cabeça

Mensagem por vinians Dom 12 Fev 2012, 02:59

Pode fazer assim:
Primeiro crie um objeto genérico. Por exemplo, pode chama-lo de obj_inimigo.
Depois vá em cada objeto Obj_Inimigo_atk1, Obj_Inimigo_atk2 etc e defina a propriedade Parent para obj_inimigo (que vc acabou de criar). Pronto. Agora substitua o seu código por:
Código:

in = instance_place(x, y, obj_inimigo);
if (in != noone)
{
      global.HP -=10;
      instance_changed(Obj_Def1,1);
}
Com isso você pode ter quantos inimigos quizer e o código é o mesmo. Esse é um outro jeito de usar Parents que pouca gente usa.
Flws

vinians
vinians

Games Ranking : Nota B

Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Reputação : 90
Número de Mensagens : 2716
Prêmios : Duvida muito simples,mas não entra na minha cabeça Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Construct 2
  • Java
  • C#
  • Javascript
  • C ou C++
  • Outros


https://vinians.itch.io

Ir para o topo Ir para baixo

Duvida muito simples,mas não entra na minha cabeça Empty Re: Duvida muito simples,mas não entra na minha cabeça

Mensagem por DiegoBr Dom 12 Fev 2012, 15:53

Vinians você pode me dizer a função do parents? Por que eu quase nunca usei na vida ? ;D
DiegoBr
DiegoBr

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 11/03/2011
Reputação : 2
Número de Mensagens : 156
Prêmios : Duvida muito simples,mas não entra na minha cabeça Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • Java
  • C#
  • Unreal
  • Javascript


https://www.youtube.com/channel/UCbXNlbl7fWz1Lw5F_D4c4Ng

Ir para o topo Ir para baixo

Duvida muito simples,mas não entra na minha cabeça Empty Re: Duvida muito simples,mas não entra na minha cabeça

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo


 
Permissões neste sub-fórum
Não podes responder a tópicos