Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mensajes - venus

76
No entiendo lo que intentas decirme.
77
Es un código para saber que objetos han sido clickados. Si pinchas en uno se selecciona, y si pinchas donde no hay objetos todos se deseleccionan.


Esto es lo que tengo en objetoA.
if(mouse_check_button(mb_left)) {
  if(place_meeting(x,y,objetoB)) {
    seleccionado = true;
  } else {
    seleccionado = false;
  }
}

El problema de esto es que cuando pincho otro objeto, el que anteriormente estaba seleccionado se deselecciona.



Con lo que me ha dicho Guacusio debería de quedar así:
if(mouse_check_button(mb_left)) {
  with (objetoB) {
    if (place_meeting(x,y,objetoA)) {
      contacto=true;
    } else {
      contacto=false;
    }
  }
  if(contacto==true) {
    seleccionado = true;
  } else {
    seleccionado = false;
  }
}





Pero parece que no funciona. No me da error, simplemente el código dentro de with no parece ejecutarse. La variable contacto se queda como la he puesto en el ev. create.
78
Pues no me funciona  :(
De todas maneras voy a ser un poco mas concreto. Necesito saber si está haciendo contacto con cualquiera de sus copias. Es decir, saber si objetoB está colisionando con cualquier objetoA.
79
Pues aquí viene otro rompecabezas de colisiones. Malditas colisiones, me amargan el día.
Necesito saber si objetoA y objetoB están en contacto desde objetoC.
He probado objetoA.place_meeting(x,y,objetoB); pero nada. Me dice "variable name expected".
Me da error porque eso solo sirve para modificar variables. Puede que haya alguna forma de hacer una variable con place_meeting. Pero no la encuentro  :P
80
Cuando tu sueltas el botón derecho en un planeta enemigo se envían X% tropas de los planetas que habías seleccionado. ¿Como representamos el envío de tropas?
¿Un objeto para cada 5 unidades desplazadas que se mueva desde el planeta de origen hasta el objetivo? Eso sería improcesable en el caso de hacer un ataque masivo. Quizás con tiles. O en vez de 5 unidades, representar todas las unidades que vienen de un planeta.
81
¡¡Ya está terminada la versión Pre-alpha!!
0.0.0.1
Comunidad Game Maker
NAVSAL

En septiembre empiezan las clases, y como buen estudiante que soy (mentira), tengo que hacer un poco de caso al nuevo curso y disponer de menos tiempo para mis aficciones. He tenido algunas dificultades y por supuesto esto es tan solo la mitad de la mecánica.








-Podeis ver que los planetas pueden tener colores: Marrón, azul, rojo y violeta. El marrón significa que el planeta está vacío, el azul que lo ocupan tus tropas, el rojo que és de tu enemigo y el violeta que hay una guerra en ese planeta.
-El desplazamiento de la pantalla así como el ratón y otros elementos son totalmente provisionales.
-He elegido el nombre de Navsal casi aleatoriamente. Aún se puede cambiar al igual que los fondos, sprites y temática en general.
-Advierto que no he puesto opción de salida. Si quieres cerrarlo Alt+F4 o el botón con el icono de windows.

Proximas mejoras:

Cuando sueltas el ratón en un planeta enemigo se activa un código que envía tropas a ese planeta. La implementación de esa opción junto con el botón de salida serán las próximas mejoras.




Enlace de repuesto:
https://www.dropbox.com/s/n2xicoo02espbkt/Navsal-Default-0.0.0.1.exe?dl=0
82
Preguntas y respuestas / Re:Como hacer esto?
Septiembre 10, 2015, 12:00:16 AM
En el marketplace hay varias cosas que te pueden ayudar. Pero necesitas una licencia, saber inglés y entender el código que te dan.
83
Ya lo he resuelto. Resulta que me he liado con for.
84
Y ahora viene otro probjema XD Siento preguntar tanto...
cuando yo hago algo.variable_existente = valor me sale bien. Pero si hago algo.variable_inventada = valor no hay resultado.
Pongo ejemplos:
algo.hspeed = 13 -> Funciona
algo.asdfgh = "prrrrrr" -> No funciona
85
Hay algo que falla. Está relacionado con esto así que no voy a abrir otro tema.

algo = instance_create(random_range(300,room_width-300),random_range(300,room_height-300),obj_algo)
Cada vez que ejecuto el juego aparece en el mismo sitio. ¿No se supone que es aleatorio?
86
Preguntas y respuestas / Re:Problema con colision y alarma
Septiembre 09, 2015, 03:52:22 PM
Colisión:

alarm[0] = room_speed*3;
instance_destroy();


Alarm0:
room_restart();





Como destruyes la instancia la alarma solo se ejecuta una vez.
87
Preguntas y respuestas / Re:Problema con colision y alarma
Septiembre 09, 2015, 03:00:11 PM
Si, al reestablecerse la alarma nunca se ejecutaría.
Creo que con for podría evitar usar el evento create.
88
No había caido. Pensaba que tendría que hacer ID.variable = valor;
89
Preguntas y respuestas / Re:Problema con colision y alarma
Septiembre 09, 2015, 02:32:58 PM
¿Porque dead = 1;? ¿No se vuelve a crear el objeto al ejecutar room_restart()?
90
El objeto A tiene una variable interna que se crea en el evento create. ¿Como puedo modificar esa variable con el objeto B?
-El objeto B es el que crea al objeto A.
-No hay colision entre ambos objetos.
-Hay varios objetos A.