Hola, les comento que estoy aprendiendo a usar game maker asi que soy bastante noob :-[.
actualmente estoy haciendo el sistema de items de mi juego y para equiparse un objeto es al estilo "the binding of isaac" (esta el objeto en el suelo y si colisionas con el, te lo equipas y "sueltas" el que tengas equipado si es que tienes uno).
el sistema de equiparte y soltar el objeto ya lo tengo hecho, el problema es a la hora de posicionar el objeto soltado. no se muy bien como hacer que el objeto se suelte a un rango mínimo y máximo del jugador.
he estado probando con un bucle "do" pero no se muy bien como hacerlo, el código con el que estaba probando es el siguiente (lo tengo puesto en el evento de colision con el jugador):
PD: olvide comentarlo, el problema que tengo con este codigo es que no se porque, pero siempre me crea los objetos hacia abajo y la derecha del jugador :-[
espero haberme explicado bien, agradeceria mucho una mano con esto :)
actualmente estoy haciendo el sistema de items de mi juego y para equiparse un objeto es al estilo "the binding of isaac" (esta el objeto en el suelo y si colisionas con el, te lo equipas y "sueltas" el que tengas equipado si es que tienes uno).
el sistema de equiparte y soltar el objeto ya lo tengo hecho, el problema es a la hora de posicionar el objeto soltado. no se muy bien como hacer que el objeto se suelte a un rango mínimo y máximo del jugador.
he estado probando con un bucle "do" pero no se muy bien como hacerlo, el código con el que estaba probando es el siguiente (lo tengo puesto en el evento de colision con el jugador):
Código [Seleccionar]
var obj, itemX, itemY;
obj = other.arrEquipSkill[other.equipSkill,5]; //este es el arreglo donde tengo puesto las habilidades, y esta es la posicion del item asociado
do{
randomize();
itemX = random_range(obj_player.x+100,obj_player.x-100);
itemY = random_range(obj_player.y+100,obj_player.y-100);
/// condicionar distancia del jugador
disMax = point_distance(obj_player.x,obj_player.y,x,y) > 50;
disMin = point_distance(obj_player.x,obj_player.y,x,y) < 100;
noColision = place_free(x,y)
}until(disMax and disMin and noColision)
instance_create(itemX,itemY,obj) //crea la instancia del objeto asociada al arreglo de mas arriba
other.equipSkill = icon //ignoren esto, solo cambia el icono que se muestra en hud del jugador
instance_destroy())
PD: olvide comentarlo, el problema que tengo con este codigo es que no se porque, pero siempre me crea los objetos hacia abajo y la derecha del jugador :-[
espero haberme explicado bien, agradeceria mucho una mano con esto :)