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
» player não consegue andar
por lovn7 Qui 21 Nov 2024, 13:33

» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22

» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31

» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23

» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49

» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58

» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36

» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36

» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33

» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51

» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28

» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18

» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08

» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10

» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16

» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40

» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01

» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45

» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34

» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28

» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48

» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54

» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14

» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50


Tutorial de gravidade e movimento em rampas

5 participantes

Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Tutorial de gravidade e movimento em rampas

Mensagem por Isaque Onix Qua 10 Set 2014, 20:48

Título: Tutorial de gravidade  e movimento em rampas
--------------------- Versão do GM: Todas! ---------------------
--------------------- Dificuldade: Fácil ---------------------
--------------------- Requer Extensões: Não ---------------------
--------------------- Requer DLLs: Não ---------------------
----------------- Tags: Gravidade, scripts, platform, plataforma-----------------

--------------------- Tutorial Gravidade---------------------
Bom, nesse tutorial irei lhes ensinar a fazer seu próprio sistema de gravidade por scripts.
ATENÇÃO: Vou ensinar no modo physics do Game Maker Studio, mais para usar o ensinado deste tutorial sem o mesmo, basta alterar as variáveis phy_position_x e phy_position_y do script para x e y.

bom, primeiramente, crie uma room e ligue o physics com as seguintes informações:

Gravity X=0.0 Y=0.0
pixels to meters=0.100

em seguida crie um script, vamos chama-lo de gravity_init
nesse script, adicione a variavel gspeed com o valor 0 e a variavel no_chao com o valor false.
Intenda:

em seguida, vamos ao movimento da gravidade.
crie um novo script, e chamaremos esse de gravity_set. Este script e um pouco mais complexo, mais vou tentar deixar bem explicado.

Ai vai o script: (vou explicar as variaveis e funçoes logo abaixo do script!)

Código:
gravity_speed=argument0
gravity_direction_=argument1
if(gravity_speed=0){gspeed=0}//se a aumento de velocidade de queda for 0, a velocidade de queda sera 0 também.
if(place_free(phy_position_x,phy_position_y+gspeed+1)){//se o espaço estiver aberto para o carácter cair
gspeed+=gravity_speed //a velocidade de queda aumenta
phy_position_x+=lengthdir_x(gspeed,gravity_direction_)//o objeto se move
phy_position_y+=lengthdir_y(gspeed,gravity_direction_)//o objeto se move
 no_chao=false//ele não esta no chão
}else{//se não.
gspeed=0 vspeed=0 //ambas as velocidades de queda sao zeradas. (para evitar erro coloquei o vspeed)
if(!place_free(phy_position_x,phy_position_y+1)){no_chao=true}}//se o espaço NÃO estiver aberto para o caracter cair, ele esta no chão
Intenda:

e Pronto, para usar o sistema basta:

No Evento Create:
Código:
gravity_init()

No Evento Step:
Código:
gravity_set(1,270)

------------------ Movimento com Rampas------------------
Script:(Parte das variáveis desse script já foi explicada acima, vou explicar só oque não foi ainda.)
Código:
if(argument1>90){set=-1}//se a direçao do movimento for maior que 90, a variavel set sera igual a -1
if(argument1<90){set=+1}//se a direçao do movimento for menor que 90, a variavel set sera igual a +1

xl=lengthdir_x(argument0,argument1)//armazena o lenghtdir_x para usar em seguida
yl=lengthdir_y(argument0,argument1)//armazena o lenghtdir_y para usar em seguida

_exit=false i=0//zera as variaveis para nao aver erros
while(_exit=false){//enquento a variavel _exit for falsa
if(place_free(phy_position_x+xl,phy_position_y+yl-abs(i*set))){//se o espaço estiver aberto
phy_position_y+=yl-abs(i*set) _exit=true//diminui a posiçao y (sobe) e sai dessa checagem
}else{
if(i<25){i+=1}else{_exit=true}//se a variavel i for <25 vai almentando, se nao, sai dessa checagem.
}}
if(place_free(phy_position_x+xl,phy_position_y+yl)){phy_position_x+=xl phy_position_y+=yl}//se o espaço estiver aberto, se move

Intenda:

Bom, e isso.
Peço que em caso de erros e duvidas comentem!!!
Isaque Onix
Isaque Onix

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 15/08/2010
Reputação : 147
Número de Mensagens : 1626
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • C#
  • Outros


http://spyreserver.16mb.com

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Lucas Farias Sáb 08 Nov 2014, 16:17

eu alterei as variáveis phy_position_x e phy_position_y do script para x e y. nervoso
e aparece essa mensagem na tela
era pra criar no "obj do play??" scratch

