SlideShare une entreprise Scribd logo
1  sur  46
Télécharger pour lire hors ligne
[TUTORIAL BASICO EN GAME MAKER 8]
En este tutorial se aprenderá el uso de Game Maker 8 a nivel básico para todos aquellos que les
gustaría utilizar este programa.
Biografía:
Autor: Henrydarklite
Edición: 1ra
Lugar: México
Páginas: 46
Fecha de publicación: Abril 2012
INDICE
Uso básico
• Introducción
• Instalación
• Componentesde la versiónPro de Game Maker
• Primerospasos
• La interfazde usuario
• Definiendolossprites
• Sonidosy música
• Fondos
• Definiendoobjetos
• Eventos
• Acciones
• Creando rooms
• Distribuir tu juego
Uso Básico
Descripcióndel usobásicode GameMaker,explicalaideageneral del programa:comoañadir
sprites,fondoso sonidos,asícómodefinirobjetosconeventosyaccionesparaañadirlosalas
rooms.
Introducción
Creando tus propiosvideojuegos
Jugar a videojuegosesdivertido,peroaúnloesmás diseñarlostuyospropiosy que otroslos
jueguen.Pordesgracia,crear videojuegosnoesfácil.Losjuegoscomercialesde hoyendía se
desarrollanende 1 a 3 años con equiposmuyespecializadosde entre 10a 50 personasy
presupuestosde millonesde euros.
¿Quiere estodecir que es imposible creartus propios videojuegos?
No,con Game Makerpuedescrearlossinnecesidadde aprenderningúnlenguajede
programación.Eso sí, no esperesconseguirtupropio Halo 4 o el Virtual Tennisenpocassemanas,
aunque tampocoesnecesariatantacomplejidadparaque seandivertidos.Juegos mássimples
como el Tetris, Pacman,SpaceInvaders,...sonigualmente divertidosymásfácilesde desarrollar.
Game Makerte ofrece una sencilloe intuitivosistemade "arrastrar y soltar" que te permite crear
juegosde formarápida.Puedesimportarycrear imágenes,sprites(imágenesanimadas) ysonidos,
indicarcómo interactúanentre ellosysituarlosenlasdistintasrooms(salas)donde se desarrollael
juego,ytodo estosinnecesidadde programar.Si másadelante quieresmayorcontrol también
disponesde unsencillolenguaje de programaciónparacontrolartodosloselementos.
Game Makerestápensadopara desarrollarjuegosbidimensionales(2D),asíque si quierescrear
mundosen3D este noestu programa. Juegosimportantescomo Ageof Empires,las
series Command and Conquer yDiablo usan tecnologíasde sprites2D,aunque parezcan
tridimensionalesyel desarrollode este tipode juegosesmásfácil yrápido.
Este documentote ayudará a aprenderel usode Game Makery como realizarvideojuegos,pero
recuerdaque sóloesuna herramientay hay muchosaspectosa tenerencuenta:historiadel
juego,gráficos,sonidos,interacción,...Empiezaconejemplosfáciles,aprende másyprontoserás
un expertodesarrollador.Disfrutadel procesocreativo,comparte tusideasybuscarecursosen los
forosde las siguienteswebs:
http://www.yoyogames.com/make
http://www. taringa.net/comunidades/aprendiendogamemaker/
Instalación
Ejecutael programa setup.exe ysigue lasinstruccionesde pantalla.Puedesinstalarlodonde
desees,perote recomiendodejarlasopcionespredeterminadas.Unavezinstaladoencontrarásun
nuevogrupode programas enel menúInicio,desde dondepuedesarrancar Game Makere leerel
archivode ayuda.
Dentrode la carpeta de instalación(pordefectoC:Archivosde ProgramaAPGMFGame Maker)
tenemosvarias carpetasadicionales:
Backgrounds: imágenesparalosfondos.
Examples:contiene variosjuegosde ejemplo,paraque losrevisesy/o modifiques.
extensions:dónde se instalanlasextensionespara ampliarlafuncionalidaddel programa.
Por defectoyavienentres,unaparaimprimir(Printing),parahacertransicionesentre las
rooms(RoomTransitions) ypara hacerdiálogosde ventanas(WindowsDialogs).
lib:contiene variaslibreríasde acciones.Si deseasinstalarlibreríasadicionalesdebes
colocarlasdentrode estacarpeta.
Sounds: sonidosde ejemplo.
Sprites:spritesde ejemploque puedesusarentusjuegos.La instalaciónyaincluye
algunos.
Tutorials: aquí se guardan lostutorialesque se puedenseguirdentrodel programa,los
que aparecenenel lateral derecho.Cadaunose guarda enuna carpeta diferente.
Puedesdescargarmásrecursosdesde lawebde Yoyo Gameso de cualquierotraweb.
Requisitos
Cualquierordenadorconmenosde 5 añosde antigüedaddeberíavaler.
OrdenadormodernoconsistemaoperativoWindows.
Tarjetagráfica compatible conDirectX8 o posteriorconal menos32 MB de memoria.
Resoluciónde pantallaal menosde 800x600 pixelesy65.000 colores(16-bit).
Tarjetade sonidocompatibleconDirectX8.
Compruebaque tienesinstaladosloscontroladoresmásrecientesde tuequipo.
Al diseñaryprobar juegos,los requisitosde memoriasonunpocomás elevados,al menos128
MB.
Al jugar,la memorianecesariasuelesermenor,perodepende deltipode juego.
Componentesde la versiónPro de Game Maker
La versión Proque esgratuitagracias al usuario bra101yan incluye:
Sprites:podrásrotarlos,transformarsucolor o hacerlostranslúcidos.
Editorde spritese imágenesconmásopciones.
Más acciones:cargar músicadesde unCD, rotar texto,crearformasde colores...
Efectosespecialesde sonidoysonidoposicional.
Crear pantallas de inicioconpelículas,imágenes,sitiosweb,textos...
Sistemade partículaspara crear efectosde fuego,lluvia,explosiones...
Funcionesavanzadasde dibujocomopolígonostexturizados.
Funcionesparagráficosen3D.
Funcionesparacrear juegosmultijugadoro jugarenred.
Podrásdefinirtuspropiastransicionesentre rooms.
Funcionesparacrear y modificarrecursos(sprites,fondos,...) durante el juego.
Funcionesparausar estructuras de datos.
Funcionesparaplanificarmovimientos.
Posibilidadde incluirmásarchivosentiemporeal durante el juego.
La edición Propuede ampliarseconextensiones,que puedensercreadasporcualquieray
suelensergratis.
Tres de esasextensionesyaestánincluidasyañadentransicionesentre estancias,cuadros
de diálogoyserviciosde impresión.
Podrásdefinirtuspropioseventostriggers.
Herramientasparacrear juegoscolaborativos,pudiendoimportaryexportarrecursos.
Primerospasos
Crear tu primerjuegosiempreesunreto,perosi ponesunpoco de esfuerzoportu parte,será
bastante másfácil.En una hora podrías tenerlistounjuegosencillo.
A pesarde que hacer juegosconGame Maker esmuy sencillo,necesitaráscomprenderlos
conceptosbásicosdel programa.Para conseguirlote recomiendoseguirel tutorialque se muestra
a la derechaal empezar.Si no loves,vete al menú ayuda (Help) yescoge laopción Tutorial.
Conceptosbásicosdel programa
Los juegoscreadosconGame Maker se desarrollanenunao más rooms (salas) que esdonde
colocaráslos objetos,porejemploparedes,al protagonistaolosenemigos.Algunosde estos
objetossonestáticoscomolasparedes,mientrasotros,comoel protagonista,se muevene
interactúanconotros objetos reaccionandoalasórdenesdel jugador,que loscontrolamediante
el teclado,el ratóno el joystick.Estoselementossonlosmásimportantesdel juego.
La mayoríade losobjetosnecesitanalgunaimagenparahacerse visiblesenpantalla.Estas
imágenesse llamanspritesypuedenserestáticos(unaimagen) oanimados(variasimágenes
simulandomovimiento).De estaformaparece que el personaje camina,que unapelotarueda,
etc.Durante el juegoel sprite de unobjetopuede cambiar,porejemploel personaje se ve
diferente cuandocaminaaizquierdaoaderecha.Puedescreary editarspritesenel propio
programa o importarlosde otros,comoGIFs animados.
Los objetosreaccionanalosdiferentestiposde eventosque hayyejecutan lasaccionesque estén
asociadasa losmismos.Estoseventoslessucedena lasinstancias de losobjetos,que son su
representación enpantalla.Porejemplo,sólotienes1objetoenemigo,peropuedescolocarel
númerode instanciasdel objetoenemigoque desees.Al crearlainstancia se ejecutanlasacciones
asociadasal eventoCrear,cuandochoca contra otra instanciade objetosucede el eventoColisión,
etc.Más adelante loveremosendetalle.
Las rooms puedenserempleadascomonivelesdel juegoopara mostrardiferenteslugaresy
tienenaccionespropiasque permitenpasarde unasa otras.Lo más básicoes ponerle unfondo
que puede seruncolor o una imagen.Encada room colocasel númerode instanciasque quieras
de losobjetosdefinidos.Porejemploenlaroom A puedescolocar4 instanciasdel objetoenemigo
y enla room B puedescolocar6.
Ya puedesprobarel juego.Se mostrarála primeraroomy losobjetoscobraránvidadebidoa las
accionesde suseventosde creación,interactuaránunosconotrospor las accionesasignadasa sus
eventosde colisiónyreaccionarána loque haga el jugadorporque tienenaccionesensuseventos
de tecladoo ratón.
En resumen,lossiguientes recursostienenunpapel fundamental enel proyecto:
Objetos(objects):sonlasentidadesverdaderasenel juego.
Rooms (salas):loslugaresdonde situamoslosobjetos.
Sprites:imágenesque se empleanpararepresentaralosobjetos.
Sonidos(sounds):comomúsicade fondoo efectossonoros.
Fondos(backgrounds):lasimágenesde fondoparalasrooms.
Hay más recursosque se usan para juegosmáscomplicadoscomoloscaminos(paths),guiones
(scripts),tipografías(fonts) olíneasde tiempo(time lines).
La interfazdel usuario
Al iniciarel GameMakerse muestralasiguiente ventana,juntoconel primer tutorial aladerecha:
A la izquierdapuedesverunlistadoconlos recursos:sprites,sonidos(sounds),fondos
(backgrounds),scripts,objetos(objects),salas(rooms)ydosmás: Informacióndel juego(Game
Information) yOpcionesdeljuego(Game Options).
En la parte superiorestánel menúy labarra de herramientas.En este capítuloexplicaremos
brevementelasopcionesdelmenú,losbotones,etc.Másadelante ampliaremosinformación
sobre algunosde ellos.Recuerdaque muchascosasse puedenlograrde diferentesmaneras:
seleccionandouncomandodel menú,haciendoclicenunbotóno haciendoclicderechosobre un
recurso.
Estas son las funciones que tiene game maker en la barra lateral
Es para crear un nuevo archivo
Es para cargar un archivo
Es para guardar el archivo
Es para crear tu proyecto en archivo con extension .exe
Es para publicar tu juego en yoyogames.com
Es para previzualizar tu juego
Es para lanzar un debug (no recomendado utiliza mucha memoria)
Es para cargar o crear un sprite
Es para cargar un sonido
Es para cargar o crear un background
Es para hacer un path (Movimientos relativos)
Es para hacer un scriptGML
Es para cargar una fuente a tu juego ejemplo:Arial
Es para hacer un timeline (linea de tiempo)
Es para hacer un objeto (lo que llevara tu juego como el jugador,blockes,etc)
Es para hacer un cuarto (los niveles)
Es para poner la info de tu juego (NO RECOMENDABLE)
Es para poner las opciones globales de tu juego como:Iniciar en pantalla completa,Ver mouse,etc...
Es para cargar extensiones (En este caso no necesario)
Es para ver para que sirve cada scriptGML (AYUDA EN SCRIPT)
Menú archivo(file)
Los comandohabitualesparaabriry guardar archivos.Los comandocon * tienenunbotónenla
barra de herramientas.
Nuevo(New)*.Para empezaracrear un juegonuevo.Si el juegoactual tiene
modificacionesse te preguntasi quieresguardarlo.
Abrir (Open)*.Abre unarchivode juego.Losarchivosde Game Makertienenla
extensión .gmk.Tambiénpuedesabrirarchivos antiguosconextensión.gm6.ysi quieres
abrir archivos.gmdcreadoscon la versión5tienesque seleccionarel tipode archivo
adecuadoenla parte de abajodel cuadrode diálogo.Estosúltimospodríannofuncionar
correctamente enlanuevaversión.
Tambiénpuedesabrirunjuegoarrastrandoel archivoa la ventanade GameMaker.
Archivos recientes(Recentfiles).Usaeste submenúparavolveraabrirlosarchivos
usadosrecientemente.
Guardar (Save)*.Guardael archivodel juegoconel nombre actual,sino lo tiene aúnte
aparece una ventanapara dárselo.Este comandosóloestádisponiblecuandoel proyecto
ha cambiado.
Guardar como (Save as). Guarda el juegoconotro nombre.Se te pide unnuevonombre.
Crear ejecutable (Create executable).Mediante estecomandopuedescrearunaversión
ejecutable de tujuegoque funcionasinnecesidadde tenerinstalado GameMaker.Con
este archivopuedesdistribuirtujuegoa quienquieras.
Modo avanzado (Advancedmode).Al hacer clicen este comandose cambiaráentre los
modossimple yavanzado.Enel avanzadotienesdisponiblesmáscomandosyrecursos.
Salir (Exit).Para salirdel programa.Si hiciste cambiosenel juegoactual se te preguntarási
quieresguardarlo.
Menú Editar(Edit)
Contiene comandosrelacionadoscon el recurso(objeto,sonido,etc.) ogrupode recursos
seleccionado.Dependiendodel tipoalgunoscomandospuedennoestardisponibles.
Insertar recurso (Insertresource).Insertaunanuevainstanciadel tipode recurso
actualmente seleccionadoantesdel mismo.Si seleccionaste ungrupode recursoses
agregadoal grupo.Se abrirá un cuadro de diálogoenel que puedescambiarlas
propiedades.
Duplicar (Duplicate).Creay agrega unacopia del recursoactual.Se abre unaventanaenla
que puedesmodificarlo.
Borrar (Delete).Borrael recursoo grupo de recursosseleccionado.Este comandono
puede deshacerse,porloque verásunaadvertenciaparaconfirmarsu eliminación.
Renombrar (Rename).Dale unnuevonombre al recurso.Tambiénlopuedeshacerensu
ventanade propiedades.
Propiedades(Properties).Usaeste comandoparamostrar la ventanade ediciónde
propiedadesque se mostraráenlaventanaprincipal.Puedeseditarvariasal mismo
tiempo.Tambiénpuedesaccederalaspropiedadeshaciendodoble clicenel recurso.
Estos comandostambiénpuedesaplicarlosde otraforma.Haz clic derechoenunrecursoo grupo
de recursos,y apareceráel menúapropiado.
Menú recursos(Resources)
Puedescrearnuevosrecursosde cualquierade lostiposdisponibles.Paracadauno de ellos
tambiénhayun botónenla barra de herramientasyunacceso directodesde el teclado.También
puedescambiarlainformacióndel juegoylaspreferenciasgenerales..
Menú Ejecutar(Run)
Se usa para ejecutarel juegode lassiguientesmaneras:
Normal (Run normally).Ejecutael juegoenmodonormal y de la maneramás eficiente
posible comosi fueraunejecutable.
Depuración de errores (Run inDebug mode).Ejecutael juegoenmodo depuración. En
este modopuedesrevisarel juego,pausarlooavanzar pasoa paso.Muy útil para detectar
y solucionarerrores.
Una vez que tujuegoesté listo,puedescrearunejecutable del juegousandolaaccióndel menú
archivo.
Menú Ventana(Window)
Comandospara manejarlaspropiedadesde lasventanasde laventanaprincipal.
Cascada (Cascade).Colocatodaslasventanasencascada de formaque cada una sea
parcialmente visible.
Reordenar iconos(Arrange Icons).Ordenatodas lasventanas.Útil al cambiar de tamaño
la ventanaprincipal.
Cerrar todo (Close All).Cierratodaslasventanasde propiedades,preguntandosi se desea
guardar o no loscambiosrealizados.
Menú Ayuda(Help)
Comandosde ayuda:
Contenidos(Contents).Laayudaen formatoCHM.
Tutoriales(Tutoriales).Usa este submenú paraverlostutorialesque te enseñaránacrear
tus primerosjuegos.
Actualizarse a la versiónPro (Upgrade to Pro Edition).Para poderusartodas lasfunciones
del programa.
Introducir código de activación (Enter Activation Code).Si ya hascomprado Game Maker
antes,usaeste comandopara introducirtu código.Te llevaráa unapáginawebpara
hacerloefectivo.
Noticias(News).Consultalasúltimasnoticiassobre el programa.
Libro (Book).Te llevaala webdel librode GameMaker.
Más tutoriales(More tutorials).Te conecta a una webpara que te descarguesmás
tutoriales.
SitioWeb(Web).Te llevaala weboficial del programa,donde podrásencontrarjuegosy
más recursos.
Foro (Forum).Te conectaal forooficial,donde puedesencontrarayudayrecursos.
Wiki (Wiki).Te conectacon lawiki de Game Maker donde encontrarásinformaciónde
utilidadordenadaportemas.
About Game Maker. Breve informaciónsobre el programa.
El exploradorde recursos
En la parte izquierdade lapantallaverásel exploradorde recursos,conuna listadesplegable con
todoslosrecursosde tu juego.Si unelementotiene unsigno +a su ladopuedeshacerclicpara
verlostodosylospuede ocultarclicandoenel signo -.
Seleccionayhazclic sobre unrecursopara cambiarle el nombre.
Doble clicsobre él para editarsu propiedades.
Usa el botónderechoparaaccedera loscomandosdel menúEditar.
Puedescambiarel ordende lalistahaciendoclicenunrecurso y manteniendopulsadoel botón
del ratón.Arrástraloal lugarque quierasdentrodel mismotipo.
Definiendolossprites
Los spritesson lasrepresentacionesvisualesde todoslosobjetosenel juego.Unsprite puede ser
una imagensimple ounjuegode variasimágenesque,reproducidasunatrasotra, crean unefecto
de movimiento(animación).Porejemplo,lassiguientesimágenesformanunsprite paraun
personaje moviéndose hacialaderecha.
Al empezara crear tu juegodebesdibujarobuscar lostodoslosspritespara losobjetosque vasa
usar. Conel programa vienenincluidosunoscuantos(carpetaSprites),pero puedesdescargarte
más de la webde Game Maker o de otros sitiosenInternet.Suelenestarenformato.pngo.gif
(estáticosoanimados).
Para crear un sprite seleccionael comando CrearSprite (Create Sprite) del menú
de Recursos (Resources) ousael botóncorrespondiente enlabarrade menús(Pacmanrojo),se
verála siguiente ventana:
En la parte superiorizquierdaescribe el nombre del sprite,puestodoslosrecursosdel juego
debenllevaruno.Procuraque seadescriptivo,fácil de recordaryque no se repita.Se recomienda
sólousar letras,númerosyel guiónbajo(_) enlos nombresde losrecursos(sprites,objetos,
sonidos...) yempezarel nombre conunaletra.Evitausar espaciosenblanco,puesdarían
problemasencasode usar código.
Haz clic en el botónCargar Sprite (LoadSprite) paraabrir el siguientecuadrode diálogo:
En la parte izquierdahayunselectorde archivosdonde puede elegirlaimagenque quieresyenla
parte derechapuedesprevisualizarel sprite animadoyveralgunainformaciónsobre él.Aquí
puedesindicarsi loquiereshaceropaco(se borraránlas partestransparentes),borrarel fondo
haciéndolotransparente (pordefecto) ysi quieressuavizarlosbordes,loque puedemejorarsu
apariencia.PulsaAbrir(Open)cuandoestés satisfechoconel resultado.
Game Makerpuede abrirdiferentestiposde imágenes.Al cargarun .gif animado,todas
lassubimágenesformarla imagendel sprite.Cuandoel nombre delarchivoacabacon _stripXX,
con XX comoun número,se consideraque contieneunatirade subimágenesunajuntaala otra
(nopara .gifs).Porejemplo,conel nombre bola_strip4.pngse asume que hay4subimágenes.
Una vez que se carga el sprite,se mostrarálaprimerasubimagenala derechaysi hayvarias
puedesverlasunaauna usandolosbotonesconlas flechas.
Con el botón Editar Sprites(EditSprite) puedeseditarel sprite oinclusocrearunonuevo.Game
Maker trae integradouneditorde imágenesysprites.Paramásinformaciónve alas
secciones Editandotus spritesy Editando subimágenesindividualmente.
Sonidosy música
La mayoríade juegostienenefectosde sonidoymúsicade fondopara hacerlomásatractivos.
Puedesencontrarejemplosde sonidosenlacarpetaSoundsenel directoriode instalacióndel
programa o descargarlosdesde lawebde GameMakeru otrossitiosenInternet.
Para añadirun recursode sonidoal juego,usael comando Crear Sonido(Create Sound) del
menúRecursos (Resources) ousael botóndel altavozenlabarra de herramientas.Se mostrarála
siguiente ventana:
Para cargar un sonidopulsael botón Cargar Sonido(Load Sound) yapareceráun cuadro de
diálogoparaseleccionarel archivode sonidoque te interese.Haydostiposde archivosadmitidos:
wave(*.wav).Paraefectoscortosde sonido,usanmuchamemoriaperose reproducenal
momento.
midi (*.midi).Necesitanmuchamenosmemoriaparaserreproducidos,perosólose puedeusar
unoa la vezy para músicade fondo.
Una vez que hascargado el archivode músicapuedesescucharlousandoel botónReproducir
(Play).Tambiénhayunbotón Guardar Sonido(Save Sound) paraguardar el sonidoactual a un
archivo,que seráde utilidadencasode perderel original.
Fondos
El tercertipode recurso básicosonlos fondos,que normalmentesonimágenesgrandes usadas
como fondode lasrooms enlasque se desarrollael juego.A menudoestánhechascontiles
(mosaicos) de maneraque puedesrellenarel espacioconunmotivoysinseparacionesvisuales
entre losbloques.Puedesencontrarejemplosenlacarpeta Backgrounds dentrodel directoriode
instalacióndel programao descargarlas de la webde GameMaker u otraspor Internet.
Para añadirun recursode fondoa tu juego,usael comando Crear Fondo(Create Background) en
el menú Recursos o usael botón correspondientede labarra de herramientas.Se mostrarála
siguiente ventana:
Dale un nombre descriptivoarribaa laizquierda.
Pulsael botón Cargar Fondo(Load Background) para seleccionarel archivoque te interese.A la
derechadel selectorde archivospuedes indicarsi quieresque el fondoseaopaco(se borraránlas
partestransparentes),que se borre el fondoose haga transparente (pordefectono) ysi se
suavizanlosbordes,loque mejorarásuaspectocuandoes parcialmente transparente.Cuando
estéssatisfechoconel resultadopulsa Abrir(Open) ycarga el archivo.¡Losfondosno puedenser
animados!
Puedescambiarel fondoocrear unonuevousandoel botón Editar Fondo (EditBackground) que
abrirá uneditorde imágenes.Parasaber cómousarlopuedesira la sección Editando
subimágenes(Editingimages).
Tencuidadoal usar imágenes muygrandes,algunastarjetasgráficasantiguasnoadmitenque
seanmayoresque lapantalla,así que procura que seanmenoresde 1024x1024 pixeles.
DefiniendoObjetos
Ya hemosañadidoimágenesysonidosal juego,peroningunode ellosrealizaningunaacción,no
interactúanconnada. Es hora de hablar del recursomásimportante dentrode GameMaker:
losobjetos.
Los objetosson lasentidadesque hacenlascosasenel juego,casi siempre tienenunsprite como
representacióngráficaparaque puedasverlos.Tienenuncomportamientoporque pueden
reaccionara ciertoseventos.Todaslascosasque vesen el juego(exceptoel fondo) sonobjetos,
concretamente,son instanciasde objetos.Tambiénloshayinvisibles,que novesperocontrolan
ciertosaspectosde lapartida.
Fíjate en ladiferenciaentre los spritesylosobjetos.Losspritessonsoloimágenesque notienen
ningúncomportamientoasociado.Losobjetosnormalmenteestánrepresentadosporunsprite,
perotambiéntienenuncomportamientoparainteractuar.¡Sinobjetosnohayjuego!
Tambiénfíjate enladiferenciaentre los objetosylasinstancias.Un objetodescribe ciertaentidad,
por ejemplounenemigo.Peroenel escenariospuedesponerel númerode instanciasdel objeto
que deseesytodasserániguales.Si modificasel objetooriginal,todassusinstanciascambiarán.
Para añadirun objetoal juego,seleccionael comando CrearObjeto(Create Object) del
menúRecursos (Resources).Aparecerálasiguienteventana:
A la izquierdase muestralainformacióngeneraldel objeto,enel mediohayvarioseventosque le
puedensucederyala derechalasaccionesasociadascon dichoseventos.De loseventosylas
accioneshablaremos enlospróximoscapítulos.
Comosiempre,debesdarleunnombre descriptivoal objeto.Después,elijeunode losspritesya
creadospara que sea su representaciónvisual.Parahacerlo,hazcliccon el botónizquierdodel
ratón enla caja de Sprite o enel botóna suderechapara mostrar todoslosdisponibles.Selecciona
el que quieras.
Si todavía no tienesningunopuedesdarle a Nuevo(New) paraañadirunoy luegolopuedes
cambiar.También,cuandoseleccionesunrecurso,verásunbotón Editar (Edit) para editarsus
propiedades.Estoesmásrápidoque buscarloenlalistade recursose indicarque loquieres
editar.
Debajohaydos opciones:
Visible (Visible).Indicasi lasinstanciasde este objetoseránvisibles.Lomáshabitual es
que losobjetosse puedanverperoenalgunasocasionesesútil teneralgunosinvisibles,
por ejemplocomoguíasde movimientoparaunenemigo.Estosobjetosinvisibles
reaccionana eventosyotras instanciaspuedencolisionarconellos.
Sólido(Solid).Indicasi se trata de un objetomacizo(comounapared).Las colisionescon
sólidossontratadasde forma diferenteque losno-sólidos.Se recomiendausaresta
opciónsólopara objetosque nose mueven.
Eventos
Game Makeremplealoque se conoce comoprogramaciónorientadaa eventos.Estoes,entodo
tipode situacioneslasinstanciasde losobjetosrecibeneventosreaccionandoaellosejecutando
algunaacción.A cada uno de losobjetosdebesindicarle aque eventosresponderáylasacciones
asociadasa ellos.Aunque puedasonarcomplicado,verásque enrealidadesmuysencilloylo
podráshacer con botonesde arrastrar y soltar.
En el mediode laventanade propiedades de objetohayunalistade eventosaloscualesdicho
objetopuede reaccionar,al principioestávacía.Pulsael botónAñadir Evento (AddEvent),
apareceráun pequeñomenúcontodoslostiposde eventosdisponiblesparaagregardesde aquí
losque te interesen.Enocasionesse mostraráunsubmenúconopcionesextra.Porejemploenel
eventode tecladoapareceráunalistacontodas lasteclasdisponibles.
Al final de estapáginaencontrarásuna descripcióndetalladade todosloseventos.
Seleccionauneventode lalista,que seráel que modificaremosyapareceráenel listadode
eventosde laspropiedadesdel objeto. A laderechade todo,agrupadasenvariaspestañas,están
todaslas accionesrepresentadasporiconosque reaccionanaloseventos,que veremosmás
adelante endetalle.
Entre loseventosylasaccionesse encuentralalistaconlas accionespara el evento actual.Para
agregar unaacción a la listaarrástreladesde laderechahastaaquí y se situaránunadebajode
otra con una breve descripción.Paracada una de lasaccionesse te pediránalgunosparámetros
que veremosmásadelante. Después de añadiralgunas,tendríasalgoasí:
Puedesañadiraccionesparaotro evento,hazclicconel botón izquierdosobre el que quierasy
arrastra nuevasaccionesa la lista.
Puedescambiarel ordende lasaccionesde lalistaarrastrando losiconos.Si mantienespulsadala
tecla<Alt> mientrasarrastras,harás una copiade la acción.Inclusopuedesarrastraaccionesentre
listasde diferentesobjetos.
Con el botónderechodel ratónse mostrará unsubmenúdesde el que borrar,copiaro pegar
acciones.Puedesseleccionarvariasaccionesparacortar, copiaro borrar pulsandola
tecla<Shift>o <Ctrl>. Presionandolasteclas <Shift><A>seleccionastodas.Si mantienesel cursor
del ratón sobre unaacción se muestrauna descripciónmásdetalladade lamisma...
Para borrar el eventoseleccionadoytodassusaccionespulsael botón Borrar (Delete).Los
eventossinaccionessoneliminadosautomáticamentecuandocierraslaventanasinnecesidadde
que hagas nada.
Si deseasasignarlasaccionesa un eventodiferente(cambiode tecla, porejemplo)pulsael
botónCambiar (Change) yseleccionael nuevoevento,que nodebe habersidoempleadoantes.
Usando el submenú que aparece conel botónderechodel ratónenla listade eventopuedes
duplicarlo,estoes,agregarunnuevoeventoconlas mismasacciones.
Tal como se indicóantes,paraañadir uneventopulsael botón AñadirEvento (AddEvent) yse
mostrará lasiguiente ventana:
Aquí seleccionael eventoque vasaañadir,algunasvecesaparece unnuevomenúconopciones
extra.Esta esla descripciónde loseventosdisponibles,perorecuerdaque normalmente sólo
usarás algunosde ellos,en función de lasnecesidadesdelobjetodentrode tujuego:
Evento crear (Create event)
Sucede cuandose crea una instanciadel objeto.Normalmente se usaparaestablecerel
movimientode lainstanciay/oestableceralgunasde susvariables.
Evento Destruir (Destroyevent)
Ocurre cuando la instanciaesdestruida,exactamente justoantesde que seadestruida.Esto
quiere decirque lainstanciaaúnexiste cuandoel eventoesejecutado.Habitualmente nose usa,
peropuedesemplearlo,porejemplo,paracambiarel marcador o crear algúnotro objeto.
Eventos alarma (AlarmEvent)
Cada instanciatiene 12relojesde alarma.Puedesconfigurarlosusandociertas acciones(verel
siguiente capítulo).El reloj de laalarmahace unacuenta regresivahastaque llegaa0, que es
cuandose generael evento.Paraindicarlasaccionesparaun reloj de alarma,primeronecesitas
seleccionarloenel menú.
Los relojesde alarmasonmuy útiles,puedesusarlosparahacerque ciertascosas se repitanunay
otra vez.Por ejemplo,unenemigopodríacambiarde direccióncada20 pasos,encuyo caso unade
lasaccionesenel eventodebe configurarnuevamente laalarma.
Eventos paso (Stepevents)
El eventostepsucede acada paso/frame del juego.Puedescolocaraccionesque requieren
ejecutarse continuamente.Porejemplo,si unobjetodebe seguiraotro,puedesadaptarla
direcciónde movimientohaciael objetoque se estásiguiendo. Hayque tenercuidadoconel uso
de este eventoparaevitarralentizarel juego,nocoloquesaccionesmuycomplicadasenobjetos
con muchasinstancias.
Hay tres tiposdiferentesdeleventostep,normalmente sólonecesitaráslaque viene pordefecto
perousandoel submenúpuedesseleccionarel iniciooel final del eventostep.El iniciose ejecuta
al comienzode cadapaso,antesde que sucedacualquierotroevento.El normal se ejecutaantes
de que se coloquenlasinstanciasensusnuevasposicionesyel final justoantesde que se dibuje la
escena.
Uno de sususosútilesescambiarel sprite dependiendode ladirecciónactual.
Eventos de colisión(Collisionevents)
En el momentoenque dosinstanciascolisionanocurre uneventode colisión,parasermás
precisos,ocurrendos,unopor cada instancia.Debesseleccionarenel menúel objetoconel que
choca y después colocarlasaccionesasociadasa él.
Si no hay accionesasociadasa este eventonosucede nada,lainstanciaactual seguirámoviéndose
aun cuandoel otro objetoseasólido.Dependiendosi chocacon un objetosólidouotronosólido
la reaccióna las accionesesdiferente:
- El otroobjetoessólido.Lainstanciavuelve al lugaranteriorala colisiónyentoncesse ejecutael
evento.Porejemplo,si laacciónasociadaal eventoinvierte ladirecciónde movimiento,la
instanciarebotaenla paredsindetenerse.Si hayunanuevacolisiónse mantieneensulugar
previaydejade moverse.
- El otroobjetonoes sólido.Lainstancianorebota,el eventose ejecutaenlaposiciónactual.Al
no sersólido,lopodemosatravesaropasarsobre él y el eventonosnotificaloque está
sucediendo.
Existenmuchosusosparaeste evento,pararebotarcontra las paredes,destruiralgúnobjeto
cuandoes alcanzadopor unabala,etc.
Eventos de teclado (Keyboardevents)
Cuandoel jugadorpulsauna teclassucede uneventode tecladoparatodaslas instanciasde todos
losobjetos.Se puede definiruneventoporcadatecla,seleccionándolaenel submenúy
asignándole lasaccionesque quieras.Lógicamente noes necesario asignartodaslasteclas,sólo
usarás lasque necesitesparacada unode los objetosdel juego.
El eventosigue activomientraslateclasigapulsada.Dentrode estoseventos,haydosespeciales,
unoes el <No Key>(Ningunatecla) que sucedeencadapaso cuandono haynada pulsadoy el otro
es<Any Key>(Cualquiertecla) que sucede al presionarcualquiera.Si el jugadorpulsavarias
sucedenloseventosde todasellas.
Las teclasdel tecladonumérico sólofuncionancuandoestáactivada <BloqNum>.
Eventos de ratón (Mouse Events)
Sucedencuandoel cursorse encuentrasobre el sprite que representalainstanciadel objeto.
Existenloseventos nobutton,leftbutton,rightbuttonomiddle button (ningún botón,izquierdo,
derechoocentral) que se generanmientrasse mantengapresionadocualquierade ellos.Los
eventos pressyrelease (pulsarysoltar) se generanunasolavezcuandose pulsao sueltael botón,
respectivamente.
Recuerdaque sólosucedencuandoel ratónestásobre la instancia,si se pulsaunbotónen algún
lugarsin objetosnoocurriránada,salvoque usesloseventosglobalesdel submenú que
reaccionarána cualquierclicencualquiersitio.
Tambiénhaydos eventosespecialesque se suelenusarparacambiar el sprite oactivar algún
sonido,el mouse Enterymouse leave (entrarysalir),el primerosucede cuandoel ratónse pone
encimade la instanciayel segundocuandolaabandona.Los denominados mousewheel
up y mouse wheel Down(ruedaarribaoabajo) se activanal moverla ruedadel ratón.
Por últimohayunaserie de eventosparajoysticks,donde indicasaccionesparalas4 direcciones
principales(endiagonal se ejecutaríanamboseventos) ypara8 botones.Puedesprogramarlopara
dos joysticks.
Otros eventos(Otherevents)
Hay otros eventosque puedenserútilesenciertosjuegosylospuedesencontrareneste
submenú:
Fuera de la sala (Outside room)
Ocurre cuando la instanciase encuentracompletamente fuerade laroom.Suele serun
buenmomentoparadestruirla.
Cruzando el límite (Intersectboundary)
Ocurre cuando la instanciallegaal borde del cuarto.
Vistas (View)
Son útilescuandousasvistasentusrooms,compruebancuandodesaparece lainstancia
de una determinadavistaollegaal borde de lavista.
Comienzode juego(Game start)
Se generapara todas lasinstanciasenlaprimeraroom donde se iniciael juego.Sucede
antesque el eventoroomstart (verabajo) yque loseventoscreate de lasinstanciasenel
cuarto.
Se suele definirnormalmenteenunsoloobjeto"controlador"yse usapara reproducir
algunamúsicade fondo,asignarvaloresinicialesaalgunasvariablesoparacargar datos.
Fin de juego(Game end)
Sucede paratodas lasinstanciascuandoterminael juego.Comoel anterior,lonormal es
que lodefinaunsóloobjeto.Se puede emplearparaguardarla informacióndel juegoen
un archivo.
Comienzode sala (Room start)
Se generapara todas lasinstanciasde laroom cuandoesta se iniciayantesque los
eventosde creación.
Fin de sala (Room end)
Se generapara todas lasinstanciasexistentescuandofinalizalaroomactual.
Sin vidas (Nomore lives)
Game Makertiene unsistemade vidasinternoyunaacciónpara especificarycambiarsu
número.En el momentoque seamenoro igual a 0, se generaeste evento.Normalmente
se empleaparaterminaro reiniciarel juego.
Sin energía(Nomore health)
Game Makertiene unsistemainternode energíayuna acciónpara especificarycambiar
el nivel de energía.Enel momentoque la energíaseamenoro igual a 0, ocurre este
evento.Normalmentese empleaparadisminuirel númerode vidasopara reiniciarel
juego.
Fin de la animación (End of animation)
Comose indicóantes,unaanimaciónconsiste envariasimágenesque se muestrande
formaconsecutivayal llegara laúltimase vuelve alaprimera.Este eventosucede enese
precisomomento.Se puede usarpara,porejemplo,cambiarlaanimaciónodestruirla
instancia.
Finde trayectoria (End of path)
Este eventoocurre cuandola instanciaque sigue unatrayectoria(path) llegaal final de la
misma.
Botón cerrar (Close button)
Sucede cuandoel jugadorhace clic enel botóncerrar de lamismaventana.Sólofunciona
cuando,enlas preferenciasdel juego,estádesmarcadalaopciónque el botóncerrarse
comporte comola teclas <Esc>.
Definidopor el usuario (Userdefined)
Hay 16 de estoseventos.Normalmentenuncasucedenamenosque túmismolosllames
desde uncódigopropio.
Evento Dibujando (Drawingevent)
Las instancias,cuandosonvisibles,dibujansusprite enlapantallaencada paso.Cuandoindicas
accionesenel eventode dibujo,nose dibujael sprite,sinoque se ejecutanesasaccionesensu
lugar.
Esto se puede usarpara dibujaralgomás que un sprite,opara cambiar losparámetrosdel sprite.
Hay variasaccionesde dibujoespecialmente diseñadasparaserusadasen el eventodrawing,que
sólose ejecutacuandoel objetoesvisible.Recuerdaque,independientemente de loque dibujes
aquí, loseventosde colisiónse basanenel sprite que estáasociadoa lainstancia.
Eventos Pulsar Tecla (Keypressevents)
Similaral eventoteclado(keyboard)peroéste sóloocurre unavezcuandose presionalateclay no
de forma continua.Útil cuandoquieresque laacciónsóloocurra una vez(sóloundisparo,por
ejemplo).
Eventos Soltar Tecla (Keyrelease events)
Similaral eventoteclado(keyboard),peroéste sóloocurre unavezcuandose sueltalateclay no
de forma continua.
En algunassituacionesesimportanteconocerel ordenenel cual el GameMakerprocesalos
eventos.Seríael siguiente orden:
EventosBeginStep
EventosAlarm
EventosKeyboard,Keypress,yKeyrelease
EventosMouse
EventosStepnormales(ahoratodaslasinstanciasse colocanensusnuevasposiciones)
EventosCollision
EventosEndStep
EventosDraw
Los eventosde creación(create),destruir(destroy)yotrossongeneradosenel momento
pertinente.
Acciones
Las acciones indicanloque sucede enunjuegocreadocon Game Makery se colocanen los
eventosde losobjetos.Cuandoocurre unode estoseventos(porejemplo,cear),lasacciones
asociadasrepercutenenlasinstanciasde losobjetosrealizandoalgúncomportamiento(por
ejemplo, moverse).Haymuchasaccionesdisponiblesyesimportante entenderloque hace cada
una,aquí describiremoslasque se puedenusarenmodo simple.
A la derechade laventanade propiedadesdel objeto,estánagrupadastodaslasaccionesen seis
grupos de pestañas.Puedesvercadagrupo de accioneshaciendoclicenlapestaña
correspondiente yunabreve descripciónde cadaunamantiendoel ratónsobre ellas.
Recuerda: para colocar unaacción enun eventosólotienesque arrastrarladesde suposición
(derecha) ala listae acciones(centro).Puedescambiarel ordende estalistaarrastrandosus
elementos.Si mantienespulsadalatecla <Alt>mientrasarrastrashacesuna copia y puedes
arrastrar ycopiar accionesentre listasde diferentesobjetos.Usael botónderechodel ratónpara
borrar, copiaro pegar.
Cuandocolocasuna acción suele aparecer uncuadrode diálogodonde le puedesespecificar
algunos parámetros,hay dos enconcretobastante habituales.
En la parte superiorpuedesindicara que instancia se le va a aplicarla acción,que por defectoes
self,lamismainstanciaenlaque estástrabajando.Habitualmente noesnecesariocambiarlo.Enel
caso de un eventocolisión,puedesindicarsi se aplicalaacción a la otra instanciainvolucrada,
pudiendode estaforma,porejemplo,destruirla.Porúltimo,puedeselegirsi aplicaslaaccióna
todaslas instanciasde unobjeto,de estaformapodrías cambiarel color de todaslas pelotasrojas
enazules.
El segundoparámetroeslacasillaamrcada como Relative (Relativo).Si la marcas,losvaloresque
escribasseránrelativosalosactualesenel momentode aplicarlaacción.De estaforma podrías
sumarle puntosaun marcador en lugarde repetirsiempre el mismonúmero.
Podráseditartodoslosvaloresloscuandoquierashaciendodoble clicsobre laaciónque te
interese..
Los seispuntos de accionesendetalle:
Accionesde movimiento(move)
Movimiento(Move)
Movimientofijo(Move Fixed)
La instanciadel objetose empiezaamoverenla direcciónyvelocidadindicadas.
Para indicarla direcciónhaz clicsobre una de lasflechas.Si marcas varias se elegiráunaal azar
(porejemploparaque unenemigoaparezcamoviéndosealaizquierdaoa la derecha).Para
detenerel movimientodejamarcadoel botóndel medio.
La velocidadestáindicadaenpixelesporpasoypor defectoes8. Procura evitarlosvaloresde
negativos.
Movimientolibre (Move free)
Esta es lasegundaformaenla que puedesasignarunmovimiento.
Puedesindicarladirecciónconmás precisión,eligiendounángulode entre 0 y 360 grados,donde
0 significaaladerechay aumentaensentidocontarioalas agujasdel reloj (90º sería haciaarriba).
Si quiereslograrunadirecciónaleatoriaescribe random(360) pues,comoverásmásadelante,esta
función randomdevuelve unnúmeroal azarmenorque el indicado.Si marcas la
casillaRelativo(Relative) el nuevomovimientose sumaráal que actual,por ejemplo,si lainstancia
va hacia arribay le añadesun pequeñomovimientoalaizquierda,ladirecciónresultanteseráen
diagonal arribaa la izqquierda.
Mover hacia (Move Towards)
Esta acción ofrece unterceraforma para indicarunmovimiento.
Sólotienesque indicaruna posiciónyla velocidadpara que la instanciacominece amoverse con
la velocidadseleccionadaalaposicióndada,peronose detendráendicholugar.Porejemplo,si
quieresque unabalavuele hacialaposiciónde unanave espacial (llamadanave),puedesusar
como posiciónnave.x ynave.y(másadelante aprenderássobre estasvariables).
Si marcas lacaillaRelativo(Relative)especificasunaposiciónrelativaalaactual que tiene la
instancia,lavelocidadnose tomacomo relativa.
Velocidadhorizontal (Speedhorizontal)
La velocidadde unainstanciaestáformadaporunaparte horizontal yotra vertical.
Con estaacciónpuedesmodificarla velocidadhorizontal,si espositivael movimientovahaciala
derechay si esnegativahaciala izquierda.Lavertical permaneceráconstante.
Usa laopción Relativopara incrementarlaodisminuirlarespectoala actual.
Velocidadvertical (Vertical speed)
De formasimilar,con estaacción cambiaslavelocidadvertical.Si indicasunvalorpositivola
instanciase moveráhaciaabajo y si esnegativohaciaarriba.
Establecer gravedad (Setgravity)
Con estaacciónpuedessimularel efectode lagravedadenunobjeto,indicandoladirección(entre
0 y 360 grados) y la velocidad.A cada fotogramadel juegoesavelocidadse incrementaráenla
direccióndada.Lo normal esusar un númeropequeño(como0.01) endireccióndescendente
(270º).
Marcando la casilaRelativo incremetaslavelocidadde gravedadyladirección.Al contrarioque en
el mundoreal,losobjetospuedentenerdiferentesdireccionesde gravedad.
Rebote horizontal (Reverse horizontal)
Con estaacciónpuedesinvertirel movimientohorizontalde lainstancia.Porejemplo,cuandoun
objetocolisionaconuna paredvertical.
Rebote vertical (Reverse vertical)
Con estaacciónpuedesinvertirel movimientovertical de lainstancia.Porejemplo,cuandoun
objetocolisionaconuna paredhorizontal.
Establecer la fricción(Setfriction)
La friccióndisminuye lavelocidadde lainstanciayaquíespecificasel valorde dichareducción.En
cada fotogramase restaráde lavelocidadactual hastallegara 0.
Lo normal es usarun númeropequeño(como0.01) porque si fueramuy altola instanciase pararía
muyrápido.
Llevar a (Jump)
Llevar a una posición(Jump to Position)
Usando estaacción puedescolocarlainstanciaenlaposiciónque quieras,sólotienesque indicar
lascoordenadas x e y para que la instanciaaparezcaallícon su puntode referenciacomoorigen.Si
marcas la casillaRelativo,laposiciónse modificarespectoala actual.
Se suele usareninstanciasque se muevencontinuamentemencadafotogramaincremetemosla
posiciónunpoco.
Llevar al origen (Jumpto Start)
Esta acción colocala instanciaa laposicióndonde fue creadaensumomento.
Llevar a posiciónaleatoria (Jumpto Random)
Esta acción mueve lainstanciaauna posiciónaleatoriaenlaroom, donde nose solape conalgún
objetosólido.
Puedesindicarque ajuste (snap) se usará.Convalorespositivoslascoordenadasseránelegidas
con múltiplosenterosde esosnúmeros.Puedeserútil paramantenerlaalineaciónconlasceldas
de la cuadrícula de tu juego(si lahay),la velocidadhorizontal y vertical se puedenespecificarpor
separado.
Alineara la cuadrícula (Alignto grid)
Con estaacciónpuedesalinearlaposiciónde unainstanciaala cuadrículainicandosusvalores
horizontal yvertical,estoes,el tamañode lasceldas.Puede serútil paraasegurarte que las
instanciasse mantienenenlacuadrícula.
Teleportación(Wrap screen)
Con estaacciónpuedeshacerque cuandouna instanciasalgade la room porun ladoaparezaca
por el contrario(teleportación).Normalmentese usaenel eventoExterior(Outside event).
Para que funcione,lainstanciadel objetodebe tenerunavelocidadporque ladirecciónenlaque
reaparece se calculacon la direcciónpreviaque llevaba.Puedesseleccionarsi lainstanciase
teleportahorizontalmente,verticalmenteoenambasdireccione.
Mover hasta contactar (Move to Contact)
Con estaacciónmueveslainstanciaenundireccióndadahasta que toque a otro objeto.Si enla
posiciónactual de la instanciayahay colisión,nose moverá,encasocontrario,lainstanciase para
justoantesde que ocurra lacolisión.
Puedesespecificarladirecciónylamáximadistanciaenlaque se moverá.Porejemplo,cuando
estácayendopuedesmoverlaunadistanciamáximahastaque encuentre unobjeto.Puedes
indicartambiénsi se tienenencuentatodoslosobjetososólolossólido.
Normalmente estaacciónse pone enuneventode colisiónparaasegurarte que lainstanciadeja
de moverse cuandochoca.
Rebote (Bounce)
Cuandocolocasesta acciónen el eventocolisiónde algún objeto,lainstanciarebotacomoloharía
enel mundoreal.Si el parámetro presicisión(precise) loconfigurascomo falso(false) sólo
funcionarabienconparedesverticalesyhorizontales.Si loconfigurasa verdadero (true)
funcionaráenparedesinclinadasocurvas,peroserá máslento.
Puedesindicartambiénsi el reboteserácontraobjetossólidoocontodos.El rebote nosiempre es
del todoprecisoporque dependede muchosfactores,peroenlamayoríade situacioneseslo
suficientementebueno.
Accionesprincipales,grupo 1 (main1)
Objetos(Objects)
Crear instancia (Create instance)
Con estaacciónpuedescrearuna instanciade un objeto.Debesindicarel objetoacreary la
posiciónparala nuevainstancia.Si marcasla casilla Relative,laposiciónesrelativaala posiciónde
la instanciaactual.
La creaciónde instanciasdurante el juegoesmuyútil,porejemplounanave puede crearbalas,
una bombauna explosión,etc.Enmuchosjuegostendrásunobjetode control que cadacierto
tiempocrearáenemigosuotrosobjetos.El eventode creaciónse ejecutalacrearse lanueva
instancia.
Crear instancia en movimiento(Create moving)
Es la mismaacciónque la anteriorperocon doscampos adicionales.Puedesespecificar
la velocidady direcciónde la instanciaque se creará.Si usasla opciónRelative sóloafectaráala
posiciónyno a la velocidadni dirección.
Por ejemplo,parahacerque una bala se muevaenla mismadirecciónque el personaje que lacrea
usa un pequeñotruco:activalaopción Relative e introduce laposición0,0. En el campo de
dirección,introduce lapalabra direction,que esladirecciónenlaque se mueve el personajeque
disparala bala.
Crear instancia de un objetoaleatorio (Create Random)
Te permite crearlainstanciade 1 objetocualquierade losde ungrupo de hasta 4 que hayas
elegido.Debesindicarlos4 objetosposiblesque se podráncreary laposicióndonde se situarála
nuevainstancia.
Si usas Relative,laposiciónserárelativaala instanciaque ejecute laacción.Si noquieresusar4
objetos,puedesseleccionarNoObjectpara los demáscampos.Esta acciónse puede usarpara
crear un enemigode tipoaleatorioenunaposicióndeterminada.
Cambiar la instancia (Change instance)
Con estaacciónpuedescambiarla instanciaactual por otro objeto.Porejemplo,puedescambiar
una instanciade unabombaen una explosión.Todoslosparámetros,comoel movimientoolos
valoresde variables,se mantendrániguales.Puedesindicarsi llevaracabo o no el eventode
destrucciónparael objetoactual y el eventode creaciónparael nuevo.
Destruir la instancia (Destroy instance)
Con estaaccióndestruyeslainstanciaactual y se ejecutasueventodestrucción.
Destruir instancias alrededor(Destroyat Position)
Con estaacciónpuedesdestruirtodaslasinstanciascuyacaja límite contieneunaposicióndada.
Esto esútil por ejemplocuandoempleaslaexplosiónde unabombaque destruyesobjetoasu
alrededor.Cuandomarcaslacasilla Relative,laposiciónesrelativaala posiciónde lainstancia
actual.
Gráficos(Sprites)
Cambiar el sprite (Change sprite)
Usa estaacciónpara cambiarel sprite de la instancia,indicandoel nuevospriteolasubimagen
que se debe mostrar.Habitualmente usarás0para esto(laprimerasubimagen) salvoque quieras
visulizarotra.Usa -1 si no quierescambiarlasubimagenactual.
Por último,tambiénpuedescambiarlavelocidadde animaciónde lassubimágenes.Si sóloquieres
veruna pon 0. Si es mayorque una subimagense omitiráysi esmenorque 1 subimagense
mostrará variasveces.Nousesvelocidadesnegativas.
Cambiarspritesesunacaracterística importante.Porejemplo,amenudoquerráscambiarel sprite
de un personaje de acuerdoala direcciónala que se dirige.Lopuedeslograrhaciendodiferentes
spritesparacada unade lascuatro direccionesyenloseventosdel tecladoparalasteclasdel
cursor establecesladirecciónde movimientoyel sprite.
Transformar el sprite (PRO)
Usa estaacciónpara cambiarel tamaño yorientacióndel sprite de lainstancia.Usalosfactoresde
escalapara hacer el sprite másgrande o pequeño.El ángulo(angle) indicalaorientaciónen
sentidoanti horariodel sprite.
Por ejemplo,parahacerque el sprite se oriente enladireccióndel movimientousael
valordirection,que seríamuyútil para un coche.Tambiénpuedesindicarsi el sprite se reflejará
horizontalmente y/ovolteadoverticalment.
Esta acción sólo estádisponibleen la versión PRO.
Color del sprite (PRO)
Normalmente el spritese dibujacomose hacreado.Usando estaacción puedescambiarle el color
combinándoloconlos coloresque yatenía.Si quieresdibujarunsprite envarioscoloresdebes
definirloenblancoynegroy usar un colorenesta acciónpara indicarsu nuevaapariencia.
Tambiénpuedesindicaruna transparencia (alpha):0 significatotalmentetransparentey1
totalmente opaco.Conunvalorintermedioconseguirásque se puedaverel fondoatravésdel
sprite.Esmuy útil para explosiones.
Esta acción sólo estádisponibleen la versión PRO.
Sonidos(Sounds)
Reproducir un sonido(Play sound)
Con estaacción reproducesunode losrecursosde sonidoque añadiste al juego.Puedesindicarsi
suenasólounavez (pordefecto) ode formacontinua.
Se puedenreproducirvariosarchivoswave al mismotiempo,perosólounmidi alavez.Por lo
tanto,si se iniciael sonidode unmidi,el actual se detiene.
Detenerun sonido (Stopsound)
Esta acción detiene el sonidoindicado.Si hayvariasinstanciasdel sonidoreproduciéndose,todas
son detenidas.
Comprobar un sonido(Checksound)
Si el sonidoindicadoestásonandolaacciónsiguiente se ejecutaysino,laacciónsiguiente se
ignora.PuedesseleccionarNotpara que actúe al revés(esdecir,si el sonidonoestá,laacción se
ejecuta).
Por ejemplo,puedescomprobarsi estásonandolamúsicade fondoy si no, hacesque empiece a
sonar otra canción.Esta accióndevuelve true cuandoel sonidosuenaporlosaltavoces.Cuando
usas laacción de hacer sonarun sonidotarda unpoco hasta que el sonidollegaalosaltavoces,así
que estaacción devolverá falsedurante esepequeñoespaciode tiempo.Cuandodetienesun
sonido,tampocose para instantáneamente asíque laaccióntardará unpoco endevolver false.
Salas(Rooms)
Sala anterior(PreviousRoom)
Ir a la sala anteriorindicandoel tipode transiciónentrelassalas, pruebatodaslasque haypara
vercuál te gustamás. Si estásenla primerasala,se produce un error.
Siguiente sala (Nextroom)
Ir a la siguiente salaindicandolatransición.Si estásenlaúltimasale unerror.
Reiniciar la sala (Restar Room)
Se reinicialasalaactual. Puedesindicarel efectode transición.
Ir a otra sala (Differentroom)
Con estaacciónvas a lasala que quierasindicandosunombre ylatransición.
Comprobar anterior(CheckPrevious)
Esta acción verificasi existelasalaanteriory,encaso afirmativo,se ejecutalasiguienteacción.
Normalmente necesitashacerestacomprobacionantesde moverte alasala anterior.
Comprobar siguiente (CheckNext)
Esta acción verificasi existelasiguiente salay,encasoafirmativo,se ejecutalasiguienteacción.
Normalmente necesitashacerestacomprobacionantesde moverte alasiguiente sala.
Accionesprincipales,grupo 2 (main2)
Tiempo (Timing)
Establecer alarma (Set alarm)
Sirve para configurarunode los12 relojesde alarma parala instancia,puedesindicarel número
de fotogramas(steps) ylaalarma. La instanciarecibiráel correspondiente eventoalarmadespués
del númerode fotogramasindicado.Tambiénpuedesincrementarodisminuirel valormarcando
la casillaRelativo(Relative).Si le dasunvalormenoro igual a 0 la desactivas.
Dormir (Sleep)
Puedescongelarlaescenadurante el tiempo(enmilisegundos)que indiques.Se sueleusaral
principiooal final de un nivel ocuandole das algúnmensaje al jugador.También puedesindicarsi
la pantalladebe serdibujadaprimeroparareflejarlasiruaciónmásreciente.
Información(Info)
Mostrar mensaje (DisplayMessage)
Con estaacciónmuestrasun mensaje enunaventanade diálogo,sólotienesque escribirel
mensajes.Si usasel símbolo#en el textoseráinterpretadocomouncarácter de nuevalínea(para
obtenerlopon #).Si empiezasconunacomillaodoblescomillasse interpretarácomo
una expresión.
Mostrar información(Show info)
Con estaacciónmostrarás la ventanade informaciónel juego.
Juego (Game)
Reiniciar juego(Restart Game)
Con estaacciónreiniciarásel juegodesde el principio.
Finalizar el juego(End Game)
Con estaacciónterminael juego.
Guardar el juego(Save Game)
Guardarás el estadoactual de lapartida enun archivoque posteriormente podráscargarcon la
acción Cargar Juego.El archivose crea enla carpetaraíz del juego.Tenencuentaque que sólose
guardan losaspectosbásicosde lapartida,opcionesmásavanzadascomoel sonidoque se está
reproduciendo,loscontenidosde estructurasde datos,partículas,etc...nose guardarán.
Cargar un juego (Load Game)
Carga el estadode la partidadesde unarchivo,aquí indicasel nombre del archivo.Asegúrateque
el juegoguardadoesel mismo y fue creadoco la mismaversiónde Game Maker,sinopuede dar
errores.Para serprecisos,el juegose cargaal final de este paso,porlo que algunasacciones
despuésde estaaúnsonejecutadasenel juegoactual ¡noel cargado!
Accionesde control
Hay accionescon lasque puedescontrolarel funcionamientode otras.Muchasde estasacciones
hacenpreguntas,porejemplocuandounaposiciónestávacía.Si la respuestaessi (true) se ejecuta
la siguienteacción,encasocontrariose omite.Si quieresejecutaruomitirvariasaccionesenbase
a una respuestapuedesponerlasenun bloque (block) poniendoaccionesparacomenzary
finalizarel bloqueantesydespuésde ellas.Tambiénhayunaparte sino (else) que se ejecuta
cuandola respuestaesno.Normalmente unapreguntase muestraasí:
Aquí se preguntasi la instanciaestáenuna posiciónlibre de colisión.Si esasíse empiezaamover
enuna direccióndada,si no,se llevaala posiciónque indiques.Fíjate que losbloquesestán
sangrados(desplazados aladerecha),que daunamejorvisiónde lasacciones,sobre todocuando
hay bloquesdentrode otros.Tambiénesmásfácil detectarsi te hasolvidadounaacciónde
aperturao cierre.
Para todas laspreguntashayun campo etiquetadocomo NO,si lamarcas, se invierte el resultado
de la pregunta.Estoes,si el resultadoesverdaderose convierte enfalsoyal revés.Estote
permite realizarciertasaccionescuandolapreguntanoesverdadera.
En muchas de laspreguntaspuedesindicarsi se vana aplicar a todaslas instanciasde unobjeto.
En este caso el resultadoesverdadero(true)sólosi esverdaderoparatodaslasinstanciasdel
objeto.Porejemplo,puedescomprobarsi paratodas lasbolasla posiciónunpocoa su derecha
estálibre de colisión.
Este es el listadode accionesdisponibles.Tienenformasycoloresdiferentesal restopara
reconocerlasmásrfácilmente.
Para todas lasacciones verdadero=true y falso=false
Preguntas(Questions)
Verificarvacío (CheckEmpty)
Devuelve verdaderois lainstanciaactual,situadaenlaposiciónindicada,nogeneraunacolisión
con un objeto.Puedesindicarlaposicióncomoabsolutaorelativaytambiénsi sólose tienenen
cuentalosobjetosólidosotodos.
Normalmente se usaparaverificarsi lainstanciase puede moverauna posicióndeterminada.
Verificarcolisión(CheckCollision)
Esta acción hace lo contrarioque la anterior.Devuelve verdaderosi hayunacolisióncuandola
instanciaactual se situe enuna posicióndada.
Verificarobjeto (Checkobject)
Devuelve verdaderosi lainstanciasituadaenunaposicióndadase encuentraconuna instanciadel
objetoindicado.
Comprobar el númerode instancias (TestInstance Count)
Aquí especificasunobjetoyunnúmero.Si el númeroactual de instanciasdel objetoesigual al
númeroque escribasdevuelveverdadero,sino,devuelve falso.Tambiénpuedesindicarque la
verificaciónse hagacuandoel valoresmenoro mayor que el valordado.
Normalmente se usaparacomprobarsi todaslas instanciasde un tipodeterminadohan
desaparecido,que suele serel momentoparaterminarunnivel oel juego.
Comprobar probabilidad(TestChance)
Puedesindicarel númerode carasde un dadoy luegotirarlo,si latirada coincide el resultadoes
verdaderoyse realizalasiguiente acción.
Se puede usarpara ponerunelementode formaaleatoriaentujuego.Porejemplopuedes
generarun tipoparticularde bombao cambiar ladirección.Cuantosmásnúmerostengael dado,
menorserála probabilidadde que salga.
Puedes emplearnúmerosreales,si ponesel númerode carasen1.5 la próximaacciónse realizará
2 o 3 veces,usarunnúmeromenorde 1 no tiene ningúnefecto.
Verificarpregunta (CheckQuestion)
Escribesunapreguntay al jugadorse le mostrará un diálogoconlosbotonesSi(Yes) yNo(No).El
resultadoesverdaderosi el jugadorrespondeSi.
Comprobar expresión(TestExpression)
Es la acción de consultamáshabitual.Si laexpresiónse evalúacomoverdadera,estoes,un
númeromáyoro igual que 0.5, se realizalasiguiente acción.Másinformaciónsobre expresiones.
Verificarratón (CheckMouse)
Devuelve verdaderosi se pulsael botónde ratónindicado,unuso habitual esenel eventopaso
(stepevent).Puedesverificarsi unbotónde ratón espulsadoy, encaso de sercierto,por ejemplo
moverloaesa posición.Paraellousaríaslaacción Llevara una posición(Jumptoa Position) con
losvalores mouse_x ymouse_y.
Verificarcuadrícula (Check Grid)
Devuelve verdaderosi laposiciónde lainstanciacoincide conlacuadrícula,especificasparaelloel
espaciadohorizontal yvertical.Esmuyútil cuandociertasacciones,comohacerun giro,sóloestán
permitidascuandolainstanciaestáenunaposiciónde lacuadrícula.
Otras (Others)
Comienzode bloque (Start Block)
Indicael comienzode unbloque de acciones.
Fin de bloque (End Block)
Indicael final de unbloque de acciones.
Sino (Else)
Cuandoel resultadode laconsultaesfalsose realizanlasaccionesque siguenaestaacción.
Repetir(Repeat)
Esta acción se usa para repetirlasiguiente acciónobloque de accionesel númerode vecesque
indiques.
Salir del evento(Exit Event)
Cuandoaparece estaacción no se ejecutaningunamásenel evento,normalmentese usadespués
de una pregunta.Porejemplo,cuandounaposiciónestálibrenose necesitahacernadamás,por
loque salimosdel evento.Eneste ejemplosólose ejecutanlasaccionesposteriorescuandohay
una colisión.
Si deseasunmayor control sobre loque sucede enel juegopuedesusarel lenguajede
programaciónque se explicaenlasegundaparte del manual,te damás flexibilidadque usarlas
acciones.
Hay accionespara definirycomprobarvariables,sonmássencillasde usarque el códigoy muy
útilesparatu juego.Lasaccionessiguientesse ocupande esto:
Código(Code)
Ejecutar código (Execute Code)
Cuandose añade esta acción,se muestraun cuadro de diálogodonde puedesescribiruntrozode
códigoque será ejecutado.Puede contenerunallamadaauna funciónoalgomás complicado.
Usa estaacciónsólopara trozos de códigopequeños,si sonmáslargoste recomiendousarscripts
como se describe enestaseccióndel manual.
Comentario (Comment)
Usa estaacciónpara añadiruna líneade comentarioa lalistade acciones,que se mostrará en
letracursiva.Añadircomentarioste ayudaa recordarlo que hace el evento.
La acciónensi no hace nada, perorecuerdaque aúnestásen una acción,así que,si la colocas
despuésde unaaccióncondicional se ejecutasi esverdadero(aunque nohaganada).
Variables(Variables)
Establecer variable (Setvariable)
Hay muchas variablesinternasenel juegoque puedescambiarconestaacción.Tambiénpuedes
crear tus propiasvariablesyasignarlesvaloresindicandoel nombreyel nuevovalor.
Cuandomarcas la casillaRelativo,el valorse sumaal que actualmente tengalavariable.Fíjate que
estosólose puede hacercuandotenga ya unvalor asignado.Sigue leyendo parasaber más sobre
lasvariables.
Comprobar variable (TestVariable)
Con estaacciónpuedescomprobarsi el valorde unavariable esigual a unnúmeroenparticular,si
esasí devuelve verdaderoysinofalso.Tambiénpuedesindicarsi lacomprobaciónse hace para
valoresmenoresque omayoresque el dado.Tambiénse puede usarparacomparar dos
expresiones.
Dibujar variable (Draw variable)
Con estaacciónpuedesdibujarel valorde unavariable enuncualquierpuntode lapantalla.Sólo
se puede usaren el eventodibujar(Draw Event) de unobjeto.
Accionesde puntuación(score)
En la mayoría de juegosel jugadortendrápuntuación,variasvidasounnivel de energía.Las
siguientesaccionessirvenparatratar estoselementos.
Puntuación(Score)
Establecer la puntuación(Set score)
La puntuaciónse suele mostrarenel títulode laventanade juego.Conestaacción puedes
cambiarla,sólotienesque indicaraquíel nuevovalor.Paraañadir más puntosa lapuntuación
actual marca la casillaRelativo(Relative).
Comprobar puntuación(Test Score)
Con estaacciónde consultapuedescomprobarsi lapuntuaciónhaalcanzadoun determinado
valor.Indicael númeroysi la puntuacióndebe serigual,menorque omayorque ese número
(equal to,smallerthan,largerthan).
Dibujar puntuación (Draw Score)
Dibujasel valorde la puntuaciónenlapantalla,escribe laposiciónyel títuloque se mostrará
antesde la puntuaciónconel tipode fuente actual.Sólose puede usarenel eventodraw de algún
objeto.
Mostrar puntuacionesmás altas (ShowHighscore)
Cada juegoguardalas 10 puntuacionesmásaltasque puedesmostrarconestaacción.Si laactual
estáentre esaspuntuacionesse introduce enlalistayel jugadorescribirásunombre.Puedes
indicarla imagende fondoque se usará,si la ventanatendráborde o no,el color para la nuevay
lasotras entradasy la tipografía.
Borrar puntuacionesmás altas (ClearHighscores)
Esta acción vacía la tablade records.
Vidas(Lives)
Establecer el númerode vidas (SetLives)
Con estaacciónpuedescambiarel númerode vidasque quedan.Al iniciode juegole dasunvalor
(porejemplo,3) ylo aumentasodisminuyesdependiendode loque suceda.Noolvidesmarcarla
opcionRelativo(Relative) si deseassumarorestarvidasa las que hay enese momento.Cuandose
llegaa 0 o menosse generaun evento"Nomásvidas"(Nomore lives).
Comprobar vidas(Test Lives)
Con estaacciónde consultapuedescomprobarsi el númerode vidashaalcanzadoun
determinadovalor.Indicael númeroy si el númerode vidasdebe serigual,menorque omayor
que ese número(equal to,smallerthan,largerthan).
Dibujar vidas (Draw Lives)
Dibujasel númerode vidasenlapantalla,escribe laposiciónyel títuloque se mostraráantesdel
númerode vidascon el tipode fuente actual.Sólose puede usarenel eventodraw de algún
objeto.
Dibujar imágenesde vida (Draw Life Images)
En lugar de mostrar el númerode vidasconuna cifra esmejorusar pequeñasimágenes,que eslo
que hace estaacción.Indicala posiciónylaimagenque quieresyenese lugarapareceránel
númeroindicadode esasimágenes.Sólose puede usarenel eventodraw de algúnobjeto.
Nivel de energía(Health)
Establecer la energía(SetHealth)
Con estaacciónpuedescambiarel invel de energíade 0 (vacío) a 100 (completo) indicandoel
nuevovalor.Algohabitual esdisminuirel nivelde energía,para ellodeberásmarcarla opción
Relativo(Relative).Cuandose llegaaunnúmeroigual o menorque 0 se generaunevento"sin
energía"(Outof health).
Comprobar energía(SetHealth)
Con estaacciónde consultapuedescomprobarsi el nivel de energíahallegadoaun determinado
nivel.Indicael valorysi la energíadebe serigual,menorque omayorque ese número(equal to,
smallerthan,largerthan).
Dibujar energía(Draw health)
Dibujasel nivel de energíaenformade barra,cuando estáen 100 se ve completaysi está en0 se
ve vacía. Puedesindicarlaposición,el tamaño,el colorde primerplanoyel colorde fondo.
Puntuación enel títulode la ventana (Score caption)
Normalmente enel títulode laventanade juegose muestrael nombre de laroomy la
puntuación.Conestaacciónpuedesindicarsi se muestrao nola puntuación,lasvidasy/oel nivel
de energíay el título para cada uno de ellos.
Accionesde dibujo(draw)
Normalmente encadafotogramadel juegoypara cada instancia,se dibujasusprite enlasala.
Esto puedescambiarloponiendoaccionesenel eventodibujar(draw event).Sólose ejecutarán
cuandoel objetoesvisible.
Estas sonlas accionesque estándisponibles,sólotendránsentidoenloseventosde dibujo,si las
ponesenotroseventosseránignoradas.
Las queestán marcadascon un * sólo están disponiblesen la versión PRO.
Dibujando(Drawing)
Dibujar gráfico (Draw sprite)
Indicasel sprite,laposición(si esabsolutaorelativaalaposiciónactual de la instancia) yla
subimagendel sprite (senumerande 0en adelante).Si quieresdibujarlasubimagenactual,usa-1.
Dibujar fondo (Draw background)
Indicaslaimagende fondo,laposición(absolutaorelativa) ysi laimagendebe cubrirtodalasala
o no.
Dibujar texto (Draw text)
Especificasel textoylaposición.Unsímbolo# es interpretadocomo saltode línea(Usa# para
escribirel símbolo#),de estaforma puedescreartextosde variaslíneas.
Si el textocomienzaconuna comillasimple odoble esinterpretadocomounaexpresión,por
ejemplousa:
'X: ' + string(x)
para mostrar el valorde la coordenadax de lainstancia.La variable x almacenalacoordenadax
actual y lafunciónstring() convierte ese númeroenunacadenade texto.+ une losdos textos.
Dibuja texto escalado* (Draw Scaled Text)*
Similarala anterior,peroaquí puedesindicarunfactorde escaladohorizontal yvertical para
cambiarel tamaño del textoyun ángulopara rotarlo.
Dibujar rectángulo (Draw rectangle)
Puedesespecificarlascoordenadasde dosesquinasopuestasde unrectánguloytambiénsi la
posiciónesabsolutaorelativarespectoalainstanciaactual.
Degradado horizontal*(Horizontal Gradient)*
Tambiéndibujauncuadradoperocon un rellenodegradadoque cambiade izquierdaaderecha,
especificaslosdoscoloresausar.
Degradado vertical*(Vertical gradient)*
Esta vezloscoloresrellenanel rectángulode arribahaciaabajo.
Dibujar elipse (Draw ellipse)
Dibujaunaelipse indicandolascoordenadasde dosesquinasopuestasdel rectánguloque la
contiene ysi la posiciónesabsolutaorelativaala instanciaactual.
Elipse degradada* (GradientEllipse)*
Lo mismoque la anterior,peroenestaindicasdoscoloresque larellenandesdeel centrohaciael
borde.
Dibujar línea(Draw line)
Especificaslascoordenadasde losdosextremosde lalínea, yaseaabsolutao relativaala posición
actual de la instancia.
Dibujar flecha (Draw Arrow)
Dibujaunaflecha.Especificaslascoordenadasde losextremosde lalíneayel tamañode la punta
de flecha.
Preferencias (Settings)
Establecer color (SetColor)
Te permite establecerel colora usar para dibujarformas,líneasytexto.Noinfluyeenlosspriteso
losfondos.
Poner enpantalla completa (SetFull Screen)
Con estaacciónpuedescambiarentre losmodosventanaypantallacompletaya la inversa.
Puedesindicarsi se debe cambiarel modoosi ir a modoventano pantallacompleta.
Otras (Others)
Captura de pantalla* (Take Snapshot)*
Con estaacciónpuedeshaceruna captura de pantalladel juegoyguardarlaenun archivode
imagen.png.
Crear efecto* (Create Effect)*
Con estaacciónpuedescreartodo tipode efectosde unamanerasencilla.Especificasel tipode
efecto,porejemplounaexplosiónde humo,suposición,tamañoycoloro si deberíamostrarse
por debajooencimadel objeto.
El restofuncionade formaautomática.Para lalluviaola nieve laposiciónesirrelevante porque
siempre cae haciaabajodesde laparte superiorde lapantalla.Paraconseguirunalluviacontinua
deberíascrearlaencada fotograma(step).
Observaque debajo(below) significaunaprofundidadde 100000 y porencima(above) unade -
100000.
Usando expresionesyvariables
En muchas accionesnecesitasintroducirvaloresparalosparámetros,que puedenserunnúmroo
una fórmula,porejemplo32+12. Perotambiénpuedesescribirexpresionesmáscomplicadas.Por
ejemplo, si quieresduplicarlavelocidadhorizontal,puedesestablecerlacon2*hspeed,
donde hspeed eslavariable que indicalaactual velocidadhorizontalde lainstancia.Hay
muchasvariables que puedesusar,algunasde lasmás importantesson:
x la coordenadax de la instancia.
y la coordenaday de la instancia.
hspeedlavelocidadhorizontalenpixelsporfotograma.
vspeedlavelocidadvertical enpixelesporfotograma.
directionla direcciónactual de movimientoengrado(0-360).
speedlavelocidadactual enestadirecciónque se muestracuandoel objetoesvisible (1) o
invisible (0).
image_index estavariable indicaque subimagense muestraenel sprite actual.Si lo
cambiasy estableceslavelocidada0 puedesmostrarunasubimagendeterminada.
image_speedestavariable indicalavelocidadconlaque se muestranlassubimágenes,
por defecto1.Si loaumentaspor encimade 1 se saltanalgunassubimágenesparahacerla
animaciónmásrápida,si lo ponesmenorque 1 la animaciónse hace más lentapor
repeticiónde subimágenes.
score el valor actual de la puntuación.
livesel númeroactual de vidas.
healthel nivel de energía(0-100).
mouse_xlas posiciónx del ratón.
mouse_y lasposiciónydel ratón.
Puedes cambiarlamayoría de estasvariablesusandolaacciónestablecervariable(setvariable) y
tambiénpuedesdefinirlastuyaspropiasdándole unvalor(nouseslaopciónRelativoporqueaún
no existen).Despuéspuedesusaresasvariablesenexpresiones.
Las variablesque creesson localespara lainstanciaactual,estoes,cada objetotiene supropia
copiade ellas.Paracrear unavariable global,ponla palabraglobal yun puntodespuésde ella.
Tambiénte puedesreferiralos valores de lasvariablesde otrosobjetosponiendosunombre
seguidode unpunto.Porejemplo,si quieresmoverunabolaal lugar donde estáunmoneda
puedesestablecerlaposicióna(moneda.x, moneda.y).Enel casode un eventde colisiónpuedes
referirte alacoordenadax de otro objetocomo otro.x.En expresionescondicionalespuedesusar
comparacionescomo< (menorque),>,etc.
En tus expresionestambiénpuedesusarfunciones.Porejemplo,lafunciónrandom(10) devuelve
un númeroenteromenorde 10, que te podría valerpara establecerlavelocidadde unobjetode
formaaleatoria.Existenmuchasmásfuncionesque serándescritas másadelante eneste manual.
Creando Rooms
Ahoraque ya tienesobjetosconsuinteractividadenformade eventosyacciones,eshorade crear
lasrooms donde se desarrollaráel juegoensi.Al menosnecesitascrearunapara situartodoslos
elementos.Cuandoiniciamosel juegose mostrarálaprimeraroomy las instanciasde objetoscon
eventoscrearcobrarán vida.
Cuandocreas una roomtienesmuchasopciones,puedesañadirobjetos,fondos,tilesydefinir
vistaso ciertaspropiedades,peroeneste capítulosóloveremoslasopcionesbásicas:añadir
instanciasde objetosyconfigurarlosfondos.
Para crear una room,elige Crearsala (Create Room) enel menú Recursos(Resources),se mostrará
la siguienteventana:
En la parte superiorhayuna barra de herramientasdondepuedesindicarel tamañode lasceldas
de la cuadrícula que se usa para alinearobjetos.Tambiénpuedesdecidirsi se muestranlaslíneas
de cuadrícula, losfondos,etc...algunasvecesesútil ocultarciertoselementos.
Cuandoañadesinstanciasde objetossiempre se mostraránconindependenciade laconfiguración
de vistas.Tambiénhaybotonesparaborrar todas lasinstanciasde laroom o para moverlas,
usandovaloresnegativosharáque se desplacenhaciaarribaoa laizquierda.Esútil cuando
cuandodecidesagrandarla roomo para situarinstanciasfuera.Porúltimoestánlos
botones Deshacer(Undo) para dehacerlosúltimoscambiosyel botón OK para guardar los
cambios.Si no losquieresguardar,hazclicen lacruz de la esquinasuperiorderecha.
En la parte izquierdade laventanahaytrespestañas, objetos(objects),preferencias(settings)
y fondos(backgrounds),que explicaremosacontinuación.
Objetos.Añadiendoinstancias.
A la derechade laventanapuedesverlaroomvacía y con fondogris.Para empezaraañadir
instanciasde objetosseleccionalapestaña Objetos(Objects):
Ahoraseleccionael objetoque quiereshaciendoclicenel iconode menuo enel área de imagen
(engris) para que aparezcauna listacon losobjetosdisponibles.Fíjate que aparece unacruzenla
imagencargada que indicacomose alinearánlasinstanciasconlacuadrícula.
Pasa al área grande de laderecha,donde se visualizalaroom, yhaz cliccon el botónizquierdodel
ratón para colocar una instancia del objeto seleccionado,puedesborrarlahaciendoclicconel
botónderecho.Pordefecto,lasinstanciasse alineanalacuadrícula al colocarlas,puedesevitarlo
manteniendopulsadalatecla<Alt>.
Si mantienespulsadoel botónmientrasmuevesel ratónpuedes moverlainstanciashastasu
nuevaposición.Si ademásmantienespulsadalatecla <Mayúsculas>añadirásvariasconsecutivas.
Al colocar una instanciasobre otra,laprimeradesaparece.Si quieresevitarlodeshabilitala
opción Borrar subyacente (Delete underlying)que aparece abajo.
Si quieres cambiar su posiciónpulsalatecla<Ctrl> yclic con el botónizquierdosobre lainstancia.
No lassueltesymuévelaconel ratóna su nuevoemplazamiento.Usa <Alt>para mayor precisióno
no usar lacuadrícula.
Si mantienespulsado <Ctrl>yel botónderechosobre unainstanciaaparece unsubmenú.Conél
podrás borrar (Delete),especificarunposiciónmás precisa(Change position...), ajustarlaa la
cuadrícula (Snapto Grid) o moverla al frente(Bringtofront) oal hacia atrás (Sendto back).
Preferencias.Configurandolaroom.
A cada room le puedesespecificarunasopcionesdiferentes.Seleccionala
pestañaPreferencias(Settings):
Nombre (Name).Elige unoque describabienel lugardondeestáel jugador.
Título para la sala (Captionforde room).Se muestraenla ventanaal jugar.
Ancho x Alto (WidhtXHeight).Medidasenpixelesde laroom.
Velocidad(Speed).Númerode fotogramasporsegundo,amayorvelocidadel movimientoesmás
suave,peronecesitarásunordenadormáspotente paraque se ejecute bien.
Fondos.Configurandoel fondo.
En la pestañaFondos(Backgrounds) puedesestablecerlosfondosausar:
Arribapuedesverel colorde fondo,hazclic enél para cambiarlo,sóloesútil si no usasuna
imagende fondopara cubrirtoda la room.Si vas a usar una imagendesmarcalaopción Dibujar
color de fondo(Draw backgroundcolor).
Lo siguiente que vesesunalistacon8 fondosque puedesdefinir,aunquelamayoríade las veces
sólonecesitarásunoodos.Para habilitarunfondoseleccionaunode lalistaymarca la
casillaVisible cuandocomienzala sala (Visiblewhenroomstarts) osinonolo verás.El nombre se
pondráen negritacuandoel fondoesté definido.
Ahoraescoge del menúunade las imágenesque previamente hascargadoy ajustalasopciones
que quieras.
Repetición.Puedesindicarsi se repetiráhorizontay/overticalmente (Tile Hor./Tile Ver.).
Posición.Variandolosvaloresde Xe Y. Influiráenel tiling.
Estirar (Stretch).Si estámarcadoel fondoocupatoda la pantalla.Si noes de su mismotamaño
puede quedardistorsionada.
Velocidad.Puedeshacerque se muevadándole unavelocidadhorizontal y/overtical (Hor.Speed/
Vert.Speed).Nose recomiendasi usaslaopciónEstirar.
Imagen de primer plano (Foregroundimage).Si laactivasel fondose colocaráenprimerplanoy
se mostrará por delante de todo.Lógicamente unaimagende este tipodeberserparcialmente
transparente paraque tega algunautilidad.
Distribuir tu juego
Con lainformaciónde loscapítulosanterioresyapuedescreartuspropiosjuegosyal acabarlos
querrásque otros lojueguen.Puedespasarlesel .gmkque creaste paradejarlesjugar,pero
normalmente esonoesloquieresporque te podríanmodificarel juegoynecesitarían
instalarGameMaker.
Por eso,deberíascrearun ejecutable que funcionesinnecesidadde GameMaker:
Crear unejecutable esmuyfácil.Enel menú Archivo(File) seleccionael comando Crear
ejecutable (Create Executable),ponle unnombre al archivo,pulsa OKy ya tieneslistoun
archivo.exe que le puedespasaraquienquieras.Puedescambiarel iconodel ejecutable
enlas OpcionesGeneralesdel juego (Global Game Settings).
Puedesdistribuirlibremente estearchivoporcualquiermediooinclusovenderlo,esto
últimoasumiendoque todoslosrecursos(imágenes,sonido,fondos...)sontuyosopueden
serusado enproyectoscomerciales,lee losacuerdosde licenciade cadaunode ellos.
Suele serútil comprimirel ejecutable enun.zipjuntoconunarchivo de información
leeme.txtoinclusocrearuninstaladorparatu juego.Hay recursosgratuitosenInternet
para realizarestastareas.
Si quieresque muchaspersonaspruebentujuego, tambiénte recomendamossubirlo al sitioweb
de YOYO GAMES,enla sección Compartir (Share) opublicarlocomotemaennuestracomunidad
de taringa APRENDIENDO GAME MAKER FACILITO subiendoel game a MEDIAFIRE.

