Conectar-se
Quem está conectado
31 usuários online :: 3 usuários cadastrados, Nenhum Invisível e 28 Visitantes

gart30, Katerp, Willy

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 20/11/2009
Número de Mensagens : 82
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Ver perfil do usuáriohttp://mascotegames.blogspot.com

Como fazer um item que recupere energia sem varar o limite máximo da energia?

em Qua 02 Dez 2009, 00:51
Explicação:
Pessoal, no meu jogo eu utilizo a barra de life do Game Maker e a mesma possui 100 pontos como limite máximo. Se eu perder energia eu perco 20 pontos. Obviamente, levando 5 danos a barra de energia zera e eu perco, mas se eu levar apenas 4 danos, eu fico com apenas 20 de energia.
Problema:
Eu criei um objeto que adiciona 100 de energia ao personagem. O meu objetivo era criar um objeto apenas para encher o life todo, mas quando o personagem pega o objeto, ao invés de encher o life, o objeto adiciona 100 pontos ao life. Como o life tem 100 pontos, se eu tiver com 40 pontos de life e pegar esse objeto, eu ficarei com 140 de life. Sendo que a barra mostra até 100 pontos de life, o personagem terá que levar 4 danos para o life voltar ao normal e começar a diminuir.
O que eu quero
Criar/consertar esse objeto para que, quando o herói o pegue, apenas encha o life inteiro, sem adicionar ao life os pontos restantes.

Abraços pessoal!
avatar
Data de inscrição : 11/08/2009
Número de Mensagens : 213
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Ver perfil do usuário

Re: Como fazer um item que recupere energia sem varar o limite máximo da energia?

em Qua 02 Dez 2009, 00:54
Coloca no step:

Código:
if life>=100 then
  {life=100}

Espero ter ajudado ;)

Goodbye Happy
avatar
Data de inscrição : 20/11/2009
Número de Mensagens : 82
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Ver perfil do usuáriohttp://mascotegames.blogspot.com

Re: Como fazer um item que recupere energia sem varar o limite máximo da energia?

em Qua 02 Dez 2009, 01:07
Amigo, deu o seguinte erro:

"FATAL ERROR in
action number 1
of Step Event
for object obj_life:
COMPILATION ERROR in code action
Error in code at line 2:
{life=100}
at position 23: Variable name expected."

OBS: Eu coloquei o código no objeto que adiciona 100 pontos ao life, era isso?
Obrigado pela ajuda Very Happy
avatar
Data de inscrição : 12/04/2009
Número de Mensagens : 190
Insígnias de JAM :

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

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

Re: Como fazer um item que recupere energia sem varar o limite máximo da energia?

em Qua 02 Dez 2009, 01:40
se você colocou em outro objeto pra variável funcionar ela tem q ser global tipo assim
global.life
mais você teria q trocar todar as variaveis e eu acho q ainda n ia da certo

oq poderia dar certo era fazer o sequinte:
quando o objeto q ta com a variavel "life" colider com o "objeto q ganha life" ter o codigo
Código:

life = 100
independente da quantidade de life q o objeto esteja quando ele colidir com o "objeto q ganha life" o life dele vai pra 100
avatar
Data de inscrição : 20/11/2009
Número de Mensagens : 82
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Ver perfil do usuáriohttp://mascotegames.blogspot.com

Re: Como fazer um item que recupere energia sem varar o limite máximo da energia?

em Qua 02 Dez 2009, 02:18
lucas_SK8, a sua idéia faz sentido, porém, ainda está dando erro. Olha o que aconteceu:

FATAL ERROR in
action number 2
of Collision Event with object obj_heroi
for object obj_life:

COMPILATION ERROR in code action
Error in code at line 1:
life = 100

at position 6: Variable name expected.

Obrigado pela ajuda.
O que será que está acontecendo? O erro parece semelhante ao anterior.
avatar
Data de inscrição : 12/04/2009
Número de Mensagens : 190
Insígnias de JAM :

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

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

Re: Como fazer um item que recupere energia sem varar o limite máximo da energia?

em Qua 02 Dez 2009, 02:46
o erro é o mesmo a variavel não funciona para o player, só funciona para a barra de vida por q a variavel n é global

tem um jeito de consertar isso mais terria q mudar muitos codigos

