hola, me presento aca primero porque no habia sitio donde presentarse (o almenos no lo vi jeje) soy Leo o Maelstrom, como gusten y les escribo para hacerles una preguntita en un juego que ando haciendo, se trata de un personaje (es de plataformas) que puede caminar hacia la izquierda o derecha, tiene dos tipos de ataques (en principio) y salto hacia adelante y hacia atras. hasta aqui todo bien. logre hacer que el personaje se mueva como quiero y que salte como quiero, inclusive cambia al saltar, su sprite de acuerdo a la direccion en la que mira. el problema es que cuando salta, su sprite cambia a uno del personaje casi hecho una bolita girando (asi como saltaban los de mortal kombat) el punto es que al caer al suelo, en el evento collision, se supone que ni bien toca el suelo, me cambia el sprite por uno que esta mirando en direccion hacia donde iba, es decir, salto a la derecha, se hace bolita y al tocar el suelo de nuevo queda parado mirando a la derecha. pero ahi empieza el problema, cuando cae, si se pone el sprite... pero lo hace estando a la mitad del suelo... por ende el personaje queda atrapado en el suelo de la cintura para abajo y de ahi no sale si no es saltando y presionando una tecla de ataque para que cambie de sprite. ademas de que al tocar el suelo, para poder cambiar al sprite original, este se mantiene de esa forma y por ende ya no usa el sprite para caminar normalmente... (de todos modos no tengo eso muy presente porque ando en el trabajo y me deje la notebook en casa xD) u.u quisiera poder seguir con mi juego D: pero bueno, en cuanto llego a casa le doy de nuevo :D saluos y gracias por responder. aclaro qu use el buscador y si bien salen temas similares, ninguno plantea lo mismo que me pasa a mi... x.x solo hay uno que se acerca pero la respuesta no logro entenderla... u.u disculpen igual sigo leyendo y releyendo ese post para ver si saco algo de info de ahi. mas tarde posteo desde casa un video o imagenes para que vean lo que me pasa D:
Hola, lo primero que se me viene a la mente es que pueda ser porque tienes el punto de giro (o colision) en el centro de ambas imagenes, es decir cuando editas un sprite tienes la opcion de poner su punto de origen
+-------+
| |
| ° | <- supongo que los tienes en el centro.
| |
+-------+
Ahora bien si este es el caso entonces al tocar el suelo va a pasar algo similar a esto:
+-------+
///////////| ° |///////////////
+-------+
Este es el sprite de dando un salto en bolita y ha colisionado con el suelo, ahora va a cambiar a el sprite de quedarse quieto:
+-------+
| |
///////////| ° |///////////////
| |
+-------+
Como puedes ver el personaje se ha quedado atorado.
En fin, resumiendo, el modo de solucionarlo (si es que este es el problema) es cambiar el origen a el centro y los pies del personaje, es decir:
+-------+
| |
| | <- sprite quieto
| |
+---°---+
y
+-------+
| | <- Sprite saltando en bolita
+---°---+
Espero que te sirva de algo
Saludos.
muchisimas gracias por responder, aun no se si es la solucion porque no estoy en casa pero hasta donde veo, decribiste el problema perfectamente xD asi que estoy casi seguro de que asi si funcionaria :3 muchisimas gracias! a la nochecita les comento como me fué.
edito: u_u no, no funcionó solo empeoró el problema peeeeeeeeeeroo... aun no me rindo ya que si bien parece que empeoró, almenos si modifico la posicion de los sprites.... asi que calculo que por ahi debe de andar la solucion. luego, cuando tenga mas tiempito me pongo a modificar esos parametros a ver que onda para que no me quede uno en argentina y el otro en hawaii... xD
buenas, he estado ausente bastante tiempo por temas del trabajo, me he puesto a seguir con mi juego en Game Maker pero me ha surgido un nuevo inconveniente... al saltar, el sprite de salto, no cambia o se queda fijo, tambien si estoy presionando una direccion al momento de saltar, no cambia el sprite. (al momento de escribir esto creo que veo como podria hacer el cambio del sprite en el evento step y no el de key press... no se si servira pero probare. y tambien esta el problema es que si salto muy cerca de una plataforma, el personaje se traba en mitad de ella.
Lo que te aconsejo es que al principio te olvides de los sprites y uses formas basicas como cuadrados o rectangulos. Una vez que tengas las colisiones funcionando bien y sin problemas podes pasar a poner los sprites definitivos con los sprites basicos de antes como mascaras.
No uses Precise collision checking en los sprites ya que al cambiar de sprites te ocasionaran problemas por la diferencias de tamaño y mascaras como lo explico Jucarave