[Resolvido]Uma melhor opção por favor.

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

[Resolvido]Uma melhor opção por favor.

Mensagem por Limalokão em Sex 13 Jan 2012, 00:46

Olá galerinha, queria saber qual é a melhor opção para esta sugestão: O player compra um pneu de um carro e aquele pneu é o que vai aparecer para sempre até ele comprar um melhor!

1º Guardar em INI? // não acho uma boa ideia
2° Ds_list?
3º Milhoes de variaves?
4º Scripts?

Nesta resposta escolhida como posso fazer? Tenho 4 tipos de pneu uma sub-image para cada pneu =D Att.


Última edição por Soul Limaloko em Sab 14 Jan 2012, 00:40, editado 1 vez(es)

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido]Uma melhor opção por favor.

Mensagem por thundercats em Sex 13 Jan 2012, 00:55


thundercats

Número de Mensagens : 161
Idade : 21
Data de inscrição : 20/09/2011
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://gamemakerhtml5.blogspot.com/p/jogos.html

Voltar ao Topo Ir em baixo

Re: [Resolvido]Uma melhor opção por favor.

Mensagem por Pit Bull em Sex 13 Jan 2012, 00:58

Se o seu jogo tiver salve nada melhor que guardar em arquivos(files ou inis),se você tive conhecimento em ds_list e uma boa opção já que parece ser algum tipo de inventario(foi o que eu achei).
Ds_list é mais organizado que variaveis global*

Pit Bull

Número de Mensagens : 630
Idade : 21
Data de inscrição : 31/08/2010
Reputação : 15
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://leninja.com.br

Voltar ao Topo Ir em baixo

Re: [Resolvido]Uma melhor opção por favor.

Mensagem por Mr.Brum em Sex 13 Jan 2012, 01:01

Use o game_save , que quando ele carregar o jogo, não só os pneus, mas todos os ítens dele estarão guardados.

Mr.Brum

Ranking : Nota C
Número de Mensagens : 913
Idade : 25
Data de inscrição : 28/04/2011
Notas recebidas : D + D + C + C + D + B
Reputação : 41
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://mrbrumgames.blogspot.com/

Voltar ao Topo Ir em baixo

Re: [Resolvido]Uma melhor opção por favor.

Mensagem por Mannoroth em Sex 13 Jan 2012, 01:23

nao precisa de ini nem de list. É simples. Eu ja fiz um joguinho assim. A nave compra motor melhores, escudos cada vez melhores e outras coisas. No teu caso é pneus, entao vou explicar como faz:

Tu cria 4 sprites pneus (spr_pneu1, spr_pneu2, spr_pneu3, spr_pneu4). Aí conforme o pneu que tu tiver atualmente o sprite do obj_pneu vai mudar ne, entao põe no event step:

Código:
if pneu=1 sprite_index=spr_pneu1
if pneu=2 sprite_index=spr_pneu2
if pneu=3 sprite_index=spr_pneu3
if pneu=4 sprite_index=spr_pneu4

Digamos que pra comprar tu tenha que clicar no obj_compra_pneu, tendo q ter no minimo o dinheiro necessario pra comprar (preço do pneu), entao, no event Mouse Left Pressed do obj_compra_pneu bota:
Código:
if pneu=1 and global.dinheiro>=300{ pneu=2;global.dinheiro-=300}
if pneu=2 and global.dinheiro>=600 {pneu=3;global.dinheiro-=600}
if pneu=3 and global.dinheiro>=1200 {pneu=4;global.dinheiro-=1200}

Nesses exemplos, global.dinheiro é a grana q tu tem q ter e o preço do pneu exigido pra poder comprar, e quando compra gasta o dinheiro, claro. Mas e melhor botar as linhas na ordem inversa, pq é arriscado num clique so tu comprar todos os pneus se tiver muito dinheiro, fica assim:
Código:
if pneu=3 and global.dinheiro>=1200 {pneu=4;global.dinheiro-=1200}
if pneu=2 and global.dinheiro>=600 {pneu=3;global.dinheiro-=600}
if pneu=1 and global.dinheiro>=300{ pneu=2;global.dinheiro-=300}

Mannoroth

Ranking : Nota D
Número de Mensagens : 836
Idade : 26
Data de inscrição : 05/10/2010
Notas recebidas : D+D
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido]Uma melhor opção por favor.

Mensagem por Limalokão em Sex 13 Jan 2012, 01:46

