Conectar-se
Quem está conectado
33 usuários online :: 4 usuários cadastrados, Nenhum Invisível e 29 Visitantes

gart30, Koelho, Tedi Ripper, Willy

Ver toda a lista


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

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

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

Como abrir uma imagem direto do computador no Game Maker?

em Qua 21 Set 2011, 15:24
FALAAAAEEE GALERA, VOLTEI! E já voltei com uma dúvida... existe algum comando que faça substituir a sprite de um objeto para a imagem escolhida, sendo que reduzindo a imagem escolhida para 121x220 ?

FLWWW! Cool Cool Cool Cool
avatar
Data de inscrição : 26/09/2008
Número de Mensagens : 890
Insígnias de JAM :

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

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

Re: Como abrir uma imagem direto do computador no Game Maker?

em Qua 21 Set 2011, 19:24
Supondo que com "imagem escolhida" você quis dizer uma imagem que o player carrega do computador.

Se com "substituir" você quer dizer jogar fora o sprite anterior, fazendo desaparecer por completo, e colocar no lugar um novo, existe a função sprite_replace(), que substitui um sprite já existente por outro carregado de um arquivo. Se você quer que o sprite anterior continue vivo, pode usar sprite_add().
Entretanto, essas funções não permitem que você redimensione a imagem antes de torná-la um sprite (como você disse, reduzindo para 121x220).

Para não complicar, em vez de redimensionar a imagem e então criar o sprite, você pode criar o sprite, seja lá qual for seu tamanho e, na hora de desenhar, utilizar image_xscale e image_yscale para redimensionar para o tamanho que você quer (a fórmula para o x e y scale seria
(tam_desejado/tam_original) - tam_desejado seria o 121 e o 220, e tam_original seria o valor retornado por sprite_get_width() e sprite_get_height()).

Se você fizer questão de que o sprite criado já esteja redimensionado, não quiser fazer isso usando image scale, complica um pouco.

Obs.: Para saber como funcionam as funções citadas, consulte o Help do GM.
avatar
Ranking : Nota A
Notas recebidas : B A
Data de inscrição : 20/12/2008
Número de Mensagens : 2516
Insígnias de JAM :

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

Prêmios
   : 2
   : 1
   : 1
Ver perfil do usuáriohttp://redscreensoft.blogspot.com

Re: Como abrir uma imagem direto do computador no Game Maker?

em Qua 21 Set 2011, 19:47
(Igor, sempre rápido no gatilho)

Siga os passos:


1 - Para abrir a imagem use get_open_filename (Procure no help do GM e se necessário traduza no google), essa função retorna um valor. Então se quiser armazenar a sprite numa variável faça assim:
Código:
minha_sprite=get_open_filename(....)
2 - Caso o jogador clique cancelar o valor -1 (significa nada) vai ser retornado para a função, então se quando usar a sprite use:
Código:
if sprite_exists(minha_sprite) {sprite_index=minha_sprite}
Ou seja se a sprite não existir não a usa.

3 - Para reduzi-la use a regra de três com image_xscale e image_yscale. Lembrando que 1 é 100% da sprite. Na regra de 3 coloque o tamanho da sprite como sendo 1 e 121 como sendo x. Ou simplesmente use draw_sprite_stretched.

Lembre-se de pesquisar. Qualquer coisa "tamo ae".

FLWS!
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