Lucas Farias
Lucas Farias

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 01/08/2014
Reputação : 9
Número de Mensagens : 35
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 1

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

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Isaque Onix Ter 11 Nov 2014, 01:23

olá meu caro, você criou os scripts corretamente? de acordo com o tuto?
se acha que não, aqui estão eles:

Código:
//NOME: gravity_init()
gspeed=0
no_chao=false

Código:
//NOME: gravity_set(1,270)
gravity_speed=argument0
gravity_direction_=argument1
if(gravity_speed=0){gspeed=0}//se a aumento de velocidade de queda for 0, a velocidade de queda sera 0 também.
if(place_free(phy_position_x,phy_position_y+gspeed+1)){//se o espaço estiver aberto para o carácter cair
gspeed+=gravity_speed //a velocidade de queda aumenta
phy_position_x+=lengthdir_x(gspeed,gravity_direction_)//o objeto se move
phy_position_y+=lengthdir_y(gspeed,gravity_direction_)//o objeto se move
 no_chao=false//ele não esta no chão
}else{//se não.
gspeed=0 vspeed=0 //ambas as velocidades de queda sao zeradas. (para evitar erro coloquei o vspeed)
if(!place_free(phy_position_x,phy_position_y+1)){no_chao=true}}//se o espaço NÃO estiver aberto para o caracter cair, ele esta no chão
o objeto que usar estes scripts devem estar na room, coloque objetos sólidos para ver a funcionalidade.
Isaque Onix
Isaque Onix

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 15/08/2010
Reputação : 147
Número de Mensagens : 1626
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • C#
  • Outros


http://spyreserver.16mb.com

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por AlexBosquin Qua 19 Nov 2014, 12:27

isaque eu gostei muito do seu codigo de gravidade pois é bem simples de se entender o conceito, mas eu achei um probleminha não sei se é proposital mas quando o objeto cai de uma altura muito grande ele meio que da uma quicadinha, tem como resolver isto?

Por hora já te dou os parabéns por ter tido o trabalho da criação do codigo s2 ;D
AlexBosquin
AlexBosquin

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 10/07/2012
Reputação : 35
Número de Mensagens : 621
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

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

http://www.craftstudios.com.br

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Isaque Onix Qui 20 Nov 2014, 00:10

então meu caro, eu criei estes outros scripts:

create:
Código:
gspeed=0
xspeed=8
step:
Código:
if(place_free(x+lengthdir_x(gspeed+1,270),y+lengthdir_y(gspeed+1,270))){
gspeed+=1
x+=lengthdir_x(gspeed,270)
y+=lengthdir_y(gspeed,270)}else{
D=point_direction(x,y,x+lengthdir_x(gspeed+1,270),y+lengthdir_y(gspeed+1,270))
move_contact_solid(D,gspeed)
gspeed=0}

if(keyboard_check(ord('W')) && !place_free(x,y+gspeed+1)){gspeed=-16}
if(keyboard_check(ord('A'))){repeat(xspeed){if(place_free(x-1,y)){x-=1}}}
if(keyboard_check(ord('D'))){repeat(xspeed){if(place_free(x+1,y)){x+=1}}}

acho que da certo =)
Isaque Onix
Isaque Onix

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 15/08/2010
Reputação : 147
Número de Mensagens : 1626
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • C#
  • Outros


http://spyreserver.16mb.com

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por theguitarmester Qui 20 Nov 2014, 08:36

Duas coisas:


::errado::   ::certo::
  intenda   - entenda




Percebo que para fazer seu código funcionar, é preciso definir o objeto como solid:
Código:
D=point_direction(x,y,x+lengthdir_x(gspeed+1,270),y+lengthdir_y(gspeed+1,270))
move_contact_solid(D,gspeed)

E ao meu ver o solid é uma função bem ruim de se usar, porque ele é uma função embutida que limita muito o seu controle pelo os objetos.
Exemplo: tente fazer uma plataforma fantasma usando o solid.



Do mais, acredito que este tutorial/scripts pode ter no fim do tópico, uma engine com o que foi feito/mostrado.
theguitarmester
theguitarmester

Games Ranking : Nota C

Notas recebidas : B + C
Data de inscrição : 28/02/2012
Reputação : 139
Número de Mensagens : 2211
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 2 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Plataformas :
  • Unity


http://guitarmester.no.comunidades.net/index.php?pagina=19362978

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Isaque Onix Qui 20 Nov 2014, 13:44

theguitarmester escreveu:Duas coisas:


::errado::   ::certo::
  intenda   - entenda


Mania... mais acho que não atrapalha tanto quanto parece...



theguitarmester escreveu:

Percebo que para fazer seu código funcionar, é preciso definir o objeto como solid:
Código:
D=point_direction(x,y,x+lengthdir_x(gspeed+1,270),y+lengthdir_y(gspeed+1,270))
move_contact_solid(D,gspeed)

E ao meu ver o solid é uma função bem ruim de se usar, porque ele é uma função embutida que limita muito o seu controle pelo os objetos.
Exemplo: tente fazer uma plataforma fantasma usando o solid.

meu caro, não me leve a mal, mais o solid é uma função muito util, e ajuda mais ainda a obter controle sobre os objetos... a final, a função não seria criada e testada atoa né tongue  mais... desafio aceito!

ENGINE

a engine contem:

2 sprites: um branco e um preto...
6 objetos:
object0: seria o player, as funções que coloquei aqui estão nele.
Solid_fixed: o objeto solido sem ação.
Solid_Fantasma: plataforma fantasma.
Solid_moving_h: plataforma móvel horizontal.
Solid_moving_v: plataforma móvel vertical.
Solid_fall: plataforma que "cai" quando o player passa.

theguitarmester escreveu:
Do mais, acredito que este tutorial/scripts pode ter no fim do tópico, uma engine com o que foi feito/mostrado.
FEITO. té mais... feliz2

INTENDA hehehe

[edit]
e da pra mudar o move_contact_solid para move_contact_all ou até mesmo tirar este codigo, ele é para evitar que o personagem de aquele pulinho ao cair...
Isaque Onix
Isaque Onix

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 15/08/2010
Reputação : 147
Número de Mensagens : 1626
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • C#
  • Outros


http://spyreserver.16mb.com

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Riccardoric Qua 10 Dez 2014, 18:17

Isaque se a gravity_speed e gravity_direction não existe no gms, ou melhor, não são padrão, como que eu vou fazer? Se eu to trabalhando no gms? Vou ter que criar a variavel e dar a função? To confuso scratch
Riccardoric
Riccardoric

Data de inscrição : 17/06/2014
Reputação : 34
Número de Mensagens : 206
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Isaque Onix Qua 10 Dez 2014, 19:19

Riccardoric escreveu:Isaque se a gravity_speed e gravity_direction não existe no gms, ou melhor, não são padrão, como que eu vou fazer? Se eu to trabalhando no gms? Vou ter que criar a variavel e dar a função? To confuso scratch

meu amigo, estou sem tempo pra testar, mais tente o outro codigo.
Isaque Onix
Isaque Onix

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 15/08/2010
Reputação : 147
Número de Mensagens : 1626
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • C#
  • Outros


http://spyreserver.16mb.com

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Riccardoric Qua 10 Dez 2014, 20:35

"------------------ Movimento com Rampas------------------
Script:(Parte das variáveis desse script já foi explicada acima, vou explicar só oque não foi ainda.)
CÓDIGO:
if(argument1>90){set=-1}//se a direçao do movimento for maior que 90, a variavel set sera igual a -1
if(argument1<90){set=+1}//se a direçao do movimento for menor que 90, a variavel set sera igual a +1

xl=lengthdir_x(argument0,argument1)//armazena o lenghtdir_x para usar em seguida
yl=lengthdir_y(argument0,argument1)//armazena o lenghtdir_y para usar em seguida

_exit=false i=0//zera as variaveis para nao aver erros
while(_exit=false){//enquento a variavel _exit for falsa
if(place_free(phy_position_x+xl,phy_position_y+yl-abs(i*set))){//se o espaço estiver aberto
phy_position_y+=yl-abs(i*set) _exit=true//diminui a posiçao y (sobe) e sai dessa checagem
}else{
if(i<25){i+=1}else{_exit=true}//se a variavel i for <25 vai almentando, se nao, sai dessa checagem.
}}
if(place_free(phy_position_x+xl,phy_position_y+yl)){phy_position_x+=xl phy_position_y+=yl}//se o espaço estiver aberto, se move "
Esse ? se for esse n precisa do primeiro?
Riccardoric
Riccardoric

Data de inscrição : 17/06/2014
Reputação : 34
Número de Mensagens : 206
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Isaque Onix Qua 10 Dez 2014, 20:41

este codigo ae não precisa daquelas variaveis, aquelas são para o sistema de gravidade.
pra usar este codigo ae é só criar o script e colocar os argumentos.
Isaque Onix
Isaque Onix

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 15/08/2010
Reputação : 147
Número de Mensagens : 1626
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • C#
  • Outros


http://spyreserver.16mb.com

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Riccardoric Qua 10 Dez 2014, 20:44

Ah ta entendi, vlw
Riccardoric
Riccardoric

