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 - Ares074

16
Preguntas y respuestas / Barra de ataque
Mayo 23, 2018, 09:08:53 PM
Hola me duda es esta tengo una barra donde van apareciendo objetos y cuando el objeto llega al centro de la barra si aprietas una tecla en el momento que el objeto este en el centro se ejecute una acción , en mi caso lo que quiero es que dependiendo de lo  cerca que este el jugador de dar en el centro de la barra sea la cantidad de daño que haga el personaje digamos que aparecen cuatro objetos en la barra y en los cuatro da en el centro el ataque sea del 100% y si en otro caso casi da el en centro el ataque sea del 90%.

El código que tengo asta ahora es este lo que quiero es que sea mas preciso usar una formula o algo me me calcule que tan cerca estuvo de dar el centro y dependiendo de eso sea el valor del ataque
if x>-100 and x<-80 atk=90
if x=-100 atk=100
if x<-100 and x>-120 atk=90


Cuando el objeto esta esta en la posición x=-100 es el centro de la barra
Dejo una imagen para que vean como esta la barra el juego esta en 3d la barra la dibujo con draw_gui

18
Preguntas y respuestas / Re:salto en plataforma 3d
Abril 16, 2018, 07:00:24 AM
Hola gracias ya no me sale ningún error  ,el error que me salia era problema de una variable que avía puesto.
El problema ahora es que el  personaje brinca pero z no aumenta cuando colisiona con el bloque
El código lo tengo así

Create
em = 0; //direccion de empuje
gnd = instance_position(x,y,obj_piso).z1;
z1 = gnd;
g = 16/15; //gravity
js = 16/3; //jump speed
zs = 0; //'z' speed


Step
j = ( keyboard_check(ord('F')) or (joystick_check_button(1,1)) );

j_prs = (j and !j_prv);
j_rls = (!j and j_prv);
j_prv = j;


gnd = instance_place(x,y,obj_piso).z1; //altura del suelo
//if(z<gnd) {x=xprevious; y=yprevious;}
zs -= g; //la gravedad siempre est� actuando
if((z1+zs)<gnd) {zs=0; z1=gnd;} //no se puede atravesar el suelo
if(j_prs and (z==gnd)) zs = js; //se activa el salto
z1 += zs; //a la posicion se le agrega la velocidad


El personaje esta dibujado asi
/// Dibujar personaje
d3d_set_lighting(false);
///sombra
//d3d_draw_floor(x+8,y-8,1,x-8,y+8,z1,sprite_get_texture(sprite16,image_index),1,1)

d3d_transform_set_rotation_z( obCamara.direction );

d3d_transform_add_translation( x,y,0 );
d3d_model_draw(mdl, 0,0,z1, sprite_get_texture(tx,image_index));

d3d_transform_set_identity();


En ves de z lo tengo como z1 los bloques también estan con z1
19
Preguntas y respuestas / Re:salto en plataforma 3d
Abril 13, 2018, 11:35:52 PM
Hola gracias por la ayuda Clamud la cámara que uso es la misma en la que me ayudaste es  la cámara estilo yume niki que era reducir la cámara para que no atravesara las paredes solo que le modifique la dirección y el angulo, La cámara sigue al personaje en las 3 dimensiones pero no se mueve con el mouse  y la altura de la cámara aumenta  según la altura del personaje

El personaje se mueve en las 3 dimensiones y esta dibujado como un modelo
los bloques los dibujo con d3d_draw_block donde z es la altura del bloque el personaje también tiene la variable z que es la que uso para que salte
Estuve viendo el ejemplo y me da error en gnd = instance_position(x,y,obj_piso).z dice que no encuentra la variable obj_piso.z ya la tengo declarada z en create del objeto piso
el obj_piso son bloques y z=0
20
Preguntas y respuestas / salto en plataforma 3d
Abril 11, 2018, 09:08:04 PM
Hola esta es mi duda tengo mi juego en 3d con el personaje en 2d  ,  El personaje  salta cuando aumento la variable z que le cambie el nombre a z1 cuando z1 llega a cierto valor hago que disminuya asta llegar a 0 y eso da el efecto de salto ,Asta hay esta bien ,el problemas es cuando quiero que se pare en una plataforma cuando salte digamos que para subir unas escaleras saltando, Los bloques de las escaleras también tienen la variable z1 que es igual a lo alto del bloque , Mi idea es que cuando el personaje salte  y colisione con el bloque si z1 es igual al z1 del bloque z1 del personaje sea igual al z1 del bloque
algo asi
if place_meeting(x , y, bloque){ if z1=bloque.z1 z1=bloque.z1}
pero no me sale .
Quisiera saber si ay alguna forma de hacerlo mejor o como ustedes lo resolverían
21
Gracias, funciona perfecto
22
Cree una lista para mi juego tipo RPG los iconos de la izquierda de la imagen están ordenados según las posiciones que tengan en la lista , Lo que quiero es que cuando el personaje que este primero en la lista ataque se cambie su posición asta el final de la lista y el que estaba en la segunda posición se cambie a la primera posición y que así se cambien las pociones de los otros objetos
23
A cada objeto que colocas en el room se le asigna una id , puedes ver la id del objeto colocando el mause en el objeto que pusiste en el room y abajo a la derecha te aparecerá la id es algo como esto  id 10023401 si tiene 3 objetos iguales en el room cada objeto va atener una id diferente y así los puedes diferenciar , para cambiar un atributo de un objeto sin que afecta a los demás solo utiliza la id como 10023401.speed=5


