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

31
Hola, haber si me explico.
Quiero que cuando cree un objeto, este haga una captura de la view[0], desactive todas los demás objetos, y se vea todo negro y la captura del view encima, como un poco doblada, y ya más cosas que añadiré yo.

Desactivar los objetos se, lo único es lo de la captura de view, que creo que puede ser con algo de surface, pero nunca lo he tocado y termino de tenerlo claro.

Gracias a quien me oriente.
32
Cita de: NiuWeb en Enero 17, 2016, 05:49:01 PM
Usa string_heigth:

[gml]
///texto_dividido(x,y,str1,col1,str2,col2);
var X = argument0;
var Y = argument1;
var texto1 = argument2;
var color1 = argument3;
var texto2 = argument4;
var color2 = argument5;

var w = string_width(texto1);
var h = string_height(texto1);
var h2 = string_height(texto2);
if h == h2
h = 0;
draw_set_colour(color1);
draw_text(X,Y,texto1);
draw_set_colour(color2);
draw_text(X+w,Y+h,texto2);
[/gml]

A ver si funca

Al final hice algo asi

var X = argument0;
var Y = argument1-15;
var texto1 = argument2;
var color1 = argument5;
var texto2 = argument4;
var color2 = argument3;

var w = string_width(texto1);
draw_text_colour(X,Y,texto1,color1,color1,color1,color1,1)
draw_line_width_colour(X-10,Y+string_height(texto1)-2,X+190,Y+string_height(texto1)-2,2,c_blue,c_blue)
draw_text_ext_transformed_colour(X+20,Y+string_height(texto1),texto2,15,180,1,1,0,color2,color2,color2,color2,1)
i = string_height_ext(texto2,15,180)
return i


if Seleccionado.Skill2 <> "a"
{texto1=ini_read_string("SKILLNOMBRES",Seleccionado.Skill2,"a")
texto2=ini_read_string("SKILL",Seleccionado.Skill2,"a")
ScrDibujarSkill(xL+25,yL+380+(10+i),texto1,c_black,texto2,c_white)
}


Y se queda algo asi

Armadura 1:
_______________________________
   + 1 Defensa contra golpes
   físicos.
33
Cita de: NiuWeb en Enero 17, 2016, 05:42:11 PM
Debes usar dos draw_text, y un string_width para poner el segundo texto después del primero.
Puedes, por ejemplo, poner un script con lo siguiente:
[gml]
///texto_dividido(x,y,str1,col1,str2,col2);
var X = argument0;
var Y = argument1;
var texto1 = argument2;
var color1 = argument3;
var texto2 = argument4;
var color2 = argument5;

var w = string_width(texto1);
draw_set_colour(color1);
draw_text(X,Y,texto1);
draw_set_colour(color2);
draw_text(X+w,Y,texto2);
[/gml]

Y después lo llamas
[gml]
texto_dividido(x,y,"Emboscada",c_yellow,"Se anticipa a los ataques enemigos.",c_green);
[/gml]

