Está en la página 1de 113

frac(x) Devuelve la parte fraccional de X, que es la parte situada tras el

punto decimal.

sqrt(x) Devuelve la raz cuadrada de X. El valor no debe ser negativo.

sqr(x) Devuelve el cuadrado de X.

exp(x) Devuelve E elevado a X.

ln(x) Devuelve el logaritmo neperiano (natural) de X.

log2(x) Devuelve el logaritmo en base 2 de X.

log10(x) Devuelve el logaritmo en base 10 de X.

logn(n,x) Devuelve el logaritmo en base N de X.

sin(x) Devuelve el seno de X (X en radianes).

cos(x) Devuelve el coseno de X (X en radianes).

tan(x) Devuelve la tangente de X (X en radianes).

[s]arcsin(x) Devuelve el arcoseno de X[/s].

[s]arccos(x) Devuelve el arcocoseno de X.[/s]

arctan(x) Devuelve la arcotangente de X.

arctan2(y,x) Calcula la arcotangente de (Y/X), y devuelve un ngulo en el


cuadrante correcto.

degtorad(x) Convierte grados a radianes.

radtodeg(x) Convierte radianes a grados.

min(val1,val2,val3,...) Devuelve el menor de los valores. La funcin


soporta 16 argumentos.

max(val1,val2,val3,...) Devuelve el mayor de los valores. La funcin


soporta 16 argumentos.

mean(val1,val2,val3,...) Devuelve el promedio de los valores. La funcin


soporta 16 argumentos. Deben ser todos nmeros reales.

median(val1,val2,val3,...) Devuelve el valor intermedio de los argumentos


introducidos.

point_direction(x1,y1,x2,y2) Devuelve la direccin desde el punto (x1,y1)


hacia el punto (x2,y2) en grados.

lengthdir_x(len,dir) Devuelve la componente horizontal (x) del vector


determinado por la longitud y direccin indicadas.

lengthdir_y(len,dir) Devuelve la componente vertical (y) del vector


determinado por la longitud y direccin indicadas.

is_real(x) Averigua cuando X es un valor real. (diferencindolo de una


cadena de texto).

is_string(x) Averigua cuando X es una cadena de texto. (diferencindolo de


un nmero real).

chr(val) Devuelve una cadena con el carcter al que hace referencia el


cdigo asci VAL.

ord(str) Devuelve el cdigo asci del primer carcter de la cadena de texto


STR.

real(str) Convierte una cadena de texto en un nmero real. STR puede


contener signos negativos, puntos decimales o una parte exponencial.

string(val) Convierte el nmero real en una cadena de texto utilizando el


formato estndar

string_format(val,tot,dec) Convierte VAL en una cadena de texto


utilizando nuestro propio formato: TOT indica el mximo de dgitos y DEC el
nmero de dgitos decimales.

string_pos(substr,str) Devuelve la posicin de SUBSTR en STR (0 No


encontrado).

string_copy(str,index,count) Devuelve una subcadena de STR, partiendo de la


posicin INDEX y de una longitud definida por COUNT.

string_char_at(str,index) Devuelve el carcter situado en la posicin INDEX de


la cadena STR.

string_delete(str,index,count) Devuelve una copia de la cadena STR con una


parte borrada, que empieza en INDEX y de una longitud definida por COUNT.

string_insert(substr,str,index) Devuelve una copia de la cadena STR con la


subcadena SUBSTR aadida en la posicin INDEX.

string_replace(str,substr,newstr) Devuelve una copia de STR con la primera


ocurrencia de SUBSTR reemplazada por NEWSTR.

string_replace_all(str,substr,newstr) Devuelve una copia de STR con todas las


ocurrencias encontradas de SUBSTR reemplazadas por la subcadena
NEWSTR.

string_count(substr,str) Devuelve el nmero de ocurrencias de la subcadena


SUBSTR existentes en STR.

string_lower(str) Devuelve una copia en minsculas de la cadena STR.

string_upper(str) Devuelve una copia en maysculas de la cadena STR.

string_repeat(str,count) Devuelve una cadena con un nmero de copias de la


cadena STR definido por COUNT.

string_letters(str) Devuelve una cadena de texto que solo contiene las letras
de la cadena STR.

string_digits(str) Devuelve una cadena que solo contiene los nmeros de la


cadena STR.

string_lettersdigits(str) Devuelve una cadena que solo contiene los nmeros y


las letras de la cadena STR.

date_current_datetime()Devuelve fecha y hora actual.

date_current_date()Devuelve fecha actual ignorando la hora.

date_current_time()Devuelve hora actual ignorando la fecha.

date_create_datetime(year,month,day,hour,minute,second) Crea un valor


fecha-hora correspondiente a la fecha y hora indicados.

date_create_date(year,month,day) Crea un valor fecha-hora correspondiente


a la fecha indicada.

date_create_time(hour,minute,second) Crea un valor fecha-hora


correspondiente a la hora indicada.

date_valid_datetime(year,month,day,hour,minute,second) Muestra si la hora


y fecha indicados son vlidos.

date_valid_date(year,month,day) Muestra si la fecha indicada es vlida.

date_valid_time(hour,minute,second) Muestra si la hora indicada es vlida.

date_inc_year(date,amount) Devuelve una nueva fecha N aos despus de la

fecha indicada. N debe ser un nmero entero.

date_inc_month(date,amount) Devuelve una nueva fecha N meses despus


de la fecha indicada. N debe ser un nmero entero.

date_inc_week(date,amount) Devuelve una nueva fecha N semanas despus


de la fecha indicada. N debe ser un nmero entero.

date_inc_day(date,amount) Devuelve una nueva fecha N das despus de la


fecha indicada. N debe ser un nmero entero.

date_inc_hour(date,amount) Devuelve una nueva fecha N horas despus de


la fecha indicada. N debe ser un nmero entero.

date_inc_minute(date,amount) Devuelve una nueva fecha N minutos despus


de la fecha indicada. N debe ser un nmero entero.

date_inc_second(date,amount) Devuelve una nueva fecha N segundos


despus de la fecha indicada. N debe ser un nmero entero.

date_get_year(date) Devuelve el ao actual.

date_get_month(date) Devuelve el mes actual.

date_get_week(date) Devuelve la semana actual.

date_get_day(date) Devuelve el da actual.

date_get_hour(date) Devuelve la hora actual.

date_get_minute(date) Devuelve el minuto actual.

date_get_second(date) Devuelve el segundo actual.

date_get_weekday(date) Devuelve el da de la semana actual.

date_get_day_of_year(date) Devuelve el da del ao especificado.

date_get_hour_of_year(date) Devuelve la hora del ao especificado.

date_get_minute_of_year(date) Devuelve el minuto del ao especificado.

date_get_second_of_year(date) Devuelve el segundo del ao especificado.

date_year_span(date1,date2) Devuelve el nmero de aos que hay entre las


dos fechas. Reporta los aos incompletos como una fraccin.

date_month_span(date1,date2) Devuelve el nmero de meses que hay entre


las dos fechas. Reporta los meses incompletos como una fraccin.

date_week_span(date1,date2) Devuelve el nmero de semanas que hay


entre las dos fechas. Reporta las semanas incompletas como una fraccin.

date_day_span(date1,date2) Devuelve el nmero de das que hay entre las


dos fechas. Reporta los das incompletos como una fraccin.

date_hour_span(date1,date2) Devuelve el nmero de horas que hay entre las

dos fechas. Reporta las horas incompletas como una fraccin.

date_minute_span(date1,date2) Devuelve el nmero de minutos que hay


entre las dos fechas. Reporta los minutos incompletos como una fraccin.

date_second_span(date1,date2) Devuelve el nmero de segundos que hay


entre las dos fechas. Reporta los segundos incompletos como una fraccin.

date_compare_datetime(date1,date2) Compara los dos valores fecha-hora.


Devuelve -1, 0, 1 dependiendo en si la primera fecha es anterior, igual, o
posterior que la segunda.

date_compare_date(date1,date2) Compara los dos valores fecha-hora


tomando en cuenta slo la parte de la fecha. Devuelve -1, 0, 1 dependiendo
en si la primera es anterior, igual, o posterior que la segunda.

date_compare_time(date1,date2) Compara los dos valores fecha-hora


tomando en cuenta slo la parte de la hora. Devuelve -1, 0, 1 dependiendo
en si la primera es anterior, igual, o posterior que la segunda.

date_date_of(date) Devuelve la parte de la fecha del valor fecha-hora


indicado, estableciendo la hora a 0.

date_time_of(date) Devuelve la hora del valor fecha-hora indicado,


estableciendo la fecha a 0.

date_datetime_string(date) Devuelve una cadena indicando la fecha y hora


definidos, en el formato predeterminado para el sistema.

date_date_string(date) Devuelve una cadena indicando la fecha definida en el


formato predeterminado para el sistema.

date_time_string(date) Devuelve una cadena indicando la hora definida en el


formato predeterminado para el sistema.

date_days_in_month(date) Devuelve el nmero de das que hay en el mes


indicado.

date_days_in_year(date) Devuelve el nmero de das que hay en el ao


indicado.

date_leap_year(date) Define si el ao indicado es un ao bisiesto.

date_is_today(date) Define si la fecha indicada es la actual.

x Su posicin x.

y Su posicin y.

xprevious Su posicin x anterior.

yprevious Su posicin y previa.

xstart Su posicin x inicial en el cuarto.

ystart Su posicin y inicial en el cuarto.

hspeed Componente horizontal de la velocidad.

vspeed Componente vertical de la velocidad.

direction Su direccin actual (0-360, contra las manecillas del reloj, 0 = a la


derecha).

speed Su velocidad actual (pxeles por step).

friction Friccin actual (pxeles por step).

gravity Cantidad actual de gravedad (pxeles por paso).

gravity_direction Direccin de la gravedad (270 es hacia abajo).

motion_set(dir,speed) Establece el movimiento a la velocidad speed y la


direccin dir.

motion_add(dir,speed) Agrega el movimiento al movimiento actual (como una


suma vectorial).

place_free(x,y) Devuelve si la instancia colocada en la posicin (x, y) est


libre de colisin. Normalmente se emplea para revisar antes de mover la
instancia a la nueva posicin.

place_empty(x,y) Devuelve si la instancia colocada en la posicin (x, y) no se


encuentra con nadie. Esta funcin tambin toma en cuenta las instancias no
slidas.

place_meeting(x,y,obj) Devuelve si la instancia colocada en la posicin (x,y)

se encuentra con un el objeto obj. obj puede ser un objeto en cuyo caso la
funcin devuelve verdadero si se encuentra con una instancia
de ese objeto. Tambin puede ser el id de una instancia, o la palabra especial
other.

place_snapped(hsnap,vsnap) Devuelve si la instancia est alineada con los


valores de snap hsnap y vsnap.

move_random(hsnap,vsnap) Mueve la instancia a una posicin libre, y la


alinea con los valores hsnap y vsnap, al igual que la accin correspondiente.

move_snap(hsnap,vsnap) Alinea la instancia, como la accin correspondiente.

move_wrap(hor,vert,margin) Teleporta la instancia cuando sale del room al


lado opuesto. hor indica si debe desplazarse horizontalmente y vert indica si
debe desplazarse verticalmente. margin indica cunto debe salir el origen de
la instancia del room para teleportarse (es decir, un margen alrededor del
room). Esta funcin se usa normalmente el evento Outside.

move_towards_point(x,y,sp) Mueve la instancia con velocidad sp hacia el


punto (x,y).

move_bounce_solid(adv) Rebotar contra objetos slidos, como la accin


correspondiente. adv indica si se emplea rebote avanzado, que toma en
cuenta las paredes inclinadas.

move_bounce_all(adv) Rebotar contra todas las instancias, en lugar de slo


con las slidas.

move_contact_solid(dir,maxdist) Mover la instancia en la direccin dir hasta


que haya contacto con un objeto slido. Si no hay collision en la posicin
actual, la instancia es colocada justo antes de donde ocurre una colisin. Si

ya hay una colisin en la posicin actual, la instancia no se mueve. Puedes


especificar la distancia mxima a mover la instancia maxdist (emplea un
nmero negativo para indicar distancia arbitraria).

move_contact_all(dir,maxdist) Igual que la funcin anterior pero esta vez se


detiene hasta que haya contacto con cualquier objeto, no solo slidos.

move_outside_solid(dir,maxdist) Mueve la instancia en la direccin dir hasta


que no est al alcance de un objeto slido. Si no hay collision en la posicin
actual, no se mueve la instancia. Puedes especificar la distancia mxima a
mover (usa un valor negativo para indicar una distancia arbitraria).

move_outside_all(dir,maxdist) Igual que la anterior pero se mueve hasta


estar fuera de alcance de cualquier objeto, no solo objetos slidos.

distance_to_point(x,y) Devuelve la distancia de la caja lmite de la instancia


actual hacia el punto (x,y).

distance_to_object(obj) Devuelve la distancia de la instancia actual a la


instancia ms cercana del objeto obj.

[s]position_empty(x,y) Indica si no hay nada en la posicin (x,y).[/s]

position_meeting(x,y,obj) Indica si en la posicin (x,y) hay una instancia obj.


obj puede ser un objeto, una id de una instancia, o las palabras clave self,
other o all.

path_start(path,speed,endaction,absolute) Comienza un path para la


instancia actual. path es el nombre del path que deseas iniciar. speed es la
velocidad con la que la instancia debe moverse por el path (una
velocidad negativa indica que la instancia se mover al revs sobre el path).
endaction indica que debera ocurrir cuando la instancia llegue al final del

camino. El argumento absolute debe ser true o false. Cuando es true se usan
las coordenadas absolutas del path. Cuando es false el path es relativo a la
posicin actual de la instancia. Para ser ms precisos, si la velocidad es
positiva el punto inicial del path se colocar en la posicin actual de la
instancia y se seguir desde ah.

path_end() Termina el path para la instancia actual.

path_index* ndice del path que la instancia sigue. No se puede cambiar


directamente, debes utilizar la funcin
path_start(path,speed,endaction,absolute). path_position Posicin en el path
actual. 0 es el principio del
path y 1 es el final. Los valores deben estar entre 0 y 1.

path_positionprevious Posicin previa en el path. Esto se puede usar en


eventos de colisin para colocar la instancia en la posicin anterior antes de
una colisin.

path_speed Velocidad (en pxels por paso) con la que la instancia sigue el
path. Con una velocidad negativa el path se recorre en sentido inverso.

path_orientation Orientacin (antihoraria) en la que se realiza el path. 0 es la


orientacin normal del path.

path_scale Escala del path. Aumntala para hacer el path ms grande. 1 es el


valor normal del path.

path_endaction La accin que se debe ejecutar al finalizar el path. Puedes


indicar los valores explicados ms arriba.

mp_linear_step(x,y,stepsize,checkall) Esta funcin hace que la instancia de


un paso hacia la posicin (x,y). La longitud del paso se indica con el

parmetro stepsize. Si la instancia ya ha llegado a esa posicin no


se mover. Si checkall es true la instancia se parar cuando choque con una
instancia de cualquier objeto. Si es false, slo se parar al chocar con un
objeto slido. Esta funcin no propone un camino alternativo,
simplemente se parar si encuentra un obstculo. La funcin devuelve si se
ha alcanzado el destino.

mp_linear_step_object(x,y,stepsize,obj) Igual que la anterior, pero esta vez


slo se tienen en cuenta las instancias del objeto obj. obj puede ser un objeto
o una id de una instancia particular.

mp_potential_step(x,y,stepsize,checkall) Igual que las anteriores, pero en


este caso la instancia intentar esquivar los obstculos que encuentre.
Cuando la instancia se choque con un obstculo cambiar su
direccin para tratar de esquivar el objeto, movindose alrededor de l.
Puede que no siempre se consiga llegar a la meta, pero la funcin siempre
intentar acercar lo ms posible a la instancia. Devuelve true si se
llega a la meta.

mp_potential_step_object(x,y,stepsize,obj) ) Igual que la anterior, pero esta


vez slo se tienen en cuenta las instancias del objeto obj. obj puede ser un
objeto o una id de una instancia particular.

mp_potential_settings(maxrot,rotstep,ahead,onspot) La funcin anterior hace


su trabajo usando un nmero de parmetros que pueden ser cambiados con
esta funcin. El mtodo funciona como sigue: primero la instancia intenta
moverse en lnea recta hacia la meta. Para ello, mira un nmero de pasos
adelante para ver si hay algn obstculo. Este nmero de pasos corresponde
al valor ahead (por defecto 3). Reduciendo este valor la instancia comenzar
a cambiar su direccin ms tarde si encuentra un obstculo. Aumentndolo
cambiar antes de direccin. Si detectamos una colisin, la funcin mira a la
derecha y a la izquierda para encontrar un camino libre. Esto se realiza en
pasos de tamao rotstep (por defecto 10). El parmetro maxrot indica cunto
puede cambiar como mximo la direccin en un paso.
mp_linear_path(path,xg,yg,stepsize,checkall) Calcula un path en lnea recta

para la instancia desde su posicin hasta (xg,yg) usando el paso especificado


