Conectar-se
Quem está conectado
21 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 20 Visitantes

CRP-Max

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 10/04/2012
Número de Mensagens : 63
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.ihebhost.com.br

[Resolvido]Como usar SPRITE comprado em uma loja do game?

em Qua 05 Fev 2014, 22:23
Peguei uma egine pra aprender a criar uma loja de armas e itens no meu game.
A Engine é de uma bolinha branca que não possui animação, então vc pode compra um bolinha vermelha ou azul e a bolinha inicial muda para qual vc comprou.
Até aí tudo bem simples de se entender com a engine.

O meu problema é adaptar isso ao meu personagem que possui animações.
Tenho sprite dele parado e andando e isso ta embarreirando porque:
Se pressionar tecla para andar o personagem muda para o sprite spr_player_andando
Se não estiver pressionando para andar o sprite muda para spr_player_parado

Então se eu comprar por exemplo uma arma (darei o nome de M4) o meu personagem teria que mudar para o sprite com a M4
Criei o sprite M4 andando e parado, mas ao comprar e me movimentar no game o sprite volta ao padrão spr_player_andando ou parado

Ai eu queria saber se alguém possui algo que possa me passar para estudos?

agradeço!


Última edição por loganout em Sab 08 Fev 2014, 02:33, editado 1 vez(es)
avatar
Data de inscrição : 19/09/2013
Número de Mensagens : 190
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 22
Ver perfil do usuário

Re: [Resolvido]Como usar SPRITE comprado em uma loja do game?

em Qua 05 Fev 2014, 22:47
Você pode usar o draw, utilizada o draw_sprite_ext para desenhar o player e também a arma ou items.
é mais fácil por que não vai precisar usar um monte de sprite para cada item.

Para trocar utiliza uma variavel para verificar se ta com qual item.

tipo:
Código:

if item = 0
{
//anda sem nada
}

if item = 1
{
//anda sem com a bolinha azul
}
etc...
flw
avatar
Ranking : Nota C
Notas recebidas : B+C
Data de inscrição : 15/05/2012
Número de Mensagens : 666
Insígnias de JAM :

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

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

Re: [Resolvido]Como usar SPRITE comprado em uma loja do game?

em Qui 06 Fev 2014, 09:20
Primeiro crie uma variavel chamada arma e outra andando.
A arma M1 e quando tá sem arma nenhuma;

Então no create:

Código:
andando = false
arma = "M1"

Ai no step:

Código:
if keyboard_check(vk_right) or keyboard_check(vk_left) andando = true
if keyboard_check_released(vk_right) or keyboard_check_released(vk_left) andando = false

if andando{
    if arma == "M1"{
        sprite_index = spr_player_andando
    }
    if arma == "M4"{
        sprite_index = spr_player_andando_m4
    }
}else{
    if arma == "M1"{
        sprite_index = spr_player_parado
    }
    if arma == "M4"{
        sprite_index = spr_player_parado_m4
    }
}

Você tem que fazer uma rotina para quando ele comprar a arma mudar para:

Código:
arma = "M4"
avatar
Data de inscrição : 10/04/2012
Número de Mensagens : 63
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.ihebhost.com.br

Re: [Resolvido]Como usar SPRITE comprado em uma loja do game?

em Qui 06 Fev 2014, 23:22
chicoweb escreveu:
Você tem que fazer uma rotina para quando ele comprar a arma mudar para:

Código:
arma = "M4"

A loja que estou usando não está mudando para o sprite correto, na verdade não muda pra nenhum, o que pode ser ?.

Controlador - Create
Código:

global.energia=0 //Contador de energia (dinheiro do game)
global.imagem=spr_player_1 //Essa variável define a image_index do obj_player
Controlador Draw
Código:

draw_text(10,10,"Energia: "+string(global.energia)) //Desenha o texto na tela
Item 1 - Create
Código:

valor=50 //Preço
Mouse Left Button
Código:

if global.energia>=valor and global.imagem !=spr_player_2 //Se a variável global.energia ser igual ou maior que o preço da arma E a variável global.imagem ser DIFERENTE da que tu vai comprar
{
global.imagem = spr_player_2 //Pra mudar a imagem do obj_player
global.energia-=valor //Para diminuir energia depois de comprado
}
Draw
Código:

draw_sprite(sprite_index,image_index,x,y) //Desenha a imagem escolhida do objeto
draw_sprite(spr_player_1,1,x+48,y+240) //Desenha a imagem da arma que vai comprar

draw_text(x+10,y+85,"Valor: "+string(valor)) //Desenha o texto
avatar
Data de inscrição : 19/09/2013
Número de Mensagens : 190
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 22
Ver perfil do usuário

Re: [Resolvido]Como usar SPRITE comprado em uma loja do game?

em Qui 06 Fev 2014, 23:31
Código:
draw_sprite(sprite_index,image_index,x,y) //Desenha a imagem escolhida do objeto

Ta ai o por que de não mudar
Código:

global.imagem = spr_player_2 //Pra mudar a imagem do obj_player
Tem que por a variavel:
Código:

draw_sprite(global.imagem,image_index,x,y) //Desenha a imagem escolhida do objeto
avatar
Data de inscrição : 10/04/2012
Número de Mensagens : 63
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.ihebhost.com.br

Re: [Resolvido]Como usar SPRITE comprado em uma loja do game?

em Sex 07 Fev 2014, 14:04
Consegui fazer de um outro jeito.
Quando estou na loja e compro a M4, coloquei para mostrar no topo da Room em game a arma comprada e quanta munição ela tem.

Agora me tire um dúvida...

O que eu teria que criar para que, ao clicar com o botão esquerdo nesse sprite da M4 desenhado no top da tela, faça com que meu personagem troque para o sprite da arma?

Informo que, na loja terei no mínimo uns 10 modelos de armas e itens especiais e o player só poderá comprar no máximo 4 itens no total de armas e itens especiais, assim tendo que vender um para adquirir um novo.
Então o que vou criar para usar o item, precisa identificar também o item que está ali no momento. Mas essa lógica não estou conseguindo captar !
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