Gracias, no había caído en eso, funciona medianamente bien.
Ahora lo complico mas, Hay tres skill, tendre que controlar en "y" se empieza a dibujar, y como he dicho, puede que alguna descripción ocupe 2 o 3 renglones, como puedo saber la altura que ocupa????
34
Hola, haber si me echáis una mano, que me estoy liando, y no se como salir, jajaja :'( :'(

Haber, estoy haciendo mi juego multiidioma, por lo tanto tengo un ini los textos.
Mis guerreros pueden tener hasta 3 Skill, 1, 2 o 3,.
Tengo el ini  SKILLNOMBRE  con el nombre en español de la skill, y SKILL con la descripción de lo que hace cada skill.

Lo que quiero es algo asi
Emboscada:Se anticipa a los ataques enemigos.
ContraAtaque:Devuelve el golpe después de ser atacado

Bueno, lo colores los he puesto al azar para que aquí se vean algo.

Puede ser que haya tres líneas, o 2 o 1, o ninguna. Pero además, la descripción de alguno puede ser larga y tenga que cambiar de renglón.

Se ponerlas de color, que no se como UNIR/ENLAZAR el SKILLNOMBRE y SKILL y cada uno de un color.

Espero haberme explicado.

Gracias.
35
Preguntas y respuestas / Cosa que no entiendo View
Enero 13, 2016, 10:57:57 PM
Hola, me estoy volviendo loco, haber si alguien me lo explica que me entere

Tengo una room con dos view

VIEW 0
x 200         w 800     port   x 0         w 800
y 150         h 576     port   x 0          h 576

VIEW 1
x 1487       w 234     port   x 801        w 234
y 225         h 576     port   x 0            h 576

En principio se dibujan bien, para información, lo de la veiw 1 esta fuera de la room, que hay hago alguna cosas, para que no interfieran con la view 0  la principal.



Bien, luego tengo un objeto que hace esto
CtrlInstancia = instance_create( view_wport[0]-(PosicionEnEspera*96),view_hport[0]-40, CtrlGuerreroEspera)
Se supone que debería crearlo abajo del todo, donde se ven los que tienen la barra verde
Pero son el mismo, no es que lo haya creado 4 veces, solo hay dos.
Y en la instancia CtrlInstancia tengo este evento
DRAW GUI
draw_self()
healt = (Vida/VidaO) * 100 //Dibujamos Vida según hacia donde mire
if direction >270 or direction < 90
  {draw_healthbar(x-26,y+27,x-23,y-25,healt,c_black,c_red,c_green,2,true,true)}
else
  {draw_healthbar(x+23,y+27,x+26,y-25,healt,c_black,c_red,c_green,2,true,true)}


Lo que no entiendo es que pinta los dos dibujos de los guerreros en medio, no deberían salir hay. Y no tengo ni idea de porque están hay.

Me orientáis alguno?????

Gracias
36
http://docs.yoyogames.com/source/dadiospice/002_reference/game%20assets/backgrounds/background%20tiles/tile_set_depth.html

con eso puede cambiar la depth de los tiles, que viene a ser casi igual. No lo he probado.
Empieza por hay haber si te soluciona algo.

Y si no aquí tiene algunas cosas que te pueden valer

http://docs.yoyogames.com/source/dadiospice/002_reference/game%20assets/backgrounds/background%20tiles/index.html
37
Hola, no me leo el tocho entero, sorry.
Aquí te dejos varios ejemplos de encriptación que tenia por aki en el pc.

Mira haber si alguno te puede valer.

Saludos.
38
Perdón, podéis borrarlo, ya lo logre, es que tenia un error en el código.
LEFT REALESSE
if !instance_exists(ObjSigueRaton)
{
if instance_exists(ObjMarcaCelda) {with (ObjMarcaCelda){instance_destroy()}}
instance_create(x,y,ObjMarcaCelda)
ObjCtrlGUI.Terreno = id
}


ObjControlRaton
GLOBAL LEFT PRESSED
if window_mouse_get_x() < view_wport[0] and window_mouse_get_y() < view_hport[0]
{XI = mouse_x;YI = mouse_y}


STEP
if  XI > 0 and YI > 0
{Diferencia = point_distance(XI,YI,mouse_x,mouse_y)
    if Diferencia > 50
    {if !instance_exists(ObjSigueRaton){instance_create(mouse_x,mouse_y,ObjSigueRaton)}}
}
39
Preguntas y respuestas / Ayuda con Movimiento Raton
Enero 10, 2016, 11:11:42 AM
Hola, tengo un pequeño problema. Me explico.

Necesito diferenciar entre el click del raton, o del dedo, con el apoyo el dedo y arrastro la pantalla. Como se haría esto??
Ahora me hace las dos cosas a la vez. Tengo lo del click en el objeto en el mouse realesed. Pero si cuando acabo de arrastrar la pantalla estoy encima del objeto, ejecuta el evento. Como podría podría detectar si el raton se ha arrastrado?????, para poner una variable como condición para que no se ejecute el mouse realesed
40
Hola, estoy peleándome con las view.
Tengo en la room 3 view.
Necesito saber en que view esta presionado el raton, y que la view siga al raton. Osease, mover la view con el raton, pero solo la 0, la 1 y 2 nada.
41
Vamos a ver, la GUI son un conjunto de imágenes, sea botones, barras, fondos, etcc que forman el entrono grafico del juego. Es los compras, los dibujas o los robas, pero son todos, o casi todos archivos de imágenes, tipo .png

Luego debes de crear un objeto que controlo que se dibuja en el evento draw o varios objetos para controlar cada unas de las partes de la GUI.

Básicamente es asi, como más te puedo decir, dado que lo que preguntas es, como puedo pintar mi casa, buff, no hay maneras, eso ya cada uno.
42
DESDE DONDE SEA (llamesmole Script1)
if !object_exisist(martin)
{crear_martin()}
else
{return martin.seleccion; with(martin) {instance_destroy}}

CREAR MARTIN
aux = instance_create(x,y, martin)
aux.seleccion = 0

EN EL STEP MARTIN
if mouse_check_button_pressed(mb_left) //Si se presiona el mouse
{
    if mouse_x < minBHL2 and mouse_y > minBVL and mouse_x > maxBHL2 and mouse_y < maxBVL //Y el mouse está en el botón 1
     {
        instance_destroy();
        instance_activate_all();
        sprite_delete(spr);
        seleccion = 1
     }
   
    if mouse_x > minBHL and mouse_y > minBVL and mouse_x < maxBHL and mouse_y < maxBVL //Y el mouse está en el botón 2
     {
        instance_destroy();
        instance_activate_all();
        sprite_delete(spr);
        seleccion = 2
     }
}

if selección > 0 {Script()} 


// una vez tiene valor, se vuelve a llamar al script principal, y como ahora existe el objeto, no lo crea y pasa a la siguiente acción. La cosa es que no existe algo como para el código hasta que.., por lo tanto el código sigue ejecutándose, con algo asi debería de valerte.
43
Preguntas y respuestas / Posible Solucion
Enero 05, 2016, 09:46:24 AM
Hola, no termine de enterderte bien, pero haber si asi te vale o te orienta.

Supongo que la respuesta la guardas en una variable de un objeto, no se cual.

ObjetoUno.Respuesta

llamamos al script
CrearAMartin(Respuesta)

EN EL SCRIPT
aux = instance_create(martin)
aux.boton = argument0  // siendo este argumento la respuesta pasada al script
44
Que entiendes tu por interfaz grafica??
Una aventura grafica?? El diseño de GUI???
45
Preguntas y respuestas / Re:Consulta/Encuesta
Enero 05, 2016, 08:45:20 AM
Cita de: Marth en Enero 04, 2016, 10:50:50 PM
¿Para que juego?¿El juego de estrategia que has estado mostrando?
Para un juego de estrategia puro queda mejor diferenciar turno del jugador y turno del enemigo. En esta clase de juegos ya existe un atributo de "velocidad": el movimiento de los personajes, por el cual el que más se mueva es quien podra pillar al rival y atacarle primero.

Si, es para ese que mostre en desarrollo.
Entonces lo mejor es que ataquen todos los de un bando a la vez. Tienen agilidad que lo uso para determinar el orden, y movimientos, que es la cantidad de hexagonos que se pueden mover en cada turno.