en stepsize. Usa pasos como en la funcin mp_linear_step(). El path indicado
debe existir con anterioridad a la llamada de la funcin y ser sobreescrito
por el nuevo path (consulta el captulo sobre cmo crear y destruir paths). La
funcin devuelve si se ha encontrado un path. Si no consigue encontrar un
camino, la funcin devolver un path hasta la posicin donde la instancia
qued bloqueada.

mp_linear_path_object(path,xg,yg,stepsize,obj) Igual que la anterior, pero


esta vez slo se tienen en cuenta las instancias del objeto obj. obj puede ser
un objeto o una id de una instancia particular.

mp_potential_path(path,xg,yg,stepsize,factor,checkall) Esta funcin calcula


un camino para instancia desde su posicin actual y orientacin hasta (xg,yg)
usando el paso especificado en stepsize e intentando evitar colisionar con los
obstculos. Utiliza pasos potenciales como la funcin mp_potential_step() y
los parmetros se pueden configurar con mp_potential_settings(). El path
indicado debe existir con anterioridad a la llamada de la funcin y ser
sobreescrito por el nuevo path (consulta el captulo sobre cmo crear y
destruir paths). La funcin devolver si se ha encontrado un camino.

mp_potential_path_object(path,xg,yg,stepsize,factor,obj) Igual que la


anterior, pero esta vez slo se tienen en cuenta las instancias del objeto obj.
obj puede ser un objeto o una id de una instancia particular.

mp_grid_create(left,top,hcells,vcells,cellwidth,cellheight) Esta funcin crea la


rejilla. Devuelve un ndice que debe ser usado en las dems funciones.
Puedes crear y mantener varias rejillas al mismo tiempo. left y top
indican la posicin de la esquina superior izquierda de la rejilla y hcells y
vcells indican el nmero de celdas horizontales y verticales respectivamente.
Finalmente, cellwidth y cellheight indican la anchura y altura de las
celdas.mp_grid_destroy(id) Destruye la rejilla indicada y libera la memoria
usada. No olvides llamar a esta funcin cuando no necesites usar ms la
rejilla.

mp_grid_clear_all(id) Marca todas las celdas como libres.

mp_grid_clear_cell(id,h,v) Marca la celda indicada como libre (la primera


celda es la 0,0).

mp_grid_clear_rectangle(id,left,top,right,bottom) Marca como libres todas las


celdas que intersectan el rectngulo definido en coordenadas absolutas del
cuarto.

mp_grid_add_cell(id,h,v) Marca ls celdas indicadas como prohibidas.

mp_grid_add_rectangle(id,left,top,right,bottom) Marca todas las celdas que


intersectan el rectngulo como prohibidas.

mp_grid_add_instances(id,obj,prec) Marca todas las celdas que intersectan


una instancia del objeto indicado como prohibidas. Tambin puedes
especificar una id de una instancia concreta, o la palabra clave all para
indicar todas las instancias. prec indica si hay que usar colisin precisa (slo
funcionar si en el sprite de la instancia est activada la misma opcin).
p_grid_path(id,path,xstart,ystart,xgoal,ygoal,allowdiag) Calcula el path a
travs de la rejilla. El path indicado debe existir con anterioridad a la llamada
de la funcin y ser sobreescrito por el nuevo path (consulta el captulo sobre
cmo crear y destruir paths). xstart e ystart indican el comienzo del path y
xgoal e ygoal las coordenadas de la meta. allowdiag indica si se permiten
movimientos diagonales entre celdas o no.

mp_grid_draw(id) Esta funcin dibuja la rejilla marcando las celdas libres y


prohibidas (muy til para buscar errores).collision_point(x,y,obj,prec,notme)
Comprueba si hay una colisin en el punto (x,y) con instancias del objeto obj.

collision_rectangle(x1,y1,x2,y2,obj,prec,notme) Comprueba si hay una


colisin entre el rectngulo (slido) con las esquinas indicadas e instancias
del objeto obj.

collision_circle(xc,yc,radius,obj,prec,notme) Comprueba si hay una colisin

entre la circunferencia (slido) con centro (xc,yc) y radio r e instancias del


objeto obj. Puedes usar esta funcin para ver si un objeto est cerca de una
posicin.

collision_ellipse(x1,y1,x2,y2,obj,prec,notme) Comprueba si hay una colisin


entre la elipse (slida) con las esquinas indicadas e instancias del objeto obj.

collision_line(x1,y1,x2,y2,obj,prec,notme) Comprueba si hay una colisin


entre la lnea que va de (x1,y1) a (x2,y2) e instancias del objeto obj.

object_index* ndice del objeto del cual sta es una instancia. No se puede
cambiar.

id* La id nica de la instancia (>= 100000) (Al definir cuartos la id de la


instancia bajo el puntero del ratn es indicada). No se puede cambiar.

mask_index ndice de l sprite usado como mscara para las colisiones. Si


indicas -1 la mscara ser igual al sprite de la instancia.

solid Indica si la instancia es slida o no.

persistent Indica si la instancia es persistente y reaparecer al moverse a


otro cuarto. A veces puedes querer volver a ponerlo a 0 (por ejemplo, al
volver al primer cuarto).

instance_count* Nmero de instancias que existen en el cuarto.

instance_id[0..n-1]* La id de la instancia nmero n.

instance_find(obj,n) Devuelve la id de la instancia n+1 de tipo obj. obj puede

ser un objeto o la palabra clave all. Si no existe se devuelve el objeto especial


noone. Recuerda que el orden de las instancias cambia en cada step as que
no puedes usar valores de steps anteriores.

instance_exists(obj) Devuelve si existe alguna instancia del objeto obj. obj


puede ser un objeto, la id de una instancia o la palabra clave all.

instance_position(x,y,obj) Devuelve la id de la instancia de tipo obj en la


posicin (x,y).
Cuando hay varias instancias en esa posicin se devuelve la id de la
prtimera. obj puede ser un objeto o la palabra clave all. Si no existe se
devuelve el objeto especial noone

instance_furthest(x,y,obj) Devuelve la id de la instancia de tipo obj que est


ms lejana en ese momento a (x,y). obj puede ser un objeto o la palabra
clave all.

instance_place(x,y,obj) Devuelve la id de la instancia de tipo obj encontrada


cuando la instancia actual se coloca en la posicin (x,y). obj puede ser un
objeto o la palabra clave all. Si no existe se devuelve el objeto
especial noone.

instance_copy(performevent) Crea una copia de la instancia actual. El


argumento indica si se debe ejecutar el evento create en la nueva instancia.
La funcin devuelve la id de la nueva copia.

instance_destroy() Destruye la instancia actual.

instance_change(obj,perf) Cambia la instancia a una del tipo obj. perf indica


si se deben ejecutar los eventos de destruccin y creacin.

position_destroy(x,y) Destruye toda las instancias cuyo sprite pasa por el


punto (x,y).

position_change(x,y,obj,perf) Cambia todas las instancias en la posicin


indicada a otras del tipo obj. perf indica si se deben ejecutar los eventos de
destruccin y creacin.instance_deactivate_all(notme) Desactiva todas las
instancias del cuarto. Si notme es true la instancia actual no es desactivada
(normalmente es lo que se desea).

instance_deactivate_object(obj) Desactiva todas las instancias en el cuarto


del objeto especificado. Tambin puedes indicar all para desactivar todas las
instancias o la id de una instancia concreta para desactivarla.

instance_deactivate_region(left,top,width,height,inside,notme) Desactiva
todas las instancias en la regin indicada (es decir, todas aquellas cuya caja
de contorno est parcial o completamente dentro de la regin indicada). Si
inside es igual a false las instancias completamente fuera de la regin son
desactivadas. Si notme es true la instancia actual no es desactivada
(normalmente es lo que se desea).

instance_activate_all() Activa todas las instancias del cuarto.

instance_activate_object(obj) Desactiva todas las instancias en el cuarto del


objeto especificado. Tambin puedes indicar all para desactivar todas las
instancias o la id de una instancia concreta para desactivarla.

instance_activate_region(left,top,width,height,inside) Activa las instancias


dentro de la regin especificada. Si inside es false las instancias fuera de la
regin son activadas.

room_speed Velocidad del juego en el cuarto actual (en steps por segundo).

fps* Nmero de cuadros que son dibujados por segundo.

current_time* Nmero de milisegundos que han pasado desde que el sistema


fue iniciado.

current_year* El ao actual.

current_month* El mes actual.

current_day* El da actual.

current_weekday* El da actual de la semana (1=domingo, , 7=sbado).

current_hour* La hora actual.

current_minute* El minuto actual.

current_second* El segundo actual.

sleep(numb) Pausa el juego durante numb milisegundos.

alarm[0..11] Valor de la alarma indicada. (Nota: las alarmas solo se


actualizan cuando el evento de alarma para el objeto contiene acciones!)

timeline_index ndice de la time line asociada con la instancia. Puedes


establecerlo a una time line en particular para usarla. Ponlo en 1 para dejar
de usar la time line para la instancia.

timeline_position Posicin actual dentro de la time line. Puedes cambiarla


para saltar o repetir ciertas partes.

timeline_speed Normalmente, en cada step la posicin en la time line se


incrementa en 1. Puedes cambiar esta cantidad configurando esta variable a
un valor diferente. Puedes usar nmeros reales, por ejemplo 0.5. Si el valor
es mayor que uno, varios momentos pueden ocurrir dentro del mismo tiempo
del step. Se realizarn en el orden correcto, por lo que no se saltar ninguna
accin.

room ndice del cuarto actual; puede cambiarse para ir a un cuarto diferente,
pero mejor usa las rutinas listadas abajo.

room_first* ndice del primer cuarto en el juego.

room_last* ndice del ultimo cuarto en el juego.

room_restart() Reiniciar el cuarto actual.

room_previous(numb)Devuelve el ndice del cuarto anterior a numb (-1 =


ninguno) pero no va a l.

room_next(numb) Devuelve el ndice del cuarto posterior a numb (-1


=ninguno).

game_end() Finaliza el juego.

game_restart() Reinicia el juego.

Los niveles ("cuartos/rooms") tienen varias propiedades adicionales:

room_width* Ancho del cuarto en pxeles.

room_height* Alto del cuarto en pxeles.

room_caption Ttulo de la ventana del cuarto.

room_persistent Indica si el cuarto es persistente.

game_save(string) Guarda el juego al archivo con nombre string.

game_load(string) Carga el juego del archivo con nombre string.

score El marcador actual.

lives El nmero de vidas.

show_score Indica si se muestra el marcador en el ttulo de la ventana.

show_lives Indica si se muestra el nmero de vidas en el ttulo de la ventana.

show_health Indica si se muestra la energa en el ttulo de la ventana.

caption_score El ttulo empleado para el marcador.

caption_lives El ttulo empleado para el nmero de vidas.

caption_health El ttulo para la energa.

event_perform(type,numb) Realiza el evento numb del tipo type para la


instancia actual

event_perform_object(obj,type,numb) Esta funcin funciona igual que la


anterior pero esta vez puedes especificar eventos en otro
objeto.

error_last Cadena de texto que indica el ltimo mensaje de error

show_debug_message(str) Muestra la cadena str en modo debug

variable_global_exists(name) Devuelve si la variable global con el nombre


especificado existe.

variable_local_exists(name) Devuelve si la variable local con el nombre


especificado existe para la instancia actual.

variable_global_get(name) Devuelve el valor de la variable global indicada.

variable_global_array_get(name,ind) Devuelve el valor de ndice ind del array


global con el nombre indicado.

variable_global_array2_get(name,ind1,ind2) Devuelve el valor de ndice ind1,


ind2 del array bidimensional global con el nombre indicado.

variable_local_get(name) Devuelve el valor de la variable local indicada para

la instancia actual.

variable_local_array_get(name,ind) Devuelve el valor de ndice ind del array


locall con el nombre indicado.

variable_local_array2_get(name,ind1,ind2) Devuelve el valor de ndice ind1,


ind2 del array bidimensional global con el nombre indicado.

variable_global_set(name,value) Otorga el valor indicado a la variable global


especificada.

variable_global_array_set(name,ind,value) Otorga el valor indicado al


elemento ind del array global especificado.

variable_global_array2_set(name,ind1,ind2,value) Otorga el valor indicado al


elemento ind 1, ind2 del array bidimensional global especificado.

variable_local_set(name,value) Otorga el valor indicado a la variable local


especificada.

variable_local_array_set(name,ind,value) Otorga el valor indicado al elemento


ind del array local especificado.

variable_local_array2_set(name,ind1,ind2,value) Otorga el valor indicado al


elemento ind 1, ind2 del array bidimensional local especificado.

set_program_priority(priority) Cambia la prioridad del programa. Debes


indicar un valor comprendido entre -3 y +3. Usando -3 el programa se
ejecutar slo si no hay otro proceso que requiera tiempo de computacin. -2
y -1 son valores por debajo de lo normal, as que otros procesos tendrn
prioridad sobre el juego. 0 es el valor normal. +1 y +2 son valores de alta

prioridad.

keyboard_lastkey Cdigo de la ltima tecla presionada. Mira ms las


constantes para los cdigos de tecla. Puedes cambiarlo, p. ej, ponerlo a 0 si
tu lo manipulaste. keyboard_key Cdigo de tecla de la tecla presionada
actualmente (mira mas abajo; 0 si no se presiona ninguna)

keyboard_lastchar ltimo carcter presionado (como string)

keyboard_string Cadena de caracteres de los ltimos 1024 caracteres


tipeados. Esta cadena solo contendr caracteres imprimibles en la pantalla.
Tambin responde a la tecla de retroceso borrando el ltimo carcter.

keyboard_set_map(key1,key2) Mapea la tecla con el cdigo de tecla key 1 a


key2.

keyboard_get_map(key) Devuelve el mapeado actual para una tecla

keyboard_unset_map() Restablece todas sus teclas a su mapa original.

keyboard_check(key) Indica si la tecla con el cdigo de tecla particular est


presionado.

keyboard_check_pressed(key) Indica si la tecla con el cdigo de tecla


particular fue presionado desde el ltimo step.

keyboard_check_released(key) Indica si la tecla con el cdigo de tecla


particular dej de presionarse desde el ltimo step.

keyboard_check_direct(key) Indica si la tecla con el cdigo de tecla es

presionada chequeando el hardware directamente. El resultado es


independiente de la aplicacin enfocada. Esta funcin permite algunos
chequeos ms. En este caso puedes emplear los cdigos vk_lshift,
vk_lcontrol, vk_lalt, vk_rshift, vk_rcontrol y vk_ralt para checar si se presiona
la tecla shift, control o alt, ya sea izquierda o derecha.

keyboard_get_numlock()Indica si BloqNum est activada.


keyboard_set_numlock(on) Activa (on=true) o desactiva (on=false) BloqNum.

keyboard_key_press(key) Simula presionar la tecla con el cdigo de tecla.

keyboard_key_release(key) Simulates a release of the key with the indicated


keycode.

vk_nokey Cdigo de tecla que representa que no hay teclas presionadas.

vk_anykey Cdigo de tecla que representa que cualquier tecla ha sido


presionada.

vk_left Cdigo para tecla de la flecha izquierda.

vk_right Cdigo para tecla de la flecha derecha.

vk_up Cdigo para tecla de la flecha arriba.

vk_down Cdigo para tecla de la flecha abajo.

vk_enter Tecla Enter o Intro.

vk_escape Tecla Escape.

vk_space Tecla Espacio.

vk_shift Tecla Shift.

vk_control Tecla Control.

vk_alt Tecla Alt.

vk_backspace Tecla Backspace o Retroceso.

vk_tab Tecla Tab.

vk_home Tecla Inicio.

vk_end Tecla Fin.

vk_delete Tecla Suprimir.

vk_insert Tecla Insertar.

vk_pageup Tecla Re Pag.

vk_pagedown Tecla Av Pag.

vk_pause Tecla Pausa/Inter.

vk_printscreen Tecla Impr Pant/Pet Sis.

vk_f1 ... vk_f12 Cdigos de tecla para las las teclas funcionales F1 hasta F12.

vk_numpad0 ... vk_numpad9 Teclas numricas en el teclado numrico.

vk_multiply Tecla de multiplicacin en el teclado numrico.

vk_divide Tecla de divisin en el teclado numrico.

vk_add Tecla de suma en el teclado numrico.

vk_subtract Tecla de substraccin en el teclado numrico.

vk_decimal Tecla de punto decimal en el teclado numrico.

vk_lshift Tecla Shift de la Izquierda.

vk_lcontrol Tecla Control de la Izquierda.

vk_lalt Tecla Alt de la Izquierda.

vk_rshift Tecla Shift de la Derecha.

vk_rcontrol Tecla Control de la Derecha.

vk_ralt Tecla Alt de la Derecha.

keyboard_clear(key) Limpia el estado de la tecla mencionada en key. Esto


significa que no generar eventos de teclado hasta que se vuelva a presionar.

io_clear() Limpia todos los estados del teclado y del ratn.

io_handle() Maneja la entrada y salida por parte del usuario, actualizando los
estados del teclado y del ratn.
keyboard_wait() Espera hasta que el usuario presione una tecla del teclado.

mouse_x* Coordenada X del ratn. No puede cambiarse.

