Para actualizar un poco la Wiki

Started by Kloppix, January 08, 2011, 02:32:57 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Kloppix

/* Hola. A medida que he ido estudiando la guía de Oscar me he conseguido varios comandos, variables predefinidas, etc. que no están en la Wiki. Tengo una pequeña lista de la información que falta pero SÓLO hasta la página 381, que es por donde voy.

Estaba pensando en subir a la Wiki los comandos faltantes, pero no tengo los conocimientos como para escribir una buena descripción y el que sea en inglés tampoco me lo hace más fácil. También podría simplemente subir sólo los nombres (sin página que describa el comando/variable/constante/etc), pero no se que tan bien visto esté.

En fin. Espero que sirva de algo. Esto es lo que tengo hasta ahora:
--------------------------------------------------------------------------------------------------------------- */

Editado: Voy a ir actualizando la lista a medida que me entere de nuevas funciones, o que se actualice la Wiki
La lista actualizada está en http://wiki.bennugd.org/index.php?title=TODO. Muchas gracias a Josebita.

----------------------------------------------------------------------------------------------------------------------

MOD_CD (http://wiki.bennugd.org/index.php?title=Mod_cd)

Globals
  STRUCT cdinfo

--------------------------------------------------------------------------------------
MOD_DEBUG (http://wiki.bennugd.org/index.php?title=Mod_debug)

Module Dependency:
  libkey
  librender

--------------------------------------------------------------------------------------
MOD_DIR (http://wiki.bennugd.org/index.php?title=Mod_dir)

Functions:
  STRING DIRREAD(INTEGER)

--------------------------------------------------------------------------------------
MOD_DRAW (http://wiki.bennugd.org/index.php?title=Mod_draw)

Functions:
  INT PUT_PIXEL(INTEGER, INTEGER, INTEGER)
  INT GET_PIXEL(INTEGER, INTEGER)

--------------------------------------------------------------------------------------
MOD_EFFECTS (http://wiki.bennugd.org/index.php?title=Mod_effects)

Constants:
  INT GSCALE_RGB = 0
  INT GSCALE_R = 1
  INT GSCALE_G = 2
  INT GSCALE_B = 3
  INT GSCALE_RG = 4
  INT GSCALE_RB = 5
  INT GSCALE_GB = 6
  INT GSCALE_OFF = -1

Functions:
  INT FILTER(INTEGER, INTEGER, POINTER)


--------------------------------------------------------------------------------------
MOD_FFI (http://wiki.bennugd.org/index.php?title=Mod_ffi)

No lo tengo. Lo pongo acá porque si no luego se me olvida


--------------------------------------------------------------------------------------
MOD_FILE (http://wiki.bennugd.org/index.php?title=Mod_file)

Functions:
  UNDEFINED FREWIND(INTEGER)
  INT FILE_EXISTS(STRING)
  INT FREMOVE(STRING)
  INT FMOVE(STRING, STRING)


--------------------------------------------------------------------------------------
MOD_FLIC (http://wiki.bennugd.org/index.php?title=Mod_flic)

Functions:
  INT START_FLI(STRING, INTEGER, INTEGER)
  INT END_FLI()
  INT FRAME_FLI()
  INT RESET_FLI()
  INT FLI_START(STRING, INTEGER, INTEGER)
  INT FLI_START(STRING, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER)
  INT FLI_END(INTEGER)
  INT FLI_FRAME(INTEGER)
  INT FLI_RESET(INTEGER)
  INT FLI_PARAMS(INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER)
  INT FLI_MOVE(INTEGER, INTEGER, INTEGER)
  INT FLI_ANGLE(INTEGER, INTEGER)
  INT FLI_SIZE(INTEGER, INTEGER)
  INT FLI_FLAGS(INTEGER, INTEGER)
  INT FLI_Z(INTEGER, INTEGER)
  INT FLI_GETINFO(INTEGER, POINTER, POINTER, POINTER, POINTER, POINTER, POINTER, POINTER, POINTER, POINTER)


--------------------------------------------------------------------------------------
MOD_GRPROC (http://wiki.bennugd.org/index.php?title=Mod_grproc)

Locals:
  STRUCT _mod_grproc_reserved


--------------------------------------------------------------------------------------
MOD_JOY (http://wiki.bennugd.org/index.php?title=Mod_joy)

Functions:
  INT JOY_GETPOSITION(INTEGER)
  INT JOY_GETPOSITION(INTEGER, INTEGER)
  INT JOY_GETACCEL(POINTER, POINTER, POINTER)
  INT JOY_GETACCEL(INTEGER, POINTER, POINTER, POINTER)
  INT NUMBER_JOY()
  INT SELECT_JOY(INTEGER)
  INT GET_JOY_BUTTON(INTEGER)
  INT GET_JOY_BUTTON(INTEGER, INTEGER)

# Según entendí, en la Wiki se dice que JOY_GETBALL acepta 2 o 3 parámetros en lugar de 3 o 4. (http://wiki.bennugd.org/index.php?title=Joy_getball)
# INT JOY_GETBALL(INTEGER, POINTER, POINTER)
# INT JOY_GETBALL(INTEGER, INTEGER, POINTER, POINTER)


--------------------------------------------------------------------------------------
MOD_M7 (http://wiki.bennugd.org/index.php?title=Mod_m7)

Globals:
  STRUCT m7[9]


--------------------------------------------------------------------------------------
MOD_MAP (http://wiki.bennugd.org/index.php?title=Mod_map)

Constants:

  INT G_Y_CENTER = 3
  INT B_CLEAR = 1
  INT CHARSET_ISO8859 = 0
  INT CHARSET_CP850 = 1
  INT NFB_VARIABLEWIDTH = 0
  INT NFB_FIXEDWIDTH = 1

  # En la Wiki se mencionan las constantes...
  # G_ANIMATION_SPEED
  # G_ANIMATION_STEP
  # G_ANIMATION_STEPS
  # G_FRAMES
  # ...pero en el resultado de moddesc no veo nada parecido

# NOTA: Estoy nombrando tanto funciones que sencillamente no aparecen en la Wiki (ej: get_rgb() ), así como funciones con 2 nombres, de los cuales sólo aparece 1 en la lista principal. De todos modos en la descripción de las funciones aparece prácticamente siempre si posee otro nombre. Hay excepciones como point_get() o Glyph_get() que no indican su nombre alterno ( Get_point() y Get_Glyph() ), pero muy pocas.

Functions:

  INT MAP_NEW(INTEGER, INTEGER, INTEGER, INTEGER) #Aparece en la Wiki pero dice que sólo acepta 3 parámetros en lugar de 3 o 4 (http://wiki.bennugd.org/index.php?title=Map_new)   
  INT MAP_DEL(INTEGER, INTEGER)
  POINTER MAP_BUFFER(INTEGER, INTEGER)
  INT FPG_LOAD(STRING, POINTER)     # Según la WIKI acepta sólo 1 parámetro
  INT FPG_DEL(INTEGER)
  INT PAL_NEW()
  INT PAL_DEL(INTEGER)
  INT PAL_UNLOAD(INTEGER)
  INT PAL_CLONE(INTEGER)
  INT PAL_REFRESH()
  INT PAL_REFRESH(INTEGER)
  INT PAL_MAP_GETID(INTEGER, INTEGER)
  INT PAL_MAP_ASSIGN(INTEGER, INTEGER, INTEGER)
  INT PAL_MAP_REMOVE(INTEGER, INTEGER)
  INT PAL_GET(INTEGER, INTEGER, POINTER)
  INT PAL_GET(INTEGER, INTEGER, INTEGER, POINTER)
  INT PAL_SYS_SET(INTEGER)
  INT PAL_SYS_SET(POINTER)
  INT PAL_SET(INTEGER, INTEGER, POINTER)
  INT PAL_SET(INTEGER, INTEGER, INTEGER, POINTER)
  INT PAL_SAVE(STRING)
  INT PAL_SAVE(STRING, INTEGER)
  INT COLORS_SET(INTEGER, INTEGER, POINTER)
  INT COLORS_SET(INTEGER, INTEGER, INTEGER, POINTER)
  INT COLORS_GET(INTEGER, INTEGER, POINTER)
  INT COLORS_GET(INTEGER, INTEGER, INTEGER, POINTER)
  INT PALETTE_ROLL(INTEGER, INTEGER, INTEGER)
  INT PALETTE_CONVERT(INTEGER, INTEGER, POINTER)
  INT COLOR_FIND(BYTE, BYTE, BYTE)
  INT RGB(BYTE, BYTE, BYTE, INTEGER)             #Según Wiki sólo acepta 3 parámetros en lugar de 3 o 4   
  INT RGBA(BYTE, BYTE, BYTE, BYTE, INTEGER)   #Según Wiki sólo acepta 4 parámetros en lugar de 4 o 5   
  INT RGB_GET(INTEGER, POINTER, POINTER, POINTER, INTEGER)
  INT RGBA_GET(INTEGER, POINTER, POINTER, POINTER, POINTER, INTEGER)
  INT RGB_GET(INTEGER, POINTER, POINTER, POINTER)
  INT RGBA_GET(INTEGER, POINTER, POINTER, POINTER, POINTER)
  INT MAP_INFO_SET(INTEGER, INTEGER, INTEGER, INTEGER)
  INT MAP_INFO_GET(INTEGER, INTEGER, INTEGER)
  INT MAP_INFO(INTEGER, INTEGER, INTEGER)
  INT GRAPHIC_SET(INTEGER, INTEGER, INTEGER, INTEGER)
  INT FNT_NEW(INTEGER, INTEGER)                    # Según la Wiki solo acepta 1 parámetro
  INT FNT_NEW(INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER)
  INT BDF_LOAD(STRING)
  INT PCX_LOAD(STRING)
  INT NEW_MAP(INTEGER, INTEGER, INTEGER)
  INT LOAD_MAP(STRING)
  INT UNLOAD_MAP(INTEGER, INTEGER)
  INT SAVE_MAP(INTEGER, INTEGER, STRING)
  INT NEW_PAL()
  INT LOAD_PAL(STRING)
  INT UNLOAD_PAL(INTEGER)
  INT SAVE_PAL(STRING)
  INT SAVE_PAL(STRING, INTEGER)
  INT SET_COLORS(INTEGER, INTEGER, POINTER)
  INT SET_COLORS(INTEGER, INTEGER, INTEGER, POINTER)
  INT GET_COLORS(INTEGER, INTEGER, POINTER)
  INT GET_COLORS(INTEGER, INTEGER, INTEGER, POINTER)
  INT ROLL_PALETTE(INTEGER, INTEGER, INTEGER)
  INT CONVERT_PALETTE(INTEGER, INTEGER, POINTER)
  INT FIND_COLOR(BYTE, BYTE, BYTE)
  INT GET_RGB(INTEGER, POINTER, POINTER, POINTER, INTEGER)
  INT GET_RGBA(INTEGER, POINTER, POINTER, POINTER, POINTER, INTEGER)
  INT GET_RGB(INTEGER, POINTER, POINTER, POINTER)
  INT GET_RGBA(INTEGER, POINTER, POINTER, POINTER, POINTER)
  INT NEW_FPG()
  INT LOAD_FPG(STRING)
  INT LOAD_FPG(STRING, POINTER)
  INT SAVE_FPG(INTEGER, STRING)
  INT UNLOAD_FPG(INTEGER)
  INT GET_POINT(INTEGER, INTEGER, INTEGER, POINTER, POINTER)
  INT SET_POINT(INTEGER, INTEGER, INTEGER, INTEGER, INTEGER)
  INT SET_CENTER(INTEGER, INTEGER, INTEGER, INTEGER)
  INT NEW_FNT(INTEGER)
  INT NEW_FNT(INTEGER, INTEGER)
  INT NEW_FNT(INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER)
  INT LOAD_FNT(STRING)
  INT UNLOAD_FNT(INTEGER)
  INT SAVE_FNT(INTEGER, STRING)
  INT LOAD_BDF(STRING)
  INT GET_GLYPH(INTEGER, INTEGER)
  INT SET_GLYPH(INTEGER, INTEGER, INTEGER, INTEGER)
  INT LOAD_PNG(STRING)
  INT LOAD_PCX(STRING)
  INT SAVE_PNG(INTEGER, INTEGER, STRING)


----------------------------------------------------------------------------------------------------------------
MOD_MATHI      # En la Wiki solo hay MOD_MATH. Nada de MOD_MATHI  Las funciones de los 2 módulos son las mismas pero trabajan con otro tipo de variables. No se que hacer acá.


----------------------------------------------------------------------------------------------------------------
MOD_MATH (http://wiki.bennugd.org/index.php?title=Mod_math)


Functions:
  FLOAT ATAN2(FLOAT, FLOAT)
  INT ISINF(FLOAT)
  INT ISNAN(FLOAT)
  INT FINITE(FLOAT)
  INT NEAR_ANGLE(INTEGER, INTEGER, INTEGER)


----------------------------------------------------------------------------------------------------------------
MOD_MEM (http://wiki.bennugd.org/index.php?title=Mod_mem)

Functions:
  POINTER MEM_CALLOC(INTEGER, INTEGER)
  POINTER MEM_ALLOC(INTEGER)
  INT MEM_FREE(POINTER)
  POINTER MEM_REALLOC(POINTER, INTEGER)
  INT MEM_CMP(POINTER, POINTER, INTEGER)
  INT MEM_SET(POINTER, BYTE, INTEGER)
  INT MEM_SETW(POINTER, WORD, INTEGER)
  INT MEM_SETI(POINTER, INTEGER, INTEGER)
  INT MEM_COPY(POINTER, POINTER, INTEGER)
  INT MEM_MOVE(POINTER, POINTER, INTEGER)
  INT MEM_AVAILABLE()
  INT MEM_TOTAL()
  POINTER CALLOC(INTEGER, INTEGER)


----------------------------------------------------------------------------------------------------------------
MOD_PATH (http://wiki.bennugd.org/index.php?title=Mod_path)

Functions:
  INT PATH_FIND(INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER)
  INT PATH_GETXY(POINTER, POINTER)
  INT PATH_WALL(INTEGER)


----------------------------------------------------------------------------------------------------------------
MOD_PROC (http://wiki.bennugd.org/index.php?title=Mod_proc)

Constants:
  INT S_FORCE = 50
  INT S_TREE = 100
  INT S_KILL_TREE = 100
  INT ALL_PROCESS = 0

Locals:
  STRUCT mod_proc_reserved

Functions:
  INT GET_STATUS(INTEGER)


----------------------------------------------------------------------------------------------------------------
MOD_REGEX (http://wiki.bennugd.org/index.php?title=Mod_regex)

Globals:
  STRING regex_reg[15];


Functions:
  INT REGEX(STRING, STRING)
  STRING REGEX_REPLACE(STRING, STRING, STRING)
  STRING JOIN(STRING, POINTER, INTEGER)


----------------------------------------------------------------------------------------------------------------
MOD_SAY (http://wiki.bennugd.org/index.php?title=Mod_say)

Functions:
  UNDEFINED SAY_FAST(STRING)


----------------------------------------------------------------------------------------------------------------
MOD_SCREEN (http://wiki.bennugd.org/index.php?title=Mod_screen)

Functions:
  INT DEFINE_REGION(INTEGER, INTEGER, INTEGER, INTEGER, INTEGER)
  INT OUT_REGION(INTEGER, INTEGER)
  INT PUT_SCREEN(INTEGER, INTEGER)
  INT CLEAR_SCREEN()
  INT GET_SCREEN()


----------------------------------------------------------------------------------------------------------------
MOD_SCROLL (http://wiki.bennugd.org/index.php?title=Mod_scroll)

Functions:
  INT SCROLL_START(INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER)
  INT SCROLL_STOP(INTEGER)
  INT SCROLL_MOVE(INTEGER)
  INT STOP_SCROLL(INTEGER)
  INT MOVE_SCROLL(INTEGER)


----------------------------------------------------------------------------------------------------------------
MOD_SOUND (http://wiki.bennugd.org/index.php?title=Mod_sound)

Functions:
  INT SOUND_INIT()
  INT SOUND_CLOSE()
  INT STOP_SONG()
  INT STOP_WAV(INTEGER)
  INT PAUSE_WAV(INTEGER)
  INT RESUME_WAV(INTEGER)
  INT IS_PLAYING_WAV(INTEGER)
  INT FADE_MUSIC_IN(INTEGER, INTEGER, INTEGER)
  INT FADE_MUSIC_OFF(INTEGER)
  INT SET_CHANNEL_VOLUME(INTEGER, INTEGER)
  INT RESERVE_CHANNELS(INTEGER)
  INT SET_PANNING(INTEGER, INTEGER, INTEGER)
  INT SET_POSITION(INTEGER, INTEGER, INTEGER)
  INT SET_DISTANCE(INTEGER, INTEGER)
  INT REVERSE_STEREO(INTEGER, INTEGER)
  INT PLAY_WAV(INTEGER, INTEGER, INTEGER)
  INT SET_MUSIC_POSITION(FLOAT)

  # INT UNLOAD_SONG(POINTER)
  # INT UNLOAD_WAV(POINTER) 
  # Las funciones de arriba aceptan INT y POINTER, pero en la wiki sólo sale lo primero. No se si es un error o es normal puesto que no entiendo mucho de pointers :(


----------------------------------------------------------------------------------------------------------------
MOD_STRING (http://wiki.bennugd.org/index.php?title=Mod_string)

Functions:
  INT STRLEN(STRING)
  STRING FORMAT(INTEGER)
  STRING FORMAT(FLOAT)
  STRING FORMAT(FLOAT, INTEGER)


----------------------------------------------------------------------------------------------------------------
MOD_TEXT (http://wiki.bennugd.org/index.php?title=Mod_text)

Constants:
  INT ALL_TEXT = 0


----------------------------------------------------------------------------------------------------------------
MOD_TIMERS (http://wiki.bennugd.org/index.php?title=Mod_timers)

Globals:
  timer[9];


----------------------------------------------------------------------------------------------------------------
MOD_VIDEO (http://wiki.bennugd.org/index.php?title=Mod_video)

Functions:
  INT SET_MODE(INTEGER) # Segun la wiki acepta 2,3 o 4 parámetros. pero no dice que también 1 sólo (O eso entendí)

Module Dependency:
  libgrbase
  libvideo
  librender


----------------------------------------------------------------------------------------------------------------
MOD_WM (http://wiki.bennugd.org/index.php?title=Mod_wm)

Functions:
  INT SET_WINDOW_POS(INTEGER, INTEGER)

SplinterGU

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

Fede

Si quieres ser sabio, aprende a interrogar razonablemente, a escuchar con atención, a responder serenamente y a callar cuando no tengas nada que decir.

DCelso

Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

DCelso

Por cierto, si de camino puedes hacer moddesc "nombre_modulo" para cerciorarte de que verdaderamente existen esas funciones o ver si faltan por describir más en el módulo te estaría muy agradecido.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

DCelso

umn, no se lo que hace dirread. :(, pone esto en el código fuente:
/*  string DIRREAD (INT handle)
*
*  Given a path with wildcards ('*' or '?' characters), returns the first
*  file that matches and, in every next call, all matching files found
*  until no more files exists. It then returns NIL.
*/
Pero no se donde se introducen los wildcars, porque solo tiene de entrada un handleID.
Me leeré el tuto de oscar por si lo pone.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

Drumpi

Según eso es como glob. Las wildcards, por lo que entiendo, se refiere a los caracteres comodin ? y * que significan "un caracter cualquiera" y "cualquier número de caracteres indefinidos" respectivamente, que se añaden en el nombre del fichero/directorio a buscar.

Tengo que mirar a ver si hay algún manual de edición de wikipedias.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Noivern

Antes que se me olvide:
Mod_grproc
    collision_box();
    collision_circle();

Kloppix

Que alegría que la lista resultó útil. Quería ayudar de alguna manera y tanto mis finanzas como mis conocimientos de programación son casi nulos. :D

Splinter y Fede: Gracias por el Karma. ¿Se puede cambiar al final del año por fabulosos premios? :P

Quote from: DCelso on January 08, 2011, 09:45:03 PM
Por cierto, si de camino puedes hacer moddesc "nombre_modulo" para cerciorarte de que verdaderamente existen esas funciones o ver si faltan por describir más en el módulo te estaría muy agradecido.

Me da verguenza decir lo que voy a decir, pero nunca pude usar el moddesc. No tengo el ejecutable. ¿Está sólo para Windows? Uso Ubuntu Lucid.

De todos modos, todos los comandos que publiqué existen. Desde que empecé la guía de Oscar he probado [creo que] todo lo que ha aparecido, para luego buscarlo en la Wiki. Esto lo hago para anotar en un cuaderno que llevo una definición mas concisa.

Quote from: DCelso on January 08, 2011, 10:05:28 PM
umn, no se lo que hace dirread

En mi biblia aparece:

DIRREAD(IDDIR)
Esta función, definida en el módulo "mod_dir", devuelve el nombre del primer archivo ó directorio que encuentra
dentro de la lista devuelta por diropen() a través de IDDIR y, en sucesivas llamadas con el mismo identificador, va
devolviendo el resto de archivos ó directorios que queden en la lista. Cuando ya no queden más elementos, o tras la
primera llamada si no se encontró ninguno, devuelve una cadena en blanco. El nombre de archivo ó directorio que va
devolviendo esta función no contiene su ruta absoluta.

Esta función además rellena, cada vez que es llamada, la misma estructura global predefinida FILEINFO comentada
cuando se vio la función glob().

  PARÁMETROS: INT IDDIR : Identificador de la lista de elementos a leer,, obtenido de diropen()
  VALOR DE RETORNO: STRING : Nombre de siguiente fichero/directorio ó "" si no quedan más.

Quote from: Noivern on January 09, 2011, 02:17:50 AM
Antes que se me olvide:
Mod_grproc
    collision_box();
    collision_circle();

Gracias Noivern. Primera vez que leo de esos comandos (voy por la misma página  :-[) Acabo de actualizar la lista. 

SplinterGU

puede que en el codigo se haya quedado un texto desactualizado.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Noivern

Quote from: Kloppix on January 09, 2011, 03:08:55 PM
Quote from: Noivern on January 09, 2011, 02:17:50 AM
Antes que se me olvide:
Mod_grproc
    collision_box();
    collision_circle();

Gracias Noivern. Primera vez que leo de esos comandos (voy por la misma página  :-[) Acabo de actualizar la lista.

Esas funciones no estan ni en la wiki ni en el manual de Osk. Básicamente es un tipo de collision que no es a nivel de pixel, sino que
a) collision_box(): por el rectángulo de la imagenes completa (incluyendo los pixeles 100% transparentes). Toma en cuenta el ángulo y el size del proceso a la hora de chequear una posible collision. Es más rápida que la collision() normal.
b) collision_circle(): Esta me parece que es más rápida que la anterior, no toma en cuenta el angle, pero si el size y el ancho y alto de la imagen completa. En base a esto calcula un radio y compara si la circunferencias de ambos procesos se intersectan.

Si he explicado algo mal, que me corrijan ;D

SplinterGU

Quote from: Noivern on January 10, 2011, 02:30:00 AM
Quote from: Kloppix on January 09, 2011, 03:08:55 PM
Quote from: Noivern on January 09, 2011, 02:17:50 AM
Antes que se me olvide:
Mod_grproc
    collision_box();
    collision_circle();

Gracias Noivern. Primera vez que leo de esos comandos (voy por la misma página  :-[) Acabo de actualizar la lista.

Esas funciones no estan ni en la wiki ni en el manual de Osk. Básicamente es un tipo de collision que no es a nivel de pixel, sino que
a) collision_box(): por el rectángulo de la imagenes completa (incluyendo los pixeles 100% transparentes). Toma en cuenta el ángulo y el size del proceso a la hora de chequear una posible collision. Es más rápida que la collision() normal.
b) collision_circle(): Esta me parece que es más rápida que la anterior, no toma en cuenta el angle, pero si el size y el ancho y alto de la imagen completa. En base a esto calcula un radio y compara si la circunferencias de ambos procesos se intersectan.

Si he explicado algo mal, que me corrijan ;D

te has explicado perfecto.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Windgate

lol, hará más de un año que propuse un fast_collision ( ), ese collision_box ( ) era precisamente la idea que tenía en mente, ¿Desde cuándo existe esa función?
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

josebita

Quote from: Windgate on January 10, 2011, 08:19:17 AM
lol, hará más de un año que propuse un fast_collision ( ), ese collision_box ( ) era precisamente la idea que tenía en mente, ¿Desde cuándo existe esa función?
23-08-2010, el post es este:
http://forum.bennugd.org/index.php?topic=102.msg27652#msg27652

Windgate

Se me pasó, creo que esa semana estaba en Benidorm quemando neuronas, le voy a endiñar un karma al Splinter porque esa funcionalidad lo merecía 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