se poder mandar um exemplo do seu problema ajuda muito
avatar
Data de inscrição : 20/11/2009
Número de Mensagens : 82
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Ver perfil do usuáriohttp://mascotegames.blogspot.com

Re: Como fazer um item que recupere energia sem varar o limite máximo da energia?

em Qua 02 Dez 2009, 11:04
upar uma amostra do meu projeto agora será complicado porque eu estou sem internet em casa e aqui na empresa o servidor não deixa upar nada pra fora da empresa Razz
===
Mas o meu problema é básico:
Eu preciso fazer meu personagem pegar um objeto para a energia dele encher, mas ao invés de apenas encher o life, está varando o limite máximo permitido do life.
===
Eu vou tentar explicar aqui o que eu fiz:

obj_barradevida
(É o objeto que fica fixo em cima da tela mostrando o life do personagem)
Add Event -> No More Health ->
- Destroy The Instance (Para destruir o personagem principal)
- Display A Message (Aparece escrito "Game Over" na tela)
- Go To Room Highscore (Teleporta o herói para a tela de Highscores)

obj_heroi
(É o personagem no qual jogamos com ele)
Add Event -> Colision (obj_life) -> Execute code "(with (other) instance_destroy();" Para o obj_life ser destruído ao colidir com o herói.

obj_life
Add Event -> Colision (obj_heroi) -> Set The Health Relative To 100 (Para encher o life do personagem, é aqui que está o problema, pois está acrescentando 100 pontos ao life ao invés de encher o life)
avatar
Data de inscrição : 11/08/2009
Número de Mensagens : 213
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Ver perfil do usuário

Re: Como fazer um item que recupere energia sem varar o limite máximo da energia?

em Qua 02 Dez 2009, 11:45
Tente isso no step do obj_heroi:
Código:
if health>=100 then
  {health=100}

Goodbye Happy
Data de inscrição : 29/05/2009
Número de Mensagens : 351
Insígnias de JAM :

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

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

Re: Como fazer um item que recupere energia sem varar o limite máximo da energia?

em Qua 02 Dez 2009, 11:50
@Viper7 escreveu:upar uma amostra do meu projeto agora será complicado porque eu estou sem internet em casa e aqui na empresa o servidor não deixa upar nada pra fora da empresa Razz
===
Mas o meu problema é básico:
Eu preciso fazer meu personagem pegar um objeto para a energia dele encher, mas ao invés de apenas encher o life, está varando o limite máximo permitido do life.
===
Eu vou tentar explicar aqui o que eu fiz:

obj_barradevida
(É o objeto que fica fixo em cima da tela mostrando o life do personagem)
Add Event -> No More Health ->
- Destroy The Instance (Para destruir o personagem principal)
- Display A Message (Aparece escrito "Game Over" na tela)
- Go To Room Highscore (Teleporta o herói para a tela de Highscores)

obj_heroi
(É o personagem no qual jogamos com ele)
Add Event -> Colision (obj_life) -> Execute code "(with (other) instance_destroy();" Para o obj_life ser destruído ao colidir com o herói.

obj_life
Add Event -> Colision (obj_heroi) -> Set The Health Relative To 100 (Para encher o life do personagem, é aqui que está o problema, pois está acrescentando 100 pontos ao life ao invés de encher o life)
no obj_life vc colocou 'Set The Health Relative To 100'
coloca só Set The Health To 100
desmarca a opçao relative
avatar
Data de inscrição : 20/11/2009
Número de Mensagens : 82
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Ver perfil do usuáriohttp://mascotegames.blogspot.com

Re: Como fazer um item que recupere energia sem varar o limite máximo da energia?

em Qua 02 Dez 2009, 11:53
@Naut2006 escreveu:Tente isso no step do obj_heroi:
Código:
if health>=100 then
  {health=100}

Goodbye Happy

Consegui!!! cheers
Obrigado Naut2006!!!
Obrigado pela ajuda também dungeon333, mas o código do Naut2006 funcionou.
avatar
Data de inscrição : 11/08/2009
Número de Mensagens : 213
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Ver perfil do usuário

Re: Como fazer um item que recupere energia sem varar o limite máximo da energia?

em Qua 02 Dez 2009, 12:31
Só explicando o erro:

Health é uma variável "automática" do Game Maker. Mas life não. Veja que a única diferença dos códigos é que eu troquei life por health. Para que aquele código funcionasse, você teria que usar sempre life =D

Goodbye Happy
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