mouse_y* Coordenada Y del ratn. No puede cambiarse.

mouse_button Botn del ratn presionado actualmente. Como valores puedes


emplear mb_none (ningn botn), mb_any (cualquier botn), mb_left (botn
izquierdo), mb_middle (botn central) o mb_right (botn derecho).

mouse_lastbutton ltimo botn presionado del ratn.

mouse_check_button(numb) Indica si se presiona el botn del ratn numb


(como valores de numb emplea mb_none, mb_left, mb_middle, o mb_right).

mouse_check_button_pressed(numb) Indica si el botn del ratn fue


presionado desde el ultimo step.

mouse_check_button_released(numb) Indica si el botn del ratn se solt


desde el ltimo step.

mouse_clear(button) limpia el estado del botn del Mouse. Esto significa


que no se generarn mas eventos del ratn hasta que se vuelva a presionar
otra vez. io_clear() Limpia todos los estados del teclado y del ratn.

io_handle() Maneja la entrada y salida por parte del usuario, actualizando los
estados del teclado y del ratn.

mouse_wait() Espera hasta que el usuario presione un botn en el ratn.

joystick_exists(id) Indica si el joystick id (1 o 2) existe.

joystick_name(id) Devuelve el nombre del joystick.

joystick_axes(id) Devuelve el nmero de ejes del joystick.

joystick_buttons(id) Devuelve el nmero de botones del joystick.

joystick_has_pov(id) Indica si el joystick tiene capacidades point-of-view.

joystick_direction(id) Devuelve el cdigo (vk_numpad1 a vk_numpad9)


correspondiente a la direccin del joystick id (1 o 2).

joystick_check_button(id,numb) Indica si el botn del joystick id es


presionado (numb est en el intervalo 1-32).

joystick_xpos(id) Devuelve la posicin (-1 a 1) del eje-x del joystick id.

joystick_ypos(id) Devuelve la posicin y del joystick id.

joystick_zpos(id) Devuelve la posicin z del joystick id (si es que cuenta con


eje z).

joystick_rpos(id) Devuelve la posicin del timn del joystick id (del cuarto


eje).

joystick_upos(id) Devuelve la posicin u del joystick id (del quinto eje).

joystick_vpos(id) Devuelve la posicin v del joystick id (del sexto eje).

joystick_pov(id) Devuelve la posicin del point-of-view del joystick id. Este es


un ngulo entre 0 y 360 grados. 0 es adelante, 90 a la derecha, 180 atrs y
270 a la izquierda. Cuando no se especifica la direccin del "point-of-view"
devuelve 1.

visible : Si visible es cierto (1) la imagen se dibuja, en caso contrario no se


dibuja. Las instancias invisibles aun son activas y crean eventos de colisin;
Simplemente no puedes verlas. Definir la visibilidad como falso
es til para por ejemplo objetos controladores (hazlos tambin no slidos
para evitar eventos de colisin con ellos) o palancas ocultas.

sprite_height* Indica el alto del sprite. Este valor no puede ser cambiado,
pero puedes utilizarlo.

sprite_xoffset* Indica el offset horizontal del sprite, como esta definido en las
propiedades del sprite. Este valor no puede ser cambiado, pero puedes
utilizarlo.

sprite_yoffset* Indica el offset horizontal del sprite, como esta definido en las
propiedades del sprite. Este valor no puede ser cambiado, pero puedes
utilizarlo.

background_color Color de fondo para el cuarto.

background_showcolor Indica si se debe limpiar la pantalla con el color de


fondo.

background_visible[0..7] Indica si el fondo indicado es visible o no. Por


ejemplo, para indicar que el fondo nmero 3 no debe mostrarse, deberamos
hacerlo as:

background_visible[3]=false;

background_foreground[0..7] Indica si el fondo est en primer plano (se


dibujar encima de todo lo dems, tapando todo lo que quede por debajo).

background_index[0..7] Imagen de fondo asignada al fondo indicado.

background_x[0..7] Posicin x del fondo.

background_y[0...7] Posicin y del fondo.

background_width[0...7]* Anchura de la imagen del fondo.

background_height[0...7]* Altura de la imagen del fondo.

background_htiled[0..7] Indica si el fondo debe repetirse horizontalmente

para llenar toda la pantalla.

background_vtiled[0..7] Indica si el fondo debe repetirse verticalmente para


llenar toda la pantalla.

background_xscale[0..7] Factor de escalado horizontal del fondo: un nmero


entre 0 y 1 har la imagen ms pequea y un nmero mayor que 1 la har
ms grande. (Debe ser un valor positivo)

background_yscale[0..7] Factor de escalado vertical del fondo: un nmero


entre 0 y 1 har la imagen ms pequea y un nmero mayor que 1 la har
ms grande. (Debe ser un valor positivo)

background_hspeed[0..7] Velocidad horizontal de scrolling del fondo, en


pxeles por step.

background_vspeed[0..7] Velocidad vertical de scrolling del fondo, en pxeles


por step. El scrolling es el movimiento del fondo, por lo tanto esto se refiere
al movimiento vertical del fondo.

background_blend[0..7] Color de teido usado al dibujar el fondo. El valor por


defecto es c_white. Esta variable slo se puede usar en la versin registrada!

background_alpha[0..7] Factor de transparencia usado al dibujar el fondo. 1


es el valor normal (imagen totalmente opaca) y 0 es totalmente transparente
(utiliza valores intermedios para dibujar fondos parcialmente
transparentes).

draw_sprite(sprite,subimg,x,y) Dibuja la subimagen subimg (-1 = subimagen


actual) del sprite con ndice sprite con su origen en la posicin (x,y) sin
teirlo de ningn color y sin usar transparencia.

draw_sprite_stretched(sprite,subimg,x,y,w,h) Dibuja la subimagen subimg del


sprite con ndice sprite de forma que llene la regin con esquina superiorizquierda en (x,y), anchura w y altura h.

draw_sprite_tiled(sprite,subimg,x,y) Dibuja el sprite repitindolo horizontal y


verticalmente de forma que llene toda la pantalla. (x,y) es la posicin donde
se dibuja una de las copias del sprite.

draw_sprite_part(sprite,subimg,left,top,width,height,x,y) Dibuja la parte del


sprite indicada con su esquina superior izquierda en (x,y). La parte del sprite
que queremos dibujar se indica con left y top (coordenadas de
la esquina superior-izquierda) y width y height (anchura y altura del trozo que
queremos dibujar).

draw_background(back,x,y) Dibuja el fondo en la posicin (x,y), sin teirlo de


ningn color y sin transparencia.

draw_background_stretched(back,x,y,w,h) Dibuja el fondo escalado de forma


que ocupe la regin indicada.

draw_background_tiled(back,x,y) Dibuja el fondo repitindolo en horizontal y


vertical de forma que llene toda la pantalla.

draw_background_part(back,left,top,width,height,x,y) Dibuja el trozo indicado


del fondo con su esquina superior-izquierda en la posicin (x,y).

draw_sprite_ext(sprite,subimg,x,y,xscale,yscale,rot,color,alpha) Dibuja el
sprite escalado con factores xscale (horizontal) e yscale (vertical) y rotado rot
grados en sentido antihorario. color indica el color con el que
queremos teir el sprite (usa el color blanco c_white si no quieres teir el
sprite de ningn color) y alpha indica el factor de transparencia. Un valor

igual a 0 hace la imagen totalmente transparente y un valor igual a 1


la hace totalmente opaca.

draw_sprite_stretched_ext(sprite,subimg,x,y,w,h,color,alpha) Dibuja el sprite


escalado de forma que ocupe la regin indicada: esquina superior izquierda
en (x,y), anchura w y altura h. color indica el color de teido y
alpha el factor de transparencia.

draw_sprite_tiled_ext(sprite,subimg,x,y,xscale,yscale,color,alpha) Dibuja el
sprite repetido de forma que cubra toda la pantalla con factores de escala,
color de teido y factor de transparencia.

draw_sprite_part_ext(sprite,subimg,left,top,width,height,x,y,xscale,yscale,col
or,alpha) Dibuja la parte indicada del sprite con factores de escala, color de
teido y factor de transparencia.

draw_sprite_general(sprite,subimg,left,top,width,height,x,y,xscale,yscale,rot,c
1,c2,c3,c4,alpha) La funcin ms general para dibujar sprites. Dibuja la parte
indicada de la subimagen subimg (-1 = subimagen actual) del sprite con
ndice sprite situando su esquina superior-izquierda en la posicin (x,y) y con
factores de escala, ngulo de rotacin, un color de teido para cada una de
las 4 esquinas del sprite y un factor de transparencia.

draw_background_general(back,left,top,width,height,x,y,xscale,yscale,rot,c1,
c2,c3,c4,alpha) La funcin ms general para dibujar fondos. Dibuja la parte
indicada del fondo situando su esquina superior-izquierda en la posicin (x,y)
con factores de escala, ngulo de rotacin, un color de teido para cada una
de las cuatro esquinas (en el orden arriba-izquierda, arriba-derecha, abajoderecha y abajo-izquierda) y un factor de transparenciadraw_clear(col) Pinta
todo el cuarto del color especificado.

draw_clear_alpha(col,alpha) Pinta todo el cuarto del color especificado y con


el factor de transparencia indicado (muy til para superficies).

draw_point(x,y) Dibuja un punto en (x,y) en el color de dibujo actual.


draw_line(x1,y1,x2,y2) Dibuja una lnea desde (x1,y1) hasta (x2,y2).

draw_rectangle(x1,y1,x2,y2,outline) Dibuja un rectngulo. outline indica si


slo debe dibujarse el borde (true) o si el rectngulo debe estar relleno
(false).

draw_roundrect(x1,y1,x2,y2,outline) Dibuja un rectngulo redondeado.


outline indica si slo debe dibujarse el borde (true) o si el rectngulo debe
estar relleno (false).

draw_triangle(x1,y1,x2,y2,x3,y3,outline) Dibuja un tringulo. outline indica si


slo debe dibujarse el borde (true) o si debe estar relleno (false).

draw_circle(x,y,r,outline) Dibuja un crculo con su centro en (x,y) y radio r.


outline indica si slo debe dibujarse el borde (true) o si debe estar relleno
(false).

draw_ellipse(x1,y1,x2,y2,outline) Dibuja una elipse. outline indica si slo debe


dibujarse el borde (true) o si debe estar rellena (false).

draw_arrow(x1,y1,x2,y2,size) Dibuja una flecha desde (x1,y1) hasta (x2,y2).


size indica el tamao de la flecha en pxeles.

draw_button(x1,y1,x2,y2,up) Dibuja un botn. up indica si est pulsado (0) o


no (1).

draw_path(path,x,y,absolute) Con esta funcin puedes dibujar el path


indicado en el cuarto con su comienzo en la posicin (x,y). Si absolute es true
el path se dibuja en la posicin en la que fue definido y los valores
de x e y son ignorados.

draw_healthbar(x1,y1,x2,y2,amount,backcol,mincol,maxcol,direction,showba
ck,showborder) Con esta funcin puedes dibujar una barra de vida (o una
barra que indique cualquier otra cosa como poder, magia,). Los parmetros
x1, y1, x2 e y2 indican el rea total de la barra. amount indica el porcentaje
de la barra que debe estar relleno (debe estar entre 0 y 100). backcol es el
color de fondo de la barra. mincol y maxcol indican el color cuando el
porcentaje de llenado (parmetro amount) es 0 y 100 respectivamente

draw_set_color(col) Indica el color que debe usarse para dibujar primitivas.

draw_set_alpha(alpha) Indica el factor de transparencia que debe usarse para


dibujar primitivas. Debe estar comprendido en el rango 0-1. 0 significa
totalmente transparente y 1 totalmente opaco.

draw_get_color() Devuelve el color general de dibujo utilizado para dibujar


primitivas.

draw_get_alpha()Devuelve el factor de transparencia general de dibujo


utilizado para dibujar primitivas.

c_aqua

c_black

c_blue

c_dkgray

c_fuchsia

c_gray

c_green

c_lime

c_ltgray

c_maroon

c_navy

c_olive

c_purple

c_red

c_silver

c_teal

c_white

c_yellow

make_color_rgb(red,green,blue) Devuelve un color con los componentes


indicados de rojo,verde y azul. Los valores indicados deben estar entre 0 y
255 (ambos inclusive).

make_color_hsv(hue,saturation,value) Devuelve un color con los


componentes indicados de brillo, saturacin y valor. Los valores indicados
deben estar entre 0 y 255 (ambos inclusive).

color_get_red(col) Devuelve el componente de rojo del color.

color_get_green(col) Devuelve el componente de verde del color.

color_get_blue(col) Devuelve el componente de azul del color.

color_get_hue(col) Devuelve el componente de brillo del color.

color_get_saturation(col) Devuelve el componente de saturacin del color.

color_get_value(col) Devuelve el componente de valor del color.

merge_color(col1,col2,amount) Devuelve un color resultante de mezclar los


dos colores indicados. La mezcla se determina por el parmetro amount: un
valor igual a 0 corresponde a col1, un valor de 1 corresponde a
col2 y un valor intermedio hace que se mezclen los dos colores

draw_getpixel(x,y) Devuelve el color del pxel en la posicin (x,y) del cuarto.


Esta funcin no es muy rpida, as que sala con cuidado.

screen_save_part(fname,x,y,w,h) Salva la parte de la pantalla indicada a un


archive bmp.

draw_set_font(font) Indica la fuente que debe usarse para dibujar texto.


Puedes indicar el valor -1 para usar la fuente por defecto (Arial 12).

draw_set_halign(halign) Indica la alineacin horizontal del texto.

fa_left izquierda

fa_center centrada

fa_right derecha

draw_set_valign(valign) Indica la alineacin vertical del texto.

fa_top arriba

fa_middle centrada

fa_bottom abajo

string_width(string) Anchura que el texto indicado ocupara si se dibujara con


la fuente actual usando la funcin draw_text(). Puedes usar esta funcin para
posicionar los grficos con precisin.

string_height(string) Altura que el texto indicado ocupara si se dibujara con


la fuente actual usando la funcin draw_text(). Puedes usar esta funcin para
posicionar los grficos con precisin.

string_width_ext(string,sep,w) Anchura que el texto indicado ocupara si se


dibujara con la fuente actual usando la funcin draw_text_ext(). Puedes usar
esta funcin para posicionar los grficos con precisin.

string_height_ext(string,sep,w) Altura que el texto indicado ocupara si se


dibujara con la fuente actual usando la funcin draw_text_ext(). Puedes usar
esta funcin para posicionar los grficos con precisin.

draw_text_ext_transformed(x,y,string,sep,w,xscale,yscale,angle) Combina las


funciones draw_text_ext() y draw_text_transformed(). De esta forma es
posible dibujar textos multilneas rotados o escalados.

draw_text_color(x,y,string,c1,c2,c3,c4,alpha) Dibuja el texto indicado


aplicando a cada esquina el color indicado en el orden arriba-izquierda,
arriba-derecha, abajo-derecha, abajo-izquierda y con factor de
transparencia alpha (0-1).

draw_text_ext_color(x,y,string,sep,w,c1,c2,c3,c4,alpha) Similar a
draw_text_ext() pero con vrtices coloreados.

draw_text_ext_transformed_color(x,y,string,sep,w,xscale,yscale,angle,c1,c2,c
3,c4,alpha) Similar a draw_text_ext_transformed()pero con vrtices
coloreados.

draw_point_color(x,y,col1) Dibuja un punto en la posicin (x,y) con el color


indicado.

draw_line_color(x1,y1,x2,y2,col1,col2) Dibuja una lnea desde (x1,y1) hasta


(x2,y2), interpolando el color entre col1 y col2.

draw_rectangle_color(x1,y1,x2,y2,col1,col2,col3,col4,outline) Dibuja un
rectngulo. Los cuatro colores indican los colores de los vrtices. outline
indica si slo debe dibujarse el contorno del rectngulo (true) o si debe
estar relleno (false).

draw_roundrect_color(x1,y1,x2,y2,col1,col2,outline) Dibuja un rectngulo


redondeado. col1 es el color en el centro del rectngulo y col2 en el borde.
outline indica si slo debe dibujarse el contorno del rectngulo o si
debe estar relleno.

draw_triangle_color(x1,y1,x2,y2,x3,y3,col1,col2,col3,outline) Dibuja un
tringulo. Los tres colores son los de los vrtices del tringulo. outline indica
si slo debe dibujarse el contorno del tringulo o si debe estar
relleno.

draw_circle_color(x,y,r,col1,col2,outline) Dibuja un crculo en (x,y) con radio r.


col1 es el color en el centro y col2 en el borde. outline indica si slo debe
dibujarse el contorno del crculo (true) o si ste debe estar
relleno (false).

draw_ellipse_color(x1,y1,x2,y2,col1,col2,outline) Dibuja una elipse. col1 es el


color en el centro y col2 en el borde. outline indica si slo debe dibujarse el
contorno de la elipse (true) o si ste debe estar rellena
(false).

pr_pointlist Los vrtices son un grupo de puntos.