Mannoroh Posso ver seu jogo? é exatamente de nave o que quero fazer mas deve ser diferente =D Obrigado.
Meu caso é o seguinte tenho esses 4 sprites prontos, preciso fazer mais ou menos uma vitrine, para o player olhar o pneu e compra-lo ai como será a compra?

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido]Uma melhor opção por favor.

Mensagem por Mannoroth em Sex 13 Jan 2012, 02:41

ve meu jogo, olha o topico dele ai
http://gmbr.forumeiros.com/t11655-projeto-space-ship?highlight=space

edit
...oh nao, nao da pra testar pq o 4shared deletou minha conta em q hospedei o jogo, eu nao sabia q eles deletavam em tao pouco tempo q fiquei sem acessar, perdi muuita coisa;
Eu vo ver se encontro o gmk dele por aqui.
edit
...ih, ta no pen drive msa fica dando erro de recycler, pasta dos projetos virou atalho e nao abre, lol
so se eu programar ele de novo, so leva 1 dia.

Mannoroth

Ranking : Nota D
Número de Mensagens : 836
Idade : 26
Data de inscrição : 05/10/2010
Notas recebidas : D+D
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido]Uma melhor opção por favor.

Mensagem por saim em Sex 13 Jan 2012, 09:57

O que eu faço é parecido com o que o Mannoroth faz, mas eu uso arrays. No create do carro, (nave, barco, o que for), eu inicializo as variáveis em arrays:
Código:
sprPneu[0] = spr_pneu_fraco;
sprPneu[1] = spr_pneu_meiaBoca;
sprPneu[2] = spr_pneu_melhorzinho;
sprPneu[3] = spr_pneu_bonzão;
numero_de_pneus = 3
Uso o mesmo raciocínio pra definir atrito de cada pneu (atrito[i] = ...), resistência (resistência[i] = ...), etc.

Nos eventos apropriados (sempre que possível, evito o step, pra economizar processamento), eu defino uma variável (que pode ser global ou local, dependendo da sua paciência):
Código:
pneu_atual = valor; //valor é um inteiro entre 0 e numero_de_pneus
Esse "evento apropriado" pode ser um evento de compra, o começo do jogo, algum upgrade, downgrade, etc.

Daí eu uso essas arrays ao longo do jogo:
Código:
draw_sprite(sprPneu[pneu_atual], image_index, x, y);
velocidade -= atrito[pneu_atual] * constante;
vida_do_pneu -= pancada - resistência[pneu_atual]
//etc

Esse método tem me servido muito bem na hora de rodar o jogo. Pra gravar, também, você só vai precisar armazenar no arquivo o valor de pneu_atual que, uma vez buscado esse valor, a engine se encarrega de fazer ele ter efeito.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: [Resolvido]Uma melhor opção por favor.

Mensagem por Klior em Sex 13 Jan 2012, 10:41

Eu faria algo muito mais simples.

Tenho 4 tipos de pneu uma sub-image para cada pneu =D Att.
Faria assim:

Opção A:
Create:
pneu = 0;

Draw:
draw_sprite(spr_pneu, pneu, x, y);

Opção B:
Create:
image_speed = 0;
pneu = 0;
sprite_index = spr_pneu;

Step:
image_index = pneu;


A variável pneu guardaria a sub-imagem da sprite spr_pneu, ou seja, caso pneu = 0, mostraria a imagem do pneu "Esportivo", caso pneu = 1, mostraria a imagem do pneu "Careca" assim por diante...

Klior

Número de Mensagens : 426
Idade : 25
Data de inscrição : 07/03/2010
Reputação : 13
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido]Uma melhor opção por favor.

Mensagem por Limalokão em Sab 14 Jan 2012, 00:39

Obrigado galera! =D Entendi agora.

saim seu exemplo é bem complexo né! Apenas para jogos de corrida estilo TopGear2 onde ele desenha quando a parte do carro está ficando ruim =D

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido]Uma melhor opção por favor.

Mensagem por saim em Sab 14 Jan 2012, 11:08

Eu entendi errado, achei que você tinha 4 sprites, não 4 sub-imagens.
Meu exemplo só parece complexo. Na verdade, ele é bem simples, se você quebrar um pouco a cabeça com arrays. Uma vez que você domina arrays, a idéia vem na sua cabeça, querendo ou não.

Bom, como o tópico está resolvido, estou trancando. Se quiser reabrir o tópico, mande uma mensagem para a moderação.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: [Resolvido]Uma melhor opção por favor.

Mensagem por Conteúdo patrocinado Hoje à(s) 08:10


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum