bueno lo q sucede es q intento darle click izquierdo a mis creadores de torres (tengo 3 select_1, select_2,select_3) se me activan los 3...me pueden ayudar? gracias
Hola Makero siuby:
Dices muy poco para saber exactamente cual será el problema, pero lo intentaré.
¿En cada uno de los "creadores de torres" tienes un evento para recoger los "clicks" del "mouse"?
Si la respuesta es afirmativa ese es el problema. La solución es poner los eventos del mouse en un objeto único, como el objeto control. En el evento del "click" debes preguntar cuál "objeto creador de torres" está bajo el "cursor" y, en dependencia de cuál estém creas la torre correspondiente.
La forma de preguntar pusiera ser con la función: instance_position( mouse_x , mouse_y, select_1 ); Esta devuelve el ID del objeto "select_1" si está en la positión. En caso de no estar devuelve "noone".
Si la respuesta es negativa entonces no se cual es el problema y debes explicarte mejor o mandar el ejemplo.
Disculpa por las molestias causadas y hasta la próxima.
esta es la base del juego q pienso hacer XD , como veras le das click izquierdo a cualquiera de las 2 torres y se convocan las 2 :'(
pd: intente hacer lo q me dijiste pero solo logre q una torre se convocara adecuadamente asi q mejor lo deje a como lo tenia :-[
Makero siuby:
Como lo pensé. El problema es que los dos objetos creadores de torres reciben el mismo botón al mismo tiempo. 8)
¿Cómo remediarlo? ???
Debes crear un sistema para recoger bajo el "mouse" cualquier objeto que haya cuando des un "click". Esto lo puedes hacer con la función que te di anteriormente. Guardas en una variable, en un único objeto controlador, ese ID que obtuviste con la función.
Realizas funciones según el valor recogido en la variable. Para ello puedes utilizar una función "switch" donde los casos (case) serán los posibles valores de la variable. Si el valor es el objeto torre "slct_player_1" dentro del "case" pone las funciones a realizar para ese caso. Si el valor es el objeto torre "slct_player_2" dentro del "case" pone las funciones a realizar para este otro caso. Todo esto dentro del único objeto controlador y recuerda revisar cómo se utiliza esta función de GML.
Repito el algoritmo a realizar: :-[
* Un objeto recoge y guarda en una variable el ID del objeto que está debajo del cursor, cuando se presiona un botón determinado.
* Automáticamente se determina que acciones hacer (se hacen) según el objeto encontrado utilizando una función "switch". Todo según el valor de la variable. Estudiar "switch".
No te será difícil si has seguido los "tutoriales" para principiantes en "Game Maker" que son de obligada referencia si se quiere dominar esta herramienta.
Espero haber sido de ayuda y hasta la próxima. :D
Lo unico que debes hacer es en estos object slct_player_2 / slct_player_1. Cambia el event del Global_mouse_release al event mouse left release. osea sin el global.
no maaaaaaaaaa q pasada quede tan impactado q me recordo los diagnosticos der Dr House XD XD gracias de verdad gracias xfin quedo solucionado