pr_linelist Los vrtices son un grupo de lneas. Cada pareja de puntos forma
una lnea, por lo que debe haber un nmero par de puntos.

pr_linestrip Los vrtices forman una poli-lnea de forma que el primer punto

se conecta al segundo, el segundo al tercero, etc...El ltimo punto no se


conecta al primero.

pr_trianglelist Los vrtices son un grupo de tringulos. Cada triada de puntos


forma un tringulo, luego el nmero de puntos debe ser un mltiplo de 3.

pr_trianglestrip Los vrtices son un grupo de tringulos, pero esta vez de


forma distinta. Los tres primeros puntos forman el primer tringulo. Los dos
ltimos puntos de este tringulo junto con el siguiente punto
forman el segundo tringulo...

pr_trianglefan Similar a la funcin anterior, pero esta vez el primer punto


forma parte de todos los tringulos. Cada nuevo punto especifica un nuevo
tringulo formado tambin por el punto anterior y por el primer punto.

draw_primitive_begin(kind) Comenzar a definir una primitiva del tipo


indicado.

draw_vertex(x,y) Aade el vrtice (x,y) a la primitiva, usando los valores


generales de dibujo de color y transparencia.

draw_vertex_color(x,y,col,alpha) Aade el vrtice (x,y) a la primitiva, con los


valores de color y transparencia especificados. De esta forma puedes crear
primitivas que cambian gradualmente de color u opacidad.

draw_primitive_end() Terminar la definicin de la primitiva. En este momento


es cuando se dibuja la primitiva.

sprite_get_texture(spr,subimg) Devuelve la id de la textura correspondiente a


la subimagen subimg del sprite indicado.

background_get_texture(back) Devuelve la id de la textura correspondiente al


fondo indicado.

texture_preload(texid) Carga la textura en la memoria de video


inmediatamente.

texture_set_priority(texid,prio) Cuando no hay memoria grfica suficiente


algunas texturas se eliminarn temporalmente para hacer sitio a otras que se
necesiten. Las texturas con menor prioridad se eliminarn
primero.

texture_get_width(texid) Devuelve la anchura de la textura con la id


especificada. Esta anchura ser un valor comprendido entre 0 y 1.

texture_get_height(texid) Devuelve la altura de la textura con la id


especificada. Esta altura ser un valor comprendido entre 0 y 1.

draw_primitive_begin_texture(kind,texid) Comienza la definicin de una


primitiva del tipo indicado con la textura indicada.

draw_vertex_texture(x,y,xtex,ytex) Aade el vrtice (x,y) a la primitiva con la


posicin (xtex,ytex) en la textura, usando los valores generales de dibujo de
color y transparencia. xtex e ytex deben estar comprendidos
entre 0 y 1.

draw_vertex_texture_color(x,y,xtex,ytex,col,alpha) Aade el vrtice (x,y) a la


primitiva con la posicin (xtex,ytex) en la textura, usando le color de teido y
transparencia indicados.

draw_primitive_end() Termina la descripcin de la primitiva, dibujndola

texture_set_interpolation(linear) Indica si debe usarse interpolacin lineal


(true) o utilizar el pxel ms cercano (false). La interpolacin lineal consigue
texturas ms suaves, pero pueden parecer borrosas o hacer que
el juego se ralentice.

texture_set_blending(blend) Indica si debe usarse blending para el color y la


transparencia. Blending es la capacidad para que se mezclen. Esta propiedad
tambin afecta a la forma en que se dibujan los sprites y
fondos.

texture_set_repeat(repeat) Indica si se permite que la textura se repita. Si se


especifica un valor mayor que 1, el resto no se dibuja. Sin embargo, si
ponemos esta propiedad a true la textura se repetir hasta llenar la
primitiva por completo.

draw_set_blend_mode(mode) Indica el modo de mezcla a usar de entre los


siguientes: bm_normal, bm_add (suma), bm_subtract (resta), y bm_max
(mximo). No olvides volver a poner el modo normal cuando termines lo que
ests haciendo.

draw_set_blend_mode_ext(src,dest) Indica el modo de mezcla que se debe


usar para la fuente y el destino. El color resultante se calcula aplicando a
cada color (fuente y destino) un factor diferente

bm_zero: El factor de mezcla es (0, 0, 0, 0).

bm_one: El factor de mezcla es (1, 1, 1, 1).

bm_src_color: El factor de mezcla es (Rf, Gf, Bf, Af).

bm_inv_src_color: El factor de mezcla es (1Rf, 1Gf, 1Bf, 1Af).

bm_src_alpha: El factor de mezcla es (Af, Af, Af, Af).

bm_inv_src_alpha: El factor de mezcla es (1Af, 1Af, 1Af, 1Af).

bm_dest_alpha: El factor de mezcla es (Ad, Ad, Ad, Ad).

bm_inv_dest_alpha: El factor de mezcla es (1Ad, 1Ad, 1Ad, 1Ad).

bm_dest_color: El factor de mezcla es (Rd, Gd, Bd, Ad).

bm_inv_dest_color: El factor de mezcla es (1Rd, 1Gd, 1Bd, 1Ad).

bm_src_alpha_sat: El factor de mezcla es (f, f, f, 1); f = min(Af, 1Ad).

surface_create(w,h) Crea una superficie con la anchura y altura indicadas. La


funcin devuelve la id de la superficie que debe ser usada en las dems
funciones.

surface_free(id) Libera la memoria utilizada por la superficie.

surface_exists(id) Devuelve si la superficie con la id especificada existe

screen_redraw() Redibuja la pantalla ejecutando todos los eventos de dibujo.

screen_refresh() Refresca la pantalla usando la imagen del cuarto actual sin


ejecutar los eventos de dibujo.

set_automatic_draw(value) Indica si el cuarto se debe dibujar


automticamente (true por defecto) o no (false).

set_synchronization(value) Indica si se debe sincronizar el dibujo con la


frecuencia de refresco del monitor.

screen_wait_vsync() Espera hasta la siguiente sincronizacin vertical del


monitor.

sound_play(index) Reproduce el sonido indicado una vez. Si el sonido es


msica de fondo, la actual es parada.

sound_loop(index) Reproduce el sonido indicado, rebobinndolo


continuamente. Si el sonido es msica de fondo, la actual es parada.

sound_stop(index) Para el sonido indicado. Si hay varios sonidos con este


ndice reproducindose simultneamente, todos son parados.

sound_stop_all() Para todos los sonidos.

sound_isplaying(index) Devuelve si (una copia de) el sonido indicado se esta


reproduciendo

sound_volume(index,value) Cambia el volumen del sonido indicado (0 = bajo,


1 = alto,)

sound_global_volume(value) Cambia el volumen global de todos los sonidos


(0=bajo, 1=alto)

sound_fade(index,value,time) Cambia el volumen del sonido indicado a el


nuevo value (0=bajo, 1=alto) durante el tiempo indicado (en milisegundos).
Esto puede ser usado para ascender o descender el sonido (p.e.
para entradas).

sound_pan(index,value) Cambia el pan del sonido indicado (-1=izquierda,


0,centro, 1=derecha).

sound_background_tempo(factor) Cambia el tempo de la msica (si es midi).


factor indica el factor a multiplicar por el tempo. 1 es el tempo normal.
Valores mayores corresponden a un tempo ms rpido. Debe
oscilar entre 0.01 y 100.

sound_set_search_directory(dir) Establece el directorio en donde se deben


buscar archivos

direct music. El string DIR no debe incluir la diagonal al final.

sound_effect_set(snd,effect) Establece una (combinacin de) efecto(s) de


sonido para el sonido indicado

se_none

se_chorus

se_echo

se_flanger

se_gargle

se_reverb

se_compressor

se_equalizer

sound_effect_chorus(snd,wetdry,depth,feedback,frequency,wave,delay,phase
) Establece los parmetros para el efecto de chorus al sonido indicado.

sound_effect_echo(snd,wetdry,feedback,leftdelay,rightdelay,pandelay)
Establece los parmetros para el efecto de echo al sonido indicado.

sound_effect_flanger(snd,wetdry,depth,feedback,frequency,wave,delay,phase
) Establece los parmetros para el efecto de flanger al sonido indicado.

sound_effect_gargle(snd,rate,wave) Establece los parmetros para el efecto


de gargle al sonido indicado.

sound_effect_reverb(snd,gain,mix,time,ratio) Establece los parmetros para


el efecto de reverb al sonido indicado.

sound_effect_compressor(snd,gain,attack,release,threshold,ratio,delay)
Establece los parmetros para el efecto de compressor al sonido indicado.

sound_effect_equalizer(snd,center,bandwidth,gain) Establece los parmetros


para el efecto de equalizer al sonido indicado.

sound_3d_set_sound_position(snd,x,y,z) Establece la posicin al sonido


indicado con respecto a la posicin del oyente en el espacio.

sound_3d_set_sound_velocity(snd,x,y,z) Establece la velocidad al sonido


indicado con el vector indicado en el espacio.

sound_3d_set_sound_distance(snd,mindist,maxdist) Establece la distancia


mnima a la cual el sonido est en su mxima amplitud, y la distancia
mxima a la cual el sonido ya no se debe oir.

sound_3d_set_sound_cone(snd,x,y,z,anglein,angleout,voloutside)
Normalmente el sonido tiene la misma amplitud, a una distancia dada, en
todas las direcciones.

cd_init() Debe llamarse antes de usar las otras funciones, as como cuando se
cambia un CD (o simplemente de tiempo a tiempo).

cd_present() Devuelve si hay un cd en el dispositivo CD predeterminado.


cd_number() Devuelve el numero de pistas en el CD.

cd_playing() Devuelve si el CD se est reproduciendo.

cd_paused() Devuelve si el CD esta pausado o parado.

cd_track() Devuelve el nmero de la pista que se est reproduciendo (1=la


primera)

cd_length() Devuelve la longitud total del CD en milisegundos.

cd_track_length(n) Devuelve la longitud de una pista n del CD en


milisegundos

cd_position() Devuelve la posicin actual en el CD en milisegundos.

cd_track_position() Devuelve la posicin actual de la pista reproducida, en


milisegundos.
cd_play(first,last) Le indica al CD desde que pista a que pista debe reproducir.
Si deseas que reproduzca todo el CD, indica 1 y 1000 como argumentos.

cd_stop()Deja de reproducir.

cd_pause().Pausa la reproduccin.

cd_resume().Continua la reproduccin.

cd_set_position(pos). Establece la posicin en el CD, en milisegundos.

cd_set_track_position(pos). Establece la posicin de la pista actual en


milisegundos.

cd_open_door()Abre la caja del Reproductor de CDs.

cd_close_door()Cierra la caja del Reproductor de CDs.


MCI_command(str) Esta funcin enva el comando al sistema multimedia de
Windows usando el Media Control Interface (MCI, Interfaz de Control de
Medios). Devuelve la cadena de texto de resultado.

MCI_command(str) Esta funcin enva el comando al sistema multimedia de


Windows usando el Media Control Interface (MCI, Interfaz de Control de
Medios). Devuelve la cadena de texto de resultado.

show_image(fname,full,delay) Muestra una ventana con una imagen. fname


es el nombre del archivo de imagen (nicamente .bmp, .jpg y .wmf), pero
debes poner los archivos en el directorio del juego tu mismo. FULL indica si
deseas mostrarlo en pantalla completa. DELAY es el retardo en segundos
antes de volver al juego.

show_video(fname,full,loop) Muestra una ventana de video. FNAME es el


nombre del archivo de video (.avi,.mpg), pero debes poner este archivo en el
directorio del juego tu mismo. FULL indica si deseas mostrarlo en pantalla
completa. DELAY es el retardo en segundos antes de volver al juego.

show_info() Muestra la informacin del juego.

load_info(fname) Carga la informacin del juego con el nombre de archive


FNAME, el cual debera ser un archivo RTF. Esto hace posible mostrar
diferentes archivos de ayuda, en diferentes momentos.

show_message(str) Muestra un cuadro de dialogo con un string STR como


mensaje.

show_message_ext(str,but1,but2,but3) Muestra un cuadro de dilogo con el


string STR como mensaje, ms un mximo de 3 botones. But1,but2 y but3
contienen el texto de cada botn. Un string vaco significa que el botn no se
mostrar. En los textos puedes usar el smbolo & para indicar que el
siguiente carcter debe ser usado como acceso directo a ese botn (p.e.
&Acepto, si se presiona A se simula la presin del botn). Esta funcin
devuelve el nmero del botn presionado.

get_integer(str,def) Pregunta un nmero al jugador por medio de un cuadro

de dilogo. STR es el mensaje, DEF es el nmero predeterminado que se


mostrar.

get_string(str,def) Pregunta un string al jugador en un cuadro de dilogo. STR


es el mensaje, DEF es el valor predeterminado.

message_text_font(name,size,color,style) Establece la fuente para el texto de


los cuadros de dilogo (esta debe ser una fuente normal de Windows, no una
de las fuentes de recurso que usas en tu juego!) STYLE indica el estilo de la
fuente (0=normal, 1=negrita, 2=cursiva, 3=negrita y cursiva).

message_button_font(name,size,color,style) Establece la fuente para los


botones en los cuadros de dilogo. STYLE indica el estilo de fuente.
(0=normal, 1=negrita, 2=cursiva, 3=negrita y cursiva).

message_input_font(name,size,color,style) Establece la fuente para el campo


de entrada en los cuadros de dilogo. STYLE indica el estilo de fuente.
(0=normal, 1=negrita, 2=cursiva, 3=negrita y cursiva).

message_mouse_color(col) Establece el color de la fuente para los botones en


los cuadros de dilogo cuando el mouse est sobre ellos.

message_input_color(col) Establece el color para el fondo del campo de


entrada en los cuadros de dilogo.

message_caption(show,str) Establece el ttulo del cuadro de dilogo. SHOW


indica si se debera mostrar el borde (1) o no (0) y STR indica el ttulo cuando
el borde si es mostrado.

message_position(x,y) Establece la posicin para los cuadros de dilogo en la


pantalla.

show_menu(str,def) Muestra un men pop-up. STR indica el texto del men.


Este consiste en diferentes opciones del men con una barra vertical entre
ellas. Por ejemplo, str = menu0|menu1|menu2. Cuando la primera opcin es
seleccionada, se devuelve un 0, para la segunda un 1, etc. Cuando ninguna
opcin es seleccionada, el valor predeterminado def es devuelto.

show_menu_pos(x,y,str,def) Muestra un men popup, como en la funcin


anterior, pero en la posicin x, y en la pantalla.

get_open_filename(filter,fname) Le pide al jugador un archive para abrir, con


el filtro (FILTER) dado. El filtro tiene la forma nombre1|mscara1|nombre2|
mscara2 . Una mscara contiene diferentes opciones con un ';' (punto y
coma) entre ellas. '*' (asterisco) significa cualquier string.

Por ejemplo: Mapa de bits|*bmp;*.wmf.Si el jugador presiona Cancel, un


string vaco es devuelto.

get_save_filename(filter,fname) Pide un archivo para guardarlo, con el filtro


dado. Si el jugador presiona Cancel, un string vaco es devuelto.

get_directory(dname) Pide un directorio. DNAME es el nombre


predeterminado. Si el usuario presiona Cancel, un string vaco es devuelto.

get_directory_alt(capt,root) Una forma alternativa de preguntar por un


directorio. CAPT es el titulo a mostrar. ROOT es la raz del diagrama del
directorio a mostrar. Usa un string vaco para mostrar el diagrama completo.
Si el usuario presiona Cancel, un string vaco es devuelto.

show_error(str,abort) Muestra un mensaje de error estndar (y/o escribe el


error al archivo de registros). ABORT indica si el juego debera cerrarse (trueabortar, false-ignorar).

highscore_show(numb) Muestra la tabla de highscores. NUMB es un nuevo

puntaje. Si el puntaje es suficientemente bueno para ser agregado a la lista,


el jugador puede introducir un nombre. Usa -1 para nicamente mostrar la
lista actual.

highscore_set_background(back) Establece la imagen de fondo. BACK debe


ser el ndice de uno de los recursos de fondo.

highscore_set_border(show) Establece si la forma de highscore debe mostrar


un borde o no.

highscore_set_font(name,size,style) Establece la fuente usada para el texto


en la tabla. (Esta es una fuente normal de Windows, no una de los recursos
de fuente). Debes especificar un nombre y un estilo (0=normal, 1=negrita,
2=cursiva, 3=negrita y
cursiva).highscore_set_colors(back,new,other)Establece los colores usados
para el fondo, el de una nueva entrada en la tabla, y el de las dems
entradas.
entradas.

highscore_set_strings(caption,nobody,escape) Cambia los diferentes strings


predeterminados usados al mostrar la tabla de highscores. CAPTION es el
ttulo de la forma. NOBODY es el string usado cuando no hay nadie en un
lugar en particular. ESCAPE es el string en el inferior indicando que se debe
presionar la tecla ESC.

highscore_show_ext(numb,back,border,col1,col2,name,size) Muestra la tabla