Data de inscrição : 17/06/2014
Reputação : 34
Número de Mensagens : 206
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Isaque Onix Qua 10 Dez 2014, 20:50

falow.
Isaque Onix
Isaque Onix

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 15/08/2010
Reputação : 147
Número de Mensagens : 1626
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • C#
  • Outros


http://spyreserver.16mb.com

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por theguitarmester Qui 11 Dez 2014, 09:37

Vi sua engine, e confirmei o que disse!


Não da para fazer uma plataforma fantasma usando o Solid. veja bem, você teve que desativar a função solid para poder passar por ela. Então, quando você a desativa, será desativado para todos objetos que estão na room, ou seja, qualquer outro inimigo ou jogador que se encontrar naquele mesmo momento, irá passar por dentro da plataforma.

Eu já sabia disse por experiência própria, quando tentei a usar para o CA(2012), em que usava no jogo o solid, e fui fazer a plataforma fantasma, e daí, quando o inimigo estava em cima dela, e o herói ia atravessá-la, o inimigo caía.
Desde então não utilizo mais o Solid, pois também já tive outros problemas com ele.




Uma coisa:
Ao menos no conceito que sei, em plataforma fantasma, você pode passar por dentro dela para subí-la, coisa que não acontece na sua engine.



Então, qual é seu argumento agora para defender o SOLID? Smile
theguitarmester
theguitarmester

Games Ranking : Nota C

Notas recebidas : B + C
Data de inscrição : 28/02/2012
Reputação : 139
Número de Mensagens : 2211
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 2 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Plataformas :
  • Unity


http://guitarmester.no.comunidades.net/index.php?pagina=19362978

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Isaque Onix Qui 11 Dez 2014, 15:42

theguitarmester escreveu:Vi sua engine, e confirmei o que disse!


Não da para fazer uma plataforma fantasma usando o Solid. veja bem, você teve que desativar a função solid para poder passar por ela. Então, quando você a desativa, será desativado para todos objetos que estão na room, ou seja, qualquer outro inimigo ou jogador que se encontrar naquele mesmo momento, irá passar por dentro da plataforma.

Eu já sabia disse por experiência própria, quando tentei a usar para o CA(2012), em que usava no jogo o solid, e fui fazer a plataforma fantasma, e daí, quando o inimigo estava em cima dela, e o herói ia atravessá-la, o inimigo caía.
Desde então não utilizo mais o Solid, pois também já tive outros problemas com ele.




Uma coisa:
Ao menos no conceito que sei, em plataforma fantasma, você pode passar por dentro dela para subí-la, coisa que não acontece na sua engine.



Então, qual é seu argumento agora para defender o SOLID? Smile
cara, inteligencia artificial não pode "seguir" o player se tratando de programação... ja fiz jogos complexos (de zoeira) em que o inimigo pula se não tiver espaço pra andar, atira, joga bomba, sempre usando o solid, mas, o inimigo não desce pela plataforma fantasma, logo, a checagem dele não é "if(place_free(..." ele simplesmente cai até encontrar o objeto desejado ;)

e posso fazer subir tambem, nem é tão dificil.

Engine atualizada, espero que a pirraça acabe aki Very Happy Happy
DOWNLOAD

a inteligencia artificial tem alguns erros, mais só coloquei aí pra verem como funciona.
Isaque Onix
Isaque Onix

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 15/08/2010
Reputação : 147
Número de Mensagens : 1626
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • C#
  • Outros


http://spyreserver.16mb.com

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por theguitarmester Qui 11 Dez 2014, 20:35

Bom, mas tem o problema que se tu colocar qualquer coisa no evento de colisão com algum solido, ele não poderá passar através da mascara dele, ao menos que ele esteja com o solid em zero.


Eu gosto de usar as mesmas colisões do jogador ao inimigo(não os mesmos códigos, mas parecido).
theguitarmester
theguitarmester

Games Ranking : Nota C

Notas recebidas : B + C
Data de inscrição : 28/02/2012
Reputação : 139
Número de Mensagens : 2211
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 2 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Plataformas :
  • Unity


http://guitarmester.no.comunidades.net/index.php?pagina=19362978

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Isaque Onix Qui 11 Dez 2014, 21:29

colisão não funciona só com objetos solidos ¬¬'
Isaque Onix
Isaque Onix

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 15/08/2010
Reputação : 147
Número de Mensagens : 1626
Prêmios : gravidade - Tutorial de gravidade e movimento em rampas 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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • C#
  • Outros


http://spyreserver.16mb.com

Ir para o topo Ir para baixo

gravidade - Tutorial de gravidade e movimento em rampas Empty Re: Tutorial de gravidade e movimento em rampas

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


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