Hola, tengo un problema, estoy haciendo un juego de plataformas y el salto funciona bien, pero quiero que haya un tipo de suelo al que desde abajo puedas saltarlo y desde arriba sea solido...

De momento lo que yo he intentado ha sido esto:



Muchas gracias de antemano
.
MIS JUEGOS
_____________________________________________________________________________________________________________

1? Pang Espacial 1.0

http://www.comunidadgm.org/index.php?page=verdescargas&accion=descargaD&download_id=2227

Mira este ejemplo. (Es de "3dgeminis")

Pff...

Lo siento, soy un negado, y lo cierto es que funciona perfectamente en el otro, pero no entendí muy bien como adaptarlo al mio, mira la información de mi personaje es esta:

Information about object: obj_kirby

Sprite: spr_kirby_der
Solid: false
Visible: true
Depth: 0
Persistent: true
Parent: <no parent>
Mask: <same as sprite>

Create Event:
set variable NextLvl to 0
set variable Cantidad to 0
set variable Dire to 1
set variable Moverse to 1
set variable Absorver to 0
set variable Fuego to 0
set variable Hielo to 0
set the sprite to spr_kirby_der with subimage 3 and speed 0.25

Step Event:
if relative position (0,1) is collision free for Only solid objects
      set the gravity to 1 in direction 270
else
      set the gravity to 0 in direction 270
if vspeed is larger than 18
      set the vertical speed to 18

Collision Event with object obj_e_fuego:
if expression vspeed > 0 && y < other.y+64 is true
      if relative position (0,1) gives a collision with Only solid objects
            set the vertical speed to -8
      for other object: destroy the instance
else
      set the number of lives relative to -1
      jump to the start position
      set variable Fuego to 0
      set variable Hielo to 0

Collision Event with object obj_suelo_inicial:
move in direction direction at most 12 till a contact with solid objects
set the vertical speed to 0

Collision Event with object obj_bola_fuego_en:
for other object: destroy the instance
if Fuego is equal to 0
      set the number of lives relative to -1
      jump to the start position
if Fuego is equal to 1
      exit this event

Collision Event with object obj_goto_next_lvl:
if next room exists
      go to next room with transition effect <no effect>

Collision Event with object obj_arenas_movedizas:
if vspeed is larger than 0
      move in direction direction at most 12 till a contact with all objects
      set the vertical speed to 0
if vspeed is equal to 0
      move in direction direction at most 12 till a contact with all objects
      set the vertical speed to 0
if vspeed is smaller than 0
      exit this event

Collision Event with object obj_suelo_salto:
if vspeed is larger than 0
      move in direction direction at most 12 till a contact with all objects
      set the vertical speed to 0
if vspeed is smaller than 0

Collision Event with object obj_e_hielo:
if expression vspeed > 0 && y < other.y+64 is true
      if relative position (0,1) gives a collision with Only solid objects
            set the vertical speed to -8
      for other object: destroy the instance
else
      set the number of lives relative to -1
      jump to the start position
      set variable Fuego to 0
      set variable Hielo to 0

Collision Event with object obj_bola_hielo_en:
for other object: destroy the instance
if Hielo is equal to 0
      set the number of lives relative to -1
      jump to the start position
if Hielo is equal to 1
      exit this event

Keyboard Event for <Left> Key:
if Moverse is equal to 1
      COMMENT: Si esta permitido Moverse
      if relative position (-6,0) is collision free for Only solid objects
            jump relative to position (-6,0)
      set variable Direccion to -1
if Moverse is equal to 0
      COMMENT: Si no esta permitido Moverse
      exit this event

Keyboard Event for <Up> Key:
if Moverse is equal to 1
      if relative position (0,1) gives a collision with Only solid objects
            set the vertical speed to -16
if Moverse is equal to 0
      COMMENT: Si no esta permitido Moverse
      scale the sprite with 1 in the xdir, 1 in the ydir, rotate over 0, and no mirroring

Keyboard Event for <Right> Key:
if Moverse is equal to 1
      if relative position (6,0) is collision free for Only solid objects
            jump relative to position (6,0)
if Moverse is equal to 0
      COMMENT: Si no esta permitido Moverse
      exit this event

Keyboard Event for X-key Key:
if Fuego is equal to 1
      if Cantidad is equal to 0
            set time line tim_lanzamiento at position 0, Start Immediately and Don't Loop
if Hielo is equal to 1
      if Cantidad is equal to 0
            set time line tim_lanzamiento at position 0, Start Immediately and Don't Loop

Key Press Event for <Left> Key:
if Fuego is equal to 0
      set the sprite to spr_kirby_andar_izq with subimage 3 and speed 0.25
if Hielo is equal to 0
      set the sprite to spr_kirby_andar_izq with subimage 3 and speed 0.25
if Fuego is equal to 1
      blend the sprite with color 16744703 and alpha value 1
if Hielo is equal to 1
      blend the sprite with color 16711680 and alpha value 1
set variable Dire to -1

Key Press Event for <Right> Key:
if Fuego is equal to 0
      set the sprite to spr_kirby_andar_der with subimage 3 and speed 0.25
if Hielo is equal to 0
      set the sprite to spr_kirby_andar_der with subimage 3 and speed 0.25
if Fuego is equal to 1
      blend the sprite with color 16744703 and alpha value 1
if Hielo is equal to 1
      blend the sprite with color 16711680 and alpha value 1
set variable Dire to 1

Key Press Event for Z-key Key:
if Fuego is equal to 0
      if Absorver is equal to 0
            if relative position (0,1) gives a collision with Only solid objects
                  set time line tim_absorver at position 0, Start Immediately and Don't Loop
      if Fuego is equal to 1
            if Absorver is equal to 0
                  if relative position (0,1) gives a collision with Only solid objects
                        set time line tim_absorver at position 0, Start Immediately and Don't Loop
            else
                  exit this event
      if Fuego is equal to 1
            set variable Fuego to 0
      if Hielo is equal to 1
            set variable Hielo to 0

Key Release Event for <Left> Key:
if Fuego is equal to 0
      set the sprite to spr_kirby_izq with subimage 3 and speed 0.25
if Hielo is equal to 0
      set the sprite to spr_kirby_izq with subimage 3 and speed 0.25
if Fuego is equal to 1
      blend the sprite with color 16744703 and alpha value 1
if Hielo is equal to 1
      blend the sprite with color 16711680 and alpha value 1

Key Release Event for <Right> Key:
if Fuego is equal to 0
      set the sprite to spr_kirby_der with subimage 3 and speed 0.25
if Hielo is equal to 1
      set the sprite to spr_kirby_der with subimage 3 and speed 0.25
if Fuego is equal to 1
      blend the sprite with color 16744703 and alpha value 1
if Hielo is equal to 1
      blend the sprite with color 16711680 and alpha value 1


La gran mayoría no tiene nada que ver, pero es simplemente porque no se que puedo hacer, muchas gracias de antemano...
.
MIS JUEGOS
_____________________________________________________________________________________________________________

1? Pang Espacial 1.0

http://www.comunidadgm.org/index.php?page=verdescargas&accion=descargaD&download_id=2227