de records con diferentes opciones (tambin puede lograrse usando las
funciones anteriores). NUMB es el nuevo puntaje. Si el puntaje es
suficientemente bueno para ser agregado a la lista, el jugador puede
introducir un nombre. Usa -1 para mostrar simplemente la lista actual. BACK
es la imagen de fondo a usar, BORDER indica si se debe mostrar o no el
borde. COL1 es el color para la nueva entrada, COL2 para las dems
entradas. NAME es el nombre de la fuente a usar, y SIZE es el tamao de la
fuente.

highscore_clear() Limpia la tabla de puntajes.

highscore_add(str,numb) Agrega al jugador con el nombre STR y puntaje


NUMB a la lista.

highscore_add_current() Agrega el puntaje actual a la lista de records.


Tambin se le pide al jugador que proporcione un nombre.

highscore_value(place) Devuelve el puntaje de la persona en el lugar


PLACE(1-10). Esto puede ser usado para dibujar tu propia lista de puntajes.

highscore_name(place) Devuelve el nombre de la persona con el lugar


PLACE(1-10).

draw_highscore(x1,y1,x2,y2) Dibuja la tabla de puntajes en la room, con la


caja dada (x1,y1,x2,y2), usando la fuente actual.

sprite_exists(ind) Devuelve si el sprite con el ndice (ind) especificado existe.

sprite_get_name(ind) Devuelve el nombre del sprite con el ind especificado.

sprite_get_number(ind) Devuelve el nmero de subimgenes del sprite con el


ndice dado.

sprite_get_width(ind) Devuelve el ancho del sprite con el ndice especificado.

sprite_get_height(ind) Devuelve la altura del sprite con el ndice dado.

sprite_get_transparent(ind) Devuelve si el sprite con el ndice especificado

utiliza transparencia.

sprite_get_smooth(ind) Devuelve si el sprite tiene los bordes suavizados.

sprite_get_preload(ind) Devuelve si el sprite debe ser cargado al principio del


juego.

sprite_get_xoffset(ind) Devuelve el x-offset (punto de origen en x) del sprite


con el ndice especificado.

sprite_get_yoffset(ind) Devuelve el y-offset (punto de origen en y) del sprite


con el ndice especificado.

sprite_get_bbox_left(ind) Devuelve el valor del lmite izquierdo del sprite


(bounding box) con el ndice especificado.

sprite_get_bbox_right(ind) Devuelve el valor del lmite derecho del sprite


(bounding box) con el ndice especificado.

sprite_get_bbox_top(ind) Devuelve el valor del lmite superior del sprite


(bounding box) con el ndice especificado.

sprite_get_bbox_bottom(ind) Devuelve el valor del lmite inferior del sprite


(bounding box) con el ndice especificado.

sprite_get_bbox_mode(ind) Devuelve el modo usado para la caja de controno


del sprite (0=automatic, 1=full image, 2=manual).

sprite_get_precise(ind) Devuelve si el sprite con el ndice dado utiliza la


colisin precisa (precise collision checking).

sound_exists(ind) Devuelve si un sonido con el ndice dado existe.

sound_get_name(ind) Devuelve el nombre del sonido con el ndice dado.

sound_get_kind(ind) Devuelve el tipo de sonido del sonido especificado


(0=normal, 1=background, 2=3d, 3=mmplayer).

sound_get_preload(ind) Devuelve si el sonido especificado debe cargarse al


principio del juego.

sound_discard(index) Elimina el sonido indicado de la memoria de audio.

sound_restore(index) Carga el sonido indicado en la memoria de audio para


que se pueda utilizar cuando se necesite inmediatamente.

background_exists(ind) Devuelve si el background (fondo) con el ndice dado


existe.

background_get_name(ind) Devuelve el nombre del fondo con el ndice


indicado.

background_get_width(ind) Devuelve el ancho del fondo con el ndice


indicado.

background_get_height(ind) Devuelve la altura del fondo con el ndice


especificado.

background_get_transparent(ind) Devuelve si el fondo con el ndice indicado

es transparente.

background_get_smooth(ind) Devuelve si el fondo tiene los bordes


suavizados.

background_get_preload(ind) Devuelve si el fondo debe ser cargado al


principio del juego.

font_exists(ind) Devuelve si la fuente con el ndice especificado existe.

font_get_name(ind) Devuelve el nombre de la fuente con el ndice


especificado.

font_get_fontname(ind) Devuelve el nombre de fuente (arial, verdana,...) de


la fuente con el ndice especificado.

font_get_bold(ind) Devuelve si la fuente con el ndice especificado est en


negrita.

font_get_italic(ind) Devuelve si la fuente con el ndice especificado es cursiva.

font_get_first(ind) Devuelve el primer carcter de la fuente con el ndice


especificado.

font_get_last(ind) Devuelve el ltimo carcter de la fuente con el ndice


especificado.

path_exists(ind) Devuelve si el path con el ndice dado existe.

path_get_name(ind) Devuelve el nombre del path con el ndice dado.

path_get_length(ind) Devuelve la longitud del path con el ndice indicado.

path_get_kind(ind) Devuelve el tipo de conexiones del path con el ndice


especificado (0=recto, 1=curvo).

path_get_closed(ind) Devuelve si el path es cerrado o no.

path_get_precision(ind) Devuelve la precisin utilizado para paths


redondeadas.

path_get_number(ind) Devuelve el nmero de puntos del path.

path_get_point_x(ind,n) Devuelve la coordenada x del punto n del path. El


primer punto es el 0.

path_get_point_y(ind,n) Devuelve la coordenada y del punto n del path. El


primer punto es el 0.

path_get_point_speed(ind,n) Devuelve la velocidad del punto n del path. El


primer punto es el 0.

path_get_x(ind,pos) Devuelve la coordenada x en la posicin pos del path


(pos debe estar comprendida entre 0 y 1).

path_get_y(ind,pos) Devuelve la coordenada y en la posicin pos del path


(pos debe estar comprendida entre 0 y 1).

path_get_speed(ind,pos) Devuelve la velocidad en la posicin pos del path


(pos debe estar comprendida entre 0 y 1).

script_exists(ind) Devuelve si un script con el ndice indicado existe.

script_get_name(ind) Devuelve el nombre del script con el ndice indicado.

script_get_text(ind) Devuelve la cadena de texto del script con el ndice dado.

timeline_exists(ind) Devuelve si la time line con el ndice especificado existe.

timeline_get_name(ind) Devuelve el nombre de la time line con el ndice


especificado.

object_exists(ind) Devuelve si el objeto con el ndice dado existe.

object_get_name(ind) Devuelve el nombre del objeto con el ndice dado.

object_get_sprite(ind) Devuelve el ndice del sprite por defecto del objeto con
el ndice especificado.

object_get_solid(ind) Devuelve si el objeto con el ndice dado es slido por


defecto.

object_get_visible(ind) Devuelve si el objeto con el ndice dado es visible por


defecto.

object_get_depth(ind) Devuelve la profundidad del objeto con el ndice dado.

object_get_persistent(ind) Devuelve si el objeto con el ndice sealado es


persistente.

object_get_mask(ind) Devuelve el ndice de la mscara del objeto con el


ndice dado (-1 si no tiene mscara especial).

object_get_parent(ind) Devuelve el ndice del objeto pariente del objeto ind (1 si no tiene pariente).

object_is_ancestor(ind1,ind2) Devuelve si el objeto ind2 es un parent del


objeto ind1.

room_exists(ind) Devuelve si el cuarto con el ndice sealado existe.

room_get_name(ind) Devuelve el nombre de la habitacin con el ndice dado.

sprite_set_offset(ind,xoff,yoff) Establece el offset del sprite.

sprite_set_bbox_mode(ind,mode) Establece a mode el tipo de caja de colisin


del sprite (0 = automtica, 1 = imagen completa, 2 = manual).

sprite_set_bbox(ind,left,top,right,bottom) Configura la caja de colisin del


sprite con ndice ind. Funciona solo cuando es manual el modo de caja de
colisin.

sprite_set_precise(ind,mode) Establece si el sprite con ndice ind usa chequeo


de colisin precisa (true o false).

sprite_duplicate(ind) Crea una copia del sprite con ndice ind. Devuelve el
ndice del nuevo sprite. Devuelve -1 si se presenta algn error.

sprite_assign(ind,spr) Asigna el sprite spr al al sprite con ndice ind. Es decir,


crea una

copia del sprite. De esta manera fcilmente puedes asignar un sprite


existente a p. ej. un nuevo sprite.

sprite_merge(ind1,ind2) Fusiona las imagines del sprite ind2 en el sprite ind1,


agregndolas al final de este ultimo. Si los tamaos no corresponden los
sprites son encogidos. No se elimina el sprite ind2!

sprite_add(fname,imgnumb,precise,transparent,smooth,preload,xorig,yorig)
Agrega a los recursos sprites la imagen del archivo fname. Solo se pueden
agregar imgenes bmp, jpg y gif. Cuando se trata de un bmp o jpg la imagen
puede ser una tira que contenga las subimgenes del sprite una junto a la
otra. Se usa imgnumb para indicar el nmero de subimgenes (1 para una
sola). Este argumento no es empleado con imgenes gif (animadas); se
emplea el nmero de imgenes del archivo gif. precise indica si se usar
chequeo de colisin precisa. transparent indica si la imagen es parcialmente
transparente. smooth indica si se alisarn los bordes. preload indica si se
precargar la imagen en la memoria de texturas. xorig y yorig indican la
posicin de origen en el sprite.

sprite_replace(ind,fname,imgnumb,precise,transparent,smooth,preload,xorig,
yorig) Lo mismo que la anterior pero en este caso se reemplaza al sprite con
ndice ind. El valor devuelvo por la funcin indica si tuvo xito la operacin.

sprite_create_from_screen(x,y,w,h,precise,transparent,smooth,preload,xorig,y
orig) Crea un nuevo sprite copiando de un rea indicada de la pantalla. Esto
permite crear cualquier sprite que se desee.

sprite_add_from_screen(ind,x,y,w,h) Agrega un rea de la pantalla como la

siguiente subimagen del sprite con ndice ind. x, y, w y h indican las


dimensiones del rea en pantalla (coordenadas x, y, ancho y alto).

sprite_delete(ind) Elimina el sprite, liberando la memoria utilizada.

sprite_set_alpha_from_sprite(ind,spr) Cambia los valores alfa (transparencia)


del sprite con ndice ind usando los valores de luminosidad (hue) del sprite
spr. Esta accin no se puede deshacer.

sound_add(fname,kind,preload) Agrega un recurso de sonido al juego. Fname


es el nombre del archivo de sonido. kind indica el tipo de sonido (0=normal,
1=de fondo, 2=3D, 3=mmplayer), preload indica si el sonido debiera ser
almacenado inmediatamente en la memoria de audio (true o false). La
funcin devuelve el ndice del nuevo sonido, que puede utilizarse para
reproducirlo. (O devolver -1 si ocurriera algn error, p. ej. que el archivo no
existiera).

sound_replace(index,fname,kind,loadonuse) Lo mismo que la anterior pero


esta vez no se crea un nuevo sonido sino que se sustituye el que tenga ndice
index, liberando el anterior sonido. El valor devuelto por esta funcin indica si
tuvo xito la operacin.

sound_delete(index) Elimina el sonido index, liberando toda la memoria


asociada con l. Ya no es posible recuperarlo.

background_duplicate(ind) Crea un duplicado del fondo con el ndice ind.


Devuelve el ndice del nuevo fondo. Cuando se presenta algn error se
devuelve -1.

background_assign(ind,back) Asigna el fondo back al fondo ind. Esto es, crea


una copia del fondo.

background_add(fname,transparent,smooth,preload) Agrega la imagen

almacenada en el archivo fname al juego de recursos background. Solo se


pueden manejar imgenes bmp y jpg. transparent indica si la imagen es
parcialmente transparente. smooth indica si se alisarn los bordes. preload
indica si se precargar la imagen en la memoria de texturas. La funcin
devuelve el ndice del nuevo fondo, el cual se puede usar para dibujarlo o
para asignarlo a la variable background_index[0] para hacerlo visible en la
habitacin actual. Devuelve -1 cuando ocurre algn error.

background_replace(ind,fname,transparent,smooth,preload) Lo mismo que la


anterior pero en este caso el fondo con ndice ind es reemplazado. La funcin
devuelve un valor indicando si tuvo xito la operacin. Cuando el fondo
reemplazado es visible en la habitacin ser reemplazado.

background_create_color(w,h,col,preload) Crea un nuevo fondo del tamao


dado (w=ancho, h=alto) con el color col. Devuelve el ndice del nuevo fondo,
-1 si ocurre algn error.

background_create_gradient(w,h,col1,col2,kind,preload) Crea un fondo del


tamao indicado (w=ancho, h=alto) coloreado con un gradiente. col1 y col2
indican los dos colores. kind es un nmero entre 0 y 5 que indica el tipo de
gradiente: 0=horizontal, 1=vertical, 2=rectngulo, 3=elipse, 4=doble
horizontal, 5=doble vertical. Esta funcin devuelve el ndice del nuevo fondo,
-1 si ocurre algn error.

background_create_from_screen(x,y,w,h,transparent,smooth,preload) Crea un
fondo copiando un rea indicada de la pantalla (x, y=coordenadas esquina
superior izquierda, w=ancho, h=alto). Esta funcin permite crear cualquier
fondo que se desee.

background_delete(ind) Elimina el fondo, liberando la memoria utilizada.

background_set_alpha_from_background(ind,back) Cambia los valores alfa


(transparencia) del fondo con ndice ind usando los valores hue del fondo
back. Esta accin no puede deshacerse.

font_add(name,size,bold,italic,first,last) Agrega una nueva fuente y devuelve


su ndice. Se indica el tamao (size), si es negrita (bold), cursiva (italic) y el
primer y ultimo caracteres que deben ser creados (first y last).

font_add_sprite(spr,first,prop,sep) Agrega una nueva fuente y devuelve su


ndice. La fuente es creada de un sprite. El sprite debe contener una
subimagen para cada carcter.

font_replace(ind,name,size,bold,italic,first,last) Reemplaza la fuente ind con


una nueva fuente, indicando el nombre (name), tamao (size) si es negrita
(bold) o cursive (italic) y el primer y ltimo carcter que deben crearse.

font_replace_sprite(ind,spr,first,prop,sep) Reemplaza la fuente ind con una


nueva fuente basada en el sprite spr.

font_delete(ind) Elimina la fuente con ndice ind, liberando la memoria


utilizada.

path_set_kind(ind,val) Establece el tipo de conexiones de la trayectoria ind


(0=recta, 1=suave) (0=straight, 1=smooth).

path_set_closed(ind,closed) Establece si la trayectoria ind debe ser cerrada


(true) o abierta (false).

path_set_precision(ind,prec) Establece la precisin con la que se calcula la


suavidad de la trayectoria (prec debe estar entre 1 y 8).

path_add() Agrega una nueva trayectoria vaca. Devuelve el ndice de la


trayectoria.

path_delete(ind) Elimina la trayectoria con ndice ind.

path_duplicate(ind) Crea un duplicado de la trayectoria ind. Devuelve el


ndice de la nueva trayectoria.

path_assign(ind,path) Asigna la trayectoria path a la trayectoria ind. Por


tanto, crea una copia de la trayectoria. De esta manera se puede fcilmente
configurar una trayectoria existente a p. Ej. otra trayectoria nueva.

path_add_point(ind,x,y,speed) Agrega un punto a la trayectoria con ndice


ind, en la posicin (x,y) y con factor de velocidad speed. Se debe recordar
que un factor de 100 corresponde a la velocidad actual. Valores
inferiores indican una reduccin de la velocidad y valores superiores un
incremento de la misma.

path_insert_point(ind,n,x,y,speed) Inserta un punto en la trayectoria con


ndice ind antes del punto n, en la posicin (x,y) y con factor de velocidad
speed.

path_change_point(ind,n,x,y,speed) Cambia el punto n de la trayectoria ind a


la posicin (x,y) y con factor de velocidad speed.

path_delete_point(ind,n) Elimina el punto n de la trayectoria con ndice ind.

path_clear_points(ind) Limpia todos los puntos de la trayectoria ind,


volvindola una trayectoria vaca.

path_reverse(ind) Invierte la trayectoria ind.

path_mirror(ind) Voltea horizontalmente la trayectoria ind (con respecto a su


centro).

path_flip(ind) Voltea verticalmente la trayectoria ind (con respecto a su


centro).

path_rotate(ind,angle) Rota angle grados la trayectoria ind en contra de las


manecillas del reloj (alrededor de su centro).

path_scale(ind,xscale,yscale) Escala la trayectoria ind con los factores


indicados (con respecto a su centro).

path_shift(ind,xshift,yshift) Mueve la trayectoria con los valores indicados.

execute_string(str) Ejecuta el fragmento de cdigo en la cadena str.

execute_file(fname) Ejecuta el cdigo dentro del archive fname.

script_execute(scr,arg0,arg1,...) Ejecuta el script con ndice scr con los


argumentos indicados.

timeline_add() Agrega una nueva lnea de tiempo. Devuelve el ndice de la


misma.

timeline_delete(ind) Elimina la lnea de tiempo con ndice ind. Debe


asegurarse que ninguna instancia emplee dicha lnea de tiempo en ninguna
habitacin.

