Bennu Game Development

Foros en Español => Mesa de Ayuda => Topic started by: Windgate on April 01, 2009, 04:20:36 PM

Title: No funciona set_icon() con las DLL de Marzo de 2009
Post by: Windgate on April 01, 2009, 04:20:36 PM
Uso las últimas DLL de Bennu (Marzo de 2009) y no me funciona set_icon()

Según he leído se le pasa el ID del FPG a usar y el número de gráfico, y esta función establece ese icono en la barra superior de la ventana donde se ejecuta el juego.

He probado con imágenes de distintas resoluciones, 16x16, 128x128 e incluso más, y nada.

¿Alguien ha probado alguna vez esta función con éxito? Agradezco asesoramiento, tengo mi icono listo y no puedo ponerlo  :'(
Title: Re: No funciona set_icon() con las DLL de Marzo de 2009
Post by: SplinterGU on April 01, 2009, 11:37:13 PM
funciona


  map=new_map(32,32,16);
  map_clear(0,map,rgb(200,200,200));
  drawing_map(0,map);
  drawing_color(rgb(0,255,0));
  draw_box(8,8,24,24);
  set_icon(0,map);


No me funciona con mapas de 32 bits... y si son de 8 bits depende de la paleta de colores cargada.
Title: Re: No funciona set_icon() con las DLL de Marzo de 2009
Post by: Windgate on April 02, 2009, 10:36:55 AM
¿Pero no puede hacerse a partir de un gráfico introducido en un FPG con FPGedit? Si funciona haciendo el icono con primitivas de dibujo también debería funcionar con uno dibujado...

De todas formas probaré tu código a ver si logro algo.

Ahora que hablas de 32 bits... Ya he preguntado por esto varias veces, ¿Alguien tiene un FPG con gráficos en 32 bits? Por muy pequeño que sea, es por probarlo.

Gracias Splinter!
Title: Re: No funciona set_icon() con las DLL de Marzo de 2009
Post by: blostec on April 02, 2009, 11:07:45 AM
Acabo de probar de poner un icono y me ha funcionado:

iconos = load_png("prueba.png");
set_icon(0,iconos);


Lo único que sólo se muestra cuando se minimiza la ventana. Si quieres te subo el ejemplo completo y lo compruebas. Saludos.



Title: Re: No funciona set_icon() con las DLL de Marzo de 2009
Post by: SplinterGU on April 02, 2009, 12:35:58 PM
Quote from: Windgate on April 02, 2009, 10:36:55 AM
¿Pero no puede hacerse a partir de un gráfico introducido en un FPG con FPGedit? Si funciona haciendo el icono con primitivas de dibujo también debería funcionar con uno dibujado...

De todas formas probaré tu código a ver si logro algo.

Ahora que hablas de 32 bits... Ya he preguntado por esto varias veces, ¿Alguien tiene un FPG con gráficos en 32 bits? Por muy pequeño que sea, es por probarlo.

Gracias Splinter!

ya te han subido un fpg de 32 bits... hace ya varias semanas...
por otro lado, para que quieres un fpg de 32? crea tu mismo uno desde un prg.
Title: Re: No funciona set_icon() con las DLL de Marzo de 2009
Post by: Drumpi on April 02, 2009, 12:37:23 PM
Windgate, lo miré y se me olvidó comentártelo: los FPG que tengo los cree con el propio bennu, cargando un png con transparencias y un save fpg, con el potochof mismo puedes generarlos.
Lo que me gustaría saber es cómo cambiar las transparencias de un dibujo usando otro gráfico en blanco y negro como máscara (a ser posible, con potochof)

Ummm, tengo que mirar lo del size y las transparencias, y otra cosilla con el save_fpg y los png, con la nueva version de bennu.
Title: Re: No funciona set_icon() con las DLL de Marzo de 2009
Post by: panreyes on April 02, 2009, 01:54:55 PM
No es una solución, sólo un parche, e igual no te sirve, pero puedes utilizar el Resource Hacker para cambiar el icono al bgdi.exe
http://www.angusj.com/resourcehacker/
Y para crear el icono... ni idea. Yo utilizo un clásicazo: Microangelo xD
Title: Re: No funciona set_icon() con las DLL de Marzo de 2009
Post by: SplinterGU on April 02, 2009, 02:05:43 PM
no es un parche, una cosa es el icono de la ventana (lo que bennu hace) y otra cosa es el icono del ejecutable (cosa que no en todas las plataformas se puede hacer).
Title: Re: No funciona set_icon() con las DLL de Marzo de 2009
Post by: Windgate on April 02, 2009, 04:16:52 PM
Queria un FPG en 32 bits ya creado para evitar hacer el PRG, sin mas. Imaginaba que alguien tendria por ahi uno a mano. Ahora miro el FPG Splinter.

En cuanto a set_icon, asumia que cambiaba el icono de la barra superior de la ventana (El de arriba a la izquierda).

Veo que has hecho la prueba con load_png(), mientras que yo usaba uno ya cargado en un fpg, probare a cargar el png desde el codigo a ver si con eso se soluciona.

En cuanto a la mascara de transparencias... No se me ocurre nada ahora mismo...

Gracias de nuevo.
Title: Re: No funciona set_icon() con las DLL de Marzo de 2009
Post by: SplinterGU on April 02, 2009, 04:50:38 PM
no tiene sentido pasar un fpg ya hecho... no entiendo la diferencia, corre el ejecutable y tendras tu fpg... ese codigo ocupa menos que un fpg...