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
» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18

» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30

» Como ajustar velocidade de cada frame da animação no game maker
por Ralphed Qui 18 Abr 2024, 18:28

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39


Ajuda em Script ... !!!

Ir para baixo

Ajuda em Script ... !!! Empty Ajuda em Script ... !!!

Mensagem por kelvindeth Qui 29 Abr 2010, 10:13

OBS: Aew galera, consegui fazer funcionar o Script, deu certinho pra subir rampas com animação, fiz umas gambiarras aqui xD, eu Vou preparar uma engine e dou Edit nesse tópico.. Vlw Happy
Peço pra que se possível, alguem apague o tópico para evitar tumulto.


Quem Quiser conferir a engine como prometido aqui está: http://www.gamemakerbrasil.com/engines-f12/engine-de-subir-rampas-disponibilizando-t7514.htm


Aew. galera.

Preciso de uma ajuda nesse script: (Subindo rampas)

No evento Step de meu personagem:

Código:
//DEFINIÇÕES DE GRAVIDADE
if place_free(x,y+1)
{
gravity = 0.75
}
else
{
gravity = 0
}     


if keyboard_check(ord("F"))
{
  alarm[1] = 50
}

                                                                    // CONDIÇÕES \\
 
                                                                                                                                                                                               
// PARADO:
if parado = true and direita = true and abaixado = false and atacando = false and puloabaixado = false and pulo = false
{
  sprite_index = SPRM_Parado_Direita
  hspeed = 0
  friction = 0

if parado = true and direita = false and abaixado = false and atacando = false and puloabaixado = false and pulo = false
{
  sprite_index = SPRM_Parado_Esquerda
  hspeed = 0
  friction = 0
}                 

// ANDANDO:
if parado = false and direita = true and andando = true and puloabaixado = false
{
  image_speed = 0.3
  sprite_index = SPRM_Andando_Direita
  x += 3
}
if parado = false and direita = false and andando = true and puloabaixado = false
{
  image_speed = 0.3
  sprite_index = SPRM_Andando_Esquerda
  x -= 3


// ABAIXANDO:
if parado = true and direita = true and abaixado = true and atacando = false and puloabaixado = false and pulo = false
{
  sprite_index = SPRM_Abaixado_Direita
  friction += 0.05
}
if parado = true and direita = false and abaixado = true and atacando = false and puloabaixado = false and pulo = false
{
  sprite_index = SPRM_Abaixado_Esquerda
  friction += 0.05
}

// Pulo Abaixado:
if parado = true and direita = true and chao = true and abaixado = true and keyboard_check_pressed(ord("A")) and puloabaixado = false and pulo = false
{
  image_speed = 0.3
  alarm[0] = 20
  puloabaixado = true
  sprite_index = SPRM_Pulo_Abaixado_Direita
  hspeed += 10
}
if parado = true and direita = false and chao = true and abaixado = true and keyboard_check_pressed(ord("A")) and puloabaixado = false and pulo = false
{
  image_speed = 0.3
  alarm[0] = 20
  puloabaixado = true
  sprite_index = SPRM_Pulo_Abaixado_Esquerda
  hspeed -= 10
}




                                                                    // AÇÕES \\
                                                                   
// ANDANDO:
if keyboard_check(vk_right) and not keyboard_check(vk_left) and not keyboard_check(ord("A"))
{
  parado = false
  direita = true
  andando = true
}
if keyboard_check(vk_left) and not keyboard_check(vk_right) and not keyboard_check(ord("A"))
{
  parado = false
  direita = false
  andando = true
}     
//Parando a ação \\
if keyboard_check_released(vk_right) and direita = true
{
  parado = true
  direita = true
  andando = false
}       
if keyboard_check_released(vk_left) and direita = false
{
  parado = true
  direita = false
  andando = false
}   

// ABAIXANDO:
if keyboard_check(vk_down) and direita = true and chao = true
{
  parado = true
  direita = true 
  abaixado = true

if keyboard_check(vk_down) and direita = false and chao = true
{
  parado = true
  direita = false 
  abaixado = true
}   
// PARANDO A AÇÃO \\
if keyboard_check_released(vk_down) and direita = true
{
  parado = true
  direita = true
  abaixado = false

if keyboard_check_released(vk_down) and direita = false
{
  parado = true
  direita = false
  abaixado = false


// Atacando:
if keyboard_check_pressed(ord("A")) and direita = true and abaixado = false and chao = true
{
  friction = 0.05
  atacando = true
  andando = false
  image_speed = 0.5
  parado = true
  sprite_index = SPRM_Atacando_Direita
  alarm[0] = 10
}
if keyboard_check_pressed(ord("A")) and direita = false and abaixado = false and chao = true
{
  friction = 0.05
  atacando = true
  image_speed = 0.5
  andando = false
  parado = true
  sprite_index = SPRM_Atacando_Esquerda
  alarm[0] = 10
}

// Pulando:
if keyboard_check_pressed(vk_up) and direita = true and chao = true and not keyboard_check(vk_down)
{
  chao = false
  pulo = true
  vspeed -= 10
}
if keyboard_check_pressed(vk_up) and direita = false and chao = true and not keyboard_check(vk_down)
{
  chao = false
  pulo = true
  vspeed -= 10
}

// Animação Pulando:
if direita = true and chao = false and pulo = true
{
  image_speed = 1.0
  sprite_index = SPRM_Pulando_Direita
}
if direita = false and chao = false and pulo = true
{
  image_speed = 1.0
  sprite_index = SPRM_Pulando_Esquerda
}                                                                                                                             

Na colisão com o OBJ_Chao:

Código:
pulo = false
chao = true
puloabaixado = false
// Encaixar no bloco
if !(vspeed < 0)
{
    move_contact_solid(270,32);
    if (hspeed > 0) {if !(place_free(x+velocidade,y+1)) vspeed = 0; hspeed = 0;}
    else if (hspeed < 0) {if !(place_free(x-velocidade,y+1)) vspeed = 0; hspeed = 0;}
    else if (hspeed = 0) {if !(place_free(x,y+1)) vspeed = 0;}
}
else
{
    move_contact_solid(90,32);
    vspeed = 0;
}

E colisão no Obj_Rampa:

Código:
vspeed=0

E para a direita:

Código:
if place_free(x+4,y){
x+=4
}
   
if place_meeting(x+5,y+5,OBJ_Rampa)&& place_free(x+5,y-5){
 x+=5 y-=5
}

Eu uso esses scripts para subir rampas, porem:

Se no evento step na linha que diz para andar para a direita, que muda a sprite e tals tiver ativo, ele não sobe a rampa, porem se eu desativa-lo, ele sobe mais sem a animação.

Tem uma dica de como eu possa "juntar" esses scripts ?

Vlw galera...


Última edição por kelvindeth em Qui 29 Abr 2010, 11:08, editado 2 vez(es) (Motivo da edição : Problema resolvido)
kelvindeth
kelvindeth

Data de inscrição : 14/05/2009
Reputação : 1
Número de Mensagens : 135
Prêmios : Ajuda em Script ... !!! 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

Ir para o topo

- Tópicos semelhantes

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