timeline_moment_add(ind,step,codestr) Agrega una accin de cdigo a la


lnea de tiempo en el instante step. codestr contiene el cdigo para las
acciones. Si el step no existe se crea. Por lo que pueden agregarse mltiples
acciones de cdigo para el mismo instante.

timeline_moment_clear(ind,step) Se puede utilizar esta funcin para borrar


todas las acciones de una lnea de tiempo (ind) en un instante (step) en
particular.object_set_sprite(ind,spr) Establece el sprite para el objeto con
ndice ind. El valor -1 remueve del objeto el sprite actual.

object_set_solid(ind,solid) Establece si al crear instancias del objeto ind


debern considerarse slidas (true o false).

object_set_visible(ind,vis) Establece si las instancias creadas del objeto ind


deben ser visibles por defecto (true o false).

object_set_depth(ind,depth) Establece la profundidad (depth) por defecto de


las instancias creadas del objeto ind.

object_set_persistent(ind,pers) Establece si las instancias creadas del objeto


deben ser persistentes por defecto (true o false).

object_set_mask(ind,spr) Establece el sprite para la mscara del objeto con


ndice ind. Para que la mscara sea el sprite del objeto se puede usar -1.

object_set_parent(ind,obj) Establece el padre (obj) para el objeto ind. Si se


usa -1 se indica que el objeto ind no tiene padre. El cambiar el objeto padre
cambia el comportamiento de las instancias del objeto.

object_add() Agrega un nuevo objeto. Devuelve el ndice del mismo. Despus


se puede utilizar este ndice en las rutinas anteriores para configurar ciertas
propiedades del objeto y luego se puede utilizar el ndice para crear
instancias del objeto.

object_delete(ind) Elimina el objeto con ndice ind. Se debe asegurar de que


no existan instancias de este objeto en ninguna de las habitaciones.

object_event_add(ind,evtype,evnumb,codestr) Para asignarle un


comportamiento a un objeto se deben definir eventos para dicho objeto. Solo
se pueden agregar acciones de cdigo.

object_event_clear(ind,evtype,evnumb) Se puede emplear esta funcin para


borrar todas las acciones para un evento en particular.

room_set_width(ind,w) Establece el ancho (w) para la habitacin con ndice


ind.

room_set_height(ind,h) Establece la altura (h) para la habitacin con ndice


ind.

room_set_caption(ind,str) Establece el ttulo (caption) para la habitacin con


ndice ind.

room_set_persistent(ind,val) Establece si la habitacin con ndice ind ser


persistente o no (val).

room_set_code(ind,str) Configura el cdigo de inicializacin (str) para la


habitacin con ndice ind.

room_set_background_color(ind,col,show) Configura las propiedades de color


para la habitacin con ndice ind si no cuenta con una imagen de fondo. col
indica el color y show indica si el color debe mostrarse o no.

room_set_background(ind,bind,vis,fore,back,x,y,htiled,vtiled,hspeed,vspeed,a
lpha) Establece el fondo con ndice bind (0-7) como fondo.

room_set_view(ind,vind,vis,xview,yview,wview,hview,xport,yport,wport,hport,

hbord

er,vborder,hspeed,vspeed,obj) Establece la vista con ndice vind (0-7)

room_set_view_enabled(ind,val) Establece si las vistas deben habilitarse para


la habitacin con ndice ind.

room_add() Agrega una nueva habitacin.

room_duplicate(ind) Agrega una copia de la habitacin con ndice ind.


Devuelve el ndice de la nueva habitacin.

room_assign(ind,room) Asigna la habitacin room al ndice ind. Por tanto, esta


funcin crea una copia de la habitacin.

room_instance_add(ind,x,y,obj) Agrega a la habitacin ind una nueva


instancia del objeto obj, colocndola en la posicin x, y. Devuelve el ndice de
la instancia.

room_instance_clear(ind) Elimina todas las instancias dentro de la habitacin


ind.

room_tile_add(ind,back,left,top,width,height,x,y,depth) Agrega un nuevo tile


a la habitacin en la posicin indicada.

room_tile_add_ext(ind,back,left,top,width,height,x,y,depth,xscale,
yscale,alpha) Lo mismo que la anterior rutina pero tambin se puede
especificar un factor de escalado en las direcciones x e y, y una transparencia
alpha para el tile.

room_tile_clear(ind) Elimina todos los tiles de la habitacin indicada.

tile_add(background,left,top,width,height,x,y,depth) Aade una nueva tile al


cuarto con las propiedades indicadas. Esta funcin devuelve la id de la nueva
tile que se puede usar ms tarde en el resto de funciones.

tile_delete(id) Elimina el tile con la id especificada.

tile_exists(id) Devuelve si existe una tile con la id especificada.

tile_get_x(id) Devuelve la posicin x de la tile con la id especificada.

tile_get_y(id) Devuelve la posicin y de la tile con la id especificada.

tile_get_left(id) Devuelve el valor de la propiedad left (izquierda) de la tile con


la id especificada.

tile_get_top(id) Devuelve el valor de la propiedad top (arriba) de la tile con la


id especificada.

tile_get_width(id) Devuelve la anchura de la tile con la id especificada.

tile_get_height(id) Devuelve la altura de la tile con la id especificada.

tile_get_depth(id) Devuelve la profundidad de la tile con la id especificada.

tile_get_visible(id) Devuelve si la tile con la id especificada es visible o no.

tile_get_xscale(id) Devuelve el factor horizontal de escalado de la tile con la


id especificada.

tile_get_yscale(id) Devuelve el factor vertical de escalado de la tile con la id


especificada.

tile_get_background(id) Devuelve el fondo de la tile con la id especificada.

tile_get_blend(id) Devuelve el color de teido de la tile con la id especificada.

tile_get_alpha(id) Devuelve el factor de transparencia de la tile con la id


especificada.

tile_set_position(id,x,y) Coloca la tile con la id especificada en la posicin x,y.

tile_set_region(id,left,top,width,height) Cambia la regin del tile con la id


especificada sobre su fondo.

tile_set_background(id,background) Cambia el fondo de la tile con la id


especificada.

tile_set_visible(id,visible) Cambia la visibilidad de la tile con la id


especificada.

tile_set_depth(id,depth) Cambia la profundidad de la tile con la id


especificada.

tile_set_scale(id,xscale,yscale) Cambia los factores de escala de la tile con la


id especificada.

tile_set_blend(id,color) Cambia el color de teido de la tile con la id


especificada. Slo disponible en la versin registrada!

tile_set_alpha(id,alpha) Cambia la transparencia de la tile con la id


especificada.

tile_layer_hide(depth) Oculta todas las tiles con la profundidad indicada.

tile_layer_show(depth) Muestra todas las tiles con la profundidad indicada.

tile_layer_delete(depth) Elimina todas las tiles con la profundidad indicada..

tile_layer_shift(depth,x,y) Mueve todas las tiles con la profundidad indicada


siguiendo el vector (x,y). Esta funcin se puede usar para capas de tiles
mviles.

tile_layer_find(depth,x,y) Devuelve la id de la tile con la profundidad indicada


que se encuentra en la posicin (x,y). Si no se encuentra ninguna tile la
funcin devuelve -1.

tile_layer_delete_at(depth,x,y) Elimina la tile con la profundidad indicada que


se encuentra en la posicin (x,y). Si se encentran varias tiles en esa posicin
y con la profundidad indicada se eliminan todas.

tile_layer_depth(depth,newdepth) Cambia la profundidad de todas las tiles


con la profundidad indicada a la nueva profundidad. Es decir, con esta
funcin puedes mover capas enteras de tiles a otra profundidad.

window_set_visible(visible) Hace que la ventana se vuelva visible o invisible.


Normalmente la ventana es visible durante todo el juego. Cuando la ventana

sea invisible el programa no ejecutar ni recibir los eventos del teclado.

window_get_visible() Devuelve si la ventana es visible.

window_set_fullscreen(full) Hace que la ventana ocupe toda la pantalla (modo


pantalla completa) o no.

window_get_fullscreen() Devuelve si la ventana ocupa toda la pantalla.

window_set_showborder(show) Indica si el borde alrededor de la ventana


debe mostrarse (si la ventana est a pantalla completa el borde no se
muestra).

window_get_showborder() Devuelve si el borde de la ventana es visible


cuando sta no est a pantalla completa.

window_set_showicons(show) Indica si deben mostrarse los iconos de la


ventana (minimizar, maximizar y cerrar). Si la ventana est a pantalla
completa no se muestran.

window_get_showicons() Devuelve si los iconos de la ventana son visibles.

window_set_stayontop(stay) Indica si la ventana de be mostrarse siempre por


encima de otras ventanas que puedan existir.

window_get_stayontop() Devuelve si la ventana se mantiene siempre por


encima de las dems.

window_set_sizeable(sizeable) Indica si el jugador puede cambiar el tamao


de la ventana. El jugador slo podr hacer esto si el borde de la ventana es

visible y la ventana no est a pantalla completa.

window_get_sizeable() Devuelve si el jugador puede cambiar el tamao de la


ventana.

window_set_caption(caption) Indica el ttulo de la ventana. Normalmente esto


se especifica al definir el room y se cambia usando la variable room_caption.

window_get_caption() Devuelve el ttulo de la ventana.

window_set_cursor(curs) Indica el puntero que se usar en la ventana.


cr_default

cr_none

cr_arrow

cr_cross

cr_beam

cr_size_nesw

cr_size_ns

cr_size_nwse

cr_size_we

cr_uparrow

cr_hourglass

cr_drag

cr_nodrop

cr_hsplit

cr_vsplit

cr_multidrag

cr_sqlwait

cr_no

cr_appstart

cr_help
cr_handpoint

cr_size_all

window_get_cursor() Devuelve el cursor utilizado en la ventana.

window_set_color(color) Indica el color de la parte de la ventana que no se


usa para mostrar el room.

window_get_color() Devuelve el color de la ventana.

window_set_region_scale(scale,adaptwindow) Si la ventana es mayor que el


cuarto actual el cuarto se muestra centrado en la ventana. Con esta funcin
es posible indicar si queremos que el cuarto sea escalado
para que ocupe toda la ventana o una parte.

window_get_region_scale() Devuelve el factor de escala de la regin de


dibujo.

window_set_position(x,y) Indica la posicin de la ventana.

window_set_size(w,h) Indica el nuevo tamao de la ventana. Observa que si


el tamao indicado es menor que la regin de dibujo se mantendr lo
suficientemente grande como para que la regin entre por completo dentro
de l.

window_set_rectangle(x,y,w,h) Indica la nueva posicin y medidas de la


ventana (es como usar las dos funciones anteriores a la vez).

window_center() Centra la ventana en la pantalla.

window_default() Da a la ventana los valores por defecto de tamao y


posicin (centrada).

window_get_x() Devuelve la coordenada x de la ventana.

window_get_y() Devuelve la coordenada y de la ventana.

window_get_width() Devuelve la anchura de la ventana.

window_get_height() Devuelve la altura de la ventana.

window_mouse_get_x() Devuelve la coordenada x del puntero en la ventana.

window_mouse_get_y() Devuelve la coordenada y del puntero en la ventana.

window_mouse_set(x,y) Indica la nueva posicin del puntero en la ventana.

view_enabled Indica si las vistas estn activadas en el cuarto actual.

view_current* La vista que actualmente se est dibujando (0...7). Usa esta


variable slo en el evento draw. Por ejemplo, puedes chequear el valor de
esta variable para dibujar algo slo en unas vistas y no en otras. El valor de
esta variable no se puede cambiar.

view_visible[0..7] Devuelve si la vista indicada es visible en la pantalla

view_xview[0..7] Posicin X de la vista en el cuarto.

view_yview[0..7] Posicin Y de la vista en el cuarto.

view_wview[0..7] Anchura de la vista en el cuarto.

view_hview[0..7] Altura de la vista en el cuarto.

view_xport[0..7] Posicin X del puerto en la regin de dibujo.

view_yport[0..7] Posicin Y del puerto en la regin de dibujo.

view_wport[0..7] Anchura del puerto en la regin de dibujo.

view_hport[0..7] Altura del puerto en la regin de dibujo.

view_angle[0..7] ngulo de rotacin usado para la vista en el cuarto (grados


en sentido antihorario).

view_hborder[0..7] Tamao en pxeles del borde horizontal alrededor del


objeto a seguir por la vista.

view_vborder[0..7] Tamao en pxeles del borde vertical alrededor del objeto


a seguir por la vista.

view_hspeed[0..7] Velocidad horizontal mxima de la vista.

view_vspeed[0..7] Velocidad vertical mxima de la vista.

view_object[0..7] Objeto cuya instancia debe permanecer visible en la vista.


Si hay varias instancias de este objeto se usar la primera.

window_set_region_size(w,h,adaptwindow) Indica la anchura y altura de la


regin de dibujo en la ventana. adaptwindow indica si el tamao de la
ventana debe adaptarse si la regin de dibujo no cabe dentro de ella. La
ventana siempre se adaptar si usas escalado fijo

window_get_region_width() Devuelve la anchura actual de la regin de dibujo.

window_get_region_height()Devuelve la altura actual de la regin de dibujo.

window_view_mouse_get_x(id) Devuelve la coordenada x del ratn respecto a


la vista indicada.

window_view_mouse_get_y(id) Devuelve la coordenada y del ratn respecto a


la vista indicada.

window_view_mouse_set(id,x,y) Indica la posicin del ratn respecto a la


vista indicada.

window_views_mouse_get_x()Devuelve la coordenada x del ratn respecto a


la vista en la que se encuentra (es lo mismo que mouse_x).

window_views_mouse_get_y()Devuelve la coordenada y del ratn respecto a


la vista en la que se encuentra (es lo mismo que mouse_y).

window_views_mouse_set(x,y) Indica la posicin del ratn respecto a la


primera vista que es visible.

transition_kind Indica el tipo de transicin al prximo nivel

ds_set_precision(prec) Especifica la precisin usada en comparaciones.

ds_stack_create() Crea una nueva pila. La funcin devuelve un nmero entero


con la id de la pila para usarla en las diferentes funciones. Puedes crear
varias pilas.

ds_stack_destroy(id) Destruye la pila, liberando la memoria usada. No olvides


usar esta funcin cuando ya no necesites la pila.

ds_stack_clear(id) Limpia la pila, borrando todos los valores que contiene


pero no la destruye.

ds_stack_size(id) Devuelve el nmero de valores en la pila.

ds_stack_empty(id) Devuelve true si la pila est vaca. Es lo mismo que


chequear si el nmero de valores en la pila es cero.

ds_stack_push(id,val) Empuja el valor dentro de la pila.

ds_stack_pop(id) Devuelve el valor al final de la pila (esto es, el ltimo valor


introducido) y lo elimina de la pila.

ds_stack_top(id) Devuelve el valor al principio de la pila (el primero que se


introdujo) pero no lo elimina.

ds_queue_create()Crea una nueva cola. La funcin devuelve un nmero


entero con la id de la cola para usarla en las diferentes funciones. Puedes
crear varias colas.

ds_queue_destroy(id) Destruye la cola, liberando la memoria usada. No


olvides usar esta funcin cuando ya no necesites la cola.

ds_queue_clear(id)Limpia la cola, borrando todos los valores que contiene


pero no la destruye.

ds_queue_size(id) Devuelve el nmero de valores en la cola.

ds_queue_empty(id) Devuelve true si la cola est vaca. Es lo mismo que


chequear si el nmero de valores en la cola es cero.

ds_queue_enqueue(id,val) Introduce el valor en la cola.

ds_queue_dequeue(id) Devuelve el ltimo valor de la cola (el ltimo en


introducirse) y lo elimina de la cola.

ds_queue_head(id) Devuelve el valor al principio de la cola, esto es, el


primero que se introdujo, pero no lo elimina de la cola.

ds_queue_tail(id) Devuelve el ltimo valor de la cola pero no lo elimina.

ds_list_create()Crea una nueva lista. La funcin devuelve un nmero entero


con la id de la lista para usarla en las diferentes funciones. Puedes crear
varias listas.

ds_list_destroy(id) Destruye la lista, liberando la memoria usada. No olvides


usar esta funcin cuando ya no necesites la lista.

ds_list_clear(id) Limpia la lista, borrando todos los valores que contiene pero
no la destruye.

ds_list_size(id) Devuelve el nmero de valores en la lista.

ds_list_empty(id) Devuelve true si la lista est vaca. Es lo mismo que


chequear si el nmero de valores en la lista es cero.

ds_list_add(id,val) Inserta el valor al final de la lista.

ds_list_insert(id,pos,val) Inserta el valor en la posicin pos. La primera


posicin es 0 y la ltima es igual al tamao de la lista menos 1.

ds_list_replace(id,pos,val) Reemplaza el valor en la posicin pos por val.


ds_list_delete(id,pos) Elimina el valor en la posicin pos.

ds_list_find_index(id,val) Devuelve la posicin en la lista del valor val. Si no


encuentra el valor en la lista devuelve -1.

ds_list_find_value(id,pos) Devuelve el valor en al posicin pos.

ds_list_sort(id,ascend) Ordena los valores de la lista. Si ascend es true o 1 los