Contenu connexe

Tendances

Diseño y creación de videojuegos
Diseño y creación de videojuegosDiseño y creación de videojuegos
Diseño y creación de videojuegosruben rionda
 
Desarrollo De Videojuegos Con Xna
Desarrollo De Videojuegos Con XnaDesarrollo De Videojuegos Con Xna
Desarrollo De Videojuegos Con XnaCésar Reneses
 
La Guerra De Las Consolas
La Guerra De Las ConsolasLa Guerra De Las Consolas
La Guerra De Las ConsolasSonic25
 
Xbox 360 Vs Wii Vs Ps3
Xbox 360 Vs Wii Vs Ps3Xbox 360 Vs Wii Vs Ps3
Xbox 360 Vs Wii Vs Ps3salvita_14
 
Selim - PS4_Ps4_Play Station 4 - Presentacion
Selim  - PS4_Ps4_Play Station 4 - PresentacionSelim  - PS4_Ps4_Play Station 4 - Presentacion
Selim - PS4_Ps4_Play Station 4 - PresentacionSelim18
 
Play Station 4
Play Station 4Play Station 4
Play Station 4DanMo295
 
Juego de conectores del pc
Juego de conectores del pcJuego de conectores del pc
Juego de conectores del pclasmaslindas1221
 
Antonio josé lópez correa
Antonio josé lópez correaAntonio josé lópez correa
Antonio josé lópez correaantonny125
 
