Splinter's GUI

Started by SplinterGU, October 24, 2008, 03:01:34 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

SplinterGU

La verdad que no la habia visto, seria cuestion de estudiarla, gracias...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Prg

#46
no me había dado cuenta cuál era el problema en gui_move, aunque suponía que sería algo de signos...

el original dice así:
[code language="bennu"]
relx = obj.id.x - x - obj.w / 2;
    rely = obj.id.y - y - obj.h / 2;

    while (obj.id != -1)
        obj.id.x += relx;
        obj.id.y += rely;
        obj.id.son.x = obj.id.x;
        obj.id.son.y = obj.id.y;
        obj++;
    end[/code]

pero relx se produce negativo, así que en lugar de sumarla la coordenada, la restamos y así acomodamos el signo.
[code language="bennu"]
   relx = obj.id.x - x - obj.w / 2;
       rely = obj.id.y - y - obj.h / 2;   

    while (obj.id != -1)
   
        obj.id.x -= relx;
        obj.id.y -= rely;
        obj.id.son.x = obj.id.x;
        obj.id.son.y = obj.id.y;
        obj++;
    end[/code]

Agrego una nueva versión aquí, con la corrección, y compatibilidad con fuentes bdf.
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)

SplinterGU

el codigo que puse yo funciona perfecto con valores negativos y positivos, es la idea, por eso lo sumo, sumar un valor negativo es igual a restarlo... de hecho el ejemplo que subi, creo que se me escapo con un codigo que no debia ir y si pulsas el boton derecho del mouse, mueve el menu hasta donde esta el mouse, no importa donde este esté.
no se que comportamiento ves mal, pero a mi me funciona bien.

con respecto a la gui, tengo una nueva que activa los menus con solo pasar el mouse, para hacer los menus desplegables, y tambien si hay mas opciones de las que entra en pantalla agrega un item de "+" para ir a la proxima pagina de opciones... y tambien elimina los menus hijos al pasar por el padre... el problema con esto es que me dejo de funcionar los menus en forma de botones que borran el menu anterior al crear uno nuevo... tengo que revisarlo, pero estoy sin tiempo... ah, tambien agregue cosas como alpha, Z para los alertbox, funciones del estilo CreateMenu, AddObject, etc... para no tener que estar declarando arrays fijos, solo es otra forma de hacerlo...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Prg

ya vi que funciona bien... excepto cuando invocas el proceso y lo mueves inmediatamente, no me lo explico, pero no funciona, y esto es lo que me pasaba a mí. Lo invocaba (el botón), y lo movía inmediatamente, y desaparecía. inténtalo.
remplaza las líneas del mouse.left de tu gui_test.prg y verás lo que te digo.
if (mouse.right)
        GUI_Do_Menu(b_main_menu);
           GUI_Move_Menu(main_menu, mouse.x, mouse.y);
           GUI_Move_Menu(b_main_menu, mouse.x, mouse.y);
        end
y con las modificaciones ya funciona.
Yo hice esto para preparar la librería para un proyecto que estoy preparando para un concurso, la verdad la librería me facilita mucho la vida, aunque el hecho de que un click fuera no elimine los botones me está costando un poco de trabajo, pero veo que ya tienes avances en esto. Estaba pensando en crear un flags especial que permitiera que cuando se hace mouse.left y no se colisiona con el ratón, pues que los botones mueran, pero si ya llevas algo, mejor me espero :) .
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)

SplinterGU

Quote from: Prg on November 12, 2008, 02:20:59 AM
la verdad la librería me facilita mucho la vida...

no sabes cuanto me alegra leer eso y saber que por fin a alguien la lib le facilito mucho la vida...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

syous

Quote from: SplinterGU on November 12, 2008, 02:08:52 PM
Quote from: Prg on November 12, 2008, 02:20:59 AM
la verdad la librería me facilita mucho la vida...

no sabes cuanto me alegra leer eso y saber que por fin a alguien la lib le facilito mucho la vida...

y ni te imaginas lo que me esta solucionando a mi las cosas estoy haciendo un ide  entero
Un Saludo
EL dia que la humanidad aprenda a mirar y sentir con los ojos del alma, recuperara su humanidad
http://sodonline.net/
http://darknessage.ayudaprogramacion.net/
http://www.ayudaprogramacion.net/

Proyecto: MMORPG
Completado: 2%
Estado: En Desarrollo...

SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Prg

hola, he agregado botones especiales a los que he llamado booleanos (¿son booleanos?, no lo creo, pero tienen un ligero...) dejo la gui y el ejemplo modificado, si es un botón funciona como activado desactivado, de lo contrario, le da el valor a la variable.

¿no me entendieron?... creo que es mejor que lo vean por ustedes mismos  ;D
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)

SplinterGU

gracias... ya lo probaré...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Windgate

Vaya, no había visto este tema aún...

Por lo que veo es una especie de librería para crear una "barra de herramientas y menús" para juegos. Ahora mismo estaba programando una aplicación en Bennu y había empezado a programar una interfaz desde 0, me estaba resultando bastante pesado, así que quizás haga uso de esta.

¿Dónde está disponible la última versión Splinter? Llevo más de un año en el foro y todavía me cuesta encontrar los recursos xD
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

Prg

al principio del post  ;)
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)

Windgate

¿ http://betatester.bennugd.org/betas/samples/gui.rar ?

Me sale que el link está roto, espero que no sea mi maldito ISP otra vez, me ofrece una conexión que es como tener 2 monos en un triciclo...
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

SplinterGU

http://betatester.bennugd.org/snapshot/samples/gui.rar

lamentablemente se perdio la ultima version, tenia una mejorada y con algunas correcciones, pero bueno, esta sirve...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Windgate

Recibida, espero sacarle todo su jugo :-X
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

syous

Quote from: Windgate on May 19, 2009, 11:40:22 AM
Recibida, espero sacarle todo su jugo :-X

pasa un poco de zumo  ;D
Un Saludo
EL dia que la humanidad aprenda a mirar y sentir con los ojos del alma, recuperara su humanidad
http://sodonline.net/
http://darknessage.ayudaprogramacion.net/
http://www.ayudaprogramacion.net/

Proyecto: MMORPG
Completado: 2%
Estado: En Desarrollo...