ordena de forma ascendente, en caso contrario los ordena de manera
descendente.

ds_map_create()Crea un nuevo mapa. La funcin devuelve un nmero entero


con la id del mapa para usarla en las diferentes funciones. Puedes crear
varios mapas.

ds_map_destroy(id) Destruye el mapa, liberando la memoria usada. No


olvides usar esta funcin cuando ya no necesites el mapa.

ds_map_clear(id)Limpia el mapa, borrando todos las parejas llave-valor que


contiene pero no lo destruye.

ds_map_size(id) Devuelve el nmero de parejas llave-valor en el mapa.

ds_map_empty(id) Devuelve true si el mapa est vaca. Es lo mismo que


chequear si el nmero de valores en el mapa es cero.

ds_map_add(id,key,val) Aade la pareja llave (key)-valor (val) al mapa.

ds_map_replace(id,key,val) Reemplaza el valor correspondiente a la llave con


un nuevo valor.

ds_map_delete(id,key) Elimina la pareja llave-valor especificada del mapa. Si


hay varias parejas con la misma llave slo 1 es eliminada.

ds_map_exists(id,key) Devuelve true si la llave existe en el mapa.

ds_map_find_value(id,key) Devuelve el valor correspondiente a la llave.

ds_map_find_previous(id,key) Devuelve la mayor llave que sea menor que la


indicada.

ds_map_find_next(id,key) Devuelve la menor llave que sea mayor que la


indicada.

ds_map_find_first(id) Devuelve la menor llave del mapa.

ds_map_find_last(id) Devuelve la mayor llave del mapa.

ds_ priority _create()Crea una nueva cola. La funcin devuelve un nmero


entero con la id de la cola para usarla en las diferentes funciones. Puedes
crear varias colas.

ds_ priority _destroy(id) Destruye la cola, liberando la memoria usada. No


olvides usar esta funcin cuando ya no necesites la cola.

ds_ priority _clear(id)Limpia la cola, borrando todos los valores que contiene
pero no la destruye.

ds_ priority _size(id) Devuelve el nmero de valores en la cola.

ds_ priority _empty(id) Devuelve true si la cola est vaca. Es lo mismo que
chequear si el nmero de valores en la cola es cero.

ds_priority_add(id,val,prio) Aade el valor con la prioridad especificada a la


cola.

ds_priority_change_priority(id,val,prio) Cambia la prioridad del valor


especificado al nuevo valor.

ds_priority_find_priority(id,val) Devuelve la prioridad del valor especificado.

ds_priority_delete_value(id,val) Elimina el valor (con su prioridad) de la cola


de prioridad.

ds_priority_delete_min(id)Devuelve el valor con la menor prioridad y lo


elimina de la cola.

ds_priority_find_min(id) Devuelve el valor con la menor prioridad pero no lo


elimina de la cola.

ds_priority_delete_max(id) Devuelve el valor con la mayor prioridad y lo


elimina de la cola.

ds_priority_find_max(id) Devuelve el valor con la mayor prioridad pero no lo


elimina de la cola.

ds_grid_create(w,h) Crea una rejilla con la anchura especificada en w y la


altura especificada en h. La funcin devuelve la id de la rejilla que debe
usarse en las dems funciones.

ds_grid_destroy(id) Destruye la rejilla, liberando la memoria usada. No olvides


usar esta funcin cuando ya no necesites la rejilla.

ds_grid_resize(id,w,h) Aumenta el tamao de la rejilla a la nueva anchura y


altura especificadas. Las celdas ya existentes mantienen su valor.

ds_grid_width(id) Devuelve la anchura de la rejilla.

ds_grid_height(id) Devuelve la altura de la rejilla.

ds_grid_clear(id,val) Hace que todos las celdas de la rejilla tomen el valor val
(puede ser un nmero o una cadena de texto).

ds_grid_set(id,x,y,val)Asigna a la celda x,y el valor val.

ds_grid_add(id,x,y,val) Suma el valor a la celda especificada. Para cadenas de


texto, la cadena se concatena a la que ya existe en la celda.

ds_grid_multiply(id,x,y,val) Multiplica la celda por el valor. Slo se puede usar


con nmeros.

ds_grid_set_region(id,x1,y1,x2,y2,val) Todas las celdas de la regin


especificada toman el valor especificado.

ds_grid_add_region(id,x1,y1,x2,y2,val)Suma el valor a la regin especificada.


Para cadenas de texto, concatena la cadena de texto a la existente en cada
celda.

ds_grid_multiply_region(id,x1,y1,x2,y2,val) Multiplica el valor por todas las


celdas de la regin (slo para valores numricos).

ds_grid_set_disk(id,xm,ym,r,val) Da el valor especificado a toda las celdas


dentro del crculo de centro xm,ym y radio r.

ds_grid_add_disk(id,xm,ym,r,val) Suma el valor a la regin especificada por el


crculo. Para cadenas de texto, concatena la cadena de texto a la existente en
cada celda.

ds_grid_multiply_disk(id,xm,ym,r,val) Multiplica el valor por todas las celdas


de la regin (slo para valores numricos).

ds_grid_get(id,x,y) Devuelve el valor de la celda indicada.

ds_grid_get_sum(id,x1,y1,x2,y2) Devuelve la suma de los valores de las


celdas de la regin especificada. Slo funciona con valores numricos.

ds_grid_get_max(id,x1,y1,x2,y2) Devuelve el mximo valor de las celdas de


la regin especificada. Slo funciona con valores numricos.

ds_grid_get_min(id,x1,y1,x2,y2) Devuelve el mnimo valor de las celdas de la


regin especificada. Slo funciona con valores numricos.

ds_grid_get_mean(id,x1,y1,x2,y2) Devuelve el valor medio de las celdas de la


regin especificada. Slo funciona con valores numricos.

ds_grid_get_disk_sum(id,xm,ym,r) Devuelve la suma de los valores de las


celdas de la regin circular especificada. Slo funciona con valores
numricos..

ds_grid_get_disk_min(id,xm,ym,r) Devuelve el mnimo valor de las celdas de


la regin circular especificada. Slo funciona con valores numricos.

ds_grid_get_disk_max(id,xm,ym,r) Devuelve el mximo valor de las celdas de


la regin circular especificada. Slo funciona con valores numricos.

ds_grid_get_disk_mean(id,xm,ym,r) Devuelve el valor medio de las celdas de


la regin circular especificada. Slo funciona con valores numricos.

ds_grid_value_exists(id,x1,y1,x2,y2,val) Devuelve true si el valor especificado


existe en la regin.

ds_grid_value_x(id,x1,y1,x2,y2,val) Devuelve la coordenada x de la celda de


la regin en la que aparece el valor especificado.

ds_grid_value_y(id,x1,y1,x2,y2,val) Devuelve la coordenada y de la celda de


la regin en la que aparece el valor especificado.

ds_grid_value_disk_exists(id,xm,ym,r,val) Devuelve true si el valor


especificado existe en la regin circular.

ds_grid_value_disk_x(id,xm,ym,r,val) Devuelve la coordenada x de la celda de


la regin circular en la que aparece el valor especificado.

ds_grid_value_disk_y(id,xm,ym,r,val) Devuelve la coordenada y de la celda de


la regin circular en la que aparece el valor especificado.

file_text_open_read(fname) Abre el archivo fname para lectura. La funcin


devuelve la id del archivo que debes utilizar en el resto de funciones. Puedes
abrir hasta un mximo de 32 archivos simultneamente. No
olvides cerrar los archivos una vez que no los
necesites.file_text_open_write(fname) Abre el archivo fname para escritura,
crendolo si no existe. La funcin devuelve la id del archivo que debes usar
en las dems
funciones.

file_text_open_append(fname) Abre el archivo fname para agregar datos al


final, crendolo si no existe. La funcin devuelve la id del archivo que debes
usar en las dems funciones.

file_text_close(fileid) Cierra el archivo indicado por fileid (No olvides


llamarla!).

file_text_write_string(fileid,str) Escribe la cadena str al archivo indicado por


fileid.

file_text_write_real(fileid,x) Escribe el valor real x en el archivo indicado por


fileid.

file_text_writeln(fileid) Escribe un carcter de nueva lnea en el archivo.

file_text_read_string(fileid) Lee una cadena del archivo y devuelve esta


cadena. Una cadena termina al final de la lnea.

file_text_read_real(fileid) Lee un valor real del archivo y devuelve este valor.

file_text_readln(fileid) Salta el resto de la lnea en el archivo e inicia al


principio de la siguiente lnea.

file_text_eof(fileid) Indica si hemos llegado al final del archivo.

file_exists(fname) Indica si el archivo con el nombre fname existe (true) o no


(false).

file_delete(fname) Borra el archivo con el nombre fname.

file_rename(oldname,newname) Renombra el archivo con el nombre oldname


a newname.

file_copy(fname,newname) Copia el archivo fname al nombre newname

directory_exists(dname) Indica si la carpeta dname existe.

directory_create(dname) Crea una carpeta con el nombre dname (incluyendo


la ruta a esa carpeta) si no existe.

file_find_first(mask,attr) Devuelve el nombre del primer archivo que satisfaga


las condiciones de la mscara mask y los atributos attr. Si no existe tal
archivo, devuelve una cadena vaca. La mscara puede contener
una ruta y comodines (*), por ejemplo C:\temp\*.doc. Los atributos indican

archivos adicionales que quieras ver. (Por lo que los archivos normales son
siempre devueltos cuando satisfacen la mscara).

fa_readonly archivos de slo lectura

fa_hidden archivos ocultos

fa_sysfile archivos de sistema

fa_volumeid archivos volume-id

fa_directory carpetas

fa_archive archivos archivados

file_find_next() Devuelve el nombre del siguiente archivo que satisface la


mscara y los atributos indicados previamente. Si no existe tal archivo,
devuelve una cadena vaca.

file_find_close() Debe ser llamada despus de manipular los archivos para


liberar la memoria.

file_attributes(fname,attr) Indica si el archivo fname tiene todos los atributos


dados por attr.

filename_name(fname) Devuelve el nombre del archivo fname, con la


extensin pero sin la ruta.

filename_path(fname) Devuelve la ruta al archivo indicado, incluyendo la

ltima barra de separacin.

filename_dir(fname) Devuelve el directorio del archivo, que normalmente


suele ser igual que la ruta pero sin la ltima barra de separacin.

filename_drive(fname) Devuelve la informacin de la unidad del archivo.

filename_ext(fname) Devuelve la extensin del archivo, incluyendo el punto.

filename_change_ext(fname,newext) Devuelve el nombre del archivo con la


extensin

sustituida por newext. Si indicas una cadena de texto vaca para newext
puedes eliminar la extensin del archivo.

file_bin_open(fname,mod) Abre el archivo con el nombre especificado. El


parmetro mod indica qu se puede hacer con el archivo: 0=leer, 1=escribir
y 2= leer y escribir. La funcin devuelve la id del archivo que debe
utilizarse en las dems funciones. Puedes abrir hasta un mximo de 32
archivos simultneamente, pero no olvides cerrarlos cuando hayas terminado
con ellos.

file_bin_rewrite(fileid) Limpia el archivo indicado por fileid, es decir, borra


todo su contenido y se sita al principio del archivo para empezar a escribir.

file_bin_close(fileid) Cierra el archivo especificado. No olvides llamarla!

file_bin_size(fileid) Devuelve el tamao en bytes del archivo indicado.

file_bin_position(fileid) Devuelve la posicin actual en el archivo en bytes (0


es el principio del archivo).

file_bin_seek(fileid,pos) Mueve la posicin en el archivo a la posicin indicada


por pos.

Para aadir contenido al final de un archivo, usa el valor file_bin_size(fileid)


para el parmetro pos.

file_bin_write_byte(fileid,byte) Escribe un byte de datos al archivo


especificado.

file_bin_read_byte(fileid) Lee un byte de datos del archivo.

game_id* Identificador nico para el juego. Puedes usarlo si necesitas un


nombre nico de archivo.

working_directory* Carpeta de trabajo del juego. (No incluye la diagonal


invertida final).

temp_directory* Carpeta temporal creada para el juego. Puedes almacenar


archivos temporales aqu. Sern eliminados cuando el juego finalice. En
ciertas situaciones podras dar al jugador la posibilidad de introducir
argumentos mediante la lnea de comandos al juego que estn ejecutando
(para por ejemplo activar trucos o modos especiales).

parameter_count() Devuelve el nmero de parmetros de la lnea de


comandos (nota que el nombre del programa es uno de ellos).

parameter_string(n) Devuelve los parmetros n de la lnea de comandos. El


primer parmetro tiene ndice 0 y es el nombre del programa.

environment_get_variable(name) Devuelve el valor (una cadena de texto) de


la variable de entorno con el nombre especificado.

registry_write_string(name,str) Crea una entrada en el registro con el nombre


name y como valor la cadena str.

registry_write_real(name,x) Crea una entrada en el registro con el nombre


name y el valor real x.

registry_read_string(name) Devuelve la cadena almacenada con el nombre


name. (El nombre debe existir, de otra forma se devuelve una cadena vaca).

registry_read_real(name) Devuelve el valor real almacenado en la entrada


name. (El nombre debe existir, de otra forma se devuelve el nmero 0).

registry_exists(name) Indica si la entrada name existe.

registry_write_string_ext(key,name,str) Crea una entrada en el registro dentro


de la clave key con el nombre name y como valor la cadena str.

registry_write_real_ext(key,name,x) Crea una entrada en el registro dentro de


la clave key con el nombre name y el valor real x.

registry_read_string_ext(key,name) Devuelve la cadena con el nombre name


dentro de la clave key (el nombre debe existir, de otra forma se devuelve una
cadena vaca).

registry_read_real_ext(key,name) Devuelve el valor real con el nombre name


en la clave key (el nombre debe existir, de otra forma se devuelve el nmero
0).

registry_exists_ext(key,name) Indica si el nombre name existe dentro de la


clave key.

registry_set_root(root) Configura la raz para las otras rutinas.

ini_open(name) Abre el archivo de INI con el nombre dado El archivo INI se


debe almacenar en la misma carpeta que el juego!

ini_close()Cierra el archivo INI actualmente abierto.

ini_read_string(section,key,default) Lee el valor (una cadena de texto) de la


llave indicada con key de la seccin indicada como section. Cuando no existe
la llave o la seccin se devuelve el valor especificado por
default.

ini_read_real(section,key,default) Lee el valor real de la llave indicada con key


de la seccin indicada como section. Cuando no existe la llave o la seccin se
devuelve el valor especificado por default.

ini_write_string(section,key,value) Escribe el valor value (una cadena de


texto) en la llave indicada con key en la seccin indicada con section.

ini_write_real(section,key,value) Escribe el valor real value en la llave


indicada con key en la seccin indicada con section.

ini_key_exists(section,key) Devuelve si la llave indicada existe en la seccin


indicada.

ini_section_exists(section) Devuelve si existe la seccin indicada.

ini_key_delete(section,key) Elimina la llave indicada de la seccin indicada.

ini_section_delete(section) Elimina la seccin indicada.

execute_program(prog,arg,wait) Ejecuta el programa prog con los


argumentos arg. wait indica si se debe esperar a que termine la aplicacin.

execute_shell(prog,arg) Ejecuta el programa (o archivo) en el entorno.

secure_mode* Indica si el juego est ejecutndose en modo seguro.

ef_explosion

ef_ring

ef_ellipse

ef_firework

ef_smoke

ef_smokeup

ef_star

ef_spark

ef_flare

ef_cloud

ef_rain

ef_snow

effect_create_below(kind,x,y,size,color) Crea un efecto del tipo indicado en


kind en la posicin especificada. size es el tamao del efecto segn la
convencin siguiente: 0 = pequeo, 1 = mediano, 2 = grande. color
indica el color del efecto. El efecto se crea por debajo de la instancia con una
profundidad (depth) igual a 100000.

effect_clear() Detiene y elimina todos los efectos.

part_type_create() Crea un Nuevo tipo de particular. Devuelve el ndice del


tipo. Este ndice debe usarse en todas las llamadas a las funciones siguientes
para configurar las propiedades del tipo de partcula, por lo
que es aconsejable que lo guardes en una variable global.

part_type_destroy(ind) Destruye el tipo de particular ind. Llama a esta


funcin cuando ya no se necesite el tipo de partcula para ahorrar espacio.

part_type_exists(ind) Devuelve si el tipo indicado de particular existe.

part_type_clear(ind) Devuelve el tipo de particular ind a sus valores por

defecto.

t_shape_pixel (pixel)

t_shape_disk (disco)

pt_shape_square (cuadrado)

pt_shape_line (lnea)

pt_shape_star (estrella)

pt_shape_circle (crculo)

pt_shape_ring (anillo)

pt_shape_sphere (esfera)

pt_shape_flare (brillo)

pt_shape_spark (chispa)

pt_shape_explosion (explosin)

pt_shape_cloud (nube)

pt_shape_smoke (humo)

pt_shape_snow (nieve)

part_type_shape(ind,shape) Aplica la forma tipo shape a la partcula ind.

part_type_sprite(ind,sprite,animate,stretch,random) Asigna el sprite para el