Desarrollo videojuegos
Desarrollo videojuegosDesarrollo videojuegos
Desarrollo videojuegoscalc0805
 
Desarrollo de videojuegos (versión completa)
Desarrollo de videojuegos (versión completa)Desarrollo de videojuegos (versión completa)
Desarrollo de videojuegos (versión completa)Gabriel Valderrama
 
Aplicaciones incluidas en windows 7
Aplicaciones incluidas en windows 7Aplicaciones incluidas en windows 7
Aplicaciones incluidas en windows 7elianabeledu
 
Play 5 precentacion_Alanr_Yerkos_smxc
Play 5 precentacion_Alanr_Yerkos_smxcPlay 5 precentacion_Alanr_Yerkos_smxc
Play 5 precentacion_Alanr_Yerkos_smxcYerkoReynaldoSnchezM
 
Introducción al Desarrollo de Videojuegos
Introducción al Desarrollo de VideojuegosIntroducción al Desarrollo de Videojuegos
Introducción al Desarrollo de VideojuegosMero Studios
 

Tendances (18)

Diseño y creación de videojuegos
Diseño y creación de videojuegosDiseño y creación de videojuegos
Diseño y creación de videojuegos
 
Desarrollo De Videojuegos Con Xna
Desarrollo De Videojuegos Con XnaDesarrollo De Videojuegos Con Xna
Desarrollo De Videojuegos Con Xna
 
desarrollo de videojuegos
desarrollo de videojuegosdesarrollo de videojuegos
desarrollo de videojuegos
 
Leame
LeameLeame
Leame
 
La Guerra De Las Consolas
La Guerra De Las ConsolasLa Guerra De Las Consolas
La Guerra De Las Consolas
 
Xbox 360 Vs Wii Vs Ps3
Xbox 360 Vs Wii Vs Ps3Xbox 360 Vs Wii Vs Ps3
Xbox 360 Vs Wii Vs Ps3
 
Selim - PS4_Ps4_Play Station 4 - Presentacion
Selim  - PS4_Ps4_Play Station 4 - PresentacionSelim  - PS4_Ps4_Play Station 4 - Presentacion
Selim - PS4_Ps4_Play Station 4 - Presentacion
 
Play Station 4
Play Station 4Play Station 4
Play Station 4
 
Play station 4
Play station 4Play station 4
Play station 4
 
Xna
XnaXna
Xna
 
Juego de conectores del pc
Juego de conectores del pcJuego de conectores del pc
Juego de conectores del pc
 
Antonio josé lópez correa
Antonio josé lópez correaAntonio josé lópez correa
Antonio josé lópez correa
 
Desarrollo videojuegos
Desarrollo videojuegosDesarrollo videojuegos
Desarrollo videojuegos
 
Desarrollo de videojuegos (versión completa)
Desarrollo de videojuegos (versión completa)Desarrollo de videojuegos (versión completa)
Desarrollo de videojuegos (versión completa)
 
Aplicaciones incluidas en windows 7
Aplicaciones incluidas en windows 7Aplicaciones incluidas en windows 7
Aplicaciones incluidas en windows 7
 
Consolas de videojuegos
Consolas de videojuegosConsolas de videojuegos
Consolas de videojuegos
 
Play 5 precentacion_Alanr_Yerkos_smxc
Play 5 precentacion_Alanr_Yerkos_smxcPlay 5 precentacion_Alanr_Yerkos_smxc
Play 5 precentacion_Alanr_Yerkos_smxc
 
Introducción al Desarrollo de Videojuegos
Introducción al Desarrollo de VideojuegosIntroducción al Desarrollo de Videojuegos
Introducción al Desarrollo de Videojuegos
 

Similaire à Creandojuegoscongamemaker8

Creando juegos con game maker 8
Creando juegos con game maker 8Creando juegos con game maker 8
Creando juegos con game maker 8Henrydarklite
 
Pasos para hacer un videojuego .
Pasos para hacer un videojuego .Pasos para hacer un videojuego .
Pasos para hacer un videojuego .Dianayjeferson
 
Pasos para hacer un videojuego .
Pasos para hacer un videojuego .Pasos para hacer un videojuego .
Pasos para hacer un videojuego .Dianayjeferson
 
Pasos para hacer un videojuego
Pasos para hacer un videojuegoPasos para hacer un videojuego
Pasos para hacer un videojuegoDianayjeferson
 
Presentacion tfm adrian_alonso_gonzalez-light
Presentacion tfm adrian_alonso_gonzalez-lightPresentacion tfm adrian_alonso_gonzalez-light
Presentacion tfm adrian_alonso_gonzalez-lightAdrián Alonso González
 