if instance_exists(la id de la instancia){
  if (si das click al botom )
 
    with  id    instance_destroy();
   
    }


Tal vez algo así no se si este bien aquí lo explican mejorhttp://www.comunidadgm.org/preguntas-y-respuestas/ayuda-con-la-id/
24
Hola estoy creando un juego tipo rpg , e creado un objeto con una flecha que selecciona a que enemigo atacar y el personaje ataca al enemigo que este seleccionado, e creado dos enemigos
y dos objetos llamados eni1 y eni2 estos son los objetos que pongo en la room y crean a los enemigos de forma random los objetos tienen la variable vida cuando el personaje ataca y la vida llega a cero se elimina el objeto eni que tenga la vida en 0 , hay veces que  los objetos eni crean al mismo enemigo y si se eliminan se eliminan todos los enemigos iguales lo que quiero es que solo se elimine el enemigo que esta seleccionado

para seleccionar a los enemigos creo un a lista con
enemigos = ds_list_create();
ds_list_add(enemigos, eni1,eni2);


y en el evento steep pongo esto
if n>3 n=0

x1=ds_list_find_value(enemigos,n).x
y1=ds_list_find_value(enemigos,n).y
obj_selec_eni.x=x1
obj_selec_eni.y=y1


intente con este codigo para eliminar al enemigo que este seleccionado con la flecha pero no funciona
x1=ds_list_find_value(enemigos,n).x
y1=ds_list_find_value(enemigos,n).y

var inst = instance_position(x1, y1, obj_eni);

if inst {
   with inst instance_destroy();
}

creo que se podría hacer también con una lista y usar index=ds_list_find_index para saber el index del enemigo y asi eliminarlo pero no se bien como
26
Preguntas y respuestas / Re:3d o falso 3d
Enero 21, 2018, 06:56:35 AM
Tal vez te sirva algo como esto la la cámara es en vista  isometrica
https://www.youtube.com/watch?v=hBgFD7Wml9s

El link del ejemplo ya está caído pero tengo los archivos en mi pc , si es lo que buscas después  subo los archivos
Pd: El ejemplo no es mio
27
No se como explicar bien a si que pongo una imagen , el juego es tipo rpg esta el personaje y los 3 enemigos, los enemigo son un objeto puesto 3 veces en el room como puedo seleccionar los enemigos usando su numero de instacia para seleccionar a cual atacar, la flecha que esta arriba del enemigo es un objeto que coloco arriba del enemigo usando jump to positiom
pero siempre se coloca en el mismo enemigo
28
Hola ya vi el ejemplo por lo que entendí  lo que ase es calcular las coordenadas x,y ,z  lo de calcular las coordenadas tiene que ir en un evento step?, lo que no entiendo es como proyecto eso en el mouse en el evento draw para que el objeto se mueva con el mouse usando esas coordenadas , from seria la cámara y to las coordenadas del mouse
29
Hola lo que hice fue crear una variable que deshabilita el método de  mover la cámara con el mouse cuando el personaje se enfrente a un enemigo, para que me permitiera mover el mouse por la pantalla y la cámara se mantenga fija , lo que quiero es crear un objeto como la mira de un juego fps que se mueva con el mouse para disparar a los enemigos podría usar el  puntero del mouse sin tener que crear un objeto pero quiero que la mira se vea un poco alejada del personaje y que al presionar una tecla cree un objeto bala que se mueva en dirección a la que apunte asta colisionar con el enemigo

Los valores que se ven en la parte izquierda son la posición del mouse cree dos variables que me muestran la posición del mouse
con esto wx = window_mouse_get_x();
wy = window_mouse_get_y();


Lo que intente hacer es crear el objeto mira y en d3d_transform_add_translation(0, -wx, -wy); ponerle eso se mueve con el mouse pero no queda centrado en el puntero del mouse :-[
Quiero crear un juego tipo rpg clasico pero que el jugador tenga un poco mas de participación en la batalla no que solo apriete atacar y el persona ataque automáticamente si no que el tenga que apuntar al enemigo mientras se mueve, no mas que estoy atorado en esto.
30
Como creo un objeto que se mueva con el mouse en una cámara 3d, lo que quiero a ser es crear una mira que apunte a los enemigos con el mouse intente aserlo pero la mira no queda centrada con el mouse