tipo de particula ind.

part_type_size(ind,size_min,size_max,size_incr,size_wiggle) Establece los


parmetros de tamao para el tipo de partcula.

part_type_orientation(ind,ang_min,ang_max,ang_incr,ang_wiggle,ang_relative
) Aplica la orientacin al tipo de partcula.

part_type_color1(ind,color1) Indica un slo color para la partcula.

part_type_color2(ind,color1,color2) Especifica dos colores entre los que se


interpolar.

part_type_color3(ind,color1,color2,color3) Ahora los colores representan el


color incial, medio y final.

part_type_color_mix(ind,color1,color2) El color ser seleccionado de una


mezcla aleatoria de estos dos colores y permanecer inalterado durante la
vida de la partcula.

part_type_color_rgb(ind,rmin,rmax,gmin,gmax,bmin,bmax) Se puede usar


para especificar que cada partcula tendr un color fijo pero escogido de un
rango de colores que especificas en modo rgb.

part_type_color_hsv(ind,hmin,hmax,smin,smax,vmin,vmax) Igual que la


anterior, pero esta vez el rango se especifica en modo hsv.Adems del color,
tambin puedes especificar un valor de transparencia. As puedes
conseguir que las partculas desaparezcan poco a poco.

part_type_alpha1(ind,alpha1) Aplica un nico valor de transparencia (entre 0


y 1) al tipo de partcula.

part_type_alpha2(ind,alpha1,alpha2) Igual que la anterior, pero esta vez la


transparencia en cada momento se interpola entre las dos especificadas.

part_type_alpha3(ind,alpha1,alpha2,alpha3) Igual que a anterior, pero esta


vez la transparencia en cada momento se interpola entre las tres
especificadas.

part_type_blend(ind,additive) Indica si se debe utilizar additive blending (1) o


normal blending (0) para el tipo de partcula.

part_type_life(ind,life_min,life_max) Establece los lmites del tiempo de vida


para el tipo de partcula (Ambos son 100 por defecto).

part_type_step(ind,step_number,step_type) Establece el nmero y tipo de


partculas que deben ser generadas en cada step para el tipo indicado de
particula. Si usas un nmero negativo para step_number, por
ejemplo -5, se generar una partcula cada 5 steps.

part_type_death(ind,death_number,death_type) Establece el nmero y tipo


de partculas que deben ser generadas cuando una particular del tipo
indicado llega al final de su ciclo de vida.

part_type_speed(ind,speed_min,speed_max,speed_incr,speed_wiggle)
Establece las propiedades de velocidad para el tipo de partcula.

part_type_direction(ind,dir_min,dir_max,dir_incr,dir_wiggle) Establece las


propiedades de direccin para el tipo de partcula, en grados antihorarios (0360). (Todos los valores son 0 por defecto).

part_type_gravity(ind,grav_amount,grav_dir) Establece las propiedades de


gravedad para el tipo de partcula. (Por defecto no hay valor de gravedad).

part_system_create() Crea un nuevo sistema de partculas. Devuelve el ndice


del sistema creado. Este ndice debe emplearse en las llamadas a las
funciones siguientes para configurar las propiedades del sistema
de partculas.

part_system_destroy(ind) Destruye el sistema de partculas ind. Llama a esta


funcin si ya no hars uso del sistema para ahorrar espacio.

part_system_exists(ind) Devuelve si el sistema de partculas ind existe.

part_system_clear(ind) Devuelve el sistema ind a sus valores por defecto,


removiendo todas las partculas, emisores y atractores en l.

part_system_draw_order(ind,oldtonew) Establece el orden en el que el


sistema dibuja las partculas. Cuando oldtonew es true las partculas ms
viejas son dibujadas primero y las nuevas se dibujan sobre ellas (valor
por defecto). De otra forma las partculas ms recientes son dibujadas
primero. Esto puede resultar en varios efectos diferentes.

part_system_depth(ind,depth) Especifica la profundidad del sistema de


partculas.

part_system_position(ind,x,y) Especifica la posicin en la que se dibuja el


sistema de partculas. Si quieres dibujar el sistema relativo a un objeto
puedes usar sus coordenadas.

part_system_automatic_update(ind,automatic) Indica si el sistema debe


actualizarSe automticamente (1) o no (0).

part_system_automatic_draw(ind,automatic) Indica si el sistema debe


dibujarse automticamente (1) o no (0).

part_system_update(ind) Esta funcin actualiza el sistema y permite a los


emisores crear partculas. Puedes llamar a esta funcin cuando no uses
actualizacin automtica, o para acelerar un poco el sistema al
inicio.

part_system_drawit(ind) Esta funcin dibuja el sistema de partculas si has


desactivado la opcin automtica. Debes llamar a esta funcin desde el
evento draw de algn objeto.

part_particles_create(ind,x,y,parttype,number) Esta funcin crea number


partculas del tipo ind en la posicin (x,y) dentro del sistema.

part_particles_create_color(ind,x,y,parttype,color,number) Esta funcin crea


number partculas del tipo ind en la posicin (x,y) dentro del sistema con el
color indicado. Esto es til cuando el tipo de partcula slo usa
un color o no define ninguno.

part_particles_clear(ind) Esta funcin elimina todas las partculas del sistema.

part_particles_count(ind) Esta funcin devuelve el nmero de partculas en el

sistema. shape indica la forma de la regin.

ps_shape_rectangle

ps_shape_ellipse

ps_shape_diamond

ps_shape_line

distribution indica la distribucin usada para generar las partculas.

particle type indica el tipo de partculas que sern generadas

number indica el nmero de partculas generadas en cada step.

part_emitter_create(ps) Crea un nuevo emisor en el sistema de partculas ps.


Devuelve el ndice del emisor.

part_emitter_destroy(ps,ind) Destruye el emisor ind en el sistema de


partculas ps. Llama a esta funcin si no necesitas ms del emisor para
ahorrar espacio.

part_emitter_destroy_all(ps) Destruye todos los emisores del sistema de


partculas ps.

part_emitter_exists(ps,ind) Devuelve true si el emisor ind existe en el sistema


ps.

part_emitter_clear(ps,ind) Devuelve el emisor ind a sus valores por defecto.

part_emitter_region(ps,ind,xmin,xmax,ymin,ymax,shape,distribution)
Establece la regin y distribucin del emisor.

part_emitter_burst(ps,ind,parttype,number) Emite number partculas del tipo


partype en forma de estallido (una sola vez) desde el emisor ind.

part_emitter_stream(ps,ind,parttype,number) Desde este momento se


crearn number partculas de tipo partype desde el emisor ind en cada step.
x,y indican la posicin del atractor. force indican la fuerza de
atraccin del atractor. El cmo acte la fuerza sobre las partculas depende
de los siguientes parmetros. dist indica la mxima distancia a la cual el
atractor tiene efecto. Solo las partculas con una distancia al
atractor menor que dist sern atradas. kind indica el tipo de atractor.

ps_force_constant indica que la fuerza es constante independientemente de


la distancia.

ps_force_linear indica una fuerza que aumenta linealmente. A la distancia


mxima la fuerza es 0 mientras que en la posicin del atractor la fuerza tiene
el valor force indicado.

ps_force_quadratic indica que la fuerza aumenta de manera cuadrtica.

additive indica si la fuerza se suma a la velocidad y direccin en cada step


(true) o si solo se aplica a la posicin de la particular (false).

part_attractor_create(ps) Crea un nuevo atractor en el sistema de partculas


ps. Devuelve el ndice del atractor.

part_attractor_destroy(ps,ind) Destruye el atractor ind dentro del sistema de


partculas ps. Llama a esta funcin si ya no necesitas el atractor para ahorrar
espacio.

part_attractor_destroy_all(ps) Destruye todos los atractores que hayan sido


creados en el sistema de partculas ps.

part_attractor_exists(ps,ind) Devuelve true si el atractor ind existe dentro del


sistema de partculas ps.

part_attractor_clear(ps,ind) Devuelve los valores del atractor a sus valores


por defecto.
part_attractor_position(ps,ind,x,y) Establece a (x,y) la posicin del atractor
ind.

part_attractor_force(ps,ind,force,dist,kind,aditive) Establece las propiedades


de fuerza del atractor ind.

part_destroyer_create(ps) Crea un nuevo destructor en el sistema de


partculas ps. Devuelve el ndice del destructor. Este ndice debe usarse en
las llamadas a las funciones siguientes para configurar las
propiedades del destructor.

part_destroyer_destroy(ps,ind) Destruye el destructor ind dentro del sistema


de partculas ps. Llama a esta funcin cuando ya no hagas uso del destructor
para ahorrar espacio.

part_destroyer_destroy_all(ps) Destruye todos los destructores que hayan


sido creados en el sistema de partculas ps.

part_destroyer_exists(ps,ind) Devuelve true si el destructor ind existe dentro


del sistema de partculas ps.

part_destroyer_clear(ps,ind) Devuelve el destructor a sus valores por defecto.

part_destroyer_region(ps,ind,xmin,xmax,ymin,ymax,shape) Establece la
regin del destructor.

part_deflector_create(ps) Crea un nuevo deflector en el sistema de partculas


ps. Devuelve el ndice del deflector. Este ndice debe emplearse en las
llamadas a las funciones siguientes para configurar las propiedades
del deflector.

part_deflector_destroy(ps,ind) Destruye el deflector ind del sistema de


partculas ps. Llama a esta funcin cuando ya no necesites el deflector para
ahorrar espacio.

part_deflector_destroy_all(ps) Destruye todos los deflectores que hayan sido


creados en el sistema de partculas ps.

part_deflector_exists(ps,ind) Devuelve true si el deflector ind existe dentro


del sistema de partculas ps.

part_deflector_clear(ps,ind) Devuelve el deflector a sus valores por defecto.

part_deflector_region(ps,ind,xmin,xmax,ymin,ymax) Establece la regin para


el deflector.

part_deflector_kind(ps,ind,kind) Establece el tipo de deflector.

part_deflector_friction(ps,ind,friction) Establece la friccin del deflector.

parttype1 indica el tipo de partcula a ser cambiado.

parttype2 indica el tipo de partcula al que se cambiar.

kind indica el tipo del modificador

ps_change_motion slo cambia los parmetros de movimiento de la partcula,


no el color o forma ni las propiedades de tiempo de vida

ps_change_shape slo cambia los parmetros de forma de la partcula como


el tamao, el color y forma

ps_change_all cambia todos los parmetros, bsicamente significa que la


partcula es destruida y se crea una nueva del nuevo tipo.

part_changer_create(ps) Crea un nuevo cambiador en el sistema de


partculas ps. Devuelve el ndice del cambiador. Este ndice debe usarse en
las llamadas a las funciones siguientes para configurar las propiedades
del modificador.

part_changer_destroy(ps,ind) Destruye el cambiador ind en el sistema de


partculas ps. Llama a esta funcin si ya no necesitas el cambiador para
ahorrar espacio.

part_changer_destroy_all(ps) Destruye todos los cambiadores que hayan sido


creados en el sistema de partculas ps.

part_changer_exists(ps,ind) Devuelve true si el cambiador ind existe en el


sistema de partculas ps.

part_changer_clear(ps,ind) Devuelve las propiedades del cambiador a sus


valores por defecto.

part_changer_region(ps,ind,xmin,xmax,ymin,ymax,shape) Establece la regin


para el modificador.

part_changer_types(ps,ind,parttype1,parttype2) Establece el tipo de partcula


que debe ser cambiado y el tipo al que debe ser cambiado.

part_changer_kind(ps,ind,kind) Establece el tipo de modificador.

mplay_init_ipx()inicializa una conexin IPX.

mplay_init_tcpip(addr)inicializa una conexin TCP/IP. addr es una cadena que


indica la direccin web o IP

mplay_init_modem(initstr,phonenr)inicializa una conexin va mdem. initstr


es la cadena de inicializacin para el mdem (puede estar vaca). phonenr es
una cadena que contiene el nmero telefnico a marcar (p.
Ej. '0201234567'). Slo se necesita el nmero telefnico al unirse a una
sesin (ve a continuacin).

mplay_init_serial(portno,baudrate,stopbits,parity,flow) inicializa una conexin


en serie.

mplay_connect_status()devuelve el estado de la conexin actual. 0=no hay


conexin, 1=conexin IPX, 2=conexin TCP/IP, 3=conexin va mdem, y
4=conexin serial.

mplay_end() finaliza la conexin actual.

mplay_ipaddress()devuelve la direccin IP de tu mquina (p. Ej.


'123.123.123.12') como cadena. Puedes p. Ej. mostrarla en pantalla. Esta
rutina es lenta por lo que mejor no la llames a menudo.

mplay_session_create(sesname,playnumb,playername) Crea una nueva


nueva sesin en la conexin actual. sesname es una cadena que indica el
nombre de la sesin. playnumb indica el nmero mximo de
jugadores permitidos para este juego (usa 0 para un nmero arbitrario de
jugadores). playname es tu nombre como jugador. Indica si ha tenido xito.

mplay_session_find() Busca todas las sesiones que an aceptan jugadores y


devuelve el nmero de sesiones encontradas.

mplay_session_name(numb) Devuelve el nombre de la sesin nmero numb


(0 es la primer sesin). Esta rutina puede ser llamada slo despus de haber
llamado a la anterior.

mplay_session_join(numb,playername) Con esta rutina te unes a la sesin


nmero numb (0 es la primer sesin). playername es tu nombre como
jugador. Indica si ha tenido xito.

mplay_session_mode(move) Indica si se mueve la sesin de host a otra


computadora cuando el host actual cierre. move debe ser true o false (valor
por defecto).

mplay_session_status() Devuelve el estado de la sesin actual. 0 = no hay


sesin, 1 = sesin creada, 2 = se uni a la sesin.

mplay_session_end() Finaliza la sesin para este jugador.

mplay_player_find() Busca todos los jugadores en la sesin actual y devuelve


el nmero de jugadores encontrados.

mplay_player_name(numb) Devuelve el nombre del jugador nmero numb (0


es el primer jugador, el cual siempre eres t). Esta rutina puede slo ser
llamada despus de haber llamado a la anterior.

mplay_player_id(numb) Devuelve el id nico del jugador nmero numb (0 es


el primer jugador, el cual siempre eres t). Esta rutina puede llamarse slo
despus de haber llamado la primera. Este id es usado al enviar
y recibir mensajes de otros jugadores.

mplay_data_write(ind,val) Escribe el valor val (cadena o real) en la ubicacin


ind (ind entre 0 y 10000).

mplay_data_read(ind) Devuelve el valor en la ubicacin ind (ind entre 0 y


10000). Inicialmente todos los valores son 0.

mplay_data_mode(guar) Indica si se usa o no transmisin garantizada para


los datos compartidos. guar debe ser true (valor por defecto) o false.

mplay_message_send(player,id,val) Enva un mensaje al jugador player (ya


sea un identificador o un nombre; usa 0 para enviar el mensaje a todos los
jugadores).

mplay_message_send_guaranteed(player,id,val) Enva un mensaje


garantizado al jugador player (ya sea un identificador o un nombre; usa 0
para enviar el mensaje a todos los jugadores).

mplay_message_receive(player) Recibe el siguiente mensaje de la cola de


mensajes que lleg del jugador player (identificador o nombre). Usa 0 para
indicar mensajes de cualquier jugador.

mplay_message_id() Devuelve el identificador del ltimo mensaje recibido.

mplay_message_value() Devuelve el valor del ltimo mensaje recibido.

mplay_message_player() Devuelve el jugador que envi el ltimo mensaje


recibido.

mplay_message_name() Devuelve el nombre del jugador que envi el ltimo


mensaje recibido.

mplay_message_count(player) Devuelve el nmero de mensajes restantes en


la cola de espera del jugador player (usa 0 para contar todos los mensajes).

mplay_message_clear(player) Elimina todos los mensajes en la cola de


espera del jugador player (usa 0 para eliminar todos los mensajes).

external_define(dll,name,calltype,restype,argnumb,arg1type,arg2type, )
Define una funcin externa. dll es el nombre del archivo dll. name es el
nombre de las funciones. calltype es la convencin de llamada
empleada. Usa dll_cdecl o dll_stdcall. restype es el tipo del resultado. Usa
ty_real o ty_string. argnumb es el nmero de argumentos (0-11). Despus,
para cada argumento debes especificar su tipo. Para ello usa
nuevamente ty_real o ty_string. Cuando hay ms de 4 argumentos todos ellos
deben ser de tipo ty_real.external_call(id,arg1,arg2,) Llama a la funcin
externa con el id y los argumentos dados. Necesitas
proporcionar el nmero correcto de argumentos del tipo correcto (real o

string). La funcin devuelve el resultado de la funcin externa.

external_free(dll) Libera la DLL con el nombre indicado. Esto es


particularmente necesario si el juego debiera remover la DLL. Mientras la DLL
no haya sido liberada, no puede ser removida. Lo mejor es realizar esto
p. Ej. en el evento game end.

execute_string(str) Ejecuta la pieza de cdigo en la cadena str.

execute_file(fname) Ejecuta el cdigo en el archivo fname.

window_handle() Devuelve el handle de la ventana principal.

También podría gustarte