Andres candelo play
Andres candelo playAndres candelo play
Andres candelo playsimonmesacsj
 
Programas para hacer video juegos
Programas para hacer video juegosProgramas para hacer video juegos
Programas para hacer video juegosSonia Ramirez
 
Andrea y almudena trabajo desarrollo de videojuegos
Andrea y almudena trabajo desarrollo de videojuegosAndrea y almudena trabajo desarrollo de videojuegos
Andrea y almudena trabajo desarrollo de videojuegos1bachc11
 
Tutorial de instalación versión de 97 2003
Tutorial de instalación versión de 97 2003Tutorial de instalación versión de 97 2003
Tutorial de instalación versión de 97 2003Juan Fernando Bolaños
 
Iiinformatiicaa
IiinformatiicaaIiinformatiicaa
Iiinformatiicaa123tami
 
Iiinformatiicaa
IiinformatiicaaIiinformatiicaa
Iiinformatiicaa123tami
 
Modelamiento de juegos
Modelamiento de juegosModelamiento de juegos
Modelamiento de juegosingsistemas1
 
La octava generación de las consolas de videojuego
La octava generación de las consolas de videojuegoLa octava generación de las consolas de videojuego
La octava generación de las consolas de videojuegoadrianestefanoshaila
 
5 herramientas para crear videojuegos sin saber programar
5 herramientas para crear videojuegos sin saber programar5 herramientas para crear videojuegos sin saber programar
5 herramientas para crear videojuegos sin saber programarrobinson hurtado
 
Presentacion videojuegos
Presentacion videojuegosPresentacion videojuegos
Presentacion videojuegosDamia
 
Tutorial de instalación versión de 97 2003
Tutorial de instalación versión de 97 2003Tutorial de instalación versión de 97 2003
Tutorial de instalación versión de 97 2003Gustavo Percivati
 
10a daniel felipe peña creación de un videojuego
10a daniel felipe peña creación de un videojuego10a daniel felipe peña creación de un videojuego
10a daniel felipe peña creación de un videojuegoNicole2411
 

Similaire à Creandojuegoscongamemaker8 (20)

Creando juegos con game maker 8
Creando juegos con game maker 8Creando juegos con game maker 8
Creando juegos con game maker 8
 
Pasos para hacer un videojuego .
Pasos para hacer un videojuego .Pasos para hacer un videojuego .
Pasos para hacer un videojuego .
 
Pasos para hacer un videojuego .
Pasos para hacer un videojuego .Pasos para hacer un videojuego .
Pasos para hacer un videojuego .
 
Pasos para hacer un videojuego
Pasos para hacer un videojuegoPasos para hacer un videojuego
Pasos para hacer un videojuego
 
Presentacion tfm adrian_alonso_gonzalez-light
Presentacion tfm adrian_alonso_gonzalez-lightPresentacion tfm adrian_alonso_gonzalez-light
Presentacion tfm adrian_alonso_gonzalez-light
 
Presentacion gamemaker
Presentacion gamemakerPresentacion gamemaker
Presentacion gamemaker
 
Andres candelo play
Andres candelo playAndres candelo play
Andres candelo play
 
Programas para hacer video juegos
Programas para hacer video juegosProgramas para hacer video juegos
Programas para hacer video juegos
 
Andrea y almudena trabajo desarrollo de videojuegos
Andrea y almudena trabajo desarrollo de videojuegosAndrea y almudena trabajo desarrollo de videojuegos
Andrea y almudena trabajo desarrollo de videojuegos
 
Tutorial de instalación versión de 97 2003
Tutorial de instalación versión de 97 2003Tutorial de instalación versión de 97 2003
Tutorial de instalación versión de 97 2003
 
Iiinformatiicaa
IiinformatiicaaIiinformatiicaa
Iiinformatiicaa
 
Iiinformatiicaa
IiinformatiicaaIiinformatiicaa
Iiinformatiicaa
 
Modelamiento de juegos
Modelamiento de juegosModelamiento de juegos
Modelamiento de juegos
 
La octava generación de las consolas de videojuego
La octava generación de las consolas de videojuegoLa octava generación de las consolas de videojuego
La octava generación de las consolas de videojuego
 
5 herramientas para crear videojuegos sin saber programar
5 herramientas para crear videojuegos sin saber programar5 herramientas para crear videojuegos sin saber programar
5 herramientas para crear videojuegos sin saber programar
 
Presentacion videojuegos
Presentacion videojuegosPresentacion videojuegos
Presentacion videojuegos
 
Tutorial de instalación versión de 97 2003
Tutorial de instalación versión de 97 2003Tutorial de instalación versión de 97 2003
Tutorial de instalación versión de 97 2003
 
Unreal engine
Unreal engineUnreal engine
Unreal engine
 
Desarrollo de videojuegos
Desarrollo de videojuegosDesarrollo de videojuegos
Desarrollo de videojuegos
 
10a daniel felipe peña creación de un videojuego
10a daniel felipe peña creación de un videojuego10a daniel felipe peña creación de un videojuego
10a daniel felipe peña creación de un videojuego
 

Plus de Facultad de Ciencias y Sistemas

Introducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con JavaIntroducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con JavaFacultad de Ciencias y Sistemas
 

Plus de Facultad de Ciencias y Sistemas (20)

Ejercicios HTML 5
Ejercicios HTML 5Ejercicios HTML 5
Ejercicios HTML 5
 
CSS3
CSS3CSS3
CSS3
 
09 ordenamiento-en-vectores-en-c
09 ordenamiento-en-vectores-en-c09 ordenamiento-en-vectores-en-c
09 ordenamiento-en-vectores-en-c
 
08 mas-de-vectores-en-c
08 mas-de-vectores-en-c08 mas-de-vectores-en-c
08 mas-de-vectores-en-c
 
07 vectores-en-c final
07 vectores-en-c final07 vectores-en-c final
07 vectores-en-c final
 
06 clases-en-c
06 clases-en-c06 clases-en-c
06 clases-en-c
 
05 cadenas-de-caracteres-en-c
05 cadenas-de-caracteres-en-c05 cadenas-de-caracteres-en-c
05 cadenas-de-caracteres-en-c
 
04 mas-estructuras-iterativas-en-c
04 mas-estructuras-iterativas-en-c04 mas-estructuras-iterativas-en-c
04 mas-estructuras-iterativas-en-c
 
03 estructuras-iterativas-en-c
03 estructuras-iterativas-en-c03 estructuras-iterativas-en-c
03 estructuras-iterativas-en-c
 
02 mas-de-las-estructuras-de-programacion-en-c
02 mas-de-las-estructuras-de-programacion-en-c02 mas-de-las-estructuras-de-programacion-en-c
02 mas-de-las-estructuras-de-programacion-en-c
 
01 estructuras-de-programacion-en-c
01 estructuras-de-programacion-en-c01 estructuras-de-programacion-en-c
01 estructuras-de-programacion-en-c
 
Procesamiento del lenguaje natural con python
Procesamiento del lenguaje natural con pythonProcesamiento del lenguaje natural con python
Procesamiento del lenguaje natural con python
 
Actividades de aprendizaje en Moodle
Actividades de aprendizaje en MoodleActividades de aprendizaje en Moodle
Actividades de aprendizaje en Moodle
 
Creación de grupos en Moodle
Creación de grupos en MoodleCreación de grupos en Moodle
Creación de grupos en Moodle
 
Introducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con JavaIntroducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con Java
 
Como crear un diagrama de clases
Como crear un diagrama de clasesComo crear un diagrama de clases
Como crear un diagrama de clases
 
Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02
 
Diagrama de clases - Ejemplo monográfico 01
Diagrama de clases - Ejemplo monográfico 01Diagrama de clases - Ejemplo monográfico 01
Diagrama de clases - Ejemplo monográfico 01
 
Otro ejemplo de diagrama de clases UML
Otro ejemplo de diagrama de clases UMLOtro ejemplo de diagrama de clases UML
Otro ejemplo de diagrama de clases UML
 
Un ejemplo de diagrama de clases
Un ejemplo de diagrama de clasesUn ejemplo de diagrama de clases
Un ejemplo de diagrama de clases
 

Dernier

International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 

Dernier (13)

International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 

Creandojuegoscongamemaker8

  • 1. [TUTORIAL BASICO EN GAME MAKER 8] En este tutorial se aprenderá el uso de Game Maker 8 a nivel básico para todos aquellos que les gustaría utilizar este programa. Biografía: Autor: Henrydarklite Edición: 1ra Lugar: México Páginas: 46 Fecha de publicación: Abril 2012
  • 2. INDICE Uso básico • Introducción • Instalación • Componentesde la versiónPro de Game Maker • Primerospasos • La interfazde usuario • Definiendolossprites • Sonidosy música • Fondos • Definiendoobjetos • Eventos • Acciones • Creando rooms • Distribuir tu juego
  • 3. Uso Básico Descripcióndel usobásicode GameMaker,explicalaideageneral del programa:comoañadir sprites,fondoso sonidos,asícómodefinirobjetosconeventosyaccionesparaañadirlosalas rooms. Introducción Creando tus propiosvideojuegos Jugar a videojuegosesdivertido,peroaúnloesmás diseñarlostuyospropiosy que otroslos jueguen.Pordesgracia,crear videojuegosnoesfácil.Losjuegoscomercialesde hoyendía se desarrollanende 1 a 3 años con equiposmuyespecializadosde entre 10a 50 personasy presupuestosde millonesde euros. ¿Quiere estodecir que es imposible creartus propios videojuegos? No,con Game Makerpuedescrearlossinnecesidadde aprenderningúnlenguajede programación.Eso sí, no esperesconseguirtupropio Halo 4 o el Virtual Tennisenpocassemanas, aunque tampocoesnecesariatantacomplejidadparaque seandivertidos.Juegos mássimples como el Tetris, Pacman,SpaceInvaders,...sonigualmente divertidosymásfácilesde desarrollar. Game Makerte ofrece una sencilloe intuitivosistemade "arrastrar y soltar" que te permite crear juegosde formarápida.Puedesimportarycrear imágenes,sprites(imágenesanimadas) ysonidos, indicarcómo interactúanentre ellosysituarlosenlasdistintasrooms(salas)donde se desarrollael juego,ytodo estosinnecesidadde programar.Si másadelante quieresmayorcontrol también disponesde unsencillolenguaje de programaciónparacontrolartodosloselementos. Game Makerestápensadopara desarrollarjuegosbidimensionales(2D),asíque si quierescrear mundosen3D este noestu programa. Juegosimportantescomo Ageof Empires,las series Command and Conquer yDiablo usan tecnologíasde sprites2D,aunque parezcan tridimensionalesyel desarrollode este tipode juegosesmásfácil yrápido. Este documentote ayudará a aprenderel usode Game Makery como realizarvideojuegos,pero recuerdaque sóloesuna herramientay hay muchosaspectosa tenerencuenta:historiadel juego,gráficos,sonidos,interacción,...Empiezaconejemplosfáciles,aprende másyprontoserás un expertodesarrollador.Disfrutadel procesocreativo,comparte tusideasybuscarecursosen los forosde las siguienteswebs: http://www.yoyogames.com/make http://www. taringa.net/comunidades/aprendiendogamemaker/
  • 4. Instalación Ejecutael programa setup.exe ysigue lasinstruccionesde pantalla.Puedesinstalarlodonde desees,perote recomiendodejarlasopcionespredeterminadas.Unavezinstaladoencontrarásun nuevogrupode programas enel menúInicio,desde dondepuedesarrancar Game Makere leerel archivode ayuda. Dentrode la carpeta de instalación(pordefectoC:Archivosde ProgramaAPGMFGame Maker) tenemosvarias carpetasadicionales: Backgrounds: imágenesparalosfondos. Examples:contiene variosjuegosde ejemplo,paraque losrevisesy/o modifiques. extensions:dónde se instalanlasextensionespara ampliarlafuncionalidaddel programa. Por defectoyavienentres,unaparaimprimir(Printing),parahacertransicionesentre las rooms(RoomTransitions) ypara hacerdiálogosde ventanas(WindowsDialogs). lib:contiene variaslibreríasde acciones.Si deseasinstalarlibreríasadicionalesdebes colocarlasdentrode estacarpeta. Sounds: sonidosde ejemplo. Sprites:spritesde ejemploque puedesusarentusjuegos.La instalaciónyaincluye algunos. Tutorials: aquí se guardan lostutorialesque se puedenseguirdentrodel programa,los que aparecenenel lateral derecho.Cadaunose guarda enuna carpeta diferente. Puedesdescargarmásrecursosdesde lawebde Yoyo Gameso de cualquierotraweb. Requisitos Cualquierordenadorconmenosde 5 añosde antigüedaddeberíavaler. OrdenadormodernoconsistemaoperativoWindows. Tarjetagráfica compatible conDirectX8 o posteriorconal menos32 MB de memoria. Resoluciónde pantallaal menosde 800x600 pixelesy65.000 colores(16-bit). Tarjetade sonidocompatibleconDirectX8. Compruebaque tienesinstaladosloscontroladoresmásrecientesde tuequipo. Al diseñaryprobar juegos,los requisitosde memoriasonunpocomás elevados,al menos128 MB. Al jugar,la memorianecesariasuelesermenor,perodepende deltipode juego.
  • 5. Componentesde la versiónPro de Game Maker La versión Proque esgratuitagracias al usuario bra101yan incluye: Sprites:podrásrotarlos,transformarsucolor o hacerlostranslúcidos. Editorde spritese imágenesconmásopciones. Más acciones:cargar músicadesde unCD, rotar texto,crearformasde colores... Efectosespecialesde sonidoysonidoposicional. Crear pantallas de inicioconpelículas,imágenes,sitiosweb,textos... Sistemade partículaspara crear efectosde fuego,lluvia,explosiones... Funcionesavanzadasde dibujocomopolígonostexturizados. Funcionesparagráficosen3D. Funcionesparacrear juegosmultijugadoro jugarenred. Podrásdefinirtuspropiastransicionesentre rooms. Funcionesparacrear y modificarrecursos(sprites,fondos,...) durante el juego. Funcionesparausar estructuras de datos. Funcionesparaplanificarmovimientos. Posibilidadde incluirmásarchivosentiemporeal durante el juego. La edición Propuede ampliarseconextensiones,que puedensercreadasporcualquieray suelensergratis. Tres de esasextensionesyaestánincluidasyañadentransicionesentre estancias,cuadros de diálogoyserviciosde impresión. Podrásdefinirtuspropioseventostriggers. Herramientasparacrear juegoscolaborativos,pudiendoimportaryexportarrecursos.
  • 6. Primerospasos Crear tu primerjuegosiempreesunreto,perosi ponesunpoco de esfuerzoportu parte,será bastante másfácil.En una hora podrías tenerlistounjuegosencillo. A pesarde que hacer juegosconGame Maker esmuy sencillo,necesitaráscomprenderlos conceptosbásicosdel programa.Para conseguirlote recomiendoseguirel tutorialque se muestra a la derechaal empezar.Si no loves,vete al menú ayuda (Help) yescoge laopción Tutorial. Conceptosbásicosdel programa Los juegoscreadosconGame Maker se desarrollanenunao más rooms (salas) que esdonde colocaráslos objetos,porejemploparedes,al protagonistaolosenemigos.Algunosde estos objetossonestáticoscomolasparedes,mientrasotros,comoel protagonista,se muevene interactúanconotros objetos reaccionandoalasórdenesdel jugador,que loscontrolamediante el teclado,el ratóno el joystick.Estoselementossonlosmásimportantesdel juego. La mayoríade losobjetosnecesitanalgunaimagenparahacerse visiblesenpantalla.Estas imágenesse llamanspritesypuedenserestáticos(unaimagen) oanimados(variasimágenes simulandomovimiento).De estaformaparece que el personaje camina,que unapelotarueda, etc.Durante el juegoel sprite de unobjetopuede cambiar,porejemploel personaje se ve diferente cuandocaminaaizquierdaoaderecha.Puedescreary editarspritesenel propio programa o importarlosde otros,comoGIFs animados. Los objetosreaccionanalosdiferentestiposde eventosque hayyejecutan lasaccionesque estén asociadasa losmismos.Estoseventoslessucedena lasinstancias de losobjetos,que son su representación enpantalla.Porejemplo,sólotienes1objetoenemigo,peropuedescolocarel númerode instanciasdel objetoenemigoque desees.Al crearlainstancia se ejecutanlasacciones asociadasal eventoCrear,cuandochoca contra otra instanciade objetosucede el eventoColisión, etc.Más adelante loveremosendetalle. Las rooms puedenserempleadascomonivelesdel juegoopara mostrardiferenteslugaresy tienenaccionespropiasque permitenpasarde unasa otras.Lo más básicoes ponerle unfondo que puede seruncolor o una imagen.Encada room colocasel númerode instanciasque quieras de losobjetosdefinidos.Porejemploenlaroom A puedescolocar4 instanciasdel objetoenemigo y enla room B puedescolocar6. Ya puedesprobarel juego.Se mostrarála primeraroomy losobjetoscobraránvidadebidoa las accionesde suseventosde creación,interactuaránunosconotrospor las accionesasignadasa sus eventosde colisiónyreaccionarána loque haga el jugadorporque tienenaccionesensuseventos de tecladoo ratón. En resumen,lossiguientes recursostienenunpapel fundamental enel proyecto:
  • 7. Objetos(objects):sonlasentidadesverdaderasenel juego. Rooms (salas):loslugaresdonde situamoslosobjetos. Sprites:imágenesque se empleanpararepresentaralosobjetos. Sonidos(sounds):comomúsicade fondoo efectossonoros. Fondos(backgrounds):lasimágenesde fondoparalasrooms. Hay más recursosque se usan para juegosmáscomplicadoscomoloscaminos(paths),guiones (scripts),tipografías(fonts) olíneasde tiempo(time lines). La interfazdel usuario Al iniciarel GameMakerse muestralasiguiente ventana,juntoconel primer tutorial aladerecha: A la izquierdapuedesverunlistadoconlos recursos:sprites,sonidos(sounds),fondos (backgrounds),scripts,objetos(objects),salas(rooms)ydosmás: Informacióndel juego(Game Information) yOpcionesdeljuego(Game Options). En la parte superiorestánel menúy labarra de herramientas.En este capítuloexplicaremos brevementelasopcionesdelmenú,losbotones,etc.Másadelante ampliaremosinformación sobre algunosde ellos.Recuerdaque muchascosasse puedenlograrde diferentesmaneras:
  • 8. seleccionandouncomandodel menú,haciendoclicenunbotóno haciendoclicderechosobre un recurso. Estas son las funciones que tiene game maker en la barra lateral Es para crear un nuevo archivo Es para cargar un archivo Es para guardar el archivo Es para crear tu proyecto en archivo con extension .exe Es para publicar tu juego en yoyogames.com Es para previzualizar tu juego Es para lanzar un debug (no recomendado utiliza mucha memoria) Es para cargar o crear un sprite Es para cargar un sonido Es para cargar o crear un background Es para hacer un path (Movimientos relativos) Es para hacer un scriptGML Es para cargar una fuente a tu juego ejemplo:Arial Es para hacer un timeline (linea de tiempo) Es para hacer un objeto (lo que llevara tu juego como el jugador,blockes,etc) Es para hacer un cuarto (los niveles) Es para poner la info de tu juego (NO RECOMENDABLE) Es para poner las opciones globales de tu juego como:Iniciar en pantalla completa,Ver mouse,etc... Es para cargar extensiones (En este caso no necesario) Es para ver para que sirve cada scriptGML (AYUDA EN SCRIPT) Menú archivo(file) Los comandohabitualesparaabriry guardar archivos.Los comandocon * tienenunbotónenla barra de herramientas. Nuevo(New)*.Para empezaracrear un juegonuevo.Si el juegoactual tiene modificacionesse te preguntasi quieresguardarlo. Abrir (Open)*.Abre unarchivode juego.Losarchivosde Game Makertienenla extensión .gmk.Tambiénpuedesabrirarchivos antiguosconextensión.gm6.ysi quieres abrir archivos.gmdcreadoscon la versión5tienesque seleccionarel tipode archivo adecuadoenla parte de abajodel cuadrode diálogo.Estosúltimospodríannofuncionar correctamente enlanuevaversión.
  • 9. Tambiénpuedesabrirunjuegoarrastrandoel archivoa la ventanade GameMaker. Archivos recientes(Recentfiles).Usaeste submenúparavolveraabrirlosarchivos usadosrecientemente. Guardar (Save)*.Guardael archivodel juegoconel nombre actual,sino lo tiene aúnte aparece una ventanapara dárselo.Este comandosóloestádisponiblecuandoel proyecto ha cambiado. Guardar como (Save as). Guarda el juegoconotro nombre.Se te pide unnuevonombre. Crear ejecutable (Create executable).Mediante estecomandopuedescrearunaversión ejecutable de tujuegoque funcionasinnecesidadde tenerinstalado GameMaker.Con este archivopuedesdistribuirtujuegoa quienquieras. Modo avanzado (Advancedmode).Al hacer clicen este comandose cambiaráentre los modossimple yavanzado.Enel avanzadotienesdisponiblesmáscomandosyrecursos. Salir (Exit).Para salirdel programa.Si hiciste cambiosenel juegoactual se te preguntarási quieresguardarlo. Menú Editar(Edit) Contiene comandosrelacionadoscon el recurso(objeto,sonido,etc.) ogrupode recursos seleccionado.Dependiendodel tipoalgunoscomandospuedennoestardisponibles. Insertar recurso (Insertresource).Insertaunanuevainstanciadel tipode recurso actualmente seleccionadoantesdel mismo.Si seleccionaste ungrupode recursoses agregadoal grupo.Se abrirá un cuadro de diálogoenel que puedescambiarlas propiedades. Duplicar (Duplicate).Creay agrega unacopia del recursoactual.Se abre unaventanaenla que puedesmodificarlo. Borrar (Delete).Borrael recursoo grupo de recursosseleccionado.Este comandono puede deshacerse,porloque verásunaadvertenciaparaconfirmarsu eliminación. Renombrar (Rename).Dale unnuevonombre al recurso.Tambiénlopuedeshacerensu ventanade propiedades. Propiedades(Properties).Usaeste comandoparamostrar la ventanade ediciónde propiedadesque se mostraráenlaventanaprincipal.Puedeseditarvariasal mismo tiempo.Tambiénpuedesaccederalaspropiedadeshaciendodoble clicenel recurso. Estos comandostambiénpuedesaplicarlosde otraforma.Haz clic derechoenunrecursoo grupo de recursos,y apareceráel menúapropiado.
  • 10. Menú recursos(Resources) Puedescrearnuevosrecursosde cualquierade lostiposdisponibles.Paracadauno de ellos tambiénhayun botónenla barra de herramientasyunacceso directodesde el teclado.También puedescambiarlainformacióndel juegoylaspreferenciasgenerales.. Menú Ejecutar(Run) Se usa para ejecutarel juegode lassiguientesmaneras: Normal (Run normally).Ejecutael juegoenmodonormal y de la maneramás eficiente posible comosi fueraunejecutable. Depuración de errores (Run inDebug mode).Ejecutael juegoenmodo depuración. En este modopuedesrevisarel juego,pausarlooavanzar pasoa paso.Muy útil para detectar y solucionarerrores. Una vez que tujuegoesté listo,puedescrearunejecutable del juegousandolaaccióndel menú archivo. Menú Ventana(Window) Comandospara manejarlaspropiedadesde lasventanasde laventanaprincipal. Cascada (Cascade).Colocatodaslasventanasencascada de formaque cada una sea parcialmente visible. Reordenar iconos(Arrange Icons).Ordenatodas lasventanas.Útil al cambiar de tamaño la ventanaprincipal. Cerrar todo (Close All).Cierratodaslasventanasde propiedades,preguntandosi se desea guardar o no loscambiosrealizados. Menú Ayuda(Help) Comandosde ayuda: Contenidos(Contents).Laayudaen formatoCHM. Tutoriales(Tutoriales).Usa este submenú paraverlostutorialesque te enseñaránacrear tus primerosjuegos. Actualizarse a la versiónPro (Upgrade to Pro Edition).Para poderusartodas lasfunciones del programa. Introducir código de activación (Enter Activation Code).Si ya hascomprado Game Maker antes,usaeste comandopara introducirtu código.Te llevaráa unapáginawebpara hacerloefectivo.
  • 11. Noticias(News).Consultalasúltimasnoticiassobre el programa. Libro (Book).Te llevaala webdel librode GameMaker. Más tutoriales(More tutorials).Te conecta a una webpara que te descarguesmás tutoriales. SitioWeb(Web).Te llevaala weboficial del programa,donde podrásencontrarjuegosy más recursos. Foro (Forum).Te conectaal forooficial,donde puedesencontrarayudayrecursos. Wiki (Wiki).Te conectacon lawiki de Game Maker donde encontrarásinformaciónde utilidadordenadaportemas. About Game Maker. Breve informaciónsobre el programa. El exploradorde recursos En la parte izquierdade lapantallaverásel exploradorde recursos,conuna listadesplegable con todoslosrecursosde tu juego.Si unelementotiene unsigno +a su ladopuedeshacerclicpara verlostodosylospuede ocultarclicandoenel signo -. Seleccionayhazclic sobre unrecursopara cambiarle el nombre. Doble clicsobre él para editarsu propiedades. Usa el botónderechoparaaccedera loscomandosdel menúEditar. Puedescambiarel ordende lalistahaciendoclicenunrecurso y manteniendopulsadoel botón del ratón.Arrástraloal lugarque quierasdentrodel mismotipo. Definiendolossprites Los spritesson lasrepresentacionesvisualesde todoslosobjetosenel juego.Unsprite puede ser una imagensimple ounjuegode variasimágenesque,reproducidasunatrasotra, crean unefecto de movimiento(animación).Porejemplo,lassiguientesimágenesformanunsprite paraun personaje moviéndose hacialaderecha. Al empezara crear tu juegodebesdibujarobuscar lostodoslosspritespara losobjetosque vasa usar. Conel programa vienenincluidosunoscuantos(carpetaSprites),pero puedesdescargarte más de la webde Game Maker o de otros sitiosenInternet.Suelenestarenformato.pngo.gif (estáticosoanimados). Para crear un sprite seleccionael comando CrearSprite (Create Sprite) del menú de Recursos (Resources) ousael botóncorrespondiente enlabarrade menús(Pacmanrojo),se verála siguiente ventana:
  • 12. En la parte superiorizquierdaescribe el nombre del sprite,puestodoslosrecursosdel juego debenllevaruno.Procuraque seadescriptivo,fácil de recordaryque no se repita.Se recomienda sólousar letras,númerosyel guiónbajo(_) enlos nombresde losrecursos(sprites,objetos, sonidos...) yempezarel nombre conunaletra.Evitausar espaciosenblanco,puesdarían problemasencasode usar código. Haz clic en el botónCargar Sprite (LoadSprite) paraabrir el siguientecuadrode diálogo: En la parte izquierdahayunselectorde archivosdonde puede elegirlaimagenque quieresyenla
  • 13. parte derechapuedesprevisualizarel sprite animadoyveralgunainformaciónsobre él.Aquí puedesindicarsi loquiereshaceropaco(se borraránlas partestransparentes),borrarel fondo haciéndolotransparente (pordefecto) ysi quieressuavizarlosbordes,loque puedemejorarsu apariencia.PulsaAbrir(Open)cuandoestés satisfechoconel resultado. Game Makerpuede abrirdiferentestiposde imágenes.Al cargarun .gif animado,todas lassubimágenesformarla imagendel sprite.Cuandoel nombre delarchivoacabacon _stripXX, con XX comoun número,se consideraque contieneunatirade subimágenesunajuntaala otra (nopara .gifs).Porejemplo,conel nombre bola_strip4.pngse asume que hay4subimágenes. Una vez que se carga el sprite,se mostrarálaprimerasubimagenala derechaysi hayvarias puedesverlasunaauna usandolosbotonesconlas flechas. Con el botón Editar Sprites(EditSprite) puedeseditarel sprite oinclusocrearunonuevo.Game Maker trae integradouneditorde imágenesysprites.Paramásinformaciónve alas secciones Editandotus spritesy Editando subimágenesindividualmente. Sonidosy música La mayoríade juegostienenefectosde sonidoymúsicade fondopara hacerlomásatractivos. Puedesencontrarejemplosde sonidosenlacarpetaSoundsenel directoriode instalacióndel programa o descargarlosdesde lawebde GameMakeru otrossitiosenInternet. Para añadirun recursode sonidoal juego,usael comando Crear Sonido(Create Sound) del menúRecursos (Resources) ousael botóndel altavozenlabarra de herramientas.Se mostrarála siguiente ventana:
  • 14. Para cargar un sonidopulsael botón Cargar Sonido(Load Sound) yapareceráun cuadro de diálogoparaseleccionarel archivode sonidoque te interese.Haydostiposde archivosadmitidos: wave(*.wav).Paraefectoscortosde sonido,usanmuchamemoriaperose reproducenal momento. midi (*.midi).Necesitanmuchamenosmemoriaparaserreproducidos,perosólose puedeusar unoa la vezy para músicade fondo. Una vez que hascargado el archivode músicapuedesescucharlousandoel botónReproducir (Play).Tambiénhayunbotón Guardar Sonido(Save Sound) paraguardar el sonidoactual a un archivo,que seráde utilidadencasode perderel original. Fondos El tercertipode recurso básicosonlos fondos,que normalmentesonimágenesgrandes usadas como fondode lasrooms enlasque se desarrollael juego.A menudoestánhechascontiles (mosaicos) de maneraque puedesrellenarel espacioconunmotivoysinseparacionesvisuales entre losbloques.Puedesencontrarejemplosenlacarpeta Backgrounds dentrodel directoriode instalacióndel programao descargarlas de la webde GameMaker u otraspor Internet. Para añadirun recursode fondoa tu juego,usael comando Crear Fondo(Create Background) en
  • 15. el menú Recursos o usael botón correspondientede labarra de herramientas.Se mostrarála siguiente ventana: Dale un nombre descriptivoarribaa laizquierda. Pulsael botón Cargar Fondo(Load Background) para seleccionarel archivoque te interese.A la derechadel selectorde archivospuedes indicarsi quieresque el fondoseaopaco(se borraránlas partestransparentes),que se borre el fondoose haga transparente (pordefectono) ysi se suavizanlosbordes,loque mejorarásuaspectocuandoes parcialmente transparente.Cuando estéssatisfechoconel resultadopulsa Abrir(Open) ycarga el archivo.¡Losfondosno puedenser animados! Puedescambiarel fondoocrear unonuevousandoel botón Editar Fondo (EditBackground) que abrirá uneditorde imágenes.Parasaber cómousarlopuedesira la sección Editando subimágenes(Editingimages). Tencuidadoal usar imágenes muygrandes,algunastarjetasgráficasantiguasnoadmitenque seanmayoresque lapantalla,así que procura que seanmenoresde 1024x1024 pixeles. DefiniendoObjetos Ya hemosañadidoimágenesysonidosal juego,peroningunode ellosrealizaningunaacción,no interactúanconnada. Es hora de hablar del recursomásimportante dentrode GameMaker: losobjetos. Los objetosson lasentidadesque hacenlascosasenel juego,casi siempre tienenunsprite como representacióngráficaparaque puedasverlos.Tienenuncomportamientoporque pueden reaccionara ciertoseventos.Todaslascosasque vesen el juego(exceptoel fondo) sonobjetos, concretamente,son instanciasde objetos.Tambiénloshayinvisibles,que novesperocontrolan ciertosaspectosde lapartida.
  • 16. Fíjate en ladiferenciaentre los spritesylosobjetos.Losspritessonsoloimágenesque notienen ningúncomportamientoasociado.Losobjetosnormalmenteestánrepresentadosporunsprite, perotambiéntienenuncomportamientoparainteractuar.¡Sinobjetosnohayjuego! Tambiénfíjate enladiferenciaentre los objetosylasinstancias.Un objetodescribe ciertaentidad, por ejemplounenemigo.Peroenel escenariospuedesponerel númerode instanciasdel objeto que deseesytodasserániguales.Si modificasel objetooriginal,todassusinstanciascambiarán. Para añadirun objetoal juego,seleccionael comando CrearObjeto(Create Object) del menúRecursos (Resources).Aparecerálasiguienteventana: A la izquierdase muestralainformacióngeneraldel objeto,enel mediohayvarioseventosque le puedensucederyala derechalasaccionesasociadascon dichoseventos.De loseventosylas accioneshablaremos enlospróximoscapítulos. Comosiempre,debesdarleunnombre descriptivoal objeto.Después,elijeunode losspritesya creadospara que sea su representaciónvisual.Parahacerlo,hazcliccon el botónizquierdodel ratón enla caja de Sprite o enel botóna suderechapara mostrar todoslosdisponibles.Selecciona el que quieras. Si todavía no tienesningunopuedesdarle a Nuevo(New) paraañadirunoy luegolopuedes cambiar.También,cuandoseleccionesunrecurso,verásunbotón Editar (Edit) para editarsus propiedades.Estoesmásrápidoque buscarloenlalistade recursose indicarque loquieres
  • 17. editar. Debajohaydos opciones: Visible (Visible).Indicasi lasinstanciasde este objetoseránvisibles.Lomáshabitual es que losobjetosse puedanverperoenalgunasocasionesesútil teneralgunosinvisibles, por ejemplocomoguíasde movimientoparaunenemigo.Estosobjetosinvisibles reaccionana eventosyotras instanciaspuedencolisionarconellos. Sólido(Solid).Indicasi se trata de un objetomacizo(comounapared).Las colisionescon sólidossontratadasde forma diferenteque losno-sólidos.Se recomiendausaresta opciónsólopara objetosque nose mueven. Eventos Game Makeremplealoque se conoce comoprogramaciónorientadaa eventos.Estoes,entodo tipode situacioneslasinstanciasde losobjetosrecibeneventosreaccionandoaellosejecutando algunaacción.A cada uno de losobjetosdebesindicarle aque eventosresponderáylasacciones asociadasa ellos.Aunque puedasonarcomplicado,verásque enrealidadesmuysencilloylo podráshacer con botonesde arrastrar y soltar. En el mediode laventanade propiedades de objetohayunalistade eventosaloscualesdicho objetopuede reaccionar,al principioestávacía.Pulsael botónAñadir Evento (AddEvent), apareceráun pequeñomenúcontodoslostiposde eventosdisponiblesparaagregardesde aquí losque te interesen.Enocasionesse mostraráunsubmenúconopcionesextra.Porejemploenel eventode tecladoapareceráunalistacontodas lasteclasdisponibles. Al final de estapáginaencontrarásuna descripcióndetalladade todosloseventos. Seleccionauneventode lalista,que seráel que modificaremosyapareceráenel listadode eventosde laspropiedadesdel objeto. A laderechade todo,agrupadasenvariaspestañas,están todaslas accionesrepresentadasporiconosque reaccionanaloseventos,que veremosmás adelante endetalle. Entre loseventosylasaccionesse encuentralalistaconlas accionespara el evento actual.Para agregar unaacción a la listaarrástreladesde laderechahastaaquí y se situaránunadebajode otra con una breve descripción.Paracada una de lasaccionesse te pediránalgunosparámetros que veremosmásadelante. Después de añadiralgunas,tendríasalgoasí:
  • 18. Puedesañadiraccionesparaotro evento,hazclicconel botón izquierdosobre el que quierasy arrastra nuevasaccionesa la lista. Puedescambiarel ordende lasaccionesde lalistaarrastrando losiconos.Si mantienespulsadala tecla<Alt> mientrasarrastras,harás una copiade la acción.Inclusopuedesarrastraaccionesentre listasde diferentesobjetos. Con el botónderechodel ratónse mostrará unsubmenúdesde el que borrar,copiaro pegar acciones.Puedesseleccionarvariasaccionesparacortar, copiaro borrar pulsandola tecla<Shift>o <Ctrl>. Presionandolasteclas <Shift><A>seleccionastodas.Si mantienesel cursor del ratón sobre unaacción se muestrauna descripciónmásdetalladade lamisma... Para borrar el eventoseleccionadoytodassusaccionespulsael botón Borrar (Delete).Los eventossinaccionessoneliminadosautomáticamentecuandocierraslaventanasinnecesidadde que hagas nada. Si deseasasignarlasaccionesa un eventodiferente(cambiode tecla, porejemplo)pulsael botónCambiar (Change) yseleccionael nuevoevento,que nodebe habersidoempleadoantes. Usando el submenú que aparece conel botónderechodel ratónenla listade eventopuedes duplicarlo,estoes,agregarunnuevoeventoconlas mismasacciones. Tal como se indicóantes,paraañadir uneventopulsael botón AñadirEvento (AddEvent) yse mostrará lasiguiente ventana:
  • 19. Aquí seleccionael eventoque vasaañadir,algunasvecesaparece unnuevomenúconopciones extra.Esta esla descripciónde loseventosdisponibles,perorecuerdaque normalmente sólo usarás algunosde ellos,en función de lasnecesidadesdelobjetodentrode tujuego: Evento crear (Create event) Sucede cuandose crea una instanciadel objeto.Normalmente se usaparaestablecerel movimientode lainstanciay/oestableceralgunasde susvariables. Evento Destruir (Destroyevent) Ocurre cuando la instanciaesdestruida,exactamente justoantesde que seadestruida.Esto quiere decirque lainstanciaaúnexiste cuandoel eventoesejecutado.Habitualmente nose usa, peropuedesemplearlo,porejemplo,paracambiarel marcador o crear algúnotro objeto. Eventos alarma (AlarmEvent) Cada instanciatiene 12relojesde alarma.Puedesconfigurarlosusandociertas acciones(verel siguiente capítulo).El reloj de laalarmahace unacuenta regresivahastaque llegaa0, que es cuandose generael evento.Paraindicarlasaccionesparaun reloj de alarma,primeronecesitas seleccionarloenel menú. Los relojesde alarmasonmuy útiles,puedesusarlosparahacerque ciertascosas se repitanunay otra vez.Por ejemplo,unenemigopodríacambiarde direccióncada20 pasos,encuyo caso unade lasaccionesenel eventodebe configurarnuevamente laalarma. Eventos paso (Stepevents) El eventostepsucede acada paso/frame del juego.Puedescolocaraccionesque requieren ejecutarse continuamente.Porejemplo,si unobjetodebe seguiraotro,puedesadaptarla direcciónde movimientohaciael objetoque se estásiguiendo. Hayque tenercuidadoconel uso de este eventoparaevitarralentizarel juego,nocoloquesaccionesmuycomplicadasenobjetos con muchasinstancias. Hay tres tiposdiferentesdeleventostep,normalmente sólonecesitaráslaque viene pordefecto perousandoel submenúpuedesseleccionarel iniciooel final del eventostep.El iniciose ejecuta
  • 20. al comienzode cadapaso,antesde que sucedacualquierotroevento.El normal se ejecutaantes de que se coloquenlasinstanciasensusnuevasposicionesyel final justoantesde que se dibuje la escena. Uno de sususosútilesescambiarel sprite dependiendode ladirecciónactual. Eventos de colisión(Collisionevents) En el momentoenque dosinstanciascolisionanocurre uneventode colisión,parasermás precisos,ocurrendos,unopor cada instancia.Debesseleccionarenel menúel objetoconel que choca y después colocarlasaccionesasociadasa él. Si no hay accionesasociadasa este eventonosucede nada,lainstanciaactual seguirámoviéndose aun cuandoel otro objetoseasólido.Dependiendosi chocacon un objetosólidouotronosólido la reaccióna las accionesesdiferente: - El otroobjetoessólido.Lainstanciavuelve al lugaranteriorala colisiónyentoncesse ejecutael evento.Porejemplo,si laacciónasociadaal eventoinvierte ladirecciónde movimiento,la instanciarebotaenla paredsindetenerse.Si hayunanuevacolisiónse mantieneensulugar previaydejade moverse. - El otroobjetonoes sólido.Lainstancianorebota,el eventose ejecutaenlaposiciónactual.Al no sersólido,lopodemosatravesaropasarsobre él y el eventonosnotificaloque está sucediendo. Existenmuchosusosparaeste evento,pararebotarcontra las paredes,destruiralgúnobjeto cuandoes alcanzadopor unabala,etc. Eventos de teclado (Keyboardevents) Cuandoel jugadorpulsauna teclassucede uneventode tecladoparatodaslas instanciasde todos losobjetos.Se puede definiruneventoporcadatecla,seleccionándolaenel submenúy asignándole lasaccionesque quieras.Lógicamente noes necesario asignartodaslasteclas,sólo usarás lasque necesitesparacada unode los objetosdel juego. El eventosigue activomientraslateclasigapulsada.Dentrode estoseventos,haydosespeciales, unoes el <No Key>(Ningunatecla) que sucedeencadapaso cuandono haynada pulsadoy el otro es<Any Key>(Cualquiertecla) que sucede al presionarcualquiera.Si el jugadorpulsavarias sucedenloseventosde todasellas. Las teclasdel tecladonumérico sólofuncionancuandoestáactivada <BloqNum>. Eventos de ratón (Mouse Events) Sucedencuandoel cursorse encuentrasobre el sprite que representalainstanciadel objeto. Existenloseventos nobutton,leftbutton,rightbuttonomiddle button (ningún botón,izquierdo, derechoocentral) que se generanmientrasse mantengapresionadocualquierade ellos.Los
  • 21. eventos pressyrelease (pulsarysoltar) se generanunasolavezcuandose pulsao sueltael botón, respectivamente. Recuerdaque sólosucedencuandoel ratónestásobre la instancia,si se pulsaunbotónen algún lugarsin objetosnoocurriránada,salvoque usesloseventosglobalesdel submenú que reaccionarána cualquierclicencualquiersitio. Tambiénhaydos eventosespecialesque se suelenusarparacambiar el sprite oactivar algún sonido,el mouse Enterymouse leave (entrarysalir),el primerosucede cuandoel ratónse pone encimade la instanciayel segundocuandolaabandona.Los denominados mousewheel up y mouse wheel Down(ruedaarribaoabajo) se activanal moverla ruedadel ratón. Por últimohayunaserie de eventosparajoysticks,donde indicasaccionesparalas4 direcciones principales(endiagonal se ejecutaríanamboseventos) ypara8 botones.Puedesprogramarlopara dos joysticks. Otros eventos(Otherevents) Hay otros eventosque puedenserútilesenciertosjuegosylospuedesencontrareneste submenú: Fuera de la sala (Outside room) Ocurre cuando la instanciase encuentracompletamente fuerade laroom.Suele serun buenmomentoparadestruirla. Cruzando el límite (Intersectboundary) Ocurre cuando la instanciallegaal borde del cuarto. Vistas (View) Son útilescuandousasvistasentusrooms,compruebancuandodesaparece lainstancia de una determinadavistaollegaal borde de lavista. Comienzode juego(Game start) Se generapara todas lasinstanciasenlaprimeraroom donde se iniciael juego.Sucede antesque el eventoroomstart (verabajo) yque loseventoscreate de lasinstanciasenel cuarto. Se suele definirnormalmenteenunsoloobjeto"controlador"yse usapara reproducir algunamúsicade fondo,asignarvaloresinicialesaalgunasvariablesoparacargar datos. Fin de juego(Game end) Sucede paratodas lasinstanciascuandoterminael juego.Comoel anterior,lonormal es que lodefinaunsóloobjeto.Se puede emplearparaguardarla informacióndel juegoen un archivo.
  • 22. Comienzode sala (Room start) Se generapara todas lasinstanciasde laroom cuandoesta se iniciayantesque los eventosde creación. Fin de sala (Room end) Se generapara todas lasinstanciasexistentescuandofinalizalaroomactual. Sin vidas (Nomore lives) Game Makertiene unsistemade vidasinternoyunaacciónpara especificarycambiarsu número.En el momentoque seamenoro igual a 0, se generaeste evento.Normalmente se empleaparaterminaro reiniciarel juego. Sin energía(Nomore health) Game Makertiene unsistemainternode energíayuna acciónpara especificarycambiar el nivel de energía.Enel momentoque la energíaseamenoro igual a 0, ocurre este evento.Normalmentese empleaparadisminuirel númerode vidasopara reiniciarel juego. Fin de la animación (End of animation) Comose indicóantes,unaanimaciónconsiste envariasimágenesque se muestrande formaconsecutivayal llegara laúltimase vuelve alaprimera.Este eventosucede enese precisomomento.Se puede usarpara,porejemplo,cambiarlaanimaciónodestruirla instancia. Finde trayectoria (End of path) Este eventoocurre cuandola instanciaque sigue unatrayectoria(path) llegaal final de la misma. Botón cerrar (Close button) Sucede cuandoel jugadorhace clic enel botóncerrar de lamismaventana.Sólofunciona cuando,enlas preferenciasdel juego,estádesmarcadalaopciónque el botóncerrarse comporte comola teclas <Esc>. Definidopor el usuario (Userdefined) Hay 16 de estoseventos.Normalmentenuncasucedenamenosque túmismolosllames desde uncódigopropio. Evento Dibujando (Drawingevent) Las instancias,cuandosonvisibles,dibujansusprite enlapantallaencada paso.Cuandoindicas accionesenel eventode dibujo,nose dibujael sprite,sinoque se ejecutanesasaccionesensu lugar. Esto se puede usarpara dibujaralgomás que un sprite,opara cambiar losparámetrosdel sprite. Hay variasaccionesde dibujoespecialmente diseñadasparaserusadasen el eventodrawing,que
  • 23. sólose ejecutacuandoel objetoesvisible.Recuerdaque,independientemente de loque dibujes aquí, loseventosde colisiónse basanenel sprite que estáasociadoa lainstancia. Eventos Pulsar Tecla (Keypressevents) Similaral eventoteclado(keyboard)peroéste sóloocurre unavezcuandose presionalateclay no de forma continua.Útil cuandoquieresque laacciónsóloocurra una vez(sóloundisparo,por ejemplo). Eventos Soltar Tecla (Keyrelease events) Similaral eventoteclado(keyboard),peroéste sóloocurre unavezcuandose sueltalateclay no de forma continua. En algunassituacionesesimportanteconocerel ordenenel cual el GameMakerprocesalos eventos.Seríael siguiente orden: EventosBeginStep EventosAlarm EventosKeyboard,Keypress,yKeyrelease EventosMouse EventosStepnormales(ahoratodaslasinstanciasse colocanensusnuevasposiciones) EventosCollision EventosEndStep EventosDraw Los eventosde creación(create),destruir(destroy)yotrossongeneradosenel momento pertinente. Acciones Las acciones indicanloque sucede enunjuegocreadocon Game Makery se colocanen los eventosde losobjetos.Cuandoocurre unode estoseventos(porejemplo,cear),lasacciones asociadasrepercutenenlasinstanciasde losobjetosrealizandoalgúncomportamiento(por ejemplo, moverse).Haymuchasaccionesdisponiblesyesimportante entenderloque hace cada una,aquí describiremoslasque se puedenusarenmodo simple. A la derechade laventanade propiedadesdel objeto,estánagrupadastodaslasaccionesen seis grupos de pestañas.Puedesvercadagrupo de accioneshaciendoclicenlapestaña correspondiente yunabreve descripciónde cadaunamantiendoel ratónsobre ellas. Recuerda: para colocar unaacción enun eventosólotienesque arrastrarladesde suposición
  • 24. (derecha) ala listae acciones(centro).Puedescambiarel ordende estalistaarrastrandosus elementos.Si mantienespulsadalatecla <Alt>mientrasarrastrashacesuna copia y puedes arrastrar ycopiar accionesentre listasde diferentesobjetos.Usael botónderechodel ratónpara borrar, copiaro pegar. Cuandocolocasuna acción suele aparecer uncuadrode diálogodonde le puedesespecificar algunos parámetros,hay dos enconcretobastante habituales. En la parte superiorpuedesindicara que instancia se le va a aplicarla acción,que por defectoes self,lamismainstanciaenlaque estástrabajando.Habitualmente noesnecesariocambiarlo.Enel caso de un eventocolisión,puedesindicarsi se aplicalaacción a la otra instanciainvolucrada, pudiendode estaforma,porejemplo,destruirla.Porúltimo,puedeselegirsi aplicaslaaccióna todaslas instanciasde unobjeto,de estaformapodrías cambiarel color de todaslas pelotasrojas enazules. El segundoparámetroeslacasillaamrcada como Relative (Relativo).Si la marcas,losvaloresque escribasseránrelativosalosactualesenel momentode aplicarlaacción.De estaforma podrías sumarle puntosaun marcador en lugarde repetirsiempre el mismonúmero. Podráseditartodoslosvaloresloscuandoquierashaciendodoble clicsobre laaciónque te interese.. Los seispuntos de accionesendetalle: Accionesde movimiento(move) Movimiento(Move) Movimientofijo(Move Fixed) La instanciadel objetose empiezaamoverenla direcciónyvelocidadindicadas. Para indicarla direcciónhaz clicsobre una de lasflechas.Si marcas varias se elegiráunaal azar (porejemploparaque unenemigoaparezcamoviéndosealaizquierdaoa la derecha).Para detenerel movimientodejamarcadoel botóndel medio. La velocidadestáindicadaenpixelesporpasoypor defectoes8. Procura evitarlosvaloresde negativos. Movimientolibre (Move free) Esta es lasegundaformaenla que puedesasignarunmovimiento. Puedesindicarladirecciónconmás precisión,eligiendounángulode entre 0 y 360 grados,donde
  • 25. 0 significaaladerechay aumentaensentidocontarioalas agujasdel reloj (90º sería haciaarriba). Si quiereslograrunadirecciónaleatoriaescribe random(360) pues,comoverásmásadelante,esta función randomdevuelve unnúmeroal azarmenorque el indicado.Si marcas la casillaRelativo(Relative) el nuevomovimientose sumaráal que actual,por ejemplo,si lainstancia va hacia arribay le añadesun pequeñomovimientoalaizquierda,ladirecciónresultanteseráen diagonal arribaa la izqquierda. Mover hacia (Move Towards) Esta acción ofrece unterceraforma para indicarunmovimiento. Sólotienesque indicaruna posiciónyla velocidadpara que la instanciacominece amoverse con la velocidadseleccionadaalaposicióndada,peronose detendráendicholugar.Porejemplo,si quieresque unabalavuele hacialaposiciónde unanave espacial (llamadanave),puedesusar como posiciónnave.x ynave.y(másadelante aprenderássobre estasvariables). Si marcas lacaillaRelativo(Relative)especificasunaposiciónrelativaalaactual que tiene la instancia,lavelocidadnose tomacomo relativa. Velocidadhorizontal (Speedhorizontal) La velocidadde unainstanciaestáformadaporunaparte horizontal yotra vertical. Con estaacciónpuedesmodificarla velocidadhorizontal,si espositivael movimientovahaciala derechay si esnegativahaciala izquierda.Lavertical permaneceráconstante. Usa laopción Relativopara incrementarlaodisminuirlarespectoala actual. Velocidadvertical (Vertical speed) De formasimilar,con estaacción cambiaslavelocidadvertical.Si indicasunvalorpositivola instanciase moveráhaciaabajo y si esnegativohaciaarriba. Establecer gravedad (Setgravity) Con estaacciónpuedessimularel efectode lagravedadenunobjeto,indicandoladirección(entre 0 y 360 grados) y la velocidad.A cada fotogramadel juegoesavelocidadse incrementaráenla direccióndada.Lo normal esusar un númeropequeño(como0.01) endireccióndescendente (270º). Marcando la casilaRelativo incremetaslavelocidadde gravedadyladirección.Al contrarioque en el mundoreal,losobjetospuedentenerdiferentesdireccionesde gravedad.
  • 26. Rebote horizontal (Reverse horizontal) Con estaacciónpuedesinvertirel movimientohorizontalde lainstancia.Porejemplo,cuandoun objetocolisionaconuna paredvertical. Rebote vertical (Reverse vertical) Con estaacciónpuedesinvertirel movimientovertical de lainstancia.Porejemplo,cuandoun objetocolisionaconuna paredhorizontal. Establecer la fricción(Setfriction) La friccióndisminuye lavelocidadde lainstanciayaquíespecificasel valorde dichareducción.En cada fotogramase restaráde lavelocidadactual hastallegara 0. Lo normal es usarun númeropequeño(como0.01) porque si fueramuy altola instanciase pararía muyrápido. Llevar a (Jump) Llevar a una posición(Jump to Position) Usando estaacción puedescolocarlainstanciaenlaposiciónque quieras,sólotienesque indicar lascoordenadas x e y para que la instanciaaparezcaallícon su puntode referenciacomoorigen.Si marcas la casillaRelativo,laposiciónse modificarespectoala actual. Se suele usareninstanciasque se muevencontinuamentemencadafotogramaincremetemosla posiciónunpoco. Llevar al origen (Jumpto Start) Esta acción colocala instanciaa laposicióndonde fue creadaensumomento. Llevar a posiciónaleatoria (Jumpto Random) Esta acción mueve lainstanciaauna posiciónaleatoriaenlaroom, donde nose solape conalgún objetosólido. Puedesindicarque ajuste (snap) se usará.Convalorespositivoslascoordenadasseránelegidas con múltiplosenterosde esosnúmeros.Puedeserútil paramantenerlaalineaciónconlasceldas de la cuadrícula de tu juego(si lahay),la velocidadhorizontal y vertical se puedenespecificarpor separado. Alineara la cuadrícula (Alignto grid) Con estaacciónpuedesalinearlaposiciónde unainstanciaala cuadrículainicandosusvalores horizontal yvertical,estoes,el tamañode lasceldas.Puede serútil paraasegurarte que las
  • 27. instanciasse mantienenenlacuadrícula. Teleportación(Wrap screen) Con estaacciónpuedeshacerque cuandouna instanciasalgade la room porun ladoaparezaca por el contrario(teleportación).Normalmentese usaenel eventoExterior(Outside event). Para que funcione,lainstanciadel objetodebe tenerunavelocidadporque ladirecciónenlaque reaparece se calculacon la direcciónpreviaque llevaba.Puedesseleccionarsi lainstanciase teleportahorizontalmente,verticalmenteoenambasdireccione. Mover hasta contactar (Move to Contact) Con estaacciónmueveslainstanciaenundireccióndadahasta que toque a otro objeto.Si enla posiciónactual de la instanciayahay colisión,nose moverá,encasocontrario,lainstanciase para justoantesde que ocurra lacolisión. Puedesespecificarladirecciónylamáximadistanciaenlaque se moverá.Porejemplo,cuando estácayendopuedesmoverlaunadistanciamáximahastaque encuentre unobjeto.Puedes indicartambiénsi se tienenencuentatodoslosobjetososólolossólido. Normalmente estaacciónse pone enuneventode colisiónparaasegurarte que lainstanciadeja de moverse cuandochoca. Rebote (Bounce) Cuandocolocasesta acciónen el eventocolisiónde algún objeto,lainstanciarebotacomoloharía enel mundoreal.Si el parámetro presicisión(precise) loconfigurascomo falso(false) sólo funcionarabienconparedesverticalesyhorizontales.Si loconfigurasa verdadero (true) funcionaráenparedesinclinadasocurvas,peroserá máslento. Puedesindicartambiénsi el reboteserácontraobjetossólidoocontodos.El rebote nosiempre es del todoprecisoporque dependede muchosfactores,peroenlamayoríade situacioneseslo suficientementebueno. Accionesprincipales,grupo 1 (main1) Objetos(Objects) Crear instancia (Create instance) Con estaacciónpuedescrearuna instanciade un objeto.Debesindicarel objetoacreary la
  • 28. posiciónparala nuevainstancia.Si marcasla casilla Relative,laposiciónesrelativaala posiciónde la instanciaactual. La creaciónde instanciasdurante el juegoesmuyútil,porejemplounanave puede crearbalas, una bombauna explosión,etc.Enmuchosjuegostendrásunobjetode control que cadacierto tiempocrearáenemigosuotrosobjetos.El eventode creaciónse ejecutalacrearse lanueva instancia. Crear instancia en movimiento(Create moving) Es la mismaacciónque la anteriorperocon doscampos adicionales.Puedesespecificar la velocidady direcciónde la instanciaque se creará.Si usasla opciónRelative sóloafectaráala posiciónyno a la velocidadni dirección. Por ejemplo,parahacerque una bala se muevaenla mismadirecciónque el personaje que lacrea usa un pequeñotruco:activalaopción Relative e introduce laposición0,0. En el campo de dirección,introduce lapalabra direction,que esladirecciónenlaque se mueve el personajeque disparala bala. Crear instancia de un objetoaleatorio (Create Random) Te permite crearlainstanciade 1 objetocualquierade losde ungrupo de hasta 4 que hayas elegido.Debesindicarlos4 objetosposiblesque se podráncreary laposicióndonde se situarála nuevainstancia. Si usas Relative,laposiciónserárelativaala instanciaque ejecute laacción.Si noquieresusar4 objetos,puedesseleccionarNoObjectpara los demáscampos.Esta acciónse puede usarpara crear un enemigode tipoaleatorioenunaposicióndeterminada. Cambiar la instancia (Change instance) Con estaacciónpuedescambiarla instanciaactual por otro objeto.Porejemplo,puedescambiar una instanciade unabombaen una explosión.Todoslosparámetros,comoel movimientoolos valoresde variables,se mantendrániguales.Puedesindicarsi llevaracabo o no el eventode destrucciónparael objetoactual y el eventode creaciónparael nuevo. Destruir la instancia (Destroy instance) Con estaaccióndestruyeslainstanciaactual y se ejecutasueventodestrucción. Destruir instancias alrededor(Destroyat Position) Con estaacciónpuedesdestruirtodaslasinstanciascuyacaja límite contieneunaposicióndada. Esto esútil por ejemplocuandoempleaslaexplosiónde unabombaque destruyesobjetoasu
  • 29. alrededor.Cuandomarcaslacasilla Relative,laposiciónesrelativaala posiciónde lainstancia actual. Gráficos(Sprites) Cambiar el sprite (Change sprite) Usa estaacciónpara cambiarel sprite de la instancia,indicandoel nuevospriteolasubimagen que se debe mostrar.Habitualmente usarás0para esto(laprimerasubimagen) salvoque quieras visulizarotra.Usa -1 si no quierescambiarlasubimagenactual. Por último,tambiénpuedescambiarlavelocidadde animaciónde lassubimágenes.Si sóloquieres veruna pon 0. Si es mayorque una subimagense omitiráysi esmenorque 1 subimagense mostrará variasveces.Nousesvelocidadesnegativas. Cambiarspritesesunacaracterística importante.Porejemplo,amenudoquerráscambiarel sprite de un personaje de acuerdoala direcciónala que se dirige.Lopuedeslograrhaciendodiferentes spritesparacada unade lascuatro direccionesyenloseventosdel tecladoparalasteclasdel cursor establecesladirecciónde movimientoyel sprite. Transformar el sprite (PRO) Usa estaacciónpara cambiarel tamaño yorientacióndel sprite de lainstancia.Usalosfactoresde escalapara hacer el sprite másgrande o pequeño.El ángulo(angle) indicalaorientaciónen sentidoanti horariodel sprite. Por ejemplo,parahacerque el sprite se oriente enladireccióndel movimientousael valordirection,que seríamuyútil para un coche.Tambiénpuedesindicarsi el sprite se reflejará horizontalmente y/ovolteadoverticalment. Esta acción sólo estádisponibleen la versión PRO. Color del sprite (PRO) Normalmente el spritese dibujacomose hacreado.Usando estaacción puedescambiarle el color combinándoloconlos coloresque yatenía.Si quieresdibujarunsprite envarioscoloresdebes definirloenblancoynegroy usar un colorenesta acciónpara indicarsu nuevaapariencia. Tambiénpuedesindicaruna transparencia (alpha):0 significatotalmentetransparentey1 totalmente opaco.Conunvalorintermedioconseguirásque se puedaverel fondoatravésdel sprite.Esmuy útil para explosiones. Esta acción sólo estádisponibleen la versión PRO.
  • 30. Sonidos(Sounds) Reproducir un sonido(Play sound) Con estaacción reproducesunode losrecursosde sonidoque añadiste al juego.Puedesindicarsi suenasólounavez (pordefecto) ode formacontinua. Se puedenreproducirvariosarchivoswave al mismotiempo,perosólounmidi alavez.Por lo tanto,si se iniciael sonidode unmidi,el actual se detiene. Detenerun sonido (Stopsound) Esta acción detiene el sonidoindicado.Si hayvariasinstanciasdel sonidoreproduciéndose,todas son detenidas. Comprobar un sonido(Checksound) Si el sonidoindicadoestásonandolaacciónsiguiente se ejecutaysino,laacciónsiguiente se ignora.PuedesseleccionarNotpara que actúe al revés(esdecir,si el sonidonoestá,laacción se ejecuta). Por ejemplo,puedescomprobarsi estásonandolamúsicade fondoy si no, hacesque empiece a sonar otra canción.Esta accióndevuelve true cuandoel sonidosuenaporlosaltavoces.Cuando usas laacción de hacer sonarun sonidotarda unpoco hasta que el sonidollegaalosaltavoces,así que estaacción devolverá falsedurante esepequeñoespaciode tiempo.Cuandodetienesun sonido,tampocose para instantáneamente asíque laaccióntardará unpoco endevolver false. Salas(Rooms) Sala anterior(PreviousRoom) Ir a la sala anteriorindicandoel tipode transiciónentrelassalas, pruebatodaslasque haypara vercuál te gustamás. Si estásenla primerasala,se produce un error. Siguiente sala (Nextroom) Ir a la siguiente salaindicandolatransición.Si estásenlaúltimasale unerror. Reiniciar la sala (Restar Room) Se reinicialasalaactual. Puedesindicarel efectode transición. Ir a otra sala (Differentroom) Con estaacciónvas a lasala que quierasindicandosunombre ylatransición. Comprobar anterior(CheckPrevious) Esta acción verificasi existelasalaanteriory,encaso afirmativo,se ejecutalasiguienteacción. Normalmente necesitashacerestacomprobacionantesde moverte alasala anterior.
  • 31. Comprobar siguiente (CheckNext) Esta acción verificasi existelasiguiente salay,encasoafirmativo,se ejecutalasiguienteacción. Normalmente necesitashacerestacomprobacionantesde moverte alasiguiente sala. Accionesprincipales,grupo 2 (main2) Tiempo (Timing) Establecer alarma (Set alarm) Sirve para configurarunode los12 relojesde alarma parala instancia,puedesindicarel número de fotogramas(steps) ylaalarma. La instanciarecibiráel correspondiente eventoalarmadespués del númerode fotogramasindicado.Tambiénpuedesincrementarodisminuirel valormarcando la casillaRelativo(Relative).Si le dasunvalormenoro igual a 0 la desactivas. Dormir (Sleep) Puedescongelarlaescenadurante el tiempo(enmilisegundos)que indiques.Se sueleusaral principiooal final de un nivel ocuandole das algúnmensaje al jugador.También puedesindicarsi la pantalladebe serdibujadaprimeroparareflejarlasiruaciónmásreciente. Información(Info) Mostrar mensaje (DisplayMessage) Con estaacciónmuestrasun mensaje enunaventanade diálogo,sólotienesque escribirel mensajes.Si usasel símbolo#en el textoseráinterpretadocomouncarácter de nuevalínea(para obtenerlopon #).Si empiezasconunacomillaodoblescomillasse interpretarácomo una expresión. Mostrar información(Show info) Con estaacciónmostrarás la ventanade informaciónel juego. Juego (Game) Reiniciar juego(Restart Game) Con estaacciónreiniciarásel juegodesde el principio. Finalizar el juego(End Game) Con estaacciónterminael juego.
  • 32. Guardar el juego(Save Game) Guardarás el estadoactual de lapartida enun archivoque posteriormente podráscargarcon la acción Cargar Juego.El archivose crea enla carpetaraíz del juego.Tenencuentaque que sólose guardan losaspectosbásicosde lapartida,opcionesmásavanzadascomoel sonidoque se está reproduciendo,loscontenidosde estructurasde datos,partículas,etc...nose guardarán. Cargar un juego (Load Game) Carga el estadode la partidadesde unarchivo,aquí indicasel nombre del archivo.Asegúrateque el juegoguardadoesel mismo y fue creadoco la mismaversiónde Game Maker,sinopuede dar errores.Para serprecisos,el juegose cargaal final de este paso,porlo que algunasacciones despuésde estaaúnsonejecutadasenel juegoactual ¡noel cargado! Accionesde control Hay accionescon lasque puedescontrolarel funcionamientode otras.Muchasde estasacciones hacenpreguntas,porejemplocuandounaposiciónestávacía.Si la respuestaessi (true) se ejecuta la siguienteacción,encasocontrariose omite.Si quieresejecutaruomitirvariasaccionesenbase a una respuestapuedesponerlasenun bloque (block) poniendoaccionesparacomenzary finalizarel bloqueantesydespuésde ellas.Tambiénhayunaparte sino (else) que se ejecuta cuandola respuestaesno.Normalmente unapreguntase muestraasí: Aquí se preguntasi la instanciaestáenuna posiciónlibre de colisión.Si esasíse empiezaamover
  • 33. enuna direccióndada,si no,se llevaala posiciónque indiques.Fíjate que losbloquesestán sangrados(desplazados aladerecha),que daunamejorvisiónde lasacciones,sobre todocuando hay bloquesdentrode otros.Tambiénesmásfácil detectarsi te hasolvidadounaacciónde aperturao cierre. Para todas laspreguntashayun campo etiquetadocomo NO,si lamarcas, se invierte el resultado de la pregunta.Estoes,si el resultadoesverdaderose convierte enfalsoyal revés.Estote permite realizarciertasaccionescuandolapreguntanoesverdadera. En muchas de laspreguntaspuedesindicarsi se vana aplicar a todaslas instanciasde unobjeto. En este caso el resultadoesverdadero(true)sólosi esverdaderoparatodaslasinstanciasdel objeto.Porejemplo,puedescomprobarsi paratodas lasbolasla posiciónunpocoa su derecha estálibre de colisión. Este es el listadode accionesdisponibles.Tienenformasycoloresdiferentesal restopara reconocerlasmásrfácilmente. Para todas lasacciones verdadero=true y falso=false Preguntas(Questions) Verificarvacío (CheckEmpty) Devuelve verdaderois lainstanciaactual,situadaenlaposiciónindicada,nogeneraunacolisión con un objeto.Puedesindicarlaposicióncomoabsolutaorelativaytambiénsi sólose tienenen cuentalosobjetosólidosotodos. Normalmente se usaparaverificarsi lainstanciase puede moverauna posicióndeterminada. Verificarcolisión(CheckCollision) Esta acción hace lo contrarioque la anterior.Devuelve verdaderosi hayunacolisióncuandola instanciaactual se situe enuna posicióndada. Verificarobjeto (Checkobject) Devuelve verdaderosi lainstanciasituadaenunaposicióndadase encuentraconuna instanciadel objetoindicado. Comprobar el númerode instancias (TestInstance Count) Aquí especificasunobjetoyunnúmero.Si el númeroactual de instanciasdel objetoesigual al númeroque escribasdevuelveverdadero,sino,devuelve falso.Tambiénpuedesindicarque la verificaciónse hagacuandoel valoresmenoro mayor que el valordado.
  • 34. Normalmente se usaparacomprobarsi todaslas instanciasde un tipodeterminadohan desaparecido,que suele serel momentoparaterminarunnivel oel juego. Comprobar probabilidad(TestChance) Puedesindicarel númerode carasde un dadoy luegotirarlo,si latirada coincide el resultadoes verdaderoyse realizalasiguiente acción. Se puede usarpara ponerunelementode formaaleatoriaentujuego.Porejemplopuedes generarun tipoparticularde bombao cambiar ladirección.Cuantosmásnúmerostengael dado, menorserála probabilidadde que salga. Puedes emplearnúmerosreales,si ponesel númerode carasen1.5 la próximaacciónse realizará 2 o 3 veces,usarunnúmeromenorde 1 no tiene ningúnefecto. Verificarpregunta (CheckQuestion) Escribesunapreguntay al jugadorse le mostrará un diálogoconlosbotonesSi(Yes) yNo(No).El resultadoesverdaderosi el jugadorrespondeSi. Comprobar expresión(TestExpression) Es la acción de consultamáshabitual.Si laexpresiónse evalúacomoverdadera,estoes,un númeromáyoro igual que 0.5, se realizalasiguiente acción.Másinformaciónsobre expresiones. Verificarratón (CheckMouse) Devuelve verdaderosi se pulsael botónde ratónindicado,unuso habitual esenel eventopaso (stepevent).Puedesverificarsi unbotónde ratón espulsadoy, encaso de sercierto,por ejemplo moverloaesa posición.Paraellousaríaslaacción Llevara una posición(Jumptoa Position) con losvalores mouse_x ymouse_y. Verificarcuadrícula (Check Grid) Devuelve verdaderosi laposiciónde lainstanciacoincide conlacuadrícula,especificasparaelloel espaciadohorizontal yvertical.Esmuyútil cuandociertasacciones,comohacerun giro,sóloestán permitidascuandolainstanciaestáenunaposiciónde lacuadrícula. Otras (Others) Comienzode bloque (Start Block) Indicael comienzode unbloque de acciones. Fin de bloque (End Block) Indicael final de unbloque de acciones.
  • 35. Sino (Else) Cuandoel resultadode laconsultaesfalsose realizanlasaccionesque siguenaestaacción. Repetir(Repeat) Esta acción se usa para repetirlasiguiente acciónobloque de accionesel númerode vecesque indiques. Salir del evento(Exit Event) Cuandoaparece estaacción no se ejecutaningunamásenel evento,normalmentese usadespués de una pregunta.Porejemplo,cuandounaposiciónestálibrenose necesitahacernadamás,por loque salimosdel evento.Eneste ejemplosólose ejecutanlasaccionesposteriorescuandohay una colisión. Si deseasunmayor control sobre loque sucede enel juegopuedesusarel lenguajede programaciónque se explicaenlasegundaparte del manual,te damás flexibilidadque usarlas acciones. Hay accionespara definirycomprobarvariables,sonmássencillasde usarque el códigoy muy útilesparatu juego.Lasaccionessiguientesse ocupande esto: Código(Code) Ejecutar código (Execute Code) Cuandose añade esta acción,se muestraun cuadro de diálogodonde puedesescribiruntrozode códigoque será ejecutado.Puede contenerunallamadaauna funciónoalgomás complicado. Usa estaacciónsólopara trozos de códigopequeños,si sonmáslargoste recomiendousarscripts como se describe enestaseccióndel manual. Comentario (Comment) Usa estaacciónpara añadiruna líneade comentarioa lalistade acciones,que se mostrará en letracursiva.Añadircomentarioste ayudaa recordarlo que hace el evento. La acciónensi no hace nada, perorecuerdaque aúnestásen una acción,así que,si la colocas despuésde unaaccióncondicional se ejecutasi esverdadero(aunque nohaganada). Variables(Variables) Establecer variable (Setvariable) Hay muchas variablesinternasenel juegoque puedescambiarconestaacción.Tambiénpuedes
  • 36. crear tus propiasvariablesyasignarlesvaloresindicandoel nombreyel nuevovalor. Cuandomarcas la casillaRelativo,el valorse sumaal que actualmente tengalavariable.Fíjate que estosólose puede hacercuandotenga ya unvalor asignado.Sigue leyendo parasaber más sobre lasvariables. Comprobar variable (TestVariable) Con estaacciónpuedescomprobarsi el valorde unavariable esigual a unnúmeroenparticular,si esasí devuelve verdaderoysinofalso.Tambiénpuedesindicarsi lacomprobaciónse hace para valoresmenoresque omayoresque el dado.Tambiénse puede usarparacomparar dos expresiones. Dibujar variable (Draw variable) Con estaacciónpuedesdibujarel valorde unavariable enuncualquierpuntode lapantalla.Sólo se puede usaren el eventodibujar(Draw Event) de unobjeto. Accionesde puntuación(score) En la mayoría de juegosel jugadortendrápuntuación,variasvidasounnivel de energía.Las siguientesaccionessirvenparatratar estoselementos. Puntuación(Score) Establecer la puntuación(Set score) La puntuaciónse suele mostrarenel títulode laventanade juego.Conestaacción puedes cambiarla,sólotienesque indicaraquíel nuevovalor.Paraañadir más puntosa lapuntuación actual marca la casillaRelativo(Relative). Comprobar puntuación(Test Score) Con estaacciónde consultapuedescomprobarsi lapuntuaciónhaalcanzadoun determinado valor.Indicael númeroysi la puntuacióndebe serigual,menorque omayorque ese número (equal to,smallerthan,largerthan). Dibujar puntuación (Draw Score) Dibujasel valorde la puntuaciónenlapantalla,escribe laposiciónyel títuloque se mostrará antesde la puntuaciónconel tipode fuente actual.Sólose puede usarenel eventodraw de algún objeto.
  • 37. Mostrar puntuacionesmás altas (ShowHighscore) Cada juegoguardalas 10 puntuacionesmásaltasque puedesmostrarconestaacción.Si laactual estáentre esaspuntuacionesse introduce enlalistayel jugadorescribirásunombre.Puedes indicarla imagende fondoque se usará,si la ventanatendráborde o no,el color para la nuevay lasotras entradasy la tipografía. Borrar puntuacionesmás altas (ClearHighscores) Esta acción vacía la tablade records. Vidas(Lives) Establecer el númerode vidas (SetLives) Con estaacciónpuedescambiarel númerode vidasque quedan.Al iniciode juegole dasunvalor (porejemplo,3) ylo aumentasodisminuyesdependiendode loque suceda.Noolvidesmarcarla opcionRelativo(Relative) si deseassumarorestarvidasa las que hay enese momento.Cuandose llegaa 0 o menosse generaun evento"Nomásvidas"(Nomore lives). Comprobar vidas(Test Lives) Con estaacciónde consultapuedescomprobarsi el númerode vidashaalcanzadoun determinadovalor.Indicael númeroy si el númerode vidasdebe serigual,menorque omayor que ese número(equal to,smallerthan,largerthan). Dibujar vidas (Draw Lives) Dibujasel númerode vidasenlapantalla,escribe laposiciónyel títuloque se mostraráantesdel númerode vidascon el tipode fuente actual.Sólose puede usarenel eventodraw de algún objeto. Dibujar imágenesde vida (Draw Life Images) En lugar de mostrar el númerode vidasconuna cifra esmejorusar pequeñasimágenes,que eslo que hace estaacción.Indicala posiciónylaimagenque quieresyenese lugarapareceránel númeroindicadode esasimágenes.Sólose puede usarenel eventodraw de algúnobjeto. Nivel de energía(Health) Establecer la energía(SetHealth) Con estaacciónpuedescambiarel invel de energíade 0 (vacío) a 100 (completo) indicandoel nuevovalor.Algohabitual esdisminuirel nivelde energía,para ellodeberásmarcarla opción Relativo(Relative).Cuandose llegaaunnúmeroigual o menorque 0 se generaunevento"sin energía"(Outof health). Comprobar energía(SetHealth)
  • 38. Con estaacciónde consultapuedescomprobarsi el nivel de energíahallegadoaun determinado nivel.Indicael valorysi la energíadebe serigual,menorque omayorque ese número(equal to, smallerthan,largerthan). Dibujar energía(Draw health) Dibujasel nivel de energíaenformade barra,cuando estáen 100 se ve completaysi está en0 se ve vacía. Puedesindicarlaposición,el tamaño,el colorde primerplanoyel colorde fondo. Puntuación enel títulode la ventana (Score caption) Normalmente enel títulode laventanade juegose muestrael nombre de laroomy la puntuación.Conestaacciónpuedesindicarsi se muestrao nola puntuación,lasvidasy/oel nivel de energíay el título para cada uno de ellos. Accionesde dibujo(draw) Normalmente encadafotogramadel juegoypara cada instancia,se dibujasusprite enlasala. Esto puedescambiarloponiendoaccionesenel eventodibujar(draw event).Sólose ejecutarán cuandoel objetoesvisible. Estas sonlas accionesque estándisponibles,sólotendránsentidoenloseventosde dibujo,si las ponesenotroseventosseránignoradas. Las queestán marcadascon un * sólo están disponiblesen la versión PRO. Dibujando(Drawing) Dibujar gráfico (Draw sprite) Indicasel sprite,laposición(si esabsolutaorelativaalaposiciónactual de la instancia) yla subimagendel sprite (senumerande 0en adelante).Si quieresdibujarlasubimagenactual,usa-1. Dibujar fondo (Draw background) Indicaslaimagende fondo,laposición(absolutaorelativa) ysi laimagendebe cubrirtodalasala o no. Dibujar texto (Draw text) Especificasel textoylaposición.Unsímbolo# es interpretadocomo saltode línea(Usa# para escribirel símbolo#),de estaforma puedescreartextosde variaslíneas.
  • 39. Si el textocomienzaconuna comillasimple odoble esinterpretadocomounaexpresión,por ejemplousa: 'X: ' + string(x) para mostrar el valorde la coordenadax de lainstancia.La variable x almacenalacoordenadax actual y lafunciónstring() convierte ese númeroenunacadenade texto.+ une losdos textos. Dibuja texto escalado* (Draw Scaled Text)* Similarala anterior,peroaquí puedesindicarunfactorde escaladohorizontal yvertical para cambiarel tamaño del textoyun ángulopara rotarlo. Dibujar rectángulo (Draw rectangle) Puedesespecificarlascoordenadasde dosesquinasopuestasde unrectánguloytambiénsi la posiciónesabsolutaorelativarespectoalainstanciaactual. Degradado horizontal*(Horizontal Gradient)* Tambiéndibujauncuadradoperocon un rellenodegradadoque cambiade izquierdaaderecha, especificaslosdoscoloresausar. Degradado vertical*(Vertical gradient)* Esta vezloscoloresrellenanel rectángulode arribahaciaabajo. Dibujar elipse (Draw ellipse) Dibujaunaelipse indicandolascoordenadasde dosesquinasopuestasdel rectánguloque la contiene ysi la posiciónesabsolutaorelativaala instanciaactual. Elipse degradada* (GradientEllipse)* Lo mismoque la anterior,peroenestaindicasdoscoloresque larellenandesdeel centrohaciael borde. Dibujar línea(Draw line) Especificaslascoordenadasde losdosextremosde lalínea, yaseaabsolutao relativaala posición actual de la instancia. Dibujar flecha (Draw Arrow) Dibujaunaflecha.Especificaslascoordenadasde losextremosde lalíneayel tamañode la punta de flecha.
  • 40. Preferencias (Settings) Establecer color (SetColor) Te permite establecerel colora usar para dibujarformas,líneasytexto.Noinfluyeenlosspriteso losfondos. Poner enpantalla completa (SetFull Screen) Con estaacciónpuedescambiarentre losmodosventanaypantallacompletaya la inversa. Puedesindicarsi se debe cambiarel modoosi ir a modoventano pantallacompleta. Otras (Others) Captura de pantalla* (Take Snapshot)* Con estaacciónpuedeshaceruna captura de pantalladel juegoyguardarlaenun archivode imagen.png. Crear efecto* (Create Effect)* Con estaacciónpuedescreartodo tipode efectosde unamanerasencilla.Especificasel tipode efecto,porejemplounaexplosiónde humo,suposición,tamañoycoloro si deberíamostrarse por debajooencimadel objeto. El restofuncionade formaautomática.Para lalluviaola nieve laposiciónesirrelevante porque siempre cae haciaabajodesde laparte superiorde lapantalla.Paraconseguirunalluviacontinua deberíascrearlaencada fotograma(step). Observaque debajo(below) significaunaprofundidadde 100000 y porencima(above) unade - 100000. Usando expresionesyvariables En muchas accionesnecesitasintroducirvaloresparalosparámetros,que puedenserunnúmroo una fórmula,porejemplo32+12. Perotambiénpuedesescribirexpresionesmáscomplicadas.Por ejemplo, si quieresduplicarlavelocidadhorizontal,puedesestablecerlacon2*hspeed, donde hspeed eslavariable que indicalaactual velocidadhorizontalde lainstancia.Hay muchasvariables que puedesusar,algunasde lasmás importantesson: x la coordenadax de la instancia. y la coordenaday de la instancia. hspeedlavelocidadhorizontalenpixelsporfotograma.
  • 41. vspeedlavelocidadvertical enpixelesporfotograma. directionla direcciónactual de movimientoengrado(0-360). speedlavelocidadactual enestadirecciónque se muestracuandoel objetoesvisible (1) o invisible (0). image_index estavariable indicaque subimagense muestraenel sprite actual.Si lo cambiasy estableceslavelocidada0 puedesmostrarunasubimagendeterminada. image_speedestavariable indicalavelocidadconlaque se muestranlassubimágenes, por defecto1.Si loaumentaspor encimade 1 se saltanalgunassubimágenesparahacerla animaciónmásrápida,si lo ponesmenorque 1 la animaciónse hace más lentapor repeticiónde subimágenes. score el valor actual de la puntuación. livesel númeroactual de vidas. healthel nivel de energía(0-100). mouse_xlas posiciónx del ratón. mouse_y lasposiciónydel ratón. Puedes cambiarlamayoría de estasvariablesusandolaacciónestablecervariable(setvariable) y tambiénpuedesdefinirlastuyaspropiasdándole unvalor(nouseslaopciónRelativoporqueaún no existen).Despuéspuedesusaresasvariablesenexpresiones. Las variablesque creesson localespara lainstanciaactual,estoes,cada objetotiene supropia copiade ellas.Paracrear unavariable global,ponla palabraglobal yun puntodespuésde ella. Tambiénte puedesreferiralos valores de lasvariablesde otrosobjetosponiendosunombre seguidode unpunto.Porejemplo,si quieresmoverunabolaal lugar donde estáunmoneda puedesestablecerlaposicióna(moneda.x, moneda.y).Enel casode un eventde colisiónpuedes referirte alacoordenadax de otro objetocomo otro.x.En expresionescondicionalespuedesusar comparacionescomo< (menorque),>,etc. En tus expresionestambiénpuedesusarfunciones.Porejemplo,lafunciónrandom(10) devuelve un númeroenteromenorde 10, que te podría valerpara establecerlavelocidadde unobjetode formaaleatoria.Existenmuchasmásfuncionesque serándescritas másadelante eneste manual. Creando Rooms
  • 42. Ahoraque ya tienesobjetosconsuinteractividadenformade eventosyacciones,eshorade crear lasrooms donde se desarrollaráel juegoensi.Al menosnecesitascrearunapara situartodoslos elementos.Cuandoiniciamosel juegose mostrarálaprimeraroomy las instanciasde objetoscon eventoscrearcobrarán vida. Cuandocreas una roomtienesmuchasopciones,puedesañadirobjetos,fondos,tilesydefinir vistaso ciertaspropiedades,peroeneste capítulosóloveremoslasopcionesbásicas:añadir instanciasde objetosyconfigurarlosfondos. Para crear una room,elige Crearsala (Create Room) enel menú Recursos(Resources),se mostrará la siguienteventana: En la parte superiorhayuna barra de herramientasdondepuedesindicarel tamañode lasceldas de la cuadrícula que se usa para alinearobjetos.Tambiénpuedesdecidirsi se muestranlaslíneas de cuadrícula, losfondos,etc...algunasvecesesútil ocultarciertoselementos. Cuandoañadesinstanciasde objetossiempre se mostraránconindependenciade laconfiguración de vistas.Tambiénhaybotonesparaborrar todas lasinstanciasde laroom o para moverlas, usandovaloresnegativosharáque se desplacenhaciaarribaoa laizquierda.Esútil cuando cuandodecidesagrandarla roomo para situarinstanciasfuera.Porúltimoestánlos
  • 43. botones Deshacer(Undo) para dehacerlosúltimoscambiosyel botón OK para guardar los cambios.Si no losquieresguardar,hazclicen lacruz de la esquinasuperiorderecha. En la parte izquierdade laventanahaytrespestañas, objetos(objects),preferencias(settings) y fondos(backgrounds),que explicaremosacontinuación. Objetos.Añadiendoinstancias. A la derechade laventanapuedesverlaroomvacía y con fondogris.Para empezaraañadir instanciasde objetosseleccionalapestaña Objetos(Objects): Ahoraseleccionael objetoque quiereshaciendoclicenel iconode menuo enel área de imagen (engris) para que aparezcauna listacon losobjetosdisponibles.Fíjate que aparece unacruzenla imagencargada que indicacomose alinearánlasinstanciasconlacuadrícula. Pasa al área grande de laderecha,donde se visualizalaroom, yhaz cliccon el botónizquierdodel ratón para colocar una instancia del objeto seleccionado,puedesborrarlahaciendoclicconel botónderecho.Pordefecto,lasinstanciasse alineanalacuadrícula al colocarlas,puedesevitarlo manteniendopulsadalatecla<Alt>. Si mantienespulsadoel botónmientrasmuevesel ratónpuedes moverlainstanciashastasu nuevaposición.Si ademásmantienespulsadalatecla <Mayúsculas>añadirásvariasconsecutivas.
  • 44. Al colocar una instanciasobre otra,laprimeradesaparece.Si quieresevitarlodeshabilitala opción Borrar subyacente (Delete underlying)que aparece abajo. Si quieres cambiar su posiciónpulsalatecla<Ctrl> yclic con el botónizquierdosobre lainstancia. No lassueltesymuévelaconel ratóna su nuevoemplazamiento.Usa <Alt>para mayor precisióno no usar lacuadrícula. Si mantienespulsado <Ctrl>yel botónderechosobre unainstanciaaparece unsubmenú.Conél podrás borrar (Delete),especificarunposiciónmás precisa(Change position...), ajustarlaa la cuadrícula (Snapto Grid) o moverla al frente(Bringtofront) oal hacia atrás (Sendto back). Preferencias.Configurandolaroom. A cada room le puedesespecificarunasopcionesdiferentes.Seleccionala pestañaPreferencias(Settings): Nombre (Name).Elige unoque describabienel lugardondeestáel jugador. Título para la sala (Captionforde room).Se muestraenla ventanaal jugar. Ancho x Alto (WidhtXHeight).Medidasenpixelesde laroom. Velocidad(Speed).Númerode fotogramasporsegundo,amayorvelocidadel movimientoesmás suave,peronecesitarásunordenadormáspotente paraque se ejecute bien. Fondos.Configurandoel fondo.
  • 45. En la pestañaFondos(Backgrounds) puedesestablecerlosfondosausar: Arribapuedesverel colorde fondo,hazclic enél para cambiarlo,sóloesútil si no usasuna imagende fondopara cubrirtoda la room.Si vas a usar una imagendesmarcalaopción Dibujar color de fondo(Draw backgroundcolor). Lo siguiente que vesesunalistacon8 fondosque puedesdefinir,aunquelamayoríade las veces sólonecesitarásunoodos.Para habilitarunfondoseleccionaunode lalistaymarca la casillaVisible cuandocomienzala sala (Visiblewhenroomstarts) osinonolo verás.El nombre se pondráen negritacuandoel fondoesté definido. Ahoraescoge del menúunade las imágenesque previamente hascargadoy ajustalasopciones que quieras. Repetición.Puedesindicarsi se repetiráhorizontay/overticalmente (Tile Hor./Tile Ver.). Posición.Variandolosvaloresde Xe Y. Influiráenel tiling. Estirar (Stretch).Si estámarcadoel fondoocupatoda la pantalla.Si noes de su mismotamaño puede quedardistorsionada. Velocidad.Puedeshacerque se muevadándole unavelocidadhorizontal y/overtical (Hor.Speed/ Vert.Speed).Nose recomiendasi usaslaopciónEstirar. Imagen de primer plano (Foregroundimage).Si laactivasel fondose colocaráenprimerplanoy
  • 46. se mostrará por delante de todo.Lógicamente unaimagende este tipodeberserparcialmente transparente paraque tega algunautilidad. Distribuir tu juego Con lainformaciónde loscapítulosanterioresyapuedescreartuspropiosjuegosyal acabarlos querrásque otros lojueguen.Puedespasarlesel .gmkque creaste paradejarlesjugar,pero normalmente esonoesloquieresporque te podríanmodificarel juegoynecesitarían instalarGameMaker. Por eso,deberíascrearun ejecutable que funcionesinnecesidadde GameMaker: Crear unejecutable esmuyfácil.Enel menú Archivo(File) seleccionael comando Crear ejecutable (Create Executable),ponle unnombre al archivo,pulsa OKy ya tieneslistoun archivo.exe que le puedespasaraquienquieras.Puedescambiarel iconodel ejecutable enlas OpcionesGeneralesdel juego (Global Game Settings). Puedesdistribuirlibremente estearchivoporcualquiermediooinclusovenderlo,esto últimoasumiendoque todoslosrecursos(imágenes,sonido,fondos...)sontuyosopueden serusado enproyectoscomerciales,lee losacuerdosde licenciade cadaunode ellos. Suele serútil comprimirel ejecutable enun.zipjuntoconunarchivo de información leeme.txtoinclusocrearuninstaladorparatu juego.Hay recursosgratuitosenInternet para realizarestastareas. Si quieresque muchaspersonaspruebentujuego, tambiénte recomendamossubirlo al sitioweb de YOYO GAMES,enla sección Compartir (Share) opublicarlocomotemaennuestracomunidad de taringa APRENDIENDO GAME MAKER FACILITO subiendoel game a MEDIAFIRE.