Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Manualoficial PDF
Manualoficial PDF
es y Marta Villaescusa
1. Instalacin
En esta seccin conseguiremos configurar Construct 2 (C2 en adelante) para hacerlo funcionar.
Nos centraremos en la descarga y actualizacin de C2, despus en el proceso de instalacin,
como usar t licencia si la has comprado, y un recordatorio de los requisitos del sistema.
Actualizaciones Beta
Los lanzamientos Beta de C2 no estn muy preparados para el uso continuado, pero son lanzados
ms pronto y con ms regularidad que las actualizaciones estables. Si quieres ayudar a probar
estos lanzamientos Beta, bajo el riesgo de posibles virus o cuelgues, puedes encontrarlos en la
lista de lanzamientos (releases list ) o configurar C2 para que te avise de las actualizaciones Beta en
el dilogo de preferencias (Preferences dialog)
Instalacin Porttil
Construct 2 puede usarse como software porttil. En otras palabras, puedes instalarlo en un disco externo
(como una memoria USB) y usarlo en cualquier ordenador. Si quieres hacer esto, coloca la carpeta de
instalacin (Install) en tu disco externo.
Actualizaciones
Si ya tienes C2 instalado e intentas instalar una actualizacin, la configuracin (setup) te ofrecer
eliminar la ltima copia instalada de C2. Siempre debes eliminar la versin vieja a menos que
hayas instalado el programa dos veces (por ejemplo, en el ordenador y en el disco externo, en
cual caso la desinstalacin podra eliminar la instalacin porttil).
Desinstalacin
C2 puede ser desinstalado a travs de Aadir/Quitar programas (Windows XP) o Programas y
caractersticas (Windows Vista y nuevas versiones) en el Panel de Control
Instalaciones masivas
Si ests instalando C2 en muchos ordenadores, recuerda que la instalacin es porttil. Esto
significa que no hay dependencia fuera de la Carpeta Archivos de Programa de C2. Puedes
instalarlo en varios ordenadores instalndolo en uno y copiando la carpeta de instalacin (y
cualquier acceso directo que quieras) en otros ordenadores. Puedes usar tambin los siguientes
modificadores de lnea de comando (command-line switches) para hacer funcionar la
configuracin de forma automtica:
construct2-setup.exe /SP- /SILENT /SUPPRESSMSGBOXES
Por defecto, tambin se aadir un icono en el Men de inicio.
Personas individuales que ya han ganado 5000$ por creaciones hechas con C2 y
Organizaciones comerciales y de negocios.
Las organizaciones sin nimo de lucro nunca necesitan una licencia Business, slo la Standard.
No debes modificar el archivo de licencia. Est protegido por un resumen criptogrfico hash y
cualquier modificacin podra causar que C2 rechace la licencia y vuelva a la versin gratuita.
No debes compartir tu archivo de licencia! Gurdala al igual que haces con el nmero de serie
para otros programas. Adems el archivo de licencia contiene informacin personal, as que es
aconsejable mantenerlo en privado.
Windows 7 o superior
2GB RAM
Procesador 2GHz dual-core
Una tarjeta grfica nVidia o AMD con los ltimos controladores (drivers). Te
recomendamos evitar el uso de hardware grfico Intel debido a la psima actuacin,
estabilidad y caractersticas.
2. Resumen
En esta seccin ofrecemos un resumen de C2, incluyendo la pgina de inicio (start page), interfaz
(interface), estructura del proyecto, los dos formatos de guardado, exportacin y publicacin, la
tecnologa de tus juegos y algunas buenas prcticas y consejos de actuacin al usar C2.
Esta te da un punto de partida til siempre que inicies C2. Tiene algunos enlaces tiles como
Crear un nuevo proyecto, Nuevos tutoriales en la web, tus proyectos abiertos recientemente,
enlace a nuestro Facebook, Twitter y Google+ y dems.
Ejemplos
Si quieres examinar proyectos existentes para ver cmo funciona C2, puedes abrir las demos de
Space Blaster y Ghost Shooter. Estos son ejemplos avanzados as que no te agobies por sus
matemticas o su complejidad. Slo sirven para ensear lo que C2 puede hacer en las manos de
un usuario avanzado.
Hay muchos ejemplos ms simples en el directorio de ejemplos de C2. Clica Mostrar todos los
ejemplos (Browse all examples) para verlos. Hay ms de 40 que muestran cmo hacer
plataformas simples y demos fsicas.
Es altamente recomendable ver todos los ejemplos. Hay varios ejemplos de soluciones a
preguntas frecuentes como Cmo configuro los controles comunes? en la carpeta de
ejemplos.
Configuracin
Puedes cambiar Mostrar la pgina de inicio cuando enciendas el ordenador Show (Start page on
startup) y Cerrar la pgina de inicio cuando cliques en algo (Close the start page when I click on
something) en el dilogo de preferencias (Preferences dialog).
2.2 La interfaz
El siguiente grfico resalta las partes importantes de la interfaz de usuario de C2. Tambin se
muestra un resumen de cada parte abajo, y ms adelante el manual explica cada seccin con
mayor detalle.
C2 utiliza una barra de herramientas, similar a la Microsoft office 2007 o superior. El botn azul
con la flecha para clicar hacia abajo es el men de archivos, y a su derecha hay una barra de
herramientas que se despliega con varios botones y opciones.
Tambin hay una barra de acceso rpido con los cuatro comandos ms usados: Guardar (Save),
Deshacer (Undo), Rehacer (Redo) y Vista previa (Preview). Puedes aadir o quitar botones de
esta barra: clicando la flecha hacia abajo pequea que hay a la derecha. Si quieres tener muchos
comandos en esa barra puedes optar por mantenerla visible debajo de la barra de herramientas.
3: Vista de pestaas
Estas pestaas permiten usar diferentes planos y hojas de actividades, para definir la secuencia
de actividades en las que se basa el juego.
Puedes clicar y arrastrar una pestaa para ver una al lado de otra en la misma pantalla.
4: La barra de propiedades
En esta barra puedes ver una lista de propiedades en las cuales ya has clicado. Puedes ver y
cambiar las propiedades de las cosas como planos, objetos, capas y dems. Mira The Properties
Bar.
7: Barra de objetos
Contiene una lista de objetos de tu juego. Puedes arrastrar y soltar objetos desde aqu para
colocarlos en el plano. El men del botn derecho tiene varias opciones para filtrar o mostrar
diferentes objetos. Mira The Object Bar.
8: Barra de estado
En la parte de abajo de la ventana se encuentra la Barra de estado. Esta muestra:
Qu est haciendo C2 durante una tarea de larga duracin, como exportar o guardar un
proyecto.
Cuantas actividades hay en el proyecto y su tamao aproximado
La capa activa en ese momento, que es la capa donde se colocaran los objetos
La posicin del ratn en planos combinados
El nivel de zoom actual
Al igual que los botones minimizar, maximizar y cerrar de Windows existe Fijar Barra (Pin
Ribbon) para mantener la barra siempre a la vista, y el botn sobre (About) para abrir el
dilogo About con informacin y los crditos de C2.
Personalizacin
Puedes personalizar la interfaz a tu gusto. Algunas de las barras pueden ser arrastradas y soltadas
en diferentes posiciones de la ventana. Tambin puedes esconder barras para ahorrar espacio:
clica el icono de fijar (pin) de una barra y se convertir en una simple pestaa. Puedes volver a
convertirla en barra.
Las barras se pueden esconder y mostrar en la pestaa Vista (View) de la barra de herramientas.
Puedes crear una pantalla dividida clicando y arrastrando uno de los planos u pestaa de hoja de
actividades en la vista principal. Esto es til en monitores grandes.
Planos (Layouts)
Niveles, mens, los ttulos de las pantallas y otros planos de objetos predefinidos. En otras
herramientas Layout puede referirse a escenas, habitaciones, marcos o etapas.
Los planos tambin pueden estar formados por mltiples capas (Layers), que pueden usarse para
poner objetos en las capas de fondo y primer plano. Estos se manejan con la barra de capas
(Layers bar).
Es importante aclarar la diferencia entre tipos de objeto y ejemplos: son llamados de forma
distinta en el manual. Para ms informacin, ve a las entradas Componentes (Plugins), Tipos de
objeto (Object Types) y ejemplos (Instances).
Los tipos de objeto pueden agruparse en familias (Families).
Sonido y Msica
Son archivos de audio usados para efectos sonoros y msica en el juego. Los sonidos deben
usarse para efectos de corta duracin que suenan cuando un acontecimiento como una colisin o
explosin ocurre. La msica se usa para pistas musicales ms largas. Es importante organizar los
archivos de audio porque los sonidos se descargan antes de poder escucharlos, pero la msica es
en streaming. Esto significa que si una pista de msica se pone en la carpeta Sonidos, tendr que
descargarse completamente (lo que tardar unos minutos) antes de reproducirlo. Adems el audio
de la carpeta Msica puede reproducirse inmediatamente porque es en streaming.
Ambos, sonidos y msica deben estar disponibles en los formatos Ogg Vorbis (.ogg) y MPEG-4
AAC (.m4a). Esto es porque los navegadores no se ponen de acuerdo en un solo formato para
web, as que todos los audios deben estar en los dos formatos! Internet Explorer y Safari usan
archivos .m4a y el resto (Firefox, Chrome y Opera) usan archivos .ogg. C2 ayuda a convertir
audio a ambos formatos cuando se importan los archivos de audio. Ve al Dilogo de Importar
Audio (Import Audio dialog) y Sonido y Msica (Sounds & Music) para ms informacin.
Unidades comunes
A veces, en C2 necesitas introducir valores como ngulos, velocidades o tamaos. Para que haya
cierta consistencia, C2 siempre usa las mismas unidades, excepto donde se especifique otra cosa
en notas o descripciones mostradas en el editor. Las unidades comunes se describen a
continuacin.
Posiciones (Positions) se miden en pxeles. El origen (0,0) est arriba a la izquierda del plano y
el eje Y aumenta hacia abajo (como es habitual en los motores del juego)
Tamaos (Sizes) se miden en pxeles
ngulos (Angles) se miden en grados. Los 0 grados empiezan a la derecha y se abre en el sentido
de agujas del reloj
Tiempos (Times) se miden en segundos
Velocidades (Speeds) se miden en pxeles por segundo
Aceleraciones (Accelerations) se miden en pxeles por segundo
Exportar
Para exportar tu proyecto, usa el Men de archivo (File Menu), barra de herramientas o barra del
proyecto (Project Bar) para abrir el dilogo de exportacin del proyecto (Export Project dialog).
Si ests interesado en los detalles tcnicos al exportar el proyecto, mira la seccin Tecnologa
(Technology).
2.6 Tecnologa
C2 crea juegos HTML5. Estos funcionan online en navegadores web de gran variedad de
dispositivos y sistemas operativos, incluyendo dispositivos mviles como telfonos y tablets,
asegurndonos que tu juego es accesible a la mayor cantidad de gente posible. Esta seccin es un
resumen de la tecnologa usada para ello. Esto puede ser de inters para gente que le guste la
tecnologa y te lo puedes saltar si ests ms interesado en saber cmo usar C2.
HTML5
HTML significa HyperText Markup Language. HTML es la manera estandar en la que se
hacen las pginas web desde los inicios de internet. HTML5 es la quinta revisin de HTML y
empez a ganar fama y difusin en 2011. Introduce algunas nuevas caractersticas, pero solo un
pequeo nmero de ellas atae a los juegos. De todas formas, HTML5 es todava el ms
apropiado para la tecnologa usada por C2. Javascript es el lenguaje de programacin estndar
usado para programar webs y tambin se usa para los juegos de C2.
De particular inters en HTML5 es la nueva etiqueta <canvas>. Esta crea una superficie
rectangular en las webs HTML donde cualquier imagen o contenido puede ser dibujado. Esto es
ideal para juegos. Todos los juegos de C2 usan canvas HTML5 para mostrar el juego.
HTML5 es compatible con la tecnologa de Adobe Flash que domina los juegos de internet desde
2011. HTML5 se diferencia por ser algo as como un acuerdo de empresas, ms que un producto
controlado por una nica compaa como Adobe. Flash tambin funciona como plugin de
navegador, que debe ser descargado e instalado de forma separada mientras que HTML5 est
dentro del navegador. Esto significa que los juegos HTML5 pueden funcionar en dispositivos
donde no hay soporte para Flash, como iPhone y iPad. Dadas sus ventajas, HTML5 reemplazar
a Flash en la web.
Javascript
Javascript es el lenguaje de programacin estndar para web. Permite que las pginas web
sean ms interactivas trabajando en cierto modo como aplicaciones tradicionales. Esto tambin
es un acuerdo entre empresas.
Javascript no es Java. Son dos lenguajes de programacin no relacionados que tienen un nombre
similar. Java trabaja otra tecnologa para las webs, una totalmente distinta a la de javascript.
Intenta no confundir ambos trminos: los juegos de C2 no necesitan java para funcionar.
Lienzos Canvas
El <canvas> de HTML5 tiene dos formas de dibujar el juego en la web: un simple contexto en
2D y el contexto WebGL, basado en OpenGL. WebGL es dos veces ms rpido que 2D y tiene
ms caractersticas, incluyendo efectos de soporte, pero no funciona en todas las plataformas. La
mayora de los navegadores funcionan con WebGL, pero no Internet Explorer. C2 funciona con
las dos tecnologas. WebGL puede ser habilitado o deshabilitado para cada juego en las
propiedades del proyecto (Project Properties). Generalmente, es recomendable habilitarlo,
porque el juego funcionar ms rpido y los efectos no funcionan sin l. Si el ordenador o
dispositivo del usuario no puede usar WebGL o ste est deshabilitado, C2 volver al contexto
2D. En este caso el juego puede seguir jugndose, pero funcionar un poco ms lento y no se
ver tan bien.
Ya que Internet Explorer no soporta WebGL, si lo usas sera mejor cambiar de navegador como
Firefox o Chrome. Quizs tambin quiera avisar a los usuarios de que hagan lo mismo.
WebGL puede no funcionar en un ordenador aunque est habilitado. En este caso el contexto 2D
funcionar en su lugar. Puedes comprobar que lienzo est usando el juego con la expresin del
sistema lienzo (renderer), que puede ser canvas2d o webgl.
Oscurecimiento y empequeecimiento
El cdigo Javascript de tu juego est minimizado y oscurecido con el Closure Compiler de
Google. Esto reduce el tamao y lo hace extremadamente difcil de modificar para otros usuarios.
Las imgenes del juego estn comprimidas en PNG. Tambin estn comprimidos al exportar
para asegurar que la descarga es lo ms pequea posible. Para ms informacin, mira este post
Image compression in Construct 2 .
Audio
El motor del juego de C2 soporta Web Audio API en Google Chrome para play-backs de baja
latencia o efectos de sonido. En otros navegadores se usa el estndar de audio HTML5.
Soporte Offline
A pesar de que los juegos HTML5 funcionan en un navegador web, los juegos C2 usan el
HTML5 AppCache para permitirles funcionar tambin offline. Esto es til para aplicaciones iOS
y Chrome, ya que algunos usuarios quizs utilicen el juego offline. Tambin el AppCache ayuda
a ahorrar ancho de banda en los servidores que hospedan el juego: los archivos del juego solo
sern descargados una vez y cada visita despus el juego se cargar desde el disco local
(mientras se buscan actualizaciones). Mira el tutorial offline support in Construct 2 para ms
informacin. Lo ms importante es que tu servidor debe estar configurado para archivos
.appcache con el tipo MIME text/cache-manifest si no el soporte offline no funcionar y
malgastars mucha banda ancha.
Seguridad
Nunca jams escribas nombres de usuario o contraseas en los eventos. Estos sern visibles
como texto plano en Javascript, y usuarios maliciosos podrn controlar tu cuenta fcilmente. Si
necesitas conectarte a algo como una base de datos, escribe el script que se ejecuta en el servidor
y conecta con la URL o el servidor.
Rendimiento
Hay un gran nmero de consejos sobre el rendimiento del juego (garantizando que el juego
siempre funcionar rpido). Lo ms importante es cuando se desarrolla para mviles, hay que
probar el dispositivo mvil desde el principio. Tu ordenador funcionar 10 o 20 veces ms
rpido que un mvil, y algo que funciona muy rpido en tu ordenador puede no ser imposible de
jugar en el mvil por su lentitud. Para ms informacin Performance Tips.
Uso de memoria
Algunos diseadores estn tentados a disear niveles enteros como simples imgenes grandes,
por ejemplo 10000x10000 pxeles. Este mtodo debe evitarse a toda costa. No es slo que
malgaste memoria, si no que muchos dispositivos no soportan imgenes tan grandes, por lo que
no funcionar. Generalmente el mayor tamao que soportan todos los sistemas (incluyendo
mviles) es de 2048x2048 pxeles. De todas maneras, evita imgenes de ese tamao tambin, lo
ms apropiado es usar fondos adosando imgenes de tamao medios como 512x512 que cubran
todo el plano. Despus, compn el diseo de nivel adosando varios objetos. Cada objeto puede
ser estirado y rotado individualmente lo que evitar una apariencia repetitiva.
Imagina una sola imagen de 10000x10000 que usa 400mb de memoria, que dejara sin espacio a
los ordenadores ms potentes. Por otra parte, un nivel compuesto por 512x512 fondos adosados
Efectos
Recuerda que los efectos requieren WebGL para funcionar, que no es soportado en todos los
ordenadores. Asegrate de configurar recursos apropiados y probar tu proyecto con WebGL
deshabilitado para que se vea bien en los sistemas de otros usuarios que no puedan usarlo.
Manejar proyectos
Si trabajas en grupo, probablemente encuentres muy til el software de control SVN para
manejar las carpetas del proyecto. ste puede destacar y fusionar los cambios que cada persona
hace. Tambin hay un historial de todos los cambios y restauraciones hechos en todo momento.
C2 guarda los datos del proyecto en formato XML as que es apropiado para este control.
(de Adicin). Asegrate tambin de que el objeto se crea en esa capa si ste se genera en tiempo
de ejecucin. Alternar entre efectos reduce el rendimiento, y haciendo esto te aseguras de que
objetos que usan el mismo efecto se dibujan a la vez.
Exportando va CocoonJS o directCanvas puedes mejorar el rendimiento en Android y iOS
si el navegador del dispositivo es lento.
El rendimiento de los mviles mejorar con el tiempo, as que si ahora tienes problemas, los
dispositivos futuros o las actualizaciones lo mejorarn.
cuadrcula y cuenta como un solo objeto. stos optimizan unas 400 veces al repetir texturas.
salos siempre que sea posible.
Usar un navegador lento
A veces, el lento Canvas 2D puede ser acelerado por el hardware de la tarjeta grfica del
ordenador. Otras veces, sin embargo, no se acelera y usa un software muy lento. No hay una
forma fcil de explicarlo, pero esto es debido al peor rendimiento de un sistema. Comprueba en
ordenadores distintos para ver si hay diferencias y asegrate de tener actualizados los drivers de
tu tarjeta de memoria.
Usar demasiados bucles (loops)
Esto es menos comn, pero usar muchos bucles como para (for), para cada (for each) y repetir
(repeat) puede causar una bajada de velocidad. Bucles anidados son ms propensos a esto. Para
probar si hay problemas, intenta deshabilitar temporalmente estos bucles.
Confusiones comunes
Las siguientes confusiones suelen ser acusadas de afectar el rendimiento (como en los tiempos
de ejecucin), pero el efecto no es muy grande o directamente no hay:
Formatos de imagen (por ejemplo, JPEG, PNG-8, PNG-32) afectan el tamao al descargar pero
no afectan al tiempo de ejecucin (se descomprimen todos en 32-bit en el programa).
Formatos de Audio solo afectan al tamao al descargar pero nada ms.
El Nmero de capas normalmente no afecta, a menos que la mayora de las capas hayan
cambiado su opacidad, tengan efectos aplicados, tengan un modo de fusin distinto a Normal o
usen forzar una textura force own texture. As que no hay problema en usar muchas capas
con una configuracin por defecto.
El Nmero de Planos no tiene ms efecto que el tamao de descarga.
Tamao, ngulo u opacidad de sprites/fondos adosados y posiciones flotantes (por ejemplo,
situar un objeto en X=10,5) no tienen efecto cuando se usa la aceleracin del hardware. Las
tarjetas de memoria modernas suelen renderizar un objeto a la misma velocidad sin tener en
cuenta si es grande o pequeo, el ngulo, opacidad o posicin. Aunque, si slo se usa el
software, puede tener gran impacto en el rendimiento, asegrate de probarlo en diferentes
sistemas.
WebGL
WebGL ayuda a que el juego vaya ms rpido: WebGL es unas 2 veces ms rpido que Canvas
2D as que, para mejorar la ejecucin, asegrate de que est habilitado en las propiedades del
proyecto (Project properties) Aunque WebGL no es siempre soportado, por lo que esto no es
garanta de que el juego vaya a usar WebGL. Usa la expresin del sistema Lienzo (Rederer) para
determinar cual usar.
Hay muchas razones por las que WebGL no es soportado, aqu una lista:
Ms consejos
Para ms informacin y consejos, mirar el post Optimisation: don't waste your time .
Medidas y pruebas
Desde el principio tu proyecto debe usar un indicador de ndice de frames (framerate indicator) y
controlar el rendimiento. Esto te permite notar si, haciendo algn cambio, ste afecta al
rendimiento.
Prueba tu proyecto en el mximo nmero de sistemas y navegadores posible.
Si crees que algo est causando problemas de rendimiento en tu trabajo, es fcil comprobar tu
teora: haz una copia de seguridad, borra lo que pienses que est afectando y mira si el ndice de
frames ha mejorado. Si es as, lo que has borrado era la causa, si no debe ser otra cosa.
Mide siempre el rendimiento. Los sistemas de un ordenador son muy complejos, y hay muchos
resultados y cambios inesperados en su rendimiento. La nica forma de saber qu efecto tiene
algo sobre el rendimiento es medirlo. Si no puedes medir la diferencia, entonces el efecto no es
significativo.
Puedes mostrar los dos en un objeto de texto (Text object) para echarle un vistazo al rendimiento
mientras pruebas el juego, usando la accin:
Configurar texto a: fps & FPS ( & renderer & )
Esto siempre mostrar unos 60 FPS (webgl) indicando ambos, el ndice de frames y el lienzo.
3. Interfaz
Esta seccin trata sobre la Interfaz de usuario. Para un resumen ve a Resumen de Interfaz, de la
seccin anterior.
Los objetos abiertos recientemente aparecen a mano derecha del men que aparece debajo.
Nuevo (New) abre Crear un nuevo dilogo de proyecto (Create New Project dialog).
Abrir (Open) abre un proyecto existente en el disco.
Guardar (Save) guarda el proyecto actual en el disco.
Guardar proyecto como (Save as project) y guardar como archivo nico (sabe as single
file) lo guarda en una carpeta o archivo diferente. Ver Saving and sharing projects.
Exportar el proyecto (Export project) exporta el juego a HTML5, listo para distribucin.
Ver Exporting and Publishing.
Cerrar pestaa (Close tab) cierra la pestaa que tengas abierta en ese momento. Tambin
se pueden cerrar clicndolas en el centro.
Cerrar proyecto (Close project) Cierra el proyecto actual, preguntndote si quieres
guardar los cambios.
Estas pestaas tienen las funciones ms usadas y comunes a todos los programas: Cortar (Cut),
Copiar (Copy), Pegar (Paste), Deshacer (Undo) y Rehacer (Redo).
Los botones Borrar (Delete), Seleccionar todo (Select All) y Deseleccionar todo (Select None)
afectan la seleccin actual en la Vista de la Hoja de Eventos o la Vista de Plano.
Configuraciones (Configurations) te permite configurar diferentes versiones de tu proyecto sin
tener que guardar varios proyectos en el disco. Configuracines activas (Active configurations)
establece que configuraciones estn siendo editadas. Ya que solo se puede ver una configuracin
de una vez, se muestran con el Mostrador de Configuraciones (Display configuration), que debe
ser una configuracin activa.
La seccin Online contiene algunos enlaces a webs que te pueden ser tiles.
La seccin Vista previa (Preview) tiene botones para hacer una vista previa del proyecto y
exportarlo a HTML5 para su distribucin.
La seccin Barras (Bars) te permite mostrar o esconder las diversas barras de la interfaz de C2
clicando en las cajas.
La seccin Zoom se usa para hacer zoom en ambos, la Vista de Plano y la Hoja de Eventos.
La seccin Cuadrcula de Plano (Layout Grid) slo se aplica a la Vista de Plano. Habilitando
Snap to Grid (Ajustar a la cuadrcula) los objetos que muevas y sites se ajustarn a una
cuadrcula invisible en la que puedes establecer las medidas.
El Tema (Theme) te permite elegir diferentes estilos visuales a la interfaz de C2. Es slo esttico
y no afecta a la funcionalidad del editor.
Esta pestaa slo se aplica a la Vista de la Hoja de Eventos. Si una vista de plano est activada
los botones estarn desabilitados.
El botn Add (Aadir) da formas rpidas de aadir un nuevo evento, condicin, accin, subacontecimiento, grupo de aeventos, variables locales o globales, incluir evento o comentario. Si
tienes algo seleccionado en la Hoja de Eventos, el nuevo item se aadir al lado de la seleccin.
El nombre del proyecto aparece con un asterisco (por ejemplo Space Blaster*) si tiene cambios
sin guardar.
Organizando proyectos
La Barra del Proyecto puede usarse para organizar tu proyecto en subcarpetas (solo con licencia).
Las Subcarpetas se aaden clicando con el botn derecho en una carpeta y seleccionando Aadir
subcarpeta (Add subfolder). Entonces, puedes arrastrar y soltar carpetas e tems para
organizarlos.
Manejando el proyecto
Clica con el botn derecho cualquier tem de la Barra del Proyecto y mostrar una lista de
opciones. La mayora de los tems pueden ser renombrados y eliminados. Clicando una carpeta
con el botn derecho te da la opcin de aadir tems nuevos en esa carpeta, como un plano u hoja
de eventos nuevos. Los objetos se suelen aadir en la Vista de Plano, pero tambin puedes
aadirlos a la Barra del Proyecto.
Clica con el botn derecho el nombre del proyecto en la parte de arriba para cerrar, exportar o
abrir la carpeta del proyecto en Windows Explorer.
Borrar objetos
Borrarlos de la Vista de Plano no eliminar un objeto del proyecto. La nica forma de borrarlo
completamente es eliminarlo de la Barra del Proyecto.
Importar audio
Clica con el botn derecho las carpetas de Sonido o Msica y selecciona Importar (Import) para
abrir el dilogo de importacin de audio (Import Audio dialog). Esto te permitir coger archivos
de audio de tu ordenador e importarlos. C2 los convertir a los formatos necesarios. Para audio
en play-back asegrate de que aades el Objeto de Audio (Audio object) al proyecto.
Importar archivos
Puedes importar archivos externos adicionales al proyecto. Para ms informacin, ve a Project
Files.
Hay demasiadas propiedades en C2 para listarlas aqu. En cambio, las propiedades de diferentes
partes del proyecto se explican en su seccin del manual. Por ejemplo, las propiedades de los
planos se definen en la seccin Planos.
Las propiedades estn organizadas en categoras que pueden expandirse con el botn +. Hay
muchos tipos de propiedades, incluyendo campos de nmeros y de texto, listas que se despliegan
y enlaces para clicar. El nombre de las propiedades aparece en la columna de la izquierda, y los
valores editables en la columna de la derecha.
Siempre que algo del proyecto es clicado o seleccionado, sus propiedades aparecen en la Barra
de Propiedades. Por ejemplo, seleccionando la vista de plano o clicando tems de la Barra del
Proyecto se muestran las propiedades ms relevantes.
Proyectos (Projects)
Planos (Layouts)
Capas (Layers)
Ejemplos de Objeto (Object instances)
Animaciones (Animations)
Muchos comportamientos (behaviors) tienen sus propias propiedades ver Behavior reference
Muchos plugins tienen sus propias propiedades ver Plugin reference
Muchos objetos tambin tienen efectos que tienen sus propias propiedades.
Mira la seccin del manual referente a cada elemento. Tambin hay un enlace de Ayuda (Help)
en la parte de debajo de las propiedades que te llevaran a la parte adecuada del manual.
Descripciones de la propiedad
Todas las propiedades tienen una descripcin que ofrece informacin adicional sobre para qu se
usa cada una. Esto se muestra en el panel de la parte de debajo de la Barra de Propiedades. Es
mejor echarle un ojo ya que contiene informacin til y consejos. Aqu se muestra un ejemplo.
existan en l.
Mostrar opciones
El texto de arriba de la barra de ttulo muestra el filtro o carpeta actual si hay. Por defecto slo
muestra los objetos del plano actual (por ejemplo Todos los objetos en MyLayout). Esto
significa que no mostrar objetos en otros planos, ni objetos del proyecto como el Ratn o el
Teclado. Se puede acceder a estos objetos va la Barra del Proyecto y arrastrarlos y soltarlos en
el plano desde all. Las opciones de filtro pueden ajustarse para que muestren todos los objetos
del proyecto en la Barra de Objetos (ver ms abajo).
Clica el botn derecho en un espacio de la Barra de Objeto para mostrar las opciones.
La lista de capas
Cada capa de la lista tiene:
Una casilla para cambiar la capa visible en el editor (esto no afecta al juego en la vista
previa o al exportar)
Un icono de candado. Clicando esto la capa se bloquea. Si una capa est bloqueada, los
objetos que contenga no se pueden seleccionar. Esto es til para prevenir selecciones
accidentales en capas que no se usan casi nunca.
Un nmero a la derecha. Esto es un ndice que empieza en 0 (la primera capa es 0, no 1).
Si necesitas introducir un nmero de capa en el sistema de eventos, este es el nmero que
debes introducir. (Tambin puedes introducir el nombre de capa que sera ms eficiente si
reorganizas las capas a menudo).
La Barra de Capas
Los iconos a lo largo de la parte de arriba ofrecen accesos directos para editar las capas. Se
pueden aadir capas y hay opciones alternativas para la visibilidad y el bloqueo. Tambin hay
unos botones de Renombrar (Rename) y Borrar (Delete), (F2 y Borrar en el teclado
respectivamente). Las capas se pueden renombrar clicando una vez sobre ella, al igual que los
archivos en Windows. Finalmente, hay unos botones Mover arriba (Move up) y Mover abajo
(Move down) que ofrecen la alternativa de arrastrar y soltar para reordenar capas.
Clica y arrastra estos ajustes para cambiar el tamao del objeto. Mantn shift presionado para
hacerlo proporcionalmente. El tamao de los ajustes se puede cambiar en Preferencias
(Preferences).
Los objetos que se pueden rotar tambin tienen unos ajustes de ngulo. Estos pueden ser clicados
y arrastrados para cambiar el ngulo del objeto. Tambin puedes introducir un ngulo en la Barra
de Propiedades.
Desplazamiento y Zoom
Hay tres formas de desplazarse en la Vista de Plano:
Las barra de desplazamiento horizontal y vertical a los mrgenes
Mantener presionado el botn central del ratn y arrastrar el ratn
Mantener presionada la barra espaciadora (til para porttiles)
En ordenadores fijos, usar el botn central y arrastrar el ratn es lo ms conveniente para
moverte por el plano.
El Zoom es til para enfocar areas pequeas o tener una vista completa del plano completo. Hay
diversas formas de hacer zoom:
Los botones de Zoom en la Barra de Herramientas (mantiene Shift presionado mientras
clicas para ajustar)
Mantener control presionado y mover la ruleta del ratn. Mantn pulsado Control y Shift
para hacer zoom en intervalos regulares (por ejemplo, 100%, 200%, 400%...)
+ y en el teclado (Mantn pulsado Shift para ajustar el zoom)
El zoom actual se muestra en la Barra de Estado. Presiona Control+0 para volver al zoom 100%.
Otros
Para ir a la Hoja de Eventos asociada, presiona Ctrl+E o Ctrl+Tab o clicar el botn derecho y
seleccionar Editar Hoja de Eventos (Edit Event Sheet).
El orden de objetos Z dentro de una capa puede ajustarse usando el botn derecho y
seleccionando Orden Z Enviar a la primera capa o Enviar a la ltima capa (Z Order - Send to
top of layer or Send to bottom of layer).
Los objetos pueden ajustarse a la cuadrcula para hacer un mosaico. Esto se puede habilitar en la
Barra de Vista en las Herramientas.
El editor de imagen o animacin se puede ver haciendo doble clic en un objeto con imagen o
animacin como el Fondo Adosado (en mosaico) y los objetos pequeos o Sprite.
La Vista de la Hoja de Eventos es donde se pueden aadir, ver y editar Eventos en una Hoja
usando el sistema de eventos no programados de C2.
El sistema de Eventos tiene muchas caractersticas, as que tiene su propia seccin del manual.
Esta seccin solo mostrar las caractersticas bsicas.
Diagrama de un Evento
Creando Eventos
Hay varias formas de aadir nuevos Eventos:
Haciendo doble clic en un espacio de la Hoja de Eventos
Clicando el enlace Aadir Evento (Add event) detrs del ltimo evento.
Clicando el botn derecho y eligiendo un tem para aadir en el men.
Usar la Barra de Eventos
Cuando aades un Evento nuevo, el dilogo que aparece es para aadir la primera condicin (ver
Dilogo de Aadir condicin, Add Condition dialog). Para aadir ms condiciones la Evento,
usa el botn derecho en el margen o en una condicin ya creada y selecciona Aadir otra
condicin (Add another condition).
Se pueden aadir acciones clicando el enlace Aadir accin (Add action) (si no ha sido
escondida de la barra), o usando el botn derecho en el margen o en una accin ya creada y
seleccionando Aadir otra accin (Add another action). Mirar tambin Dilogo de Aadir accin
(Add Action dialog).
Modificar Eventos
Haz doble clic o selecciona y pulsa Enter en una condicin o accin para editarla.
Eventos, condiciones y acciones se pueden arrastrar y soltar sobre la Hoja de Eventos.
Manteniendo Control y arrastrando se duplica un Evento, condicin o accin. Los tems de
Eventos tambin pueden ser cortados, copiados y pegados.
Sera conveniente organizar los eventos en Grupos de Eventos (Event Groups), que se pueden
activar y desactivar en conjunto.
Desplazamiento y zoom
Hay varias formas de desplazarse en la Vista de Hoja de Eventos:
La barra vertical a la derecha de la vista.
Usando la rueda del ratn
Manteniendo pulsado el botn central del ratn y arrastrndolo.
Manteniendo la barra espaciadora y moviendo el ratn (til para porttiles)
Usa los botones de zoom de la Barra en la Barra de Vista o mantn pulsado control y mueve la
rueda del ratn para hacer zoom. Pulsa Ctrl+0 para volver al zoom 100%. El tamao de fuente en
la Hoja de Eventos se puede configurar en Preferencias (Preferences).
El editor de imagen
El Editor de imagen se usa para editar imgenes para fondos adosados y animaciones usando
Sprites.
La Vista del Editor de imagen tambin puede ser desplazada manteniendo el botn central del
ratn y arrastrando.
Los botones de la izquierda son herramientas:
Seleccin rectangular (Rectangle select) Selecciona, borra, corta, copia y pega secciones
rectangulares.
Borrador (Eraser) Borra secciones de la imagen.
Lpiz (Pencil) Dibuja pxeles individuales o, arratrandolo, crea lneas de 1 pxel de grosor.
Pincel (Brush) Dibuja con un pincel redondo.
Lnea (Line) Dibuja lneas de colores.
Rectngulo (Rectangle) Rellena un rea rectangular de color.
Fill (Rellenar) Rellena un rea completa con color.
Seleccionador de color (Color Picker) Selecciona un color primario o secundario de la imagen.
Un acceso directo es manteniendo Control y clicando la imagen, aunque ests usando otra
herramienta.
Ajustar origen y puntos de la imagen (Set origin and image points) Abre el dilogo de Puntos de
imagen Image Points dialog. Esto te permite ajustar el origen de la imagen (su punto de rotacin)
y situar puntos focales de la imagen como la punta de un arma. Se puede acceder a estos puntos
en el sistema de eventos para crear objetos. Algunos objetos, como fondos adosados, no usan
origen no puntos de imagen.
Ajustar colisin poligonal (Set collision polygon) Ajusta la forma de una colisin para una
imagen o frame. Por defecto, C2 intuye la forma, pero no siempre es preciso. Clica y arrastra los
puntos de la colisin poligonal para delinear su forma. Clica el botn derecho para mostrar el
men con opciones adicionales para la colisin, como aadir y borrar puntos (adding and
deleting points). Algunos objetos, como fondos adosados, no usan colisiones poligonales.
Barra de Animaciones
En la Barra de Animaciones se pueden crear varias animaciones a partir de pequeos objetos o
Sprites.
Clica el botn derecho en un espacio par aadir una nueva animacin o una subcarpeta para
organizar animaciones. Clica el botn derecho en una animacin y selecciona Vista previa
(Preview) para hacer una vista previa de la animacin en el juego.
Cuando seleccionas una animacin, la Barra de Propiedades muestra sus ajustes. Estos son:
Velocidad (Speed) El nmero de frames por segundo. Por ejemplo, si est en 5, cada frame de la
animacin durar 1/5 de segundo. Si no quieres que la animacin se mueva ponlo a 0 (si un
mosaico se hace con baldosas distintas en cada frame).
Bucle (Loop) Vuelve a empezar la animacin siempre que acaba.
Repetir (Repeat count) Si no hay bucle, el nmero de veces que quieres repetir la animacin.
Repetir en (Repeat to) El nmero de frame (ndice 0) en el que quieres repetir si hay bucle o
repeticin.
Ping-Pong a animacin va hacia delante y hacia atrs.
Barra de Frames
La Barra de Frames muestra la lista de frames de la animacin actual.
Selecciona una imagen para activar el Editor de Imagen y editar el frame de la animacin.
Tambin puedes arrastrar y soltar frames para ajustar la secuencia.
Clica el botn derecho en un espacio de la Barra de Frames para:
Aadir frame (Add frame) Aade un frame blanco al final de la secuencia.
Duplicar el ltimo frame (Duplicate last frame) Hace una copia del ltimo frame y lo aade a la
secuencia.
Invertir frames (Reverse frames) Invierte el orden de todos los frames.
Importar frames (Import frames) Abre un dilogo para seleccionar una o ms imgenes del disco.
Se aaden como frames de animacin.
Importar tira de Sprites (Import sprite strip) Importa una tira de Sprites o mosaico, donde una
imagen simple contiene distintos frames alineados en una cuadrcula. Esto se hace con el dilogo
de importacin de tiras de Sprites (Import Sprite Strip dialog).
Cargar archivos del disco (Reload files from disk) Carga todas las imgenes desde la carpeta del
proyecto. Esto es til si has editado las imgenes de la carpeta del proyecto mientras C2 estaba
abierto y quieres que el programa reconozca los cambios. (Esta opcin estar deshabilitada si no
usas una carpeta del proyecto).
Tamao miniatura (Thumbnail size) Ajusta el tamao de los iconos en miniatura de cada frame
de la barra.
Seleccionando un frame se muestran sus propiedades en la Barra de Propiedades: Velocidad del
frame (Frame speed) que es un multiplicador del tiempo que usa un frame. Por ejemplo, un
frame a velocidad 2 usar dos veces ms tiempo, 0,5 la mitad, etc. en relacin con la velocidad
actual de la animacin.
3.10 Dilogos
Esta seccin lista todos los dilogos en el editor de C2. Quizs no necesites usarlos todos,
depende de las caractersticas que uses. Cada dilogo tiene un enlace a su seccin en este
manual. Quizs prefieras usarlos para leerlos cuando los necesites en vez de leerlos todos ahora.
Simplemente, haz doble clic en el comportamiento que quieras aadir. Seleccinalo para ver una
breve descripcin bajo los iconos. Los comportamientos disponibles se pueden filtrar por nombre
o tipo en el cuadro de bsqueda arriba a la derecha.
Haz doble clic en un objeto para seleccionarlo. Escribe en el cuadro de bsqueda para un filtro
rpido cuando hay muchos objetos.
Las condiciones y acciones que cada objeto contiene se relacionan con el tipo de objeto que es
(Sprite, teclado o audio). Por ejemplo, para situar la accin Reproducir sonido (Play sound) en el
dilogo, primero haz doble clic en el objeto de Audio. Recuerda que el Sistema de objeto tiene
algunas condiciones que se pueden usar en cualquier objeto, como Recoger aleatoriamente (Pick
random) y Para cada (For each).
Haz doble clic en una condicin o accin para elegirla. Como antes, escribir en el cuadro de
bsqueda ayuda a localizarlos ms rpido en una lista.
Para ms informacin de cada condicin y accin, ve a Plugin reference. Si el objeto elegido
tiene algn Comportamiento, se pueden aadir condiciones y acciones extra en el dilogo.
Algunas condiciones y acciones requieren parmetros. Por ejemplo, La accin Ajustar posicin
(Set position) para un Sprite requiere las coordenadas X, Y. Esto se hace en el dilogo de
parmetros en el siguiente paso. Otras no los usas, como Destruir (Destroy). En este caso el
proceso ya estara completo.
Los efectos se pueden aadir con la barra de arriba o clicando el botn derecho y seleccionando
Aadir efecto (Add effect). Esto abre el dilogo de Aadir Efecto. Ambas formas tambin te
permiten renombrar (F2) o borrar (Del) efectos.
Se pueden ordenar los efectos usando los botones Arriba (Up) y Abajo (Down) de la barra o
arrastrando y soltndolos. El orden de los efectos es importante porque define el orden en el que
son procesados, que puede alterar el resultado visual. Para ms informacin, mira la seccin
Effects.
Nombre (Name)
Un nombre identifica un grupo de eventos y se muestra en grande en la Hoja de Eventos. Cuando
habilitas o deshabilitas un grupo de eventos, el nombre identifica qu grupo es.
Descripcin Opcional (Description Optional)
Una descripcin opcional da un resumen de lo que hacen los eventos del grupo, con propsitos
organizativos. Se muestra en el letrero pequeo debajo del nombre de grupo.
Activo desde el principio (Active on start)
Determina si un grupo de eventos est o no habilitado cuando se comienza el proyecto. Si no est
seleccionada, el grupo de eventos estar deshabilitado y ninguno de los eventos que contiene
funcionar hasta que se habilite seleccionando Activar grupo (Set group active) en el sistema de
accin system action.
El Nombre (Name) identifica la variable del evento. Se escriben usando expresiones para
recuperar el valor de la variable del evento. Algunos nombres no se pueden usar, como
expresiones del sistema ya que se podran confundir.
El Tipo (Type) especifica qu tipo de de valor tiene la variable. La variable de un evento puede
almacenar un Nmero o Texto (tambin llamado string). El tipo de variable de evento no cambia
no puedes almacenar texto en una variable numrica ni viceversa.
El Valor inicial (Initial value) es el primer Nmero de una variable numrica, o la inicial de un
Texto en una no numrica. Este cuadro se puede dejar vacio. La inicial no necesita comillas. En
otras palabras, Hola es una entrada vlida y si introduces Hola la inicial incluir las comillas.
Nota que esto es diferente a introducir textos que requieran comillas.
La Descripcin (Description) es un comentario opcional que describe brevemente para qu se
usa la variable. Se muestra al lado del nombre para recordarte el uso de la variable.
Si ests buscando consejos para publicar tu juego, ve al tutorial Publishing and promoting your
Construct 2 game .
Si ests interesado en detalles tcnicos de la exportacin, mira la seccin Tecnologa
(Technology)
Exportar para (Export for)
Hay varias formas de publicar juegos en HTML5. Para ms informacin, ve a Exporting and
Publishing.
Las imgenes del proyecto se guardan siempre en formato PNG-32. Este es el nico formato que
preserva una imagen con el canal alfa (alpha chanel). Estos ajustes slo se aplican cuando el
proyecto se exporta. Son principalmente para reducir el tamao de los archivos de imagen para
que el juego ocupe menos.
Las imgenes en PNG se recomprimen al exportarlas para reducir el tamao sin afectar la calidad
de imagen. Para ms informacin, mira el post Image compression in Construct 2 .
El dilogo de formato de imagen tiene las siguientes opciones:
Formato (Format)
El formato de la imagen al exportar. En resumen, los formatos son:
PNG-32 (por defecto) puede almacenar colores verdaderos sin prdidas (perfectamente, sin
perder calidad) con la transparencia del canal alfa. Pero, los archivos son ms grandes.
PNG-8 es una versin de 256 colores. Soporta el canal alfa pero slo dentro de los 256 colores.
Imgenes retro o de pocos colores se vern igual en PNG-8. Imgenes con ms de 256 colores se
reducirn a estos y puede degradar la calidad. Por otra parte, C2 usa un algoritmo avanzado
(PNGNQ ) para alcanzar esta reduccin de color. Esto significa que muchas imgenes
permanecern idnticas. Los archivos en PNG-8 son mucho ms pequeos que en PNG-32, as
que es una forma til de reducir el tamao del juego.
JPEG es un formato de imgenes de diseo para fotografa o imgenes muy detalladas. No
soporta transparencia, as que no es apropiado para imgenes que tienen transparencias o canales
alfa (aparecern con fondo negro). Pero este formato puede conseguir los archivos ms
pequeos, dependiendo de los ajustes de calidad. El formato es mejor para minimizar el tamao
de las imgenes de un fondo grande.
Para ms informacin sobre estos formatos busca en Wikipedia PNG o JPEG .
Calidad (Quality)
Los ajustes de calidad cuando usas el formato JPEG. La calidad va desde 0 (peor calidad,
archivo ms pequeo) a 100 (mejor calidad, archivo ms grande). Las calidades por encima de
85 son difciles de distinguir del original.75 es la recomendada en relacin calidad tamao.
Aplicar este ajuste a (Apply this setting to)
Te permite hacer el mismo ajuste de formato para muchas imgenes de una vez.
Este frame (This frame) o Esta imagen (This image) aplica los ajustes slo a la imagen/frame
actual.
Esta animacin (This animation)-slo para sprite, aplica los ajustes a todos los frames de la
animacin actual.
Todas las animaciones (All animations) solo para sprite, aplica los ajustes al objeto entero,
todas sus frames en todas sus animaciones.
El proyecto entero (Entire Project) aplica los ajustes a todas las imgenes del proyecto. salo
con cuidado, ya que se modifica cualquier ajuste de formato hecho previamente en cualquier
objeto del proyecto y no se puede deshacer.
Antes de que aparezca el dilogo, se te sugerir seleccionar algn archivo de audio desde el
disco. Puedes seleccionar ms de uno. Los archivos aparecen en el dilogo de Importar audio
antes de ser realmente importados, mostrando si esos formatos son o no vlidos. Tambin puedes
clicar Aadir ms archivos (Add more files) para aadir ms archivos a la lista.
Clica Importar (Import) para empezar a importar la lista de archivos al proyecto. Esto puede
tardar si los audios son muy largos (como canciones enteras); una barra de progreso aparecer
durante el proceso. Solo se importarn los audios que tengan un formato vlido para el programa.
Una vez el proceso haya finalizado, la lista mostrar los archivos que se hayan importado
correctamente. Clica Hecho (Done) para cerrar el dilogo.
Es recomendable importar archivos PCM .wav ya que son aceptados en la mayora de
dispositivos y C2 puede encodearlos en Ogg Vorbis y MPEG-4 AAC (slo para Windows 7+).
Selecciona un punto de imagen de la lista para que aparezca en la imagen. Clica el botn derecho
para situar el punto bajo el ratn. Las flechas del teclado tambin pueden moverlo 1 pxel cada
vez.
Se puede situar un punto rpidamente usando los nmeros, 1 para la esquina izquierda y 5 para el
centro. Tambin puede clicarse con el botn derecho el punto en el dilogo de puntos de imagen
y elegir la opcin en el men de acceso rpido.
Clicar con el botn derecho un punto de imagen en el dilogo tambin da la opcin de Aplicar a
toda la animacin (Apply to whole animation). Esto sita el punto en el mismo lugar en todos los
frames. Si el punto no existe en alguno de los frames, esta opcin lo crea. Mantener shift
mientras sitas el punto es un acceso directo.
Por ejemplo, la siguiente imagen tiene 7 celdas horizontales y, puesto que solo hay una fila, una
celda vertical:
Esta imagen est en una cuadrcula que tiene 4 celdas horizontales y 4 verticales:
El dialogo para importar un Nuevo objeto aparece despus de hacer doble clic en un espacio de
la Vista de Plano. Te permite elegir el tipo de objeto a insertar (cada tipo se conoce como
plugin). Insertando un nuevo objeto creas un nuevo tipo de objeto. Mira Estructura del Proyecto
(Project Structure) para una descripcin de la diferencia entre tipos y ejemplos de objeto.
Tambin mira Plugin Reference para ms informacin sobre plugings.
Los plugins se ordenan en grupos. Dentro de cada uno estn ordenados alfabticamente.
Seleccionando un tem se muestra una breve descripcin de lo que el plugin hace en el campo
Descripcin (Description) en la parte baja del dilogo. Escribir en el cuadro de bsqueda de
arriba filtrar rpidamente la lista para ayudarte a encontrar lo que buscas.
El Nombre que introduces indica el nombre del tipo de objeto que aparecer en el proyecto tras
insertarlo. Por defecto se nombrarn numricamente como Sprite2, Sprite3, etc. Sera buena idea
darles nombres descriptivos para no confundirte ms tarde. Puedes introducir un nombre
descriptivo en este cuadro, pero si no puedes renombrarlo tambin a travs de la Barra de
propiedades o la Barra del proyecto.
Haz doble clic en un tem para insertarlo. Si el objeto puede situarse en un plano y est abierta la
Vista de plano, el cursor se convertir en una mira para situar el primer ejemplo del objeto. Para
objetos con imgenes o animaciones, tras haber situado el ejemplo el editor de imgenes o
animaciones aparecer para poder disear sobre ella.
Otros tipos de objeto (como el teclado o un objeto de audio) no necesitan ser situados en el
plano. Tras insertarlos, el dilogo se cierra sin necesidad de situarlo. En su lugar aparecer una
barra notificadora indicando que ya est disponible en todo el proyecto. Este tipo de objetos solo
pueden ser insertados una vez y desaparecern de la lista si vuelves a abrir el dilogo.
El Nombre (Name) identifica la variable de ejemplo. sto se escribe como expresiones tras el
nombre de objeto (por ejemplo, Sprite.MyVariable) para poder recuperar el valor de la variable.
Algunos nombres no se pueden usar si entran en conflicto con otras expresiones o
comportamientos de objeto.
El Tipo (Type) especifica qu tipo de valor tiene la variable. Una variable de objeto puede
almacenar Nmero (Number), Texto (Text)-(tambin llamado string) o Booleano (Boolean)-(un
valor on/off, tambin llamado flag). El tipo de una variable de ejemplo no cambia por ejemplo,
no puedes almacenar texto en una variable numrica.
El Valor inicial (Initial value) es el primer nmero o inicial del texto o verdadero/falso en un
Booleano. El texto inicial se puede dejar vacio y si lo introduces no son necesarias comillas. En
otras palabras Hola es una entrada vlida, pero si introduces Hola la inicial incluir las
comillas. Nota que eso es diferente a si la expresin necesita comillas.
La Descripcin (Description) es un comentario opcional que te describe brevemente para que se
usa la variable. Se muestra al lado del nombre en el editor para recordarte su uso. Tambin se
muestra en la Barra de Propiedades cuando la variable est seleccionada.
Elige entre un proyecto de un solo archivo o una carpeta del proyecto. Ve a project types para
ms informacin.
Un proyecto de un solo archivo puede crearse inmediatamente, pero una carpeta del proyecto
requiere que se cree la carpeta antes de empezarlo. Los proyectos de un solo archivo son mejores
para proyectos pequeos y los de carpeta para proyectos grandes. El tipo se puede cambiar en
cualquier momento eligiendo Guardar como proyecto (Save as project) o Guardar como un solo
archivo (Save as single file) en el Men de Archivos.
Las variables de ejemplo se pueden aadir con la barra superior o clicando el botn derecho y
seleccionando Aadir variable de ejemplo (Add instance variable). Esto abre el dilogo de
Aadir variable de ejemplo (Add Instance Variable dialog). La barra superior y el men del
Los Comportamientos se pueden aadir con la barra superior o clicando el botn derecho y
seleccionando Aadir comportamiento (Add behavior). Esto abre el dilogo de Aadir
Comportamiento. La barra y el men del botn derecho tambin te permiten renombrar
(rename)-F2 o borrar (delete)-Del comportamientos. El comportamiento aparece por su nombre
en el sistema de eventos.
Los comportamientos se pueden reordenar usando los botones Arriba (Up) y Abajo (Down) en la
barra, o arrastrndolas y soltndolas. El orden es solo para organizacin no afecta a cmo
funcionan.
Usa el panel de expresiones para localizar expresiones del sistema, expresiones de objeto,
expresiones de comportamiento, variables locales o globales o variables de ejemplo. Tambin
puedes usar autocompletar (autocomplete): tecleas una expresin hasta el punto (por ejemplo
Sprite.) y aparecer una lista de todas sus expresiones. Esta lista muestra las expresiones de
objeto, sus variables de ejemplo y los comportamientos. Usa las flechas arriba y abajo del
teclado para seleccionar una y Enter para entrar en ella.
Algunas expresiones tambin tienen consejos para ayudarte a recordar cmo usarla. Aparece
cuando escribes un parntesis abierto ( al lado de la expresin. Esto es muy til en expresiones
del sistema que suelen tener muchos parmetros.
Pulsa el tabulador para ir al siguiente parmetro o Shift + Tabulador para ir a la anterior. Enter es
un acceso directo de presionar Hecho (Done) quizs tengas que pulsa Enter dos veces si ests
usando autocompletar: una para elegir la entrada de autocompletar y otra para cerrar el dilogo.
General
Esta seccin contiene ajustes generales de C2.
HTML5 exporter
Esta seccin contiene ajustes para el exportador de HTML5, adems de los servidores locales
para la vista previa.
Esta seccin contiene ajustes que te ayudan a fijar una copia de seguridad automtica para tu
trabajo. Esto es esencial para mantenerlo a salvo de fallos del hardware, robos, fuegos o
inundaciones. Para ms informacin, mira el tutorial Keep your work safe with Construct 2's
backup options .
F4 Hace visible el panel de expresiones. Muestra todas las expresiones que puedes usar.
Tab Parmetro siguiente
Shift + Tab Parmetro anterior
Escape Cancelar (Cancel)
Enter Hecho (Done)
4. Proyectos primitivos
Esta seccin rene todos los primitivos (elementos bsicos) de los proyectos. Estos primitivos
ofrecen los bloques con los que se forman juegos complejos. Para una vista por encima ver el
apartado Estructura del Proyecto (Project structure) de la seccin Resumen.
C2 usa un sistema de eventos de programacin libre para disear. Si no conoces el sistema de
eventos, la seccin Cmo funcionan los eventos (How events work) te lo explica.
4.1 Proyectos
Un proyecto es un juego o aplicacin completa hecha con C2. Los proyectos contienen todos los
elementos que componen el juego, desde eventos a archivos de sonido. Se muestra un resumen
del proyecto en la Barra del Proyecto y all se pueden aadir, renombrar, eliminar y ordenar en
carpetas los elementos. Mira la Estructura del Proyecto (Project structure) para ver un resumen
de todos los elementos. A continuacin se tratan ms detalles sobre cada una de las partes.
Los proyectos se pueden abrir, cerrar y exportar desde el Men de archivos. Mira tambin
Guardar y compartir proyectos (Saving and sharing projects) y Exportar y publicar (Exporting
and Publishing). Si ests interesado en aspectos tcnicos ve a la seccin Tecnologa
(Technology). Se recomienda seguir los consejos de Buenas Prcticas (Best practices) cuando
trabajas en un proyecto.
Habilita el WebGL ms rpido y potente que puedas. Se usar el lienzo canvas 2D se si WebGL
no se puede usar. Mira la seccin Tecnologa (Technology) para ms informacin sobre lienzos.
Si WebGL est habilitado, tambin se podr hacer vista previa de los efectos en la Vista de
plano.
Muestra (Sampling)
Elige entre muestra linear (ntida) o point (pixelada) cuando cambies el tamao de las imgenes.
Se recomienda linear para juegos modernos con grficos de alta resolucin y point para juegos
retro que usan bloques pixelados.
Estilo del cargador (Loader style)
Cambia el cargador por defecto que se muestra cuando el juego est cargando o mientras el
propio plano de carga todava est cargando. Mira el tutorial how to make a custom loading
screen .
Aclarar fondo (Clear background)
Salta aclarar fondo al principio de cada frame. Esto es til para mejorar el rendimiento en
mviles (mira Consejos sobre rendimiento Performance Tips). Cada vez, el frame se convierte en
negro claro, despus en el color de la capa de abajo (si no es transparente) y finalmente en el
suyo propio. Aclarar fondo indica si hacer el primer paso. La propiedad de capa transparente
indica si hacer el segundo paso. Si todos los planos contienen capas opacas puedes seleccionar
No en Aclarar fondo ya que la capa de fondo siempre aclarar la pantalla. Si los planos son
totalmente opacos por sprites u otros objetos, puedes ajustar todas las capas a transparente para
saltar ambos pasos. En este caso, ningn rea descubierta por los objetos tendr fallos o estar
llena de pixeles extra.
4.2 Planos
Un plano se conformas de un diseo de objetos. Puede corresponder a un nivel del juego, al
men o a una pantalla de ttulos. En otras herramientas tambin pude significar escenas,
habitaciones, frames o etapas. Se pueden aadir, renombrar y borrar en la Barra del Proyecto.
Los planos se editan en la Vista de plano. Cada plano tiene una hoja de eventos asociada que
define como funciona.
Los planos contienen diversas capas. Los objetos que aparecen en la pantalla no pertenecen
directamente al plano, si no a la capa que est en el plano.
Los planos no tienen un fondo de color. Para asignar un color al fondo, haz que la capa de abajo
sea opaca y asgnale un color. Se puede hacer en la Barra de Capas.
Tambin se le pueden aplicar efectos, que se aplican a todos los elementos que aparecen en la
pantalla.
Layout properties
Las propiedades de un plano se pueden editar en la Barra de Propiedades tras clicar un espacio
en el plano o seleccionando el nombre del plano en la Barra del Proyecto.
Nombre (Name)
El nombre del plano.
4.3 Capas
Una capa es como una lmina de cristal en la que se sitan los objetos. Se pueden usar para
superponer diferentes grupos de objetos, tanto en el fondo como en el primer plano. Las capas
pertenecen a un plano y se editan en la Barra de Capas. Se pueden desplazar a ritmos diferentes
para crear efectos de paralaje, as como escalar o girar, todo para conseguir efectos visualmente
ms poderosos en los juegos.
Tambin son importantes para aadir interfaces estticas (o HUDs o UIs) a juegos dinmicos.
Una capa con el paralaje a 0, 0 no se mover, as que cualquier objeto en ella siempre estar en
el mismo lugar.
Un conjunto comn de capas sera:
HUD (capa superior barra de vida del personaje, informacin UI, etc)
Primer plano (los objetos principales del juego)
Plano intermedio (capa de fondo con paralaje)
Fondo (ltima capa el fondo)
Tambin se pueden aplicar efectos a las capas, que afectan a todo el contenido de la capa.
Propiedades de capa
Las propiedades de la capa se pueden editar en la Barra de Propiedades tras clicar la capa en la
Barra de Capa. Nota que esto modifica cual es la capa activa mira las propiedades de la capa
activa en Propiedades del Plano.
Nombre (Name)
El nombre de la capa, para referirte a ella en el sistema de eventos.
Visibilidad inicial (Initial visibility)
Si la capa es visible o no al inicio cuando haces la vista previa. Esto es diferente de la
propiedad Visible en el editor (Visible in editor) que slo afecta a la Vista de plano.
Color del fondo (Background color)
El color de fondo para la capa. Este paso se ignora si la transparencia est activa.
Transparencia (Transparent)
Ignora el color de fondo y hace que la capa sea transparente.
Opacidad (Opacity)
Ajusta la opacidad (o semitransparencia) de la capa, de 0 (invisible) a 100 (opaca).
Forzar la textura (Force own texture)
Fuerza a la capa a mantener cierta textura en vez de mostrarla directamente en la pantalla. Es til
para algunos efectos. Aunque disminuye la velocidad de renderizacin, as que debes seleccionar
No a menos que sea necesario.
ndice de escala (Scale rate)
Cambia el ndice al que est escalada la capa si es el caso en la capa o plano, parecido al paralaje
pero para el zoom. Un ndice de escala a 0 significa que la capa siempre estar a escala 100%
aunque se aplica un escalado. Un ndice de escala 100 significa que se escalar tanto como
indiques.
Paralaje (Parallaz)
Cambia el ndice al cual se desplaza la capa en direccin vertical y horizontal. En un paralaje de
100,
100 significa desplazamiento normal, 0,0 significa que no se mueve (til para UIs), 50 significa
que se mueve a la mitad de velocidad, etc. Tambin es til para mltiples fondos en movimiento.
4.4 Objectos
En C2 los objetos son lo ms til en un proyecto. La mayora de las cosas que ves en un juego
de C2 son los objetos, incluyendo los objetos ocultos con otros propsitos (por ejemplo el audio
de fondo).
Cuando introduces un nuevo objeto, eliges en primer lugar un plugin en el dilogo (por ejemplo,
Sprite). Esto crea un tipo de objeto (por ejemplo, EnemigoTroll-TrollEnemy). Cuando el ratn
se convierte en una mira puedes situar el primer ejemplo y puedes duplicarlos para crear ms
ejemplos del mismo tipo.
Las diferencias entre tipo y ejemplo de objeto son esenciales para usarlos correctamente. Los
objetos constan de varias partes, explicadas debajo. Tambin hay secciones del manual que dan
ms detalles de cada una.
Plugins
Un plugin se define como objeto. Por ejemplo, un Sprite es un tipo de objeto, y un Audio es otro
distinto. Se definen como Sprite plugin y Audio plugin respectivamente.
Los programadores de Javascript pueden crear plugins nuevos (y comportamientos) usando
Javascript SDK.
Tipos de objeto (Objects type)
Los tipos de objetos definen la clase del objeto. Por ejemplo, EnemigoTroll (TrollEnemy) y
EnemigoOgro (OgreEnemy) pueden ser tipos distintos del plugin Sprites. Tienen animaciones
distintas y se les pueden aplicar eventos de forma individual para hacerlos parecer y actuar
distintos, a pesar de pertenecer ambos a Sprites.
Ejemplos (Instances)
Usando el ejemplo anterior, si hay cuatro objetos de EnemigoTroll en un plano, estos son
ejemplos del tipo de objeto EnemigoTroll. Slo hay un tipo EnemigoTroll. As mismo, puede
haber mltiples ejemplos del tipo de objeto EnemigoOgro.
Variables de ejemplo (Instances variables)
Las variables de ejemplo se aaden al tipo de objeto y almacenan nmeros o textos por cada
ejemplo. Por ejemplo, si quieres que todos los monstruos tengan su propio contador de salud
(health counter) debes aadir la variable de ejemplo salud (health). Esto es esencial para hacer
los juegos ms interesantes cada ejemplo actuar de diferente forma.
Comportamientos (Behaviors)
Se pueden aadir comportamientos a los tipos de objeto para aadir cierta funcionalidad. Por
ejemplo la Direccin 8 (8 direction) se puede aadir a un Sprite, y podr ser movido con las
flechas del teclado. Esto ayuda a agilizar el desarrollo e incrementa la productividad. Los
comportamientos no estn para hacer todo por ti: en el sistema de eventos es donde la mayora de
la lgica del juego se define. Los comportamientos son, bsicamente, atajos. La mayora de ellos
pueden repetirse con eventos, pero as ahorras ms tiempo. Los comportamientos son muy
personalizables, si uno de ellos no hace exactamente lo que quieres que haga, puedes
personalizarlo usando un evento.
Todos los ejemplos y tipos de objetos usan comportamientos. No puedes aadir
comportamientos solo a algunos ejemplos aunque quizs puedas habilitarlos y deshabilitarlos
en cada uno de ellos.
Efectos (Effects)
Los efectos cambian la apariencia visual del objeto. No funcionan en todas las plataformas,
porque requiere WebGL. Se pueden ajustar los recursos para que todo aparezca razonablemente
bien aunque no funcione WebGL. Nota que los efectos son distintos de mezclar movimientos
(blend move) que funciona en todas las plataformas.
Familias (Families)
Las familias son grupos de tipos de objeto. Te ayudan a repetir eventos en distintos tipos de
objetos en grandes proyectos.
4.4.1 Plugins
Los plugings son los objetos. Por ejemplo, un Sprite es un tipo de objeto, y un Audio es otro
distinto. Se definen como Sprite plugin y Audio plugin respectivamente. Mira Referencia de
plugings (Plugin reference) para ms informacin de cada uno.
Los programadores de Javascript pueden crear plugins nuevos (y comportamientos) usando
Javascript SDK.
La mayora de los plugings definen sus propiedades en la Barra de Propiedades. Para ver una
lista completa, sita el pluging en Referencia de plugings (Plugin reference).
Hay tres tipos de plugings:
Visuales (Visual plugings) como los Sprites, que aparecen fsicamente en el plano y la pantalla.
Escondidos (Hidden plugings) como la Matriz (Array), que se sitan en un plano en particular
pero no aparecen en la pantalla.
Del proyecto completo (Project-wide plugings) como el Ratn o el Audio, que se aaden a
todo el proyecto una sola vez. Solo puede haber un tipo de objeto y ejemplo de este tipo de
plugings. Solamente proporcionan una capacidad (como poder usar el ratn). Son muy tiles en
el sistema de eventos.
C2 est diseado modularmente. Esto significa que no hay mucha funcionalidad: debes insertar
un plugin antes de poder usar sus funciones. Por ejemplo, no puedes reproducir ningn audio
antes de aadir el plugin de Audio al proyecto. Hacerlo puede parecer innecesario, pero hay
muchos plugings del proyecto completo y no todos los proyectos necesitarn todos. Por ejemplo,
si el plugin de Audio se aplicara automticamente en cada proyecto, los que no lo necesiten
gastaran rendimiento, espacio en el disco y dems. As que recuerda que si no aades un plugin
no estar realmente en el proyecto y har que este sea ms ligero y eficiente al exportar.
distintos del plugin Sprites. Tienen animaciones distintas y se les pueden aplicar eventos de
forma individual para hacerlos parecer y actuar distintos, a pesar de pertenecer ambos a Sprites.
Hay mltiples ejemplos de un tipo de objeto en el proyecto. Por ejemplo, quizs quieras que
haya cuatro objetos de EnemigoTroll esperando al jugador. Estos cuatro ejemplos comparten la
animacin, imgenes, comportamientos, variables de ejemplo y eventos. (En el caso de las
variables de ejemplos, cada ejemplo almacena un valor nico como la salud- y
comportamientos que funcionan independientemente del resto de ejemplos.)
Los tipos de objeto no tienen una posicin, ngulo o tamao. Estas son propiedades de los
ejemplos de ese tipo de objeto. La Barra del proyecto y la Barra de objeto muestran los
diferentes tipos de objetos del proyecto, pero no los ejemplos.
Los eventos son para aadir a un tipo de objeto. El evento filtra los ejemplos que cumplen esa
condicin. Por ejemplo, el evento Bala impacta en el Alien ("Bullet collides with Alien") se
aplica a todos los ejemplos de los tipos de objeto Bala (Bullet) y Alien. Aunque cuando
el evento funciona, las acciones solo se aplican a los ejemplos especficos envueltos en el
impacto. Para ms informacin ve a Cmo funcionan los eventos (How events work).
Los tipos de objeto pueden agruparse en familias. Te puede ayudar a evitar repetir los mismos
eventos en diferentes tipos de objeto.
4.4.3 Ejemplos
Los ejemplos son los objetos reales que puedes ver en el juego: un ejemplo de un tipo de objeto.
Por ejemplo, si hay cuatro EnemigoTroll en un plano, hay cuatro ejemplos del tipo de objeto
EnemigoTroll.
Son los ejemplos los que tienen una posicin, ngulo y tamao en el plano. Los tipos de objetos
no tienen estas propiedades solo definen la clase de objeto.
Se pueden crear ejemplos en el tiempo de ejecucin en el sistema de eventos (por la accin Crear
Objeto (Create Object) y Generar objeto (Spawn an objet)). Tambin puedes prepararlos de
antemano en los planos con la Vista de plano para disear niveles y pantallas de ttulo.
Seleccionando un ejemplo en la Vista de plano muestras sus propiedades en la Barra de
Propiedades. Hay un conjunto de propiedades comn a todos (o casi todos) los objetos, y algunas
propiedades inherentes al plugin. Las propiedades ms comunes se definen abajo, y las
inherentes al plugin se describen en Referencia de plugins (Plugin reference.)
4.4.5 Comportamientos
Los comportamientos dan a los tipos de objeto una funcionalidad concreta. Se pueden aadir
con el Dilogo de comportamientos de objeto. Mira la Referencia de comportamientos (Behavior
reference) para ms informacin sobre cada uno.
Un ejemplo de comportamiento es el de 8 direcciones (8 direction). Este permite que un objeto
se mueva usando las flechas del teclado. Te ayuda a agilizar el desarrollo e incrementar la
productividad. Los comportamientos no estn para hacer todo por ti: en el sistema de eventos es
donde la mayora de la lgica del juego se define. Los comportamientos son, bsicamente, atajos.
La mayora de ellos pueden repetirse con eventos, pero as ahorras ms tiempo. Los
comportamientos son muy personalizables, si uno de ellos no hace exactamente lo que quieres
que haga, puedes personalizarlo usando un evento.
Todos los ejemplos de un tipo de objeto tienen comportamientos. No puedes aadir un
comportamiento slo a ciertos ejemplos - pero puedes habilitarlos o deshabilitarlo en cada uno
de ellos.
Algunos comportamientos aaden sus propiedades a la Barra de Propiedades. Ve a Referencia de
comportamientos (Behavior reference) para ver las de cada uno.
Algunos comportamientos tambin transmiten a los objetos a los que se les aplica sus propias
condiciones, acciones y expresiones. As, stas se muestran junto con las propias del objeto en el
dilogo de Aadir condicin o accin y en el Panel de expresiones.
Los comportamientos se pueden agrupar en familias. Todos los tipos de objeto en la familia
tendrn el mismo comportamiento.
4.4.6 Efectos
Los efectos cambian la apariencia visual de los objetos. Se pueden aadir con el Dilogo de
efectos. Tambin se pueden aadir a capas y planos, aunque los efectos que se combinan con el
fondo no se pueden usar en planos. Los efectos tambin son llamados shaders o WebGL shaders
effects, ya que se estos son la tecnologa oculta que hace posibles los efectos. Debajo hay un
ejemplo de Efecto agua (Water effect) en una imagen.
Soporte (Support)
Para que se muestren los efectos es necesario que el dispositivo soporte WebGL. Para ms
informacin mira la seccin Tecnologa (Technology) en la parte de Lienzo Canvas. En resumen,
no todas las plataformas u ordenadores soportan WebGL as que los efectos no se ven en estas
plataformas. Para asegurar que tu proyecto siga funcionando correctamente aunque el dispositivo
no soporte WebGL, mira la seccin Recursos (Fallbacks).
Si se ven o no los efectos se puede comprobar con la Condicin del sistema (system condition)
Se muestran efectos (Effects are supported).
Si se usan mltiples efectos, el Modo de mezcla se aplica slo al ltimo efecto. Por ejemplo con
tres efectos, los efectos se encadenaran con normalidad, y el Modo de mezcla se usar solo para
mezclar el resultado del tercer efecto con el fondo.
Recursos (Fallbacks)
Si el dispositivo no soporta WebGL, puedes especificar qu hacer usando la propiedad Recursos
(Fallbacks) en la categora Efectos (Effects) en la Barra de Propiedades.
Por defecto, la propiedad Recursos cambia el Modo de mezcla a Normal si no se pueden soportar
los efectos. (Recuerda que la propiedad Modo de mezcla siempre funciona, en cualquier
plataforma u ordenador.) Esto har que el objeto aparezca como si no tuviera ningn efecto
cuando no se soporta WebGL.
Las otras opciones de Recursos te permiten cambiar la propiedad Modo de mezcla a otra opcin.
Por ejemplo, cuando usas el efecto pantalla (Screen effect) puedes conseguir un resultado similar
usando Aditivo (Additive) en el Modo de mezcla, as que puedes poner en Recursos - Aplicar
mezcla Aditivo (Set Additive blend). Si se soporta WebGL el objeto se mostrar con el
efecto pantalla (Screen effect). Si no, no funcionar este efecto pero s el Aditivo (Additive) del
Modo de mezcla, pareciendo algo similar al efecto.
Finalmente, los recursos te permiten configurar un objeto para que se destruya (o que la capa se
esconda). Esto se puede usar en objetos opcionales con un uso meramente esttico, por lo que si
no puede mostrar el efecto, simplemente no aparecer dicho objeto.
Pruebas (Testing)
Asegrate de probar tu proyecto con WebGL habilitado y deshabilitado en las propiedades del
proyecto para comprobar que los recursos funcionan correctamente y el contenido se muestra de
una forma razonablemente correcta. No puedes asumir que todos los usuarios tendrn soporte
para WebGL, incluso si usan un navegador que soporta WebGL, ya que un hardware antiguo o
unos drivers caducados harn que no se pueda usar WebGL. Hacer pruebas es la mejor forma de
proceder.
Rendimiento (Performance)
Usar demasiados efectos puede ralentizar el rendimiento, especialmente en mviles. Intenta usar
los efectos solamente cuando sea necesario.
Crear muchos ejemplos de un objeto que contiene efectos puede resultar ineficiente, ya que los
efectos deben procesarse muchas veces en pequeos objetos. Si muchos ejemplos necesitan usar
efectos, sera ms apropiado situar todos los ejemplos en la misma capa y aplicar el efecto a la
capa. Esto mejorar el rendimiento manteniendo el mismo efecto.
Nunca uses efectos para crear un efecto esttico en un objeto. Por ejemplo, no uses Escala de
grises (Grayscale) para que un objeto aparezca en escala de grises. En su lugar, aplica la
escala de grises a la propia imagen en el editor e imprtala as al proyecto. Tiene el mismo efecto
visual y evitas que el efecto se degrade al procesarlo. Los efectos como Escala de grises
(Grayscale) se deben usar solamente para transiciones o para que los objetos aparezcan en
escala de grises slo ocasionalmente.
Para ms informacin, mira la seccin del manual Consejos para el rendimiento (performance
tips).
Esto hace la tarea ms fcil, agrupando objetos que funcionan de la misma forma.
Los objetos de la izquierda son los objetos del proyecto que puedes aadir a la familia. Los de la
derecha son los que ya has aadido. Haz doble clic en un objeto para pasarlo al otro lado.
Puedes seleccionar varios objetos a la vez manteniendo pulsado Control y clicando varios de
ellos, despus pulsas el botn del centro del dilogo para transferirlos.
Cuando hayas terminado, clica OK y la familia aparecer en la Barra del Proyecto. Se puede
expandir para ver todos los objetos que contiene:
La familia, y los objetos que contiene, se pueden editar clicando el botn derecho sobre ella y
eligiendo opciones en el men, como Quitar de la familia (Remove from family) o Editar familia
(Edit family).
Se pueden aadir objetos a mltiples familias. Todos los eventos de la familia se aplicarn al
objeto.
Si aades una variable de ejemplo a una familia, todos los tipos de objetos dentro de ella
adquieren esa variable. Por ejemplo, aadiendo la variable de ejemplo Salud (Health) a la
familia Enemigos (Enemies) en el ejemplo de arriba, BladeEnemy, BugEnemy, CrescentEnemy,
FighterEnemy, SaucerEnemy, ScytheEnemy y SlicerEnemy adquirirn la variable Salud (Health).
Aparecer tambin en el editor, junto a esta nueva variable, la propia de cada objeto. Pero en la
Vista de hoja de eventos la familia solo mostrar su propia variable de ejemplo (slo los
aadidos directamente a la familia). Esto significa que cualquier variable de ejemplo que quieras
habilitar para los eventos de la familia debes aadirla a la propia familia y no a los objetos dentro
de ella.
Si un tipo de objeto pertenece a distintas familias, adquiere todas las variables de las familias.
como tipos de objeto propios que contienen ejemplos de otros tipos de objeto. Esto es til si
necesitas que un solo evento seleccione dos listas distintas de ejemplos del mismo tipo objeto.
Resumen (Summary)
Las familias son una funcin muy importante y esencial para ayudarte a simplificar los
proyectos. Las variables de ejemplo y los comportamientos que se aaden a las familias son
adquiridos por todos los objetos dentro de ella, lo que permite aplicar la lgica a varios objetos a
la vez.
4.5 Eventos
Los eventos son la principal funcin de C2: en vez de complicados lenguajes de programacin y
scripts con una sintaxis enrevesada, en la que es fcil cometer errores, puedes definir cmo
quieres que funcione el juego usando un sistema lgico de bloques. Los bloques se refieren a los
eventos, aunque hay varios bloques que conforman una hoja de eventos.
El sistema de eventos de C2 puede no resultar familiar a los nuevos usuarios. Lee Como
funcionan los eventos (How Events Work) para ver un resumen. Los eventos no son bloques
prediseados que limitan lo que quieres hacer. Estn diseados para darte las herramientas
bsicas para crear juegos sofisticados.
Los conceptos bsicos de los eventos son que las condiciones filtran los ejemplos que cumplen
la condicin, entonces las acciones funcionan solamente para esos ejemplos. Un malentendido
comn es que todos los ejemplos deben funcionar de la misma forma. se no es el caso: la
funcin de los eventos es filtrar ejemplos de forma individual, y aplicar acciones en aquellos que
cumplen cierta condicin.
Los eventos se editan en la Vista de hoja de eventos usando el dilogo de Aadir
condicin/accin (Add condition/action), el dilogo de Parmetros (Parameters) y el Panel de
expresiones (Expressions panel).
Debajo se muestra un sencillo diagrama. (No incluye todas las funciones de los eventos el resto
estn explicados en esta seccin).
Las partes que forman los eventos se resumen debajo. Revisa todas las secciones relevantes del
manual para ms informacin de cada una. Mira tambin, Cmo funcionan los eventos (How
events work).
Los eventos consisten en condiciones que se deben reunir, acciones que funcionan si es el caso
y, opcionalmente, ms sub-eventos que prueban ms condiciones, activas ms acciones, etc. Por
ejemplo, si la condicin Las balas impactan en el Alien (Bullet collides with alien) aparece, la
accin Destruir Alien (Destroy Alien) funcionar, y la accin de dest5ruir slo afectar a
aquellos ejemplo que tengan dicha condicin.
Las condiciones indican el criterio que se debe reunir. Filtran los ejemplos que s los renen.
Las acciones hacen que sucedan cosas. Solamente afectan a los ejemplos filtrados por las
condiciones.
Las expresiones pueden ser sumas que resolver para obtener valores, o recuperarlos de objetos,
como lq coordenada X de un Sprite.
Los sub-eventos siguen a los eventos, apareciendo la sangra en la Hoja de eventos.
Los grupos organizan los eventos. Se pueden habilitar o deshabilitar en conjunto.
Los comentarios te permiten escribir notas y descripciones de los eventos. Se sitan
normalmente encima del evento que ests describiendo. Esto es importante para mantener
ordenados tus proyectos.
Incluir (Includes) puede intercambiar hojas de eventos entre planos. Esto evita que tengas que
copiar y pegar los eventos de forma individual en cada plano. Aadir incluir es como hacer un
copia-pega automtico del contenido de una hoja de eventos en otra.
Las variables de evento pueden almacenar nmeros y textos de forma global (para todos los
planos) o local (para un rango especfico de eventos).
Las hojas de evento son una lista de eventos. Se pueden asignar a un plano especfico, o
incluirlas en otra hoja de eventos.
Scripting
C2 slo usa el sistema de eventos y no funciona con ningn script. Esto es porque el sistema de
eventos es suficientemente potente para sustituir cualquier script. Aunque, si eres programador,
quizs te interese extender C2 usando Javascript SDK.
Cuando una Bala (Bullet) colisiona con un Monstruo (Monster) la condicin tiene lugar. Los
ejemplos de Balas y Monstruos envueltos en la colisin son seleccionados por el evento.
Entonces, la accin slo funciona para los ejemplos seleccionados por la condicin. Por ejemplo,
si hay otras 3 balas en la pantalla, slo la que est incluida en la colisin se destruye por la
accin Bala: Destruir (Bullet: Destroy). Tambin, slo el Monstruo que es golpeado resta una
unidad de salud (Subtract 1 from health) que es una variable de ejemplo. Sera muy difcil hacer
buenos juegos si esto no funcionara as y las acciones afectaran a todos los ejemplos de
monstruos y balas! As que recuerda que las condiciones filtran o recogen los ejemplos para que
las acciones funcionen en ellos.
Otra forma de pensar en los eventos es la de Si todas las condiciones se renen en un ejemplo,
entonces las acciones funcionan.
Borrar recoger eventos entre uno y otro (Picking resets between events)
Cuando un evento finaliza, el siguiente comienza desde cero. Sus condiciones empezarn a filtrar
todos los ejemplos de nuevo.
Por otra parte, los sub-eventos (que aparecen con sangra) continan la tarea desde donde la dej
el evento del que provienen. Un sub-evento filtrar an ms los ejemplos dejados por el evento
que vena antes de l. Si un evento tiene dos sub-eventos, ambos recogern ejemplos del mismo
grupo del que recoga el padre (el primer sub-evento no afecta al segundo). En otras palabras, los
eventos en el mismo nivel de sangra siempre recogen del mismo grupo de ejemplos, y los
eventos de nivel ms bajo siempre trabajan con los ejemplos filtrados desde ms arriba.
Esto indica que el evento est detonado. En lugar de ejecutarse siguiendo los pasos, este evento
funciona (o se detona) cuando ocurre algo. En este caso, el evento funciona cuando el usuario
pulsa la barra espaciadora del teclado. No aparece en ningn otro momento. Los detonantes
hacen que un evento no siga la secuencia de ejecucin de arriba a abajo. Esto significa que el
orden de los eventos con un detonante no es relevante (excepto en relacin con otros detonantes
del mismo tipo, que siguen actuando de arriba a abajo).
Slo puede haber un detonante por evento, porque dos no pueden funcionar simultneamente.
Pero varios detonantes s pueden agruparse en bloques o (ver la explicacin siguiente).
Bloques o
Como se ha mencionado antes, se tienen que reunir todas las condiciones para que un evento
funcione. Esto se llama Lgica Y (Logica AND), porque la condicin 1 Y la condicin 2 Y
la condicin 3... deben cumplirse. Pero puedes modificar un evento para que funcione cuando
cualquiera de las tres condiciones se cumpla. Esto se llama Lgica O (Logical OR), porque
el evento funcionar si la condicin 1 O la condicin 2 O la condicin 3 se cumplen.
Normalmente los bloques funcionan como bloques Y (AND). Para crear bloques O (OR), clica
sobre el bloque con el botn derecho y selecciona Crear bloque O (Make Or block). Entonces
aparecer un -or- entre cada condicin, como se muestra abajo.
Date cuenta que normalmente slo puedes poner un detonante por evento, pero puedes juntar
varios en un bloque de este tipo, por lo que el evento funcionara si cualquiera de los tres se da.
Puedes combinar los tipos de bloques usando sub-eventos. Esto te permite construir una lgica
ms compleja, como un bloque O seguido de uno Y.
Condiciones enlazadas
Algunos eventos se enlazan, es decir, se repiten sus acciones varias veces. Date cuenta que las
flechas circulares en el ejemplo siguiente indican esto.
Esto significa que, cuando comienza el plano, la accin Crear objeto (Create object) se repite 10
veces. El resultado final es la creacin de 10 monstruos en lugares al azar dentro del plano.
Puede haber ms condiciones que sigan la condicin Repetir (Repeat). Se comprueban en todas
las repeticiones y deben cumplirse para que la accin se desencadene. Puede haber ms de un
enlace en un evento, pero no es frecuente.
Familias
Date cuenta que las familias recogen sus ejemplos independientemente a los tipos de objeto que
contienen. Para ms informacin ve a la seccin Seleccionar familias en los eventos (Picking
families in events).
Resumen
Usando este sistema de eventos es posible crear una lgica sofisticada que hace juegos de forma
rpida y fcil. Es una alternativa muy poderosa a los lenguajes de programacin para personas
que no estn acostumbradas al uso de estas tcnicas.
Aunque esta seccin ha descrito las partes esenciales del sistema de eventos, todava no ha
cubierto todo. El resto de la seccin de Eventos trata ms caractersticas que puedes usar.
Behavior reference, Plugin reference y System reference tambin hablan de las condiciones,
acciones y expresiones en C2.
4.5.3 Condiciones
En los Eventos, las condiciones filtran los ejemplos que renen ciertos criterios. Aparecen a la
izquierda del evento. Todas las condiciones en un evento deben reunirse para al menos un
ejemplo para que la accin funcione. Las acciones solo se aplican a los ejemplos que tienen esas
condiciones.
El sistema de condiciones no selecciona ejemplos: simplemente son verdaderos o falsos, a
menos que se refieran especficamente a un objeto, como Recoger un ejemplo al azar (Pick
random instance).
Hay tres tipos de condiciones: las normales, las detonadas y las enlazadas. Mira la seccin
Cmo funcionan los eventos (How events work) para ms informacin.
Invertir condiciones
Las condiciones se pueden invertir, lo que cambia aquello que comprueba. Por ejemplo, la
condicin Monstruo se superpone a Jugador (Moster is overlapping Player) es verdadera
siempre que el monstruo toca al jugador. Pero, si se invierte, aparece un icono rojo tachado que
significa Monstruo no se superpone a Jugador (Monster is not overlapping Player).
No se pueden invertir todas las condiciones (los detonadores no se pueden, ya que el evento no
tendra sentido en ese caso).
4.5.4 Acciones
En los eventos, las acciones hacen algo, como crear un objeto o ir a otro plano. Aparecen a la
derecha del evento.
Las acciones solo afectan a los ejemplos que renen las condiciones del evento. Mira la seccin
Cmo funcionan los eventos (How events work) para ms informacin.
4.5.5 Expresiones
En los eventos, las expresiones se usan para calcular sumas o recuperar informacin de un
objeto, como la coordenada X de un Sprite. Las expresiones se introducen el Dilogo de
parmetros. El Panel de Expresiones se muestra a la vez que da un catalogo de todas las
expresiones del sistema y de objeto disponibles en el proyecto.
Algunos ejemplos de expresiones, que pueden ir desde un nmero simple a un clculo complejo,
son:
0
random(360)
Sprite.X
(Player1.X + Player2.X) / 2
Sprite.8Direction.Speed
Sprite.X + cos(Sprite.Angle) * Sprite.Speed * dt
Nmeros
Los nmeros simplememnte se introducen como dgitos con un decimal opcional separado por
un punto. Por ejemplo: 5 o 1.2.
Texto (Secuencias/Strings)
El texto, tambin conocido como secuencias (strings) en programacin y a veces en C2. El texto
en las expresiones debe ser entrecomillado, por ejemplo Hola (Hello).
Las comillas no se incluyen como parte del texto, as que establecer que un objeto de texto
muestre la expresin Hola (Hello) har que aparezca Hola (Hello), sin comillas. Para
incluir comillas en una secuencia debers duplicarlas, por ejemplo l me dijo hola (He
said hi to me) se convertir en l me dijo hola (He said hi to me).
Puedes usar & para crear cadenas de texto y nmeros, por ejemplo Tu puntuacin es: &
puntuacin (Your score is: & score)
Para aadir un salto de lnea a la secuencia usa la expresin del sistema lnea nueva (newline),
por ejemplo, Hola & lnea nueva & mundo ("Hello" & newline & "world").
Operadores (Operators)
Puedes usar los siguientes operadores en las expresiones:
+ (suma)
- (resta)
* (multiplicacin)
/ (divisin)
% (mdulo, el resto tras la divisin)
^ (incrementar el poder)
& (crear secuencias)
Tambin hay operadores de comparacin =, <>, <, <=, >, >= para comparar valores. Vuelven a 1
si la comparacin es verdadera o a 0 si es falsa.
& tambin se puede usar en la lgica Y (AND) y | para la O (OR). Es til usarlos junto a los
comparadores, por ejemplo puntuacin < 0 | salud < 0 (score < 0 | health < 0), que vuelve a 1
si es verdadero y 0 si es falso.
?: es un operador condicional, que te permite probar condiciones en las expresiones. Es til
usado con los operadores de comparacin y de lgica. Toma la forma de condicin
resultado_si_verdadero: resultado_si_falso (condition ? result_if_true : result_if_false)
Por ejemplo, salud < 0 | puntuacin < 0 Fin del juego! : Vuelve a intertarlo! (health
< 0 | score < 0 ? "Game over!" : "Keep going!").
La condicin cuenta como verdadera si no es cero, y falsa si lo es.
4.5.6 Sub-eventos
Los sub-eventos aparecen detrs de otros eventos. Estos continan recogiendo ejemplos del
evento padre. Siguen funcionando tras el trmino de la accin que activa el evento padre.
Debajo un ejemplo.
4.5.7 Grupos
Los grupos de eventos sirven principalmente para organizar eventos. Se pueden abrir y cerrar
usando los botones + o -. Se editan con el Dilogo de grupo de evento.
Los eventos se pueden arrastrar y soltar dentro y fuera del grupo. Grupos enteros tambin
pueden ser habilitados y deshabilitados con la accin del sistema Activar Grupo (Set Group
Active), lo que es til en pausas del juego.
4.5.8 Comentarios
Los comentarios del evento son notas que te ayudan a recordar cmo funcionan los eventos y
qu hacen. Son muy importantes para ayudarte a recordar cmo funcionan las cosas en grandes
proyectos! Los comentarios tienen el fondo amarillo y aparecen sobre el evento que estn
describiendo.
Se pueden editar haciendo doble clic sobre ellos. Puedes hacer un comentario con un salto de
lnea manteniendo pulsado shift y pulsando Enter.
Si usas C2 muy a menudo, encontrars esenciales los comentarios para ayudar a organizarte y
entender el funcionamiento de trabajos grandes. Volver a un proyecto tras unos pocos meses sin
ningn comentario sera difcil, as que no los subestimes.
Los comentarios no afectan en absoluto al funcionamiento de tu proyecto. Slo son informativos.
Nada que escribas all se exportar al juego.
4.5.9 Adjunto
La Hoja de eventos adjunta te permite incluir una hoja de evento en otra. Es como un copiapega automtico del contenido de una hoja a otra. Esto es til para compartir eventos comunes en
varios planos. Por ejemplo, puedes usar diferentes hojas de eventos para distintas partes de la
lgica del juego. Puedes tener hojas de eventos llamadas Entrada del Jugador (Player input),
Control del enemigo (Enemy control), Efectos (Effects) y dems. Entonces cada nivel del juego
puede incluir estos eventos habituales en la propia hoja de evento de ese plano. Esto te permite
compartir eventos entre mltiples planos sin tener que copiar y pegar todos los eventos una y
otra vez.
Los adjuntos pueden aadirse haciendo doble clic en un espacio de la Hoja de eventos, o usando
la Barra de Eventos.
4.5.10 Variables
Las Variables de Evento son los valores numricos o textuales para el proyecto global o local,
para un conjunto de eventos. Se modifican con el Dilogo de Variables de evento.
Variables globales
Las variables globales aparecen con el icono un globo terrqueo (como en la imagen de arriba).
Estn en el nivel ms alto de la hoja de eventos- no son sub-eventos ni estn dentro de un
grupo.
Almacenan sus valores entre planos. Los eventos en cualquier plano pueden acceder a las
variables globales.
Variables locales
Las variables locales se sitan tras otros eventos o dentro de un grupo. Aparecen con el icono
de un diamante en vez de un globo.
4.6 Archivos
Cualquier archive externo puede ser importado a tu proyecto usando la Barra del Proyecto. Es
til para incluir cualquier otro recurso que tu proyecto pueda necesitar, como videos, imgenes
extras, datos JSON, datos XML, datos de texto, documentos, o otros archivos generales que
quieras permitir descargar a los usuarios.
Para ver ideas sobre usos de archivos en tu proyecto, mira el tutorial Using project files in
Construct 2 .
Se pueden importar archivos clicando el botn derecho en la carpeta de archivos (files) en la
Barra del Proyecto y seleccionando Importar archivos (Import files).
Por defecto puedes aadir cualquier tipo de archivo a tu proyecto, pero tambin puedes filtrar los
archivos para mostrar slo aquellos del tipo que buscas.
Importar archivos del proyecto tiene los siguientes efectos:
1. El archivo se copia en tu carpeta del proyecto o se almacena dentro del archivo .capx (No hay
referencia del lugar de almacenamiento del archivo, as que si cambias el archivo original, no se
actualizar en el proyecto).
2. Cuando haces la vista previa, tambin se puede acceder al archivo desde el servidor de vista
previa (localhost), que te ayuda a probar los archivos dentro del proyecto.
3. El archivo se exporta junto al proyecto.
4. Cuando lo publiques, el archivo estar disponible para su uso offline junto con el resto del
proyecto. Para ms informacin mira el tutorial Offline games in Construct 2 .
Los archivos del proyecto pueden ser solicitados por AJAX en tiempo de ejecucin mediante la
accin Request project file de objetos AJAX. Esto es til para datos XML o JSON en tiempo de
ejecucin.
5. Referencia de
Comportamientos
Est seccin nos da una referencia de todos los comportamientos oficiales que vienen con C2.
Cada uno tiene un resumen de su uso, una lista de propiedades y una detallada lista de acciones,
condiciones y expresiones especficas del comportamiento. Los comportamientos transmiten sus
condiciones, acciones y expresiones al objeto al que son aadidos, apareciendo junto a las
propias caractersticas del objeto en el Dilogo de Aadir Condicin/Accin y en el Panel de
expresiones.
Los comportamientos se pueden aadir y quitar a un objeto va Barra de Propiedades, que abre el
Dilogo de Comportamientos de objeto y el de Aadir comportamiento.
Personalizar controles
Por defecto, los movimientos del comportamiento controlados por el usuario usan unos
controladores estndares ya fijados (normalmente basados en las flechas del teclado). Para
cambiarlos, cambia la propiedad Controles por defecto (Default controls) a No, y configura
algunos eventos usando la accin Control simulado (Simulate control). Para un ejemplo, ve al
ejemplo Paltform 4 (custom controls).capx en la carpeta de ejemplos en el directorio de
instalacin de C2. Utiliza los siguientes eventos para cambiar las flechas del teclado a W, A y D:
La accin Control simulado (Simulate control) no tiene que manejarse con el teclado. Por
ejemplo, se puede usar con un toque para crear controles de toque de pantalla o con un mando.
Tambin puedes configurar eventos para que controlen ejemplos automticamente con la accin
Control simulado (Simulate control). Esto te permite configurar enemigos controlados por el
ordenador o personajes sin jugador (NPCs), a veces referidos como AI.
5.1 8 direcciones
El comportamiento de 8 direcciones permite que un objeto se mueva arriba, abajo, izquierda,
derecha o en las diagonales, controlado por las flechas del teclado por defecto. Suele ser til para
controlar al jugador en juegos con vista cenital. Tambin se puede simplificar a 4 direcciones
(arriba/abajo, izquierda/derecha) til para deslizarse o para nadar.
El comportamiento de 8 direcciones est bloqueado para cualquier objeto que contenga el
comportamiento Slido (Solid).
Para configurar los controles, mira el resumen de referencias de comportamiento (behavior
reference summary).
Ahora, si la ventana cambia su tamao durante la vista previa, los objetos mantendrn sus
posiciones relativas, como se muestra abajo:
Esto es til para elementos de la interfaz como notificaciones y pantallas de visualizacin frontal
(HUDs).
Posiciones relativas
El Borde izquierdo (Left edge) y el Borde derecho (Right edge) posicionan el objeto en
relacin a las esquinas de la ventana, sin cambiar el tamao del objeto. Por ejemplo, si el borde
izquierdo (left edge) se ajusta a la ventana derecha, (window right) el objeto siempre estar a la
misma distancia del borde derecho de la ventana.
El Borde derecho (Right edge) y el Borde del fondo (Bottom edge) ajustan el tamao del
objeto en relacin a las esquinas de la ventana. Por ejemplo, si quieres que un Fondo adosado
(mosaico) se extienda ms all del ancho de la ventana, ajusta el borde derecho (right edge) a la
ventana derecha (window right).
Ajusta al Origen (Origin) slo para evitar que el objeto salgo completamente del plano. El
resultado depende de donde hayas marcado el origen del objeto, pero con un origen centrado se
parar en una posicin similar a la siguiente imagen:
controlar automticamente otro tipo de objetos como enemigos que caminan hacia delante
constantemente.
Para dos ejemplos del comportamiento Bala ve a Bouncing balls.capx y Bouncing bullets.cap en
la carpeta de ejemplos en el directorio de instalacin de C2.
Propiedades de Bala
Velocidad (Speed)
La velocidad inicial de la bala, en pxeles por segundo.
Aceleracin (Acceleration)
La tasa de aceleracin de la bala en pxeles por segundo por segundo. Cero mantendr una
velocidad constante, los valores positivos la acelerarn y los negativos la decelerarn hasta
pararse (el objeto no puede volver).
Gravedad (Gravity)
La fuerza de la gravedad que hace que la bala descienda, en pxeles por segundo por segundo.
Cero deshabilita la funcin de la gravedad que es til en juegos con vista cenital. Los valores
positivos hacen que la bala dibuje una parbola mientras avanza, por efecto de la gravedad.
Rebotar contra slidos (Bounce off solids)
Si lo ajustas a S, la bala rebotar en cualquier objeto con el comportamiento Slido (Solid).
Tambin calcular en ngulo de reverberacin para que sea realista dependiendo de la forma y el
ngulo del objeto.
Ajustar ngulo (Set angle)
Si est en No, el comportamiento nunca cambiar el ngulo del objeto. Si est en S, el
comportamiento siempre ajustar el ngulo del objeto al del movimiento.
Condiciones de la Bala
Cotejar velocidad (Compare speed)
Coteja la velocidad actual de la bala, en pxeles por segundo.
Cotejar la distancia viajada (Compare distance travelled)
Coteja la distancia total que la bala ha recorrido, en pxeles. Esto no tiene en cuenta la alteracin
de la posicin del objeto llevada a cabo por otras acciones como Ajustar posicin (Set position).
Acciones de la Bala
Rebotar en objeto (Bounce off object)
Hace que la bala rebote en un objeto si lo toco. Ya que la bala solamente toca el objeto, es til
usar el evento Colisin (On collision). Tambin calcular el ngulo de reverberacin para rebotar
de forma realista dependiendo de la forma y ngulo del objeto. Si la bala no se solapa al objeto, o
se queda atascada dentro, est accin no tendr efecto.
Ajustar aceleracin (Set acceleration)
Ajusta la aceleracin de la bala en pxeles por segundo por segundo.
Ajustar ngulo de movimiento (Set angle of motion)
Ajusta el ngulo al que se mueve la bala, en grados.
Expresiones de la Bala
Aceleracin (Acceleration)
Da la aceleracin actual en pxeles por segundo por segundo.
ngulo de Movimiento (AngleOfMotion)
Da el ngulo al que la bala se est moviendo (que puede ser distinto al del objeto), en grados.
Distancia viajada (DistanceTravelled)
Da la distancia total que la bala ha recorrido desde su creacin en pxeles. No tiene en cuenta
movimientos del objeto realizados por otras acciones como Ajustar posicin (Set position).
Velocidad (Speed)
Da la velocidad de movimiento de la bala en pxeles por segundo.
Propiedades de coche
Velocidad mxima (max speed)
La velocidad mxima, en pxeles por segundo, a la que el coche puede acelerar.
Aceleracin (Acceleration)
La tasa a la que el coche acelera, en pxeles por segundo por segundo.
Deceleracin (Deceleration)
Condiciones de coche
Cotejar velocidad (Compare speed)
Coteja la velocidad actual del coche, en pxeles por segundo.
Se est moviendo (Is moving)
Verdadero si la velocidad del momento es distinta de cero. Invirtelo para comprobar que el
coche est parado.
Acciones de coche
Ajustar aceleracin (Set acceleration)
Ajustar deceleracin (Set deceleration)
Ajustar recuperacin de la deriva (Set drift recover)
Ajustar friccin (Set friction)
Ajustar velocidad mxima (Set max speed)
Ajustar velocidad de manejo (Set steer speed)
Ajustan las propiedades correspondientes. Mira las propiedades de coche para ms informacin.
Habilitar (Set enabled)
Habilita o deshabilita el movimiento. Si est deshabilitado, el movimiento no tendr efecto sobre
el objeto.
Selecciona ignorar entrada (Set ignoring input)
Ajusta si se ignorar la entrada. Si se ignora, presionar las flechas del teclado no tendr efecto.
Pero, si deshabilitas el comportamiento, el objeto continuar movindose.
Ajustar velocidad (Set speed)
Ajusta la velocidad actual a la que el objeto se mueve, en pxeles por segundo.
Simular control (Simulate control)
Simula uno de los controles de movimiento mientras se mantiene pulsado. Es til cuando ajustas
los Controles por defecto a No. Mira los Controles personalizados en el resumen de referencias
de comportamiento (behavior reference summary) para ms informacin.
Parada (Stop)
Un acceso directo para poner la velocidad a cero.
Expresiones de coche
Aceleracin (Acceleration)
Deceleracin (Deceleration)
Recuperacin de la deriva (DriftRecover)
Friccin (Friction)
Velocidad mxima (MaxSpeed)
Velocidad de manejo (SteerSpeed)
Dan las propiedades correspondientes. Mira las propiedades de coche para ms informacin.
ngulo de movimiento (MovingAngle)
Da el ngulo de movimiento actual (que puede ser distinto del ngulo del objeto), en grados.
Velocidad (Speed)
Da la velocidad actual del objeto, en pxeles por segundo.
VectorX
VectorY
Da la velocidad del objeto en cada eje, en pxeles por segundo. Por ejemplo, si el objeto se
mueve a la izquierda 100 pxeles por segundo, VectorX ser -100 y VectorY 0.
Propiedades de desvanecerse
Activar al inicio (Activate at start)
Si S, el objeto empezar a desvanecerse tan pronto como sea creado. Si No, el desvanecimiento no
empezar hasta que uses la accin Empezar (Start).
Tiempo de fundido (Fade in time)
Tiempo, en segundos, de aparecer desde invisible. Si est a 0 se salta este paso.
Tiempo de espera (Wait time)
Tiempo, en segundos, de espera entre aparecer y desvanecerse. Si est a 0 se salta este paso.
Tiempo de desvanecimiento (Fade out time)
Tiempo, en segundos, de desvanecerse hasta invisible. Si est a 0 se salta este paso.
Destruir (Destroy)
Si se establece tras Despus de desvanecerse (After fade out), el objeto ser automticamente
destruido tras la accin. Si No, el objeto no se destruir con el comportamiento. Asegrate de
destruir los objetos cuando no sean necesarios, ya que aquellos que estn siendo invisibles pueden
causar que el juego se ralentice.
Condiciones de desvanecerse
Terminar desvanecerse (On fade out finished)
Detonado cuando se termina el desvanecimiento.
Acciones de desvanecerse
Comenzar desvanecimeinto de nuevo (Restart fade)
Hace funcionar el desvanecimiento otra vez desde el principio.
Comenzar desvanecimiento (Start face)
Si Activo en el inicio (Active on start) est en No, esto detonara el desvanecimiento.
Expresiones de desvanecerse
No hay expresiones para este comportamiento.
5.10 Flash
El comportamiento Flash hace que un objeto parpadee cambiando su visibilidad de forma
intermitente durante un periodo de tiempo. No tiene propiedades ni expresiones.
Solamente aadiendo Flash a un objeto no haces nada. Debes usar una accin de Flash para
hacerlo funcionar.
Condiciones de Flash
Esta haciendo flash (Is flashing)
Verdadero si el objeto est en dentro de un periodo de flash.
Flash terminado (On flash ended)
Detonado cuando se llega al final del periodo de flash, y el objeto es visible de nuevo.
Acciones de Flash
Flash
Hace que el objeto parpadee cambiando su visibilidad de forma intermitente. El On es el tiempo
en segundos en el que el objeto est visible. El Off es el tiempo en segundos en el que es
invisible. El objeto alternar entre estos dos estados durante los segundos establecidos. El objeto
siempre volver a ser visible tras la accin.
Parar flash (Stop flashing)
Si el objeto est flasheando, esto lo para y vuelve el objeto visible. Si el objeto no est flasheando
en ese momento esta accin no tendr efecto.
Usar Fsica en C2
El comportamiento Fsica simula las fsica en un plano separado. C2 mantendr los dos mundos
sincronizados si uno cambia y el otro no, pero esto es impredecible. Por ejemplo, ajustar la
posicin o el ngulo de un objeto hace que C2 traspase los nuevos datos del objeto
correspondiente a la simulacin fsica, cosa que a veces no se hace de forma adecuada con las
colisiones. Tambin pasa eso al usar otros comportamientos de C2 a la vez que el de Fsica.
Por lo tanto es altamente recomendado controlar los objetos de Fsica directamente desde el
comportamiento Fsica (ajustando fuerzas, impulsos, torsiones, etc.) ms que intentar manipularlos
con Ajustar posicin (Set position), Ajustar ngulo (Set angle), etc.
Otra consecuencia es que Fsica no responder a objetos con los comportamientos Slido (Solid) o
Saltar a travs (Jumptrhu). Estos comportamientos son redundantes cuando usas Fsica y no
tienen efecto. A cambio, usa la propiedad Inmovible (Immovable).
Propiedades de Fsica
Inmovible (Immovable)
Si S, simula que el objeto tiene masa infinita. Su densidad se ignora y nunca se mover.
Mscara de collision (Collision mask)
Usar mscara de colisin (Use collision mask) usa el polgono de colisin del objeto del editor de
imgenes para colisiones fsicas. Si no hay polgono de colisin usar el cuadro delimitador.
Cuadro delimitador (Bounding box) ignora el polgono de colisin del objeto si hay y el
comportamiento considera el objeto como si fuera un rectngulo.
Crculo (Circle) ignora el polgono de colisin del objeto si hay y el comportamiento considera el
objeto como si fuera un crculo. Esto permite que los objetos rueden suavemente (por ejemplo, un
barril). Esto es til cuando el polgono de colisin est formado por lneas rectas y no se puede
crear un crculo.
Evitar rotacin (Prevent rotation)
Bloquea el ngulo del objeto para que la colisin fsica no cause rotacin.
Densidad (Density)
La densidad del objeto fsico. Solo se usa si la Inmovilidad est en No. La masa del objeto se
calcula como su densidad multiplicada por el rea de su mscara de colisin. El valor de la
densidad exacta usada no es importante y no tiene unidades especficas slo la densidad relativa
es relevante (un objeto con densidad 6 ser dos veces ms denso que otro con densidad 3).
Friccin (Friction)
El coeficiente de friccin del objeto fsico de 0 (sin friccin) a 1 (friccin mxima). Esto ajusta
como los objetos se mueven unos contra otros cuando se tocan.
Elasticidad (Elasticity)
La elasticidad (tambin llamada restablecimiento o flexibilidad) del objeto fsico, de 0 (inelstico, como
una piedra) a 1 (elasticidad mxima, como una pelota de goma). Esto afecta a como los objetos rebotan
cuando golpean el suelo.
Condiciones de fsica
Est durmiendo (Is sleeping)
Verdadero si el objeto ha estado descansando y no ha sido movido por un tiempo, por lo que el
motor de fsica no lo estar procesando. Nota que los objetos pueden estar movindose de forma
imperceptible lo que evitar que se queden durmiendo aunque den la sensacin de estarlo.
Por defecto, todos los objetos con Fsica colisionan unos con otros. Puedes deshabilitar las
colisiones entre los objetos con Fsica y los que no lo tengan para que pasen unos sobre otros. Esto
afectar a todos los ejemplo de ambos tipos de objeto. Nota: habilitar las colisiones otra vez
cuando los objetos se solapan puede causar inestabilidad en la simulacin.
Ajustar iteraciones (Set stepping iterations)
Ajusta el nmero de iteraciones de la velocidad y de la posicin usadas en el motor de fsica. Por
defecto son 8 y 3 respectivamente. Valores ms bajos harn que vaya ms rpido pero son menos
precisos, y los ms altos reducirn el rendimiento pero darn una simulacin ms realista.
Ajustar modo de paso (Set stepping mode)
Elige si los tiempos de Fsica usan dt (delta time, para una tasa de frames independiente) o un
valor fijado (fixed). Por defecto usa un tiempo fijado para eliminar cualquier aleatoriedad que
venga de dt, asegurando que las simulaciones se reproducen exactamente todas las veces. Ajusta a
tasa de frames independiente (framerate independent) para ajustar el tiempo de a cuerdo a la tasa
de frames (framerate), que puede causar que la misma simulacin de distintos resultados si se
vuelve a reproducir. Para ms informacin ve a Delta-time and framerate independence .
Ajustar gravedad del mundo (Set world gravity)
Ajusta la fuerza de la gravedad que afecta a los objetos fsicos. Por defecto, es una fuerza de 10
puntos descendentes.
Expresiones de Fsica
Velocidad angular (AngularVelocity)
La velocidad angular actual (tasa de rotacin) del objeto fsico, en grados por segundo.
Centro de Masa X (CenterOfMassX)
Centro de Masa Y (CenterOfMassY)
La posicin del centro de la masa del objeto fsico, calculado por el motor fsico. Depende de la
propiedad mscara de colisin (collision mask) y no tiene por qu coincidir con el centro del
objeto.
Masa (Mass)
La masa del objeto fsico, calculada por el motor fsico. Es el rea de la mscara de colisin del
objeto multiplicada por su densidad.
Velocidad X (VelocityX)
Velocidad Y (VelocityY)
La velocidad actual del objeto fsico, en pxeles por segundo.
Amortiguacin angular (AngularDamping)
Densidad (Density)
Elasticidad (Elasticity)
Friccin (Friction)
Amortiguacin linear (LinearDamping)
Da las propiedades correspondientes. Para ms informacin, ve a las propiedades de Fsica.
5.13 Pin
El comportamiento Pin posiciona un objeto a una distancia y ngulo relativo a otro, dando la
impresin de estar atado a ese objeto. Para un ejemplo, ve a Pin behavior.capx en la carpeta de
ejemplos de C2.
Aadir simplemente el comportamiento al objeto no har nada. Debes usar alguna de las acciones
de Pin para unir un objeto a otro.
Condiciones de Pin
Est atado (Is pinned)
Verdadero si el objeto est atado a otro.
Acciones de Pin
Atar a objeto (Pin to object)
Ata un objeto a otro. La distancia y el ngulo relativo entre los objetos usados en el momento de la
accin se recordar. El parmetro Modo (Mode) elige como se mueve el objeto en relacin al otro:
Posicin y ngulo (Position & angle) (por defecto): mantiene ambos objetos a su distancia y
ngulo relativo. El objeto aparecer unido y estar en el lugar mientras el otro se mueve y rota.
Slo posicin (Only position): como antes, pero el ngulo del objeto no cambia; solo mantiene la
distancia relativa.
Slo ngulo (Only angle): el objeto solamente rota en relacin con el otro, y no cambia su
posicin.
Estilo cuerda (Rope style): el objeto no rota, pero se mantiene a la distancia mxima del otro.
Estilo barra (Bar style): el objeto no rota, pero se mantiene a una distancia fijada del otro objeto.
Para ms ejemplos, ve a los ejemplos Pin rope style.capx y Pin chain style.capx de la carpeta de
ejemplos de C2.
Desatar (Unpin)
Desata el objeto, as que ya no ser situado por el comportamiento Pin.
Expresiones de Pin
Atado UID (PinnedUID)
Da la UID del objeto al que est atado, o a -1 si no est atado. Para ms informacin sobre UID,
ve a caractersticas comunes (common features).
Por defecto, el movimiento de la Plataforma se controla con las flechas del teclado (arriba para
saltar). Para personalizar los controles, ve al resumen de referencia de comportamientos (behavior
reference summary).
Espejar al jugador
No es necesario duplicar el dibujo de tu jugador para poder usar los dos perfiles, el izquierdo y el
derecho. Simplemente dibuja al jugador mirando a la derecha y usa la accin Espejar (Set
mirrored). Ajusta que el jugador se espeje cuando presionas las teclas de control del movimiento.
Abajo un ejemplo.
Una pregunta frecuente es como hacer que el jugador dispare a la izquierda y a la derecha, ya que
incluso cuando los espejas el jugador seguir disparando a la derecha. Para solucionar esto usa la
condicin Est espejado (Is mirrored) y si es verdadera, que dispare a la izquierda.
Propiedades de la Plataforma
Velocidad mxima (Max speed)
La velocidad mxima del suelo en pxeles por segundo.
Aceleracin (Acceleration)
La aceleracin del movimiento horizontal en pxeles por segundo por segundo.
Deceleracin (Deceleration)
La deceleracin del movimiento horizontal en pxeles por segundo por segundo. Cuando se mueve
en la direccin contraria al movimiento aceleracin y deceleracin se combinan.
Fuerza del salto (Jump strength)
La velocidad vertical del salto al inicio en pxeles por segundo cuando se pulsa la tecla de saltar.
Gravedad (Gravity)
La aceleracin causada por la gravedad, en pxeles por segundo por segundo.
Velocidad mxima de cada (Max fall speed)
La velocidad mxima en pxeles por segundo a la que el objeto puede acelerar cuando hace cada
libre.
Controles por defecto (Default controls)
Si S, el movimiento se controlar con las flechas izquierda y derecha del teclado y el salto con la
flecha de arriba. Ajstalo a No para usar controles personalizados usando la accin Simular
control (Simulate control) en el resumen de referencia de comportamientos (behavior reference
summary).
Condiciones de la Plataforma
Cotejar velocidad (Compare speed)
Coteja la velocidad del objeto en pxeles por segundo.
Hay un muro (Is by wall)
Comprueba si hay un slido que bloquee el movimiento horizontal en el objeto inmediatamente a
la izquierda o derecha. Saltar a travs no cuenta como pared.
Est cayendo (Is falling)
Verdadero si el objeto est en cada libre.
Est saltando (Is jumping)
Verdadero si el objeto se est moviendo hacia arriba.
Est en el suelo (I son floor)
Verdadero si el objeto est sobre un objeto slido o sobre un saltar a travs.
En cada (On fall)
En salto (On jump)
En tierra (On landed)
En movimiento (On moved)
En parade (On stopped)
Estos son detonadores de animacin que se detonan cuando hay movimiento entre los estados. Si
tu objeto tiene animacin para alguno de estos estados, debes establecer la animacin apropiada
para cada detonador. Esto te ayuda a ahorrar lgica que detecta estados de transicin.
Acciones de Plataforma
Caer a travs de (Fall through)
Si el jugador est sobre una plataforma con Saltar a travs, esta accin lo har caer a travs de ella.
Es til para aadir otro control, la flecha hacia abajo, para bajar de las plataformas.
Ajustar aceleracin (Set acceleration)
Ajustar deceleracin (Set deceleration)
Ajustar gravedad (Set gravity)
Ajustar fuerza del salto (Set jump strength)
Ajustar velocidad mxima de cada (Set max fall speed)
Ajustar velocidad mxima (Set max speed)
Ajusta las propiedades correspondientes. Para ms informacin, mira las propiedades de
Plataforma.
Ajustar ngulo de gravedad (Set angle of gravity)
Cambia el ngulo de gravedad, en grados. Por defecto es 90 (hacia abajo en la pantalla). Esto
puede interactuar de forma interesante con la rotacin de la capa. Habilitar (Set enabled)
Habilita o deshabilita el movimiento de la Plataforma. Cuando est deshabilitado, el
comportamiento no afecta al objeto.
Establecer ignorar entrada (Set ignoring input)
Determina si se ignora una entrada. Si se ignora, presionar cualquiera de las teclas de control no
tendr efecto. Pero, a diferencia de deshabilitar el comportamiento, el objeto continuar
movindose (por ejemplo, si est en cada libre).
Ajustar vector X (Set vector X)
Ajustar vector Y (Set vector Y)
Ajusta los componentes de los movimientos horizontales y verticales manualmente, en pxeles por
segundo. Por ejemplo, ajustando el vector Y a -1000 har que se salte con una fuerza de 1000, lo
que puede ser til para aadir muelles.
Simular control (Simulate control)
Simula el control de movimiento que se est pulsando. til cuando estableces No en los Controles
por defecto. Ve a Controles personalizados en el resumen de referencia (behavior reference
summary) de comportamientos para ms informacin.
Expresiones de Plataforma
Aceleracin (Acceleration)
Deceleracin (Deceleration)
Gravedad (Gravity)
Fuerza del salto (JumpStrength)
Velocidad mxima de cada (MaxFallSpeed)
Velocidad mxima (MaxSpeed)
Da las propiedades correspondientes. Para ms informacin, ver las propiedades de Plataforma.
ngulo de movimiento (MovingAngle)
Da el ngulo de movimiento en grados, que puede ser distinto del ngulo del objeto.
Velocidad (Speed)
Da la velocidad total en pxeles por segundo.
VectorX
VectorY
Da los componentes de movimiento de X e Y, en pxeles por segundo.
Propiedades de Rotar
Velocidad (Speed)
La tasa de rotacin, en grados por segundo. Usa un valor positivo para rotacin en el sentido de las
agujas del reloj y negativo para el sentido contrario.
Aceleracin (Acceleratio)
La tasa a la que cambia la velocidad de rotacin, en grados por segundo por segundo. Usa un valor
positivo para acelerar en el sentido de las agujas del reloj y negativo para el sentido contrario.
Condiciones de Rotar
El comportamiento Rotar no tiene condiciones.
Acciones de Rotar
Ajustar aceleracin (Set acceleration)
Ajustar velocidad (Set speed)
Ajusta las propiedades correspondientes. Mira las propiedades de Rotar.
Expresiones de Rotar
Aceleracin (Acceleration)
Da la propiedad Aceleracin correspondiente.
Velocidad (Speed)
Da la velocidad de rotacin, en grados por segundo. Un valor positivo indica rotacin en el sentido
de las agujas del reloj y negativo en el sentido contrario.
Acciones de Desplazarse a
Agitar (Shake)
Agitar la pantalla durante un periodo de tiempo, compensando la posicin de la pantalla
aleatoriamente cada vez. La Magnitud (Magnitude) es la distancia mxima en pxeles de la
posicin del desplazamiento hasta que se compensa vista. La Duracin (Duration) es cunto
durar el movimiento en segundos. En el modo Reducir magnitud (Reducing magnitude), la
Magnitud se reducir gradualmente hasta cero una vez llegados al fin el movimiento. En el modo
Magnitud Constante (Constant magnitude) la Magnitud permanecer estable hasta el final del
movimiento y parar de forma abrupta.
Propiedades de Seno
Activo desde el inicio (Active on start)
Si No, el comportamiento no tendr efecto hasta que se use la accin Activar (Set active).
Movimiento (Movement)
El comportamiento tiene 8 modos diferentes:
Horizontal mueve el objeto de izquierda a derecha en el eje X.
Vertical mueve el objeto arriba o abajo en el eje Y.
Tamao (Size) hace que el objeto crezca o se reduzca.
Amplitud (Width) hace el objeto ms ancho o ms estrecho.
Altura (Height) hace el objeto ms alto o ms bajo.
ngulo (Angle) rota el objeto en el sentido de las agujas del reloj o al contrario.
Opacidad (Opacity) cambia la opacidad del objeto. Va de 0 a 100.
Slo valor (Value only) no modifica el objeto. Simplemente almacena los valores cambiantes a los
que acceder con la expresin Valor (Value). Puede ser til para crear efectos personalizados o
modificar cualquier propiedad del objeto o comportamiento basndote en el comportamiento
Seno.
Onda (Wave)
Esta funcin se usa para calcular el movimiento. Para verlo ve a este diagrama en Wikipedia (this
Wikipedia diagram ).
Seno (Sine) - una suave oscilacin del movimiento basada en la onda sinusoidal.
Tringulo (Triangle) - un movimiento linear de adelante a atrs.
Diente de sierra (Sawtooth) - movimiento linear con un salto al volver al inicio.
Diente de sierra invertido (Reverse Sawtooth) - lo anterior invertido.
Cuadrado (Square) - alternar entre los dos valores mximos.
Periodo (Period)
La duracin, en segundos, de un ciclo completo que se repite.
Periodo aleatorio (Period random)
Una cantidad aleatoria de segundos aadidos al periodo en cada ejemplo. Te puede ayudar a variar
la apariencia cuando muchos ejemplos usan el comportamiento Seno.
Periodo compensado (Period offset)
El tiempo inicial en segundos del ciclo. Por ejemplo, si el periodo es de 2 segundos y el periodo
compensado es de 1, el comportamiento Seno empezar a la mitad del ciclo.
Periodo compensado aleatorio (Period offset random)
Una cantidad aleatoria de segundos aadidos al periodo compensado. Te puede ayudar a variar la
apariencia cuando muchos ejemplos usan el comportamiento Seno.
Magnitud (Magnitude)
El cambio mximo de la posicin, tamao o ngulo del objeto. Est en pxeles para posicin y
para el tamao y en grados para el ngulo.
Magnitud aleatoria (Magnitude random)
Un valor aleatorio aadido a la magnitud para cada ejemplo. Te puede ayudar a variar la
apariencia cuando muchos ejemplos usan el comportamiento Seno.
Condiciones de Seno
Cotejar magnitud (Compare magnitude)
Coteja la magnitud actual del movimiento.
Cotejar movimiento (Compare movement)
Coteja la propiedad Movimiento actual del comportamiento.
Cotejar periodo (Compare period)
Coteja el periodo de movimiento actual, en segundos.
Acciones de Seno
Activar (Set active)
Habilita o deshabilita el comportamiento. Cuando est deshabilitado el comportamiento no afecta
al objeto.
Ajustar magnitud (Set magnitude)
Ajusta la magnitud del ciclo. Est en pxeles cuando modifica la posicin o el tamao y en grados
cuando modifica el ngulo.
Ajustar movimiento (Set movement)
Cambia el tipo de movimiento del comportamiento, por ejemplo, de Horizontal a Tamao.
Ajustar periodo (Set period)
Ajusta la duracin de un nico ciclo completo, es segundos.
Ajustar onda (Set wave)
Cambia la propiedad Onda, eligiendo una funcin distinta para calcular el movimiento.
Expresiones de Seno
Posicin de Ciclo (CyclePosition)
Da el valor de 0 a 1 que representa el progreso a travs del ciclo actual. Por ejemplo, ser 0,5
cuando el ciclo est a la mitad.
Magnitud (Magnitude)
Da la magnitud del ciclo actual. Est en pxeles cuando modifica la posicin o el tamao y en
grados cuando modifica el ngulo.
Periodo (Period)
Da el periodo de un nico ciclo completo en segundos.
Valor (Value)
Da el valos cambiante u oscilante. Se alternar como valores positivos y negativos centrados en 0.
Es til para crear efectos personalizados cuando est en modo Slo valor (Only value).
Nota que al comportamiento Fsica no le afectan los objetos slidos. A cambio, usa el
comportamiento con Inmovible (Immovable) activado, Yes.
El comportamiento Slido no tiene propiedades, condiciones, acciones ni expresiones a parte de la
accin Habilitar (Set enabled). Por esto, tambin se le llama atributo. Este comportamiento es
fundamental en C2, y otras muchas funciones del programa interactan con l. Por ejemplo, el
comportamiento de Movimientos personalizados tiene acciones para empujar el objeto fuera de
slidos.
Acciones de Slido
Habilitar (Set enabled)
Habilita o Deshabilita Slido de ese objeto. Si lo deshabilitas, el objeto no actuar como si fuera
un slido, y los objetos podrn pasar a travs de l. Ten cuidado de no atrapar objetos habilitando
el slido otra vez cuando se estn solapando, mira la seccin anterior.
6. Referencia de Plugins
El objeto solo rodea una vez haya salido completamente del plano, ninguna parte de su cuadro
delimitador estar dentro del plano. Esta seccin da una referencia a todos los plugins oficiales que hay en
C2. Cada uno tiene un resumen de su uso, una lista de propiedades y una detallada lista de acciones,
condiciones y expresiones.
Muchos plugings comparten acciones, condiciones y expresiones. Se describen como Caractersticas
comunes en vez de repetir la informacin en cada plugin.
ngulo (Angle)
Nota que los ngulos en C2 empiezan en 0 grados mirando hacia la derecha y avanzan en el sentido de las
agujas del reloj.
Est entre ngulos (Is between angles)
Verdadero si el ngulo actual del objeto est entre los dos ngulos dados en grados. El primer y el
segundo ngulo deben estar en el sentido de las agujas del reloj. Est entre 0 y 45 grados (Is between 0
and 45 degrees) es verdadero si el objeto est en un rea de 45 grados, pero Est entre 45 y 0 grados (Is
between 45 and 9 degrees) es verdadero si el objeto est en un rea de 315 grados desde los 45 hasta los
0.
Est en el sentido de las agujas del reloj (Is clokwise from)
Verdadero si el ngulo actual del objeto est en el sentido de las agujas del reloj respecto al ngulo dado
en grados. Invierte para comprobar si el objeto est en el sentido contrario. Por ejemplo, un objeto a 45
grados est en el sentido de las agujas del reloj con respecto a 0 grados, pero otro a 0 grados estara en el
sentido contrario con respecto a 45 grados.
Est dentro del ngulo (Is within angle)
Verdadero si el ngulo actual del objeto est dentro del nmero de grados de otro ngulo. Esto es ms
fiable que comprobar si el ngulo del objeto es exactamente igual al otro ngulo. Est dentro de 0,5
grados en 90 grados (Is within 0.5 degrees of 90 degrees) es probablemente mejor que ngulos iguales a
90 grados (Angle equals 90 degrees), ya que hay muchos casos en los que el objeto puede estar muy
cerca, pero no medir exactamente 90 grados.
Apariencia (Appearance)
Cotejar opacidad (Compare opacity)
Coteja la opacidad del objeto, de 0 (transparente) a 100 (opaco).
Es visible (Is visible)
Verdadero si el objeto es visible en ese momento. Invierte para comprobar si es invisible. Esto slo
comprueba la visibilidad establecida por la accin Hacer visible (Set visible); so le afecta si el objeto est
fuera de la pantalla, si tiene opacidad 0 o si est en una capa invisible.
Miscelanea (Misc)
Creado (On created)
Destruido (On destroyed)
Detonados para cada ejemplo que se crea o se destruye durante el juego. Por ejemplo, un efecto de
partculas se puede activar siempre que un objeto se crea, y una explosin siempre que se destruye. Estas
condiciones son anlogas a los constructores y los destructores en un lenguaje de programacin
tradicional (comandos que funcionan en la creacin y destruccin de objetos). Ten cuidado de no crear un
objeto del mismo tipo en un evento Creado (On created) (On Sprite2 created: create Sprite2) ya que
crear un bucle infinito y el juego se enganchar.
Recoger (Pick)
Recoger por ID nica (Pick by unique ID) (UID)
Recoge el ejemplo que coincide con el nmero de ID dado.
Recoger el ms cercano/lejano (Pick nearest/furthest)
Recoge el ejemplo ms cercano o lejano de una posicin del plano dada.
Orden Z (Z Order)
Est en la capa (Is on layer)
Recoge todos los ejemplos de una capa dada, especificados por su nombre o por su ndice basado en cero.
Recoger de arriba/abajo (Pick top/bottom)
Recoge el ejemplo de ms arriba o de ms abajo, teniendo en cuenta las capas y el ndice Z. Por ejemplo,
el ejemplo del frente de la capa ms cercana es el ejemplo de arriba.
ngulo (Angle)
Nota que los ngulos en C2 empiezan en 0 grados mirando hacia la derecha y avanzan en el sentido de las
agujas del reloj.
Rotar en el sentido de las agujas del reloj (Rotate clockwise)
Rota el objeto en un nmero de grados en el sentido de las agujas del reloj.
Rotar en el sentido contrario a las agujas del reloj (Rotate counter-clockwise)
Rota el objeto en un nmero de grados en el sentido contrario a las agujas del reloj.
Rotar hacia ngulo (Rotate toward angle)
Rota el objeto en un nmero de grados hacia otro ngulo. Si el objeto est cerca del ngulo objetivo no lo
sobrepasar (Acabar exactamente en el ngulo objetivo).
Rotar hacia posicin (Rotate toward position)
Rota el objeto en un nmero de grados hacia la posicin. Si el objeto est cerca del ngulo objetivo no lo
sobrepasar (Acabar exactamente en el ngulo objetivo).
Apariencia (Appearance)
No todos los objetos soportan las acciones en relacin con los efectos. Para ms informacin ve a Efectos.
Ajusta modo de fusin (Set blend mode)
Cambia la forma en la que el objetos se funde con el fondo alterando la propiedad del objeto Modo de
fusin (Blend Mode).
Habilita efecto (Set effect enabled)
Habilita o deshabilita uno de los efectos aadidos la objeto.
Miscelanea (Misc)
Destruir (Destroy)
Elimina el objeto del juego.
Orden Z (Z Order)
Mover abajo (Move to bottom)
Mover arriba (Move to top)
Posiciona el objeto en la parte de arriba o de abajo de la capa actual.
Mover a capa (Move to layer)
Mueve el objeto a la parte de arriba de la capa dada, por su nombre o por su ndice basado en 0. Si el
objeto ya est en la capa dada la accin no tendr efecto.
ngulo (Angle)
ngulo (Angle)
El ngulo actual del objeto en grados. 0 grados comienza a la derecha y se incrementa en el sentido de las
agujas del reloj.
Apariencia (Appearance)
Opacidad (Opacity)
La opacidad actual del objeto (semitransparencia), de 0 (transparente) a 100 (opaco).
Miscelanea (Misc)
Conteo (Count)
El nmero de ejemplos de ese tipo de objeto
Conteo recogido (PickedCount)
El nmero de ejemplos que renen la condicin del evento. Por ejemplo, si el evento tiene la condicin
El Ratn est sobre el Sprite (Mouse is over Sprite), Sprite.PickedCount dar el nmero de ejemplos
sobre los que est el ratn.
IID
Da el ndice del ejemplo (IID). Ver caractersticas comunes.
UID
Da la ID nica del ejemplo (UID). Ver caractersticas comunes.
Tiempo (Time)
dt
Da el tiempo delta (delta-time) de acuerdo a la propia escala de tiempo del objeto. Ve a Delta-time and
framerate independence para ms informacin.
Orden Z (Z Order)
Nombre de capa (LayerName)
El nombre de la capa en la que el objeto est actualmente.
Nmero de capa (LayerNumber)
El ndice basado en cero de la capa en la que el ejemplo est actualmente.
ndice Z (ZIndex)
Da el ndice basado en 0 del orden Z de ese ejemplo dentro de la capa actual. 0 es el ejemplo de abajo,
incrementndose hasta el ejemplo de arriba.
6.2 AJAX
El plugin AJAX permite que se soliciten pginas web durante el juego. Su nombre se deriva de
Asynchronous JavaScript and XML una tcnica usual en la mayora de desarrolladores web. El objeto
AJAX se disea para el uso de desarrolladores web ya familiarizados con la tcnica - esta referencia no
describir los principios de AJAX, solo mostrar cmo usarlo en C2 con el objeto AJAX. Normalmente,
usar el objeto AJAX tambin requiere scripts del lado del servidor personalizados (custom server-side
scripting) que estn fuera del alcance de este manual.
Etiquetas (Tags)
Se puede crear una etiqueta diferente para cada solicitud. Es una secuencia simple que se usa para separar
solicitudes distintas. Por ejemplo, en el arranque quizs solicites ambos foo.php con la etiqueta foo y
bar.php con la etiqueta bar. Cuando se completa la primera solicitud, se detona foo completado (On
foo completed); cuando la segunda se completa, se detona bar completado (On bar completed).
Las solicitudes se pueden completar en distinto orden al que se realizaron, as que sin etiquetas sera
imposible decir cual se ha completado.
Condiciones de AJAX
Completado (On completed)
Detonado cuando la solicitud con la misma etiqueta se ha completado satisfactoriamente. La expresin
ltimo dato (LastData) contiene la respuesta.
Error (On error)
Detonado cuando la solicitud falla. Esto puede ser por numerosas razones, como que el servidor haya
cado o que se haya acabado el tiempo de la respuesta. (La expresin LastData no se ajusta puesto que no
hay respuesta.)
En progreso (On progress)
Para solicitudes de larga duracin (descargar un archivo grande), esta condicin se detona peridicamente
y actualiza el estado de la solicitud en la expresin Progreso (Progress). Es til para crear barras de
progreso para las solicitudes AJAX.
Acciones de AJAX
Publicar en URL (Post on URL)
Enva una solicitud de PUBLICACIN (POST) a una URL y recupera la respuesta. Se da una etiqueta
que coincida con los detonadores Completado (On completed), En progreso (On progress) y Error (On
error). C2 no codifica en URL los datos del post - usa la expresin del sistema URLEncode para asegurar
que los datos estn en el formato correcto para publicarlos.
Solicitud (Request)
Enva OBETENER respuesta para recuperar los contenidos de una URL. Se da una etiqueta que coincida
con los detonadores Completado (On completed), En progreso (On progress) y Error (On error).
Solicitud de archivo de proyecto (Request project file)
Solicita los contenidos de un archivo de proyecto. Se da una etiqueta que coincida con los detonadores
Completado (On completed), En progreso (On progress) y Error (On error).
Expresiones AJAX
ltimo Dato (LastData)
El contenido de la ltima respuesta. Se activa en el detonador Completado (On completed). Si se vuleve a
usar en un evento distinto, contendr la respuesta de la ltima solicitud completada. La expresin del
sistema tokenat pude ser til para dividir en respuestas simples.
Progreso (Progress)
Da el progreso de la solicitud AJAX en un evento En progreso (On progress). El progreso se representa
como un nmero de 0 a 1 (0,5 para la mitad completada).
6.3 appMobi
El plugin appMobi proporciona integracin con el servicio de publicacin mvil de appMobi . Para
ms informacin ve al tutorial How to export to appMobi .
Condiciones de appMobi
Est en AppMobi (Is in AppMobi)
Verdadero si el juego est funcionando dentro de appMobi. Ser falso si el juego est funcionando en otro
lugar, como en la web abierta (open web).
Almacenar habilitado (Caching enabled)
(Para usuarios avanzados) Verdadero si el servicio de almacenamiento de appMobi ha sido habilitado.
Cotejar orientacin inicial (Compare initial orientation)
Comprueba si la orientacin del dispositivo al inicio fue alguna particular.
Cotejar orientacin (Compare orientation)
Comprueba si la orientacin actual del dispositivo es alguna particular.
Impulsar habilitado (Push enabled)
(Para usuarios avanzados) Verdadero si el servicio de notificaciones de impulso (push notifications) de
appMobi estn habilitadas.
Acciones appMobi
Registrar evento (Log event)
Registra un evento con nombre para el servicio analtico de appMobi. Los parmetros se pueden
ser proporcionados en formato URL (foo=bar&baz=ban).
Aadir a almacenamiento de medios (Add to media cache)
Descarga un archivo desde Internet y lo almacena en un dispositivo de almacenamiento local, permitiendo
usar el juego offline en el futuro.
Borrar todas las cookies (Borrar todas las cookies)
Elimina todas las cookies guardadas con la accin del dispositivo Establecer cookie (Set cookie). (No
afecta a las cookies del navegador del usuario).
Borra almacenamiento de medios (Clear media cache)
Borra todos los archivos descargados con Aadir a almacenamiento de medios (Add to media cache).
Eliminar cookie (Remove cookie)
Elimina una cookie establecida con la accin Establecer cookie (Set cookie). (No afecta a las cookies del
navegador del usuario).
Establecer cookie (Set cookie)
Establece una cookie en el dispositivo. sta es un sustituto del almacenamiento local. No afecta al
navegador del usuario; el almacenamiento es slo para la aplicacin.
Cerrar sitio remoto (Close remote site)
Cierra un sitio remoto que est mostrndose con la accin Mostrar sitio remoto (Show remote site).
Conseguir datos remotos (Get remote data)
Crea el fondo de una solicitud AJAX usando el servicio appMobi. El detonador Datos remotos (On
remote data) se activar cuando se complete.
Instalar actualizacin (Install update)
Instala una actualizacin pendiente cuando est preparada.
Lanzar a sitio externo (Launch external site)
Abre una URL en el navegador por defecto del dispositivo del usuario. El usuario dejar la app, no como
en la accin Mostrar sitio remoto (Show remote site).
Escanear cdigo de barras (Scan barcode)
Abre un lector de cdigos QR a pantalla completa. Se detonar Cdigo de barras escaneado (On barcode
scanned) cuando se escanee satisfactoriamente.
Ajustar auto-rotar (Set auto-rotate)
Evita que un dispositivo rote automticamente la pantalla cuando se cambia la orientacin. Esto puede
forzar una orientacin especfica cuando lo usas con Ajustar orientacin (Set orientation).
Mostrar sitio remoto (Show remote site)
Muestra una URL remota en el navegador de la aplicacin. El usuario no sale de la app, puede darle al
botn de cerrar y volver a la app, no como en la accin Lanzar a sitio externo (Launch external site).
Actualizar conexin (Update connection)
Comprueba si el tipo de conexin del dispositivo ha cambiado (3G, Wifi, etc.).
Aadir pgina virtual (Add virtual page)
salo para abrir una pantalla nueva que quieras que se pueda cerrar con la tecla atrs. La siguiente vez
que se presione tras esta accin evitar que la accin por defecto del dispositivo y detonar Tecla atrs
presionada (On back button pressed).
Eliminar pgina virtual (Remove virtual page)
Elimina la pgina aadida previamente, por ejemplo, si cancelas la pantalla.
Expresiones appMobi
Cookie
Da los datos almacenados por la accin Ajustar cookie (Set cookie).
Almacenamiento local URL (LocalMediaCacheURL)
Da el camino local para los archivos almacenados de Internet por la accin Aadir a almacenamiento de
medios (Add to media cache).
Versin AppMobi (AppMoviVersion)
Da la versin actual del software appMobi.
Datos del dispositivo Cdigo de barras (DeviceBarcodeData)
Da los datos escaneados de un cdigo de barras. Slo aparece en Cdigo de barras escaneado (On
barcode scanned) tras la accin Escanear cdigo de barras (Scan barcode).
Conexin del dispositivo (DeviceConnection)
El tipo de conexin disponible ms adecuado para el dispositivo: wifi, cell o none.
Modelo del dispositivo (DeviceModel)
El nombre del modelo del dispositivo.
Versin de SO del dispositivo (DeviceOSVersion)
Informacin de la versin de SO del dispositivo.
Plataforma del dispositivo (DevicePlatform)
iOS o Android dependiendo de cual est usando.
Cadena de consulta del dispositivo (DeviceQueryString)
Da cualquier cadena de consulta que pasa a la aplicacin cuando se inicia con un controlador de protocolo
(protocol handler).
Datos remotos del dispositivo (DeviceRemoteData)
Los datos dados por los detonadores Conseguir datos remotos (Get remote data) y Datos remotos (On
remote data).
Estado remoto del dispositivo (DeviceRemoteStatus)
Puede ser abierto (open), cerrado (closed) o inactivo (idle).
UUID del dispositivo (DeviceUUID)
Da el Identificador Universal nico (UUID), que es un cdigo que identifica nicamente a ese
dispositivo.
Orientacin inicial (InitialOrientation)
La orientacin del dispositivo en el inicio, dado en grados (0, -90, 90 o 180).
Orientacin (Orientation)
La orientacin actual del dispositivo, dado en grados (0, -90, 90 o 180).
Manipular matrices
Una matriz de una dimensin, de tamao N x 1 x1, funciona como una lista simple de valores N. Las
acciones de la categora Manipular (como Push (Insertar), Pop (Quitar)) permiten que las matrices de
una dimensin se usen como otras estructuras de datos. (Estas acciones funcionan con matrices
multidimensionales pero estn hechas especficamente para las de una sola).
Por ejemplo, el siguiente esquema usa una fila (ltimo en entrar, primero en salir o LIFO):
Aade nuevos tems con Insertar al frente (Push front).
Recupera el siguiente valor con Matriz.AlFinal (Array.Back).
Elimina el valor recuperado con Quitar al final (Pop back).
El siguiente esquema usa una pila (primero en entrar, primero en salir o FIFO)
Aade nuevos tems con Insertar al final (Push back).
Recupera el siguiente valor con Matriz.AlFinal (Array.Back).
Elimina el valor recuperado con Quitar al final (Pop back).
Propiedades de Matriz
Amplitud (dimension X) (Width (X dimension))
Altura (dimension Y) (Height (Y dimension))
Profundidad (dimensin Z) (Depth (Z dimension))
El tamao de la matriz. Si quieres que sea de 1 dimensin (una lista de valores) usa A x 1 x 1. Si quieres
que sea de 2 (una cuadrcula de valores) usa A x B x 1.
Condiciones de Matriz
Cotejar en X (Compare at X)
Cotejar en XY (Compare at XY)
Cotejar en XYZ (Compare at XYZ)
Coteja un valor en una posicin de la matriz. Los ndices estn basados en 0. Todos los valores fuera de la
matriz dan 0. Si se usa Cotejar en X (Compare at X) los ndices de Y y Z sern 0. Si se usa Cotejar en XY
(Compare at XY) el ndice Z ser 0.
Para cada elemento (For each element)
Una condicin de repeticin que funciona una vez para cada elemento de la matriz. Esto, por lo tanto,
funciona anchura x altura x profundidad veces.
Cotejar valor actual (Compare current value)
Slo vlido para el bucle Para cada elemento (For each element), ya sea como la condicin siguiente a
ella como un sub-evento.
Contiene valor (Contains value)
Busca en la matriz entera para comprobar si alguno de los elementos contiene el valor dado. Por ejemplo,
puedes usarlo para comprobar que la secuencia espada (sword) est almacenada en alguna parte de
la matriz.
Esta vacia (Is empty)
Comprueba si la matriz est vaca. Estar vaca cuando el nmero total de sus elementos sea 0, calculado
como anchura x altura x profundidad. Por ello, la matriz estar vaca si cualquiera de sus ejes mide 0. Es
til cuando usas matrices como estructura de datos (cuando insertas y quitas valores).
Acciones de Matriz
Borrar (Clear)
Pone a 0 todos los elementos de la matriz.
Ajustar en X (Set at X)
Ajustar en XY (Set at XY)
Ajustar en XYZ (Set at XYZ)
Escribe un valor en una posicin en la matriz. Los ndices estn basados en 0. Escribir valores fuera de la
matriz no tendr efecto. Si se usa Ajustar en X (Set at X) los ndices de Y y Z sern 0. Si se usa Ajustar en
XY (Set at XY) el ndice Z ser 0.
Ajustar tamao (Set size)
Ajusta las dimensiones de la matriz. Los valores se guardan, pero si la nueva matriz es ms pequea se
truncan. Si la nueva matriz es ms grande, los elementos nuevos almacenarn el valor 0. Si alguna de las
dimensiones es 0 la matriz completa quedar vaca, as que deben ser al menos 1.
Descargar (Download)
Abre una nueva pestaa en el navegador con un enlace de descarga del contenido de la matriz como un
archivo en formato JSON. Se usa para desarrollo offline (como crear editores de nivel). Ya que funciona
abriendo una pestaa nueva, puede no aparecer si tienes activado el bloqueo de ventanas emergentes asegrate de que el localhost permite estas ventanas para que la accin funcione.
Cargar (Load)
Carga los contenidos de la matriz de una secuencia en formato JSON. Debe recuperarse de la accin
Descargar (Download) o de la expresin AsJSON. Tambin se puede recuperar del objeto AJAX.
Insertar (Push)
Aade un nuevo valor al principio (al frente) o al final de un eje. Ya que la matriz es un cubo de valores
en 3D, tcnicamente esto insertar un nuevo plano de elementos 2D con los valores dados. Pero en
matrices de 1 dimensin esto aade un nico elemento, y en una de 2 dimensiones insertar una fila de
elementos.
Quitar (Pop)
Borra el valor al principio (al frente) o al final de un eje. Ya que la matriz es un cubo de valores en 3D,
tcnicamente esto quitar un nuevo plano de elementos 2D con los valores dados. Pero en matrices de 1
dimensin esto quita un nico elemento, y en una de 2 dimensiones quitar una fila de elementos.
Introducir (Insert)
Inserta un nuevo valor en un ndice especfico de un eje. Ya que la matriz es un cubo de valores en 3D,
tcnicamente esto insertar un nuevo plano de elementos 2D con los valores dados. Pero en matrices de 1
dimensin esto aade un nico elemento, y en una de 2 dimensiones insertar una fila de elementos.
Borrar (Delete)
Borra el valor en un ndice especfico de un eje. Ya que la matriz es un cubo de valores en 3D,
tcnicamente esto quitar un nuevo plano de elementos 2D con los valores dados. Pero en matrices de 1
dimensin esto quita un nico elemento, y en una de 2 dimensiones quitar una fila de elementos.
Invertir (Reverse)
Invierte el orden de elementos en un eje. Nota que en matrices multidimensionales solo invierte un eje.
Por ejemplo, en el eje X de una matriz 2D se invertir el orden de las columnas guardando el contenido de
cada una de ellas.
Sort (Ordenar)
Ordena el orden de los elementos de un eje en sentido ascendente. Nota que en matrices
multidimensionales se ordena desde el primer elemento del eje. Por ejemplo, en el eje X de una matriz 2D
se clasificar el orden de columnas basndose en los elementos de la coordenada Y, guardando el
contenido de cada columna.
Expresiones de Matriz
En (X) (At(X))
En (X, Y) (At(X, Y))
En (X, Y, Z) (At(X, Y, Z))
Recupera el valor de una posicin en la matriz. Los ndices estn basados en 0. Los valores de fuera de la
matriz sern 0. Si no se dan los ndices Y o Z se usar el 0.
CurX
CurY
CurZ
El ndice basado en 0 actual de cada dimensin en un bucle Para cada elemento (For each element).
6.5 Audio
El objeto Audio reproduce archives de audio que has importado al proyecto. Debe insertarse a todos los
proyectos que necesiten reproduccin de audio. Se importan haciendo clic con el botn derecho en las
carpetas de Sonido o Msica en la Barra del Proyecto y seleccionando Importar (Import), lo que
hace que aparezca el Dilogo de importar audio. Ve a las secciones relacionadas con la importacin de
archivos de audio para ms informacin.
Actualmente, el soporte de audio en los navegadores es irregular. No todas las caractersticas funcionaran
en todos los navegadores. Por ejemplo, ajustar la tasa de playback no funcionar en muchos dispositivos
mviles. Esto es un problema del navegador y no del objeto Audio de C2. Se recomienda probar tu
proyecto en varios navegadores para identificar que caractersticas funcionan en cada navegador. Sin
embargo, este rea est en pleno desarrollo para futuros navegadores y el problema podra resolverse
pronto.
Etiquetas de Audio
Algunas acciones afectan a parmetros de audio como el volumen al reproducirse. Sin embargo, puede
haber varios sonidos sonando a la vez. Para identificar a qu sonido quieres que afecte, se reproducen con
una etiqueta asociada. Es una secuencia que identifica al sonido. Por ejemplo, el sonido del arma del
jugador se reproducir con la etiqueta ArmaJugador (PlayerWeapon) y la de su enemigo con Arma
Enemigo (EnemyWeapon). Entonces, la etiqueta puede usarse en la accin Ajustar Volumen (Set
Volume) para especificar a qu sonido quieres ajustar el volumen. Las etiquetas no diferencian
maysculas y minsculas.
Varios sonidos pueden reproducirse a la vez usando la misma etiqueta. En este caso, las acciones como
Volumen (Set Volume) afectaran a todos los sonidos con esa etiqueta.
Una etiqueta con una secuencia vaca () tiene un significado especial: se refiere slo al ltimo sonido
reproducido con la accin Reproducir (Play). Es til para reproducir un sonido inmediatamente despus
de ajustarlo.
Propiedades de audio
Escala de tiempo de audio (Timescale audio)
La escala de tiempo puede usarse para acelerar o ralentizar la reproduccin, para algunos efectos como
cmara lenta. Ve a Delta-time and framerate independence para ms informacin. Esta propiedad
controla si la escala de tiempo afecta al audio.
Off reproducir el audio sin tener en cuenta la escala de tiempo.
On (sounds only) reproducir el audio de la carpeta Sonidos a una tasa distinta dependiendo de la escala
de tiempo, pero lo har de la carpeta de Msica sin tenerla en cuenta.
On (sounds and music) reproducir el audio de ambas carpetas a una tasa distinta dependiendo de la
escala de tiempo.
Algunos navegadores pueden no soportar las escalas de tiempo de audio; prueba en varios navegadores.
Adems, diferentes navegadores pueden usar distintos algoritmos de tiempo de audio. Tambin puede
alterar el tono, tomando tonos ms bajos para escalas ms bajas, lo que puede sonar como una cinta de
casete a velocidades distintas; tambin puede cambiar la velocidad sin afectar el tono. Prueba en varios
navegadores para establecer el efecto deseado.
Condiciones de Audio
Finalizado (On ended)
Detonado cuando un sonido con cierta etiqueta finaliza su reproduccin. No se detona para sonidos en
bucle.
Acciones de Audio
Reproducir (Play)
Reproducir (por nombre) (Play (by name))
Reproduce un archivo de audio con cierta etiqueta. La segunda accin te da la oportunidad de usar una
expresin para el nombre del archivo de audio. Se pude establecer que se haga una reproduccin en bucle.
Precargar (Preload)
Precargar (por nombre) (Preload (by name))
Empieza a descargar el archivo de audio par que no haya retrasos al reproducirlo. Mira la seccin El
Audio se descarga segn demanda para ms informacin. No es necesario precargar los archivos para que
se reproduzcan - slo sirve para reducir la posibilidad de retraso en la primera reproduccin. Slo se
deben precargar dos o tres sonidos de una vez.
Establecer bucle (Set looping)
Establece que un sonido se reproduzca en bucle (repitindose cuando acabe) o no (para cuando acaba).
No todos los navegadores soportan esta caracterstica; prueba en varios de ellos.
Enmudecer (Set muted)
Establece si un sonido es audible o no.
Ajustar tasa de reproduccin (Set playback rate)
Cambia la tasa a la que se reproduce el sonido. Diferentes navegadores pueden usar diferentes algoritmos
de tiempo (alternado o no el tono) o pueden no soportar la opcin; prueba en varios navegadores para
conseguir el efecto deseado. Si la propiedad Escala de tiempo de audio (Timescale audio) est habilitada,
combina con la tasa de reproduccin establecida para esta accin.
Silenciar (Set silent)
Habilita, deshabilita o alterna el Modo silencio (Silent mode). En este modo los sonidos reproducidos son
mudos y no se sonarn. Es til para crear rpidamente una alternacin de audio en un ttulo de pantalla.
Ajustar volumen (Set volume)
Cambia el volumen de un sonido. El volumen viene dado en decibelios (dB). El volumen de 0 dB es el
origen, se amplifica a partir de ah y por debajo de 0 dB se atena. Por ejemplo, introduciendo un valor de
-10 har el sonido 10 unidades ms flojo (aproximadamente la mitad de fuerte).
Parar (Stop)
Para un sonido reproducindose inmediatamente.
Expresiones de Audio
El objeto Audio no tiene expresiones.
6.6 Browser
El objeto Navegador accede a las caractersticas del navegador web que ejecuta el juego HTML5.
Tambin cambia el modo a pantalla completa, detecta si el juego tiene actualizaciones y determina si la
pgina es visible.
A veces, las limitaciones de seguridad evitan acciones de Navegador. Por ejemplo, la accin de la ventana
Cerrar (Close) slo se puede usar cuando la ventana se crea con javascript window.open.
Condiciones de Navegador
Cookies habilitadas (Cookies enabled)
Verdadero si el usuario tiene habilitadas las cookies del navegador. (Normalmente es raro que estn
deshabilitadas ya que muchas pginas web funcionan con ellas).
Est en lnea (Is online)
Verdadero si el navegador tiene activa una conexin a internet. Los juegos de C2 pueden funcionar
offline - para ms informacin ve a Offline games .
Cambio de tamao (On resized)
Detonado cuando la ventana del navegador que muestra el juego cambia de tamao. Esto incluye el
cambio de orientacin del dispositivo. La expresin del sistema Amplitud de Ventana (WindowWidth) y
Altura de Ventana (WindowHeight) se actualizarn para reflejar el nuevo tamao si se usa el modo
pantalla completa.
Tiene conexin (On went online)
No tiene conexin (On went offline)
Detonado si la conexin a internet est disponible o no durante el juego. Es comn en dispositivos
mviles que pueden moverse a zonas donde no llegue la seal. La condicin Est en lnea (Is online)
tambin cambia para reflejar el estado de la conexin.
Tecla men (On menu button)
Slo disponible cuando exportas a PhoneGap.
Detonado cuan el usuario presiona la tecla Men del dispositivo. Nota que todos los dispositivos no
tienen esta tecla, como iOS, que solo tiene la tecla Home.
Tecla buscar (On search button)
Slo disponible cuando exportas a PhoneGap.
Detonado cuan el usuario presiona la tecla Buscar del dispositivo. Nota que todos los dispositivos no
tienen esta tecla, como iOS, que solo tiene la tecla Home.
Est descargando una actualizacin (Is downloading update)
Verdadero si el juego est funcionando con lo almacenado, pero descargando y actualizando la versin al
mismo tiempo. Se puede usar un auto-actualizador. Para ms informacin ve a Offline games .
Actualizacin descargada (On update ready)
Detonado cuando un juego est funcionando con lo almacenado, pero una versin actualizada ha
terminado su descarga. Si el usuario todava est en el men del juego o en la pgina de crditos quizs
quieras preguntar al usuario si quiere recargar la pgina para cargar la nueva versin (o simplemente
hacerlo automticamente). Para ms informacin ve a Offline games .
Acciones de Navegador
Ir atrs (Go back)
Ir adelante (Go forward)
Se mueve por el historial de navegacin como si clicaras en los botones Atrs y Adelante del navegador.
Ir al inicio (Go home)
Va a la pgina de inicio del navegador.
Ir a la URL (Go to URL)
Va a una URL dada. Nota que usa la misma ventana/pestaa en la que se est mostrando el juego, as que
esta accin finalizar el juego.
Abrir URL en una ventana nueva (Open URL in new window)
Va a una URL dada en una nueva ventana (o pestaa, segn la configuracin del navegador). El juego
continua en la ventana/pestaa anterior.
Recargar (Reload)
Fuerza que la pgina se recargue. El juego se reinicia.
Alerta (Alert)
Hace que surja un mensaje de alerta en un cuadro.
Desenfocar (Blur)
Desenfoca la ventana del navegador.
Cancelar pantalla completa (Cancel fullscreen)
Vuelve al modo pantalla normal si el navegador est en pantalla completa.
Cerrar (Close)
Cierra la ventana actual si el script da permiso para ello.
Enfocar (Focus)
Enfoca la ventana del navegador.
Expresiones de Navegador
Idioma (Language)
Da el idioma configurado en el navegador. Ejemplo, en-US.
Nombre (Name)
Da el nombre que el navegador se da a s mismo. Este puede ser inexacto por razones de compatibilidad
anteriores, como Google Chrome que se llama Netscape.
Plataforma (Platform)
Da la plataforma en la que el navegador se ejecuta, como Win32 para Windows.
Producto (Product)
Da el nombre del producto del navegador. Este puede ser inexacto por razones de compatibilidad
anteriores, como Google Chrome, cuyo producto se llama Gecko.
Agente de usuario (UserAgent)
Da la secuencia completa del agente de usuario para el navegador, por ejemplo Mozilla/5.0 (Windows NT
6.1; WOW64) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.63.
Vendedor (Vendor)
Da el vendedor del navegador, como Google Inc. para Google Chrome.
Versin (Version)
Da la versin actual del navegador como una secuencia. Puede ser simplemente un subtexto en la
secuencia del agente de usuario.
Ttulo (Title)
El ttulo del documento HTML actual.
Dominio (Domain)
El dominio actual, como scirra.com.
Almohadilla (Hash)
La secuencia tras la almohadilla al final de la URL, incluyendo la almohadilla. Por ejemplo, si la URL es
http://scirra.com/mygame/index.html#teapot, esto da #teapot.
Nombre de Trayectoria (PathName)
La trayectoria relativa al dominio de la URL. El nombre de la trayectoria para
http://scirra.com/mygame/index.html#teapot sera /mygame/index.html.
Protocolo (Protocol)
El protocolo actual, normalmente http: o https:.
Parmetro de pregunta (QueryParam)
Da un parmetro de secuencia de pregunta por el nombre. Por ejemplo, si la URL termina con
index.html?foo=bar&baz=wan, QueryParam("foo") da bar y QueryParam("baz") da wan.
Secuencia de pregunta (QueryString)
Da la secuencia de pregunta completa de la URL incluyendoel smbolo de interrogacin. Por ejemplo, si
la URL termina con index.html?foo=bar&baz=wan, da ?foo=bar&baz=wan.
Referencia (Referrer)
Da la pgina anterior que enlaza a la actual, si la hay.
URL
Da la URL actual completa en la barra de direcciones del navegador, incluyendo el protocolo.
Estilo de Botn
Los botones se pueden personalizar de un gran nmero de formas usando CSS (Hojas de estilo
en cascada). En vez de tener muchas acciones para ajustar todas las posibles propiedades, tiene
una sola accin Ajustar estilo CSS (Set CSS style). CSS ahorra trabajo, es sencillo para usar con
propiedades simples. Aqu algunos ejemplos:
Hacer el texto rojo (Make the text red): Ajusta el "color" a "rojo".
Hacer el fondo amarillo (Make the background yellow): Ajusta el "color del fondo" a "amarillo".
Hacer el borde gris claro y fino (Make the border a thick light grey: Ajusta el "borde" a "3px
solid #AAAAAA".
Hacer la letra ms grande (Make the font bigger): Ajusta el "tamao de letra" a "2em".
Hacer un borde rojo y discontinuo (Make a dashed red border): Ajusta el "borde" a "2px dashed
red".
Propiedades de Botn
Texto (Text)
El texto que aparecer en el botn.
Consejo de Herramienta (Tooltip)
Aparece en la mayora de los navegadores si el usuario pasa el ratn por encima de una herramienta y
para. Djalo en blanco si no quieres poner ningn consejo.
Condiciones de Botn
Clicado (on clicked)
Detonado cuando el usuario presiona el botn, con el teclado, ratn o tocndolo.
Acciones de Botn
Ajustar estilo CSS (Set CSS style)
Ajusta un estilo CSS (Hojas de estilo en cascada) en el elemento Botn. Para ms informacin ver la
seccin anterior Estilo de Botn. Nota que si la propiedad Tamao de letra automtico (Auto font size)
est activada, cualquier cambio a la propiedad tamao de letra se sobrescribir.
Habilitar (Set enabled)
Habilita o deshabilita el botn. Cuando est deshabilitado no puede ser pulsado.
Enfocar (Set focused)
Enfoca el botn.
Ajustar texto (Set text)
Ajusta el texto del botn.
Ajustar consejo de herramienta (Set tooltip)
Ajusta el texto que aparece en el consejo. Djalo en blanco si no quieres que haya consejo.
Expresiones de Botn
El objeto Botn no tiene expresiones.
Ejemplo
Suponemos que el nmero 100 se almacena con la clave puntuacin (score) y la secuencia Joe se
almacena con la clave nombre (name). El resultado del almacenaje sera as:
name: Joe
score: 100
Reuperar la clave nombre con Dictionary.Get("name") dar Joe, y recuperar puntuacin dar 100.
Al ajustar puntuacin a 50 cambiar el valor de la clave.
Esto es como almacenar datos en variables de ejemplo o en variables de evento, pero ya que puedes usar
secuencias como claves puedes almacenar cualquier nmero de valores.
Condiciones de Diccionario
Cotejar valor (Compare value)
Coteja el valor almacenado para una clave.
Tiene clave (Has key)
Comprueba si hay alguna clave almacenada
Est vaca (Is empty)
Verdadero cuando no hay claves almacenadas.
Para cada clave (For each key)
Repite el evento una vez para cada clave almacenada. Las expresiones Clave actual (CurrentKey) y Valor
actual (CurrentValue) dan las claves respectivas.
Cotejar valor actual (Compare current value)
Slo vlido en un evento Para cada clave (For each key). Coteja el valor de la clave actual.
Acciones de Diccionario
Aadir clave (Add key)
Aade una nueva clave para almacenar, con un valor dado. Si la clave ya existe el valor se actualiza.
Borrar (Clear)
Elimina todas las claves almacenadas, haciendo que el objeto quede vaco.
Eliminar clave (Delete key)
Elimina una clave y su valor almacenado. Si la clave no existe no tiene efecto.
Establecer clave (Set key)
Actualiza el valor de una clave que ya existe. Si la clave no existe no tiene efecto. (No como Aadir clave
(Add key), con esta accin no se crear).
Descargar (Download) (JSON)
Abre una nueva pestaa del navegador con un enlace para descargar los contenidos de Diccionario en
formato JSON. Slo sirve para desarrollo. Quizs te aparezca una ventana emergente con un aviso.
Cargar (Load) (JSON)
Carga todas las claves y valores de datos JSON previamente recuperados del objeto Diccionario usando la
accin Descargar (Download) o la expresin AsJSON.
Expresiones de Diccionario
Conseguir (Get)
Da el valor almacenado de una clave, Dictionary.Get("score"). Si la clave no existe da 0.
Contador de Clave (KeyCount)
Da el nmero de claves almacenadas.
Clave actual (CurrentKey)
Valor actual (CurrentValue)
En el evento Para cada clave (For each key), esto da la clave y su valor (respectivamente) de la clave
actual que est siendo repetida.
AsJSON
Da los contenidos del objeto Diccionario en formato JSON. Puede ser cargado ms tarde con la accin
Cargar (Load), enviada a un servidor mediante AJAX, guardada en un disco, etc.
6.9 Facebook
El objeto Facebook (FB de ahora en adelante) te permite integrar tu juego con FB. El tutorial How to
make a Facebook game trata sobre como publicar juegos en FB y tiene una gua paso a paso para usar
el objeto Facebook. Esta seccin del manual simplemente describe sus caractersticas.
El objeto FB se pude usar en cualquier juego, no solo para juegos de FB. Puedes tener tu juego
funcionando en tu propio servidor. El objeto te permitir conectar con la cuenta de FB del usuario incluso
cuando este est jugando en tu web. Sin embargo, es necesario conectar la aplicacin con FB para guardar
la ID de la aplicacin. Se pueden conectar a FB mediante Facebook Developers .
El objeto FB hace solicitudes asncronas. Esto significa que el juego sigue funcionando mientras
operaciones que pueden durar varios segundos (como enviar una puntuacin) se completan. Por ello, el
objeto funciona con una accin que activa una tarea (como Publicar puntuacin (Publish scoore)), que, al
completarse, detona una condicin (como Puntuacin enviada (On score submitted)). Esto tardar unos
segundos mientras el juego sigue funcionando, en vez de congelarlo y esperar a que se completen las
acciones. Como muchas solicitudes asncronas, las acciones pueden completarse en un orden distinto del
que fueron hechas.
Propiedades de Facebook
ID de la aplicacin (App ID)
La ID dada a la aplicacin en la seccin de Programadores de FB (FB Developers).
Aplicacin Secreta (App Secret)
Slo necesario si piensas usar Puntuaciones API (Scores API). Si no, no uses esta propiedad. La
aplicacin secreta se puede encontrar en los Programadores de FB y es necesaria para habilitar las
Puntuaciones API (Scores API).
Condiciones de Facebook
Est preparado (Is ready)
Verdadero si el objeto FB est preparado para usarse. Cuando es Falso es que todava est cargando los
scripts necesarios.
Usuario ha iniciado sesin (Is user logged in)
Verdadero si el usuario ha iniciado sesin en su cuenta de FB.
Nombre disponible (On name available)
Detonado inmediatamente tras Usuario ha iniciado sesin (Is user logged in) cuando la expresin que
obtiene el nombre de usuario est disponible.
Usuario registrado (On user logged in)
Detonado cuando el usuario ha iniciado sesin satisfactoriamente. Tambin se detona al principio si el
usuario ha iniciado sesin anteriormente y vuelve a la aplicacin con la contrasea recordada. Adems, se
detona al principio de cada plano mientras el usuario siga registrado.
Usuario ha cerrado sesin (On user logged out)
Detonado si el usuario cierra sesin durante el juego.
Puntuacin alta (On hi-score)
Detonado una vez por cada puntuacin alta conseguida tras la accin Solicitar tabla de puntuaciones altas
(Request hi-score board). Las expresiones Nombre (HiscoreName), Posicin (HiscoreRank) y
Puntuacin (Score) contienen la informacin.
Puntuacin enviada (On score submitted)
Detonado cuando la accin Publicar puntuacin (Publish score) se ha completado satisfactoriamente.
Puntuacin ms alta del usuario disponible (On user top score available)
Detonado cuando la accin Solicitar puntuacin ms alta del usuario (Request user top score) se ha
completado satisfactoriamente. La expresin Puntuacin (Score) tiene esta puntuacin.
Acciones de Facebook
Iniciar sesin (Log in)
Abre una ventana emergente pidiendo al usuario que se registre. Esto slo se activa por voluntad del
usuario, como presionar una tecla, hacer clic o tocar la pantalla. El usuario puede cancelar el registro por
lo que esto no est garantizado su xito. Se pueden pedir dos permisos: publicar automticamente
(permitiendo que las publicaciones automticas en el muro del usuario) y publicar puntuaciones
(permitiendo el uso del sistema de puntuaciones altas). Puedes pedir al usuario escribir en el muro
mediante un dilogo sin tener que pedir permiso cada vez - hacerlo siempre automticamente. No pidas
permisos que tu aplicacin no necesite.
Cerrar sesin (Log out)
Cierra la sesin el usuario de FB.
Pedir compartir enlace (Prompt to share link)
Abre un dilogo pidiendo al usuario que comparta la URL que t quieras en su muro. Se pueden usar
descripciones o imgenes opcionalmente. No requiere permisos, pero los usuarios pueden cancelar la
accin.
Pedir compartir la aplicacin (Prompt to share this app)
Abre un dilogo pidiendo al usuario que comparta la URL de la aplicacin en su muro. Se pueden usar
descripciones o imgenes opcionalmente. No requiere permisos, pero los usuarios pueden cancelar la
accin.
Pedir escribir en el muro (Prompt wall post)
Abre un dilogo pidiendo al usuario escribir en su muro. No se aadir contenido ni enlaces - slo un
cuadro de texto vaco para que el usuario escriba lo que quiera. No requiere permisos, pero los usuarios
pueden cancelar la accin.
Publicar enlace (Publish link)
Publica de forma automtica una URL en el muro del usuario sin preguntrselo. Se pueden usar
descripciones o imgenes opcionalmente. Requiere que el usuario haya aceptado Publicar
automticamente (Publish to stream).
Publicar en el muro (Publish wall post)
Publica de forma automtica un mensaje en el muro del usuario sin preguntrselo. Requiere que el usuario
haya aceptado Publicar automticamente (Publish to stream).
Publicar puntuacin (Publish score)
Publica una puntuacin numrica en la tabla de puntuaciones altas del juego. Requiere que el usuario
haya aceptado Publicar puntuaciones (Publish scores). Cuando la accin se completa se detona
Puntuacin enviada (On score submitted).
Solicitar tabla de puntuaciones altas (Request hi-score board)
Solicita las puntuaciones altas del juego. Requiere que el usuario haya aceptado Publicar puntuaciones
(Publish scores). Esta accin detonar Puntuacin alta (On hi-score) una vez por cada puntuacin que
aparezca en la tabla. Es de tu eleccin elegir la manera de mostrar estas puntuaciones; una forma sencilla
es anexando cada puntuacin a un objeto de texto.
Solicitar la puntuacin ms alta del usuario (Request user top score)
Solicita la puntuacin ms alta del jugador hasta el momento en el juego. Requiere que el usuario haya
aceptado Publicar puntuaciones (Publish scores). Cuando se completa la accin se detona Puntuacin
ms alta del usuario disponible (On user top score available).
Expresiones de Facebook
Nombre (FirstName)
El nombre actual del usuario. Slo se ajusta tras la detonacin de Nombre disponible (On name
available).
Nombre completo (FullName)
El nombre completo actual del usuario. Slo se ajusta tras la detonacin de Nombre disponible (On name
available).
Apellidos (LastName)
Los apellidos actuales del usuario. Slo se ajusta tras la detonacin de Nombre disponible (On name
available).
ID de usuario (UserID)
La ID actual del usuario, que se usa para distinguir diferentes usuarios con el mismo nombre.
Slo se ajusta despus de que el usuario se haya registrado.
Nombre para Puntuacin alta (HiscoreName)
El nombre en la tabla de Puntuaciones Altas. Se ajusta en el evento Puntuacin Alta (On hi-score).
Posicin en Puntuaciones Altas (HiscoreRank)
La posicin actual en la tabla de Puntuaciones Altas, desde 1 hacia abajo. Se ajusta en el evento
Puntuacin Alta (On hi-score).
ID de usuario en Puntuaciones Altas (HiscoreUserID)
Da la ID actual del usuario en la tabla de Puntuaciones Altas. Es nico aunque dos personas en la
tabla tengan el mismo nombre.
Puntuacin (Score)
La puntuacin ms alta actual en el evento Puntuacin Alta (On hi-score) o la puntuacin actual del
usuario en Puntuacin ms alta del usuario disponible (On user top score available).
el navegador Google Chrome. Los de la Playstation 3 no funcionan sin instalar ciertos drivers. Por esta
razn se recomienda la primera opcin siempre habilitando un mtodo alternativo como el teclado.
La mayora de los dispositivos mviles no tienen una toma fsica para conectar un controlador. Por ello,
normalmente slo se habilita el uso de mandos en ordenadores de mesa. Para mviles con pantalla tctil,
cntrate en el diseo de controles tctiles touch controls .
Para evitar que las pginas web hagan un seguimiento a travs de tus controladores disponibles, la
mayora de los navegadores que los soportan dirn que no hay controladores conectados hasta que se
pulse un botn de uno de los dispositivos.
Varios Mandos
Varios Mandos se pueden conectar a un solo ordenador. Para diferenciar entre ellos, la mayora de las
acciones, condiciones y expresiones de este objeto toman unos parmetros. Es un ndice basado en 0 del
controlador. Por ejemplo, 0 identifica al primer controlador, 1 al segundo y as sucesivamente. Esto te
permite jugar en multijugador.
Propiedades de Mando
Zona sin cobertura analgica (Analog deadzone)
Los dispositivos con joysticks analgicos son extremadamente sensibles. Esto te permite controlar los
juegos de forma precisa, pero el joystick registrar tambin un leve movimiento cuando no se toque. Si no
se ignoraran ciertos valores, el jugador controlado por el usuario se movera de forma incorrecta cuando
este no tocara el joystick. Para resolver el problema los valores por debajo de cierto lmite se ignoran. El
movimiento del joystick tiene un rango de -100 a 100 en cada eje, y si la magnitud est por debajo del
valor Zona sin cobertura analgica (Analog deadzone) dar 0. Por ejemplo, por defecto es 25, as que
valores desde -25 a 25 contarn como 0. Se recomienda este valor para asegurar que no haya
movimientos no intencionados.
Condiciones de Mando
Cotejar ejes (Compare axis)
Coteja la posicin de un joystick analgico en un mando especfico. Los valores dentro de la Zona sin
cobertura analgica (Analog deadzone) dan 0. El rango de valores de los ejes es de -100 a 100.
Tiene Mandos (Has gamepads)
Verdadero si hay algn mando conectado y activado. Para evitar que sitios web te controlen en base a los
mandos que tengas, la mayora de los navegadores no envan los datos del controlador hasta que se pulsa
un botn.
Botn presionado (Is button down)
Verdadero si un botn se presiona en un mando especfico. Los botones se denominan de acuerdo a los
controladores de la XBox 360, y se pueden asignar como se explica en Asignacin de Teclas.
Mando conectado (On gamepad connected)
Detonado cuando un dispositivo de mando se conecta al ordenador. Para evitar que sitios web te controlen
en base a los mandos que tengas, la mayora de los navegadores no envan los datos del controlador hasta
que se pulsa un botn, cuando tambin funcionar esta condicin.
Mando desconectado (On gamepad disconnected)
Detonado cuando un dispositivo de mando se desconecta del ordenador, como quitndole el cable.
Acciones de Mando
El objeto Mando no tiene acciones.
Expresiones de Mando
Eje (Mando, ndice) (Axis(Gamepad, Index))
Recupera la posicin actual de un joystick analgico. ndice (Index) especifica a la izquierda y a la
derecha en los ejes X e Y, de acuerdo a la Asignacin de Teclas. EL rango de valores de los ejes va desde
-100 a 100. Los valores dentro de la Zona sin cobertura analgica (Analog deadzone) dan 0.
Botn (Mando, ndice) (Button (Gamepad, Index))
Recupera el valor al pulsar un botn. ndice (Index) especifica el ndice basado en 0 del botn en el men
desplegable de la condicin Botn presionado (Is button down) (0 da el valor para el botn A). El valor
dado depende de las caractersticas del botn: si el botn es sensible a la presin, puede dar valores entre
0 y 100, de otra forma dar 0 para no presionado y 100 para presionado. Los botones que no son sensibles
a la presin son ms fciles de detectar usando la condicin Botn presionado (Is button down).
Cantidad de Mandos (GamepadCount)
Da el nmero de mandos conectados y activados. Para evitar que sitios web te controlen en base a los
mandos que tengas, la mayora de los navegadores no envan los datos del controlador hasta que se pulsa
un botn.
ID de Mando (Mando) (GamepadID (Gamepad))
Una secuencia que representa el modelo y la manufactura de un mando especfico, por ejemplo XBox
360 controller. Sin embargo, en la prctica vara de acuerdo al sistema y al navegador usado.
Acciones de Teclado
El objeto Teclado no tiene acciones.
Expresiones de Teclado
El objeto Teclado no tiene expresiones.
Condiciones de Ratn
El cursor est sobre el objeto (Cursor is over object)
Verdadero si el cursor del ratn est sobre algo.
El Botn del Ratn est pulsado (Mouse button is down)
Verdadero si un botn dado (izuqierdo, derecho o centro) estn siendo pulsados.
En cualquier clic (On any click)
Detonado cuando cualquier botn del ratn est pulsado. til para la pantalla de ttulos y escenas de
corte.
Botn soltado (On button released)
Detonado cuando un botn del ratn dada se suelta.
Clicado (On click)
Detonado cuando un botn dado est presionado. Se puede usar para detectar dobles clics.
Rueda del Ratn (On mouse wheel)
Detonado cuando la ruleta del ratn (si la hay) se desliza arriba o abajo. Nota: aadir este detonador en
cualquier parte de tu juego evitar que la rueda se deslice en el navegador, as que salo con cuidado.
Acciones de Ratn
Ajustar cursor de un Sprite
Ajusta el cursor de la imagen de un objeto Sprite. Esto es preferible a ajustar las coordinadas del ratn,
puesto que el retardo de la entrada es bastante ms bajo. Se aplican varias limitaciones: se usa la imagen
que aparece en el editor, sin tener en cuenta el tamao o la rotacin en le plano; la imagen no puede ser
demasiado grande (el lmite suele ser 64x64); y el soporte vara dependiendo del navegador y el SO.
Ajustar estilo de cursor (Set cursor style)
Ajusta el tipo de cursor que se muestra en el lienzo de la pgina HTML. Se puede ocultar completamente
eligiendo None.
Expresiones de Ratn
X absoluta (AbsoluteX)
Y absoluta (AbsoluteY)
Da la posicin del cursor del ratn sobre el lienzo. Es (0,0) en la parte de arriba a la izquierda y crece de
acuerdo al tamao de la ventana. No se ve afectado por ningn desplazamiento o escala en el juego.
X
Y
Da la posicin del cursor en coordinadas. Es (0,0) en la parte de arriba a la izquierda. Cambia segn
desplazamientos y escalas. Sin embargo, si una capa individual se ha desplazado, escalado o rotado, no se
tiene en cuenta en la expresin - para ese caso, usa las versiones de capa de abajo.
X (capa) (X("layer"))
Y (capa) (Y("layer"))
Da la posicin del cursor en coordinadas, con desplazamientos, escalas y rotaciones teniendo en cuenta la
capa dada. La capa se puede identificar por una secuencia de su nombre o por el ndice basado en 0
(Ratn.X(0) ((Mouse.X(0))).
El objeto Partculas tiene varios parmetros para cambiar el comportamiento de cada partcula. Adems,
requiere el uso de una textura para dibujar cada partcula. Normalmente un simple punto balnco sobre un
fondo negro es suficiente.
El Modo de Fusin aditivo (Additive blend mode) funciona especialmente bien con este objeto. Hace
que cada partcula ilumine el fondo en vez de pegarse sobre l y permite que se fundan unas con otras en
vez de solaparse. Hace que parezcan fuentes de luz. La imagen siguiente muestra el efecto cuando la
textura es un punto blanco en un fondo negro.
Los efectos de colores se crean usando partculas de colores. Nota que ya que el efecto Aditivo ilumina el
fondo, cualquier objeto que use este efecto no se ver en un fondo blanco. Funciona mejor en fondos
oscuros.
Para ms informacin sobre modos de fusin y efectos, ve a la seccin Efectos de este manual.
propiedades del objeto controlan como cambian las partculas y que alteraciones aleatorias se hacen. Vale
la pena pasar algn tiempo cambiando los parmetros para ver el efecto que tienen.
Hay tres ajustes diferentes para hacer que las partculas se destruyan, dadas por la propiedad Modo de
destruccin (Destroy mode). La que se aplica por defecto Desvanecerse hasta invisible (Fade to
invisible) disminuye la opacidad de cada partcula hasta 0 durante el Tiempo de espera (Timeout)
destruyendo la partcula cuando es invisible. Tiempo de espera acabado (Timeout expired) simplemente
destruye la partcula tras un tiempo, sin cambiar su opacidad. Partcula parada (Particle stopped) destruir
la partcula cuando su velocidad sea 0, pero debes tener cuidado de asegurar que la partcula decelere
hasta llegar a valores negativos ya que si no no se destruir nunca!
Optimizacin
Los efectos de partculas son ms eficientes que crear el efecto con objetos Sprite, pero no a gran escala.
Lo mismo que con los sprites, debes tener cuidado de no crear un gran nmero de partculas, ya que el
rendimiento bajara, especialmente en mviles. Usa la expresin Contador de partculas
(ParticleCount) para saber cuntas has creado. En mviles, el uso de este objeto no est recomendado ya
que la tasa de frames es muy limitada; pero si es necesario, mantn el nmero por debajo de 50.
Para reducir mantener a raya el contador de partculas, intenta reducir la tasa o acortar el tiempo de
espera. Para compensar, puedes intentar hacer la partcula ms grande para que el efecto no se quede muy
vaco.
Propiedades de Partcula
El objeto Partculas tienes bastantes propiedades, que estn divididas en tres grupos: Propiedades del
espray de partculas (relativas al propio objeto Partculas), Propiedades de las partculas iniciales
(relativas a la creacin de cada partcula de forma individual) y las Propiedades de la duracin de la
partcula (relativas a cmo se comportan las partculas tras su creacin).
Condiciones de Partculas
Est pulverizando (Is spraying)
Verdadero si el espray est habilitado.
Acciones de Partculas
Ajustar pulverizacin (Set spraying)
Habilita o deshabilita el espray, cuando est en modo Espray continuo (Continuous spray). Cuando est
deshabilitado no se crean nuevas partculas.
Expresiones de Partculas
Contador de partculas (ParticleCount)
El nmero de partculas actual que tiene el objeto Partculas. Es importante para asegurar que no creas
demasiadas para el buen funcionamiento del juego; ve a la seccin Optimizacin. Nota que debido a
cmo funcionan las expresiones en C2, si tienes varios ejemplos del objeto, esto solo dar el nmero de
partculas de un ejemplo - usa Para Cada bucle (For Each loop) para contar varios ejemplos.
6.14 Sprite
El objeto Sprite es una imagen inimitable que aparece en el juego. Es uno de los objetos ms importante
en la mayora de los juegos de C2. Se usa para hacer elementos ms visuales, como el jugador, los
enemigos, proyectiles, explosiones y escenarios sin mosaico (los escenarios de mosaicos es mejor
hacerlos con el objeto Fondo Adosado (Tiled Background)).
Si un Sprite tiene una animacin sencilla con un solo frame, simplemente mostrar una imagen sin
animar. Sin embargo, se pueden aadir animaciones ms complejas al objeto con el Editor de imgenes y
animaciones.
Todos los ejemplos de este objeto comparten la animacin. En otras palabras, un nico conjunto de
imgenes conforman una animacin que pertenece al tipo de objeto, los ejemplos son referencias a este
objeto.
Se pueden aplicar efectos a los Sprites. Para ms informacin ver Efectos.
Propiedades de Sprite
Animaciones (Animations)
Clica el enlace Editar (Edit) para abrir el Editor de imgenes y animaciones. Todos los ejemplos del tipo
de objeto compartirn esta animacin.
Tamao (Size)
Clica el enlace Hacer 1:1 (make 1:1) para ajustar la seleccin a tamao real (100%). Esto hace que la
altura y la anchura del objeto sea la misma que las del primer frame de la animacin.
Visibilidad inicial (Initial visibility)
Ajusta si el objeto se muestra (visible) o est escondido (invisible) cuando comienza el plano.
Frame inicial (Initial Frame)
Muestra el primer frame de la animacin. Usa un ndice basado en cero, as que el primero ser el 0.
Puede ser til para almacenar diferentes partes de un mosaico o escenario en diferentes frames de la
animacin de un nico tipo de Sprite.
Condiciones de Sprite
Para condiciones comunes a varios objetos, ver Condiciones Comunes.
Cotejar frame (Compare frame)
Coteja el nmero del frame actual, que tiene un ndice basado en cero (el primer frame es 0).
Est volteado (Is flipped)
Est espejado (Is mirrored)
Verdadero si el objeto ha sido volteado o espejado con las acciones Voltear (Set flipped) y Espejar (Set
mirrored).
Acciones de Sprite
Para acciones comunes a varios objetos, ver Acciones Comunes.
Ajustar animacin (Set animation)
Cambia la animacin que se est reproduciendo a otra. Las animaciones se identifican por su nombre (que
no distingue maysculas y minsculas). La nueva animacin puede empezar desde el principio o desde el
mismo frame en el que se qued la imagen anterior (frame actual (current frame)).
Voltear (Set flipped)
Ajusta si el objeto aparece volteado verticalmente o normal. Esto tambin afecta a los puntos de la
imagen en el polgono de colisin.
Espejar (Set mirrored)
Ajusta si el objeto aparece espejada horizontalmente o normal. Es til para juegos de plataforma. Espejar
tambin afecta a los puntos de la imagen en el polgono de colisin.
Ajustar frame (Set frame)
Ajusta el nmero de frame de la animacin siguiendo el ndice basado en 0. La animacin continuar
reproducindose de igual forma.
Ajustar velocidad (Set speed)
Ajusta la tasa de reproduccin de la animacin actual, en frames por segundo. Los ejemplos pueden tener
distintas velocidades de animacin.
Empezar (Start)
Si la animacin actual se para, esto har que se reproduzca de nuevo desde el frame en el que se
qued (current frame) o desde el principio.
Parar (Stop)
Detiene la animacin. El objeto dejar de mostrar el frame actual.
Generar otro objeto (Spawn another object)
Crea un nuevo ejemplo del tipo de objeto. El nuevo ejemplo se crea en la misma posicin y ngulo que el
objeto actual. Puede estar en cualquier capa (elegida por su nombre o por su ndice basado en 0). Si se
crea una familia, un tipo de objeto al azar se recoger en la familia.
Escalar (Set scale)
Ajusta la altura y la anchura a un mltiplo del tamao actual del objeto, similar a hacer zoom de
forma proporcional. Por ejemplo, si el objeto es 50x100 Escalar a 2 (Set scale to 2) lo convertir
en 100x200 y Escalar a 0,1 (Set scale to 0,1) lo convertir en 5x10.
Cargar imagen de una URL (Load image from URL)
Carga una imagen de una URL dada. El frame actual de la animacin se sustituir por esa imagen. No se
muestra hasta que la imagen se ha terminado de cargar, cuando se detona Imagen URL Cargada (On
image URL loaded). Las imgenes cargadas de diferentes dominios estn sujetas a las restricciones entre
dominios de las solicitudes AJAX para ms informacin ve a la seccin del objeto AJAX. Los datos de
URI se pueden pasar a imagen, de una captura de pantalla o desde la webcam. El parmetro Tamao
(Size) ajusta si el objeto Sprite se ajustar al tamao de la imagen cuando se cargue o si mantiene su
tamao original y se estrecha la imagen.
Expresiones de Sprite
Para expresiones comunes a varios objetos, ver Expresiones Comunes.
Frame de animacin (AnimationFrame)
El nmero de ndice basado en cero del frame actual.
Contador de frames (AnimationFrameCount)
El nmero de frames que contiene la animacin actual.
Nombre de Animacin (AnimationName)
Una secuencia que contiene el nombre de la animacin actual.
Velocidad de Animacin (AnimationSpeed)
La tasa de reproduccin de la animacin actual, en frames por segundo.
Anchura de la imagen (ImageWidth)
Altura de la imagen (ImageHeight)
Las dimensiones originales del objeto (el tamao del frame de la animacin actual) en pxeles. Ya que el
objeto puede estrecharse en tiempo de ejecucin cambiando los valores Anchura (Width) y Altura
(Height), esto se puede usar para saber el tamao original sin tener en cuenta el nuevo tamao.
Renderizar texto
Diferentes navegadores renderizan el texto de distintas formas, y la Vista de Plano de C2 tambin lo hace
distinto a los navegadores. Esto significa que debes esperar que la apariencia del texto sea algo distinta
cuando se juega en distintos navegadores.
Debes probar tu juego en varios de ellos para asegurarte que el texto se ve como t pretendas. Para ms
informacin ve a la seccin Buenas prcticas.
Propiedades de Texto
Texto (Text)
El texto que mostrar el objeto.
Condiciones de Texto
Para condiciones comunes a otros objetos ve a Condiciones comunes.
Cotejar texto (Compare text)
Comprueba si el objeto est mostrando cierta secuencia de texto. Puede diferenciar maysculas
de minsculas (TEXT sera distinto de text) o no (TEXT sera lo mismo que text). Para
comprobar que el objeto no est mostrado cierto texto invierte la condicin.
Acciones de Texto
Para acciones comunes a otros objetos ve a Acciones comunes.
Ajustar color de fuente (Set font color)
Ajusta el color del texto. Usa expresiones como rgb(red, green, blue).
Expresiones de Texto
Para expresiones comunes a otros objetos ve a Expresiones comunes.
Texto (Text)
Da la secuencia que contiene el objeto de texto actual.
Anchura de Texto (TextWidth)
Altura de Texto (TextHeight)
Da el tamao del contenido actual dentro del rectngulo de texto.
Hacer el borde gris claro y fino (Make the border a thick light grey: Ajusta el "borde" a "3px
solid #AAAAAA".
Hacer la letra ms grande (Make the font bigger): Ajusta el "tamao de letra" a "2em".
Hacer un borde rojo y discontinuo (Make a dashed red border): Ajusta el "borde" a "2px dashed
red".
Habilitado (Enabled)
Si el cuadro de texto est habilitado al inicio. Si No, el campo estar bloqueado y no se podr modificar.
Slo lectura (Read-only)
Establece si el texto es de slo lectura, que significa que el texto no se puede modificar pero s
seleccionar. Es diferente a deshabilitar el campo, ya que entonces no se podr seleccionar.
Comprobar ortografa (Spell check)
Habilita el corrector en el texto introducido en el campo, si el navegador lo soporta. Si est
habilitado los errores ortogrficos se subrayarn con una lnea roja.
Tipo (Type)
Ajusta el tipo de contenido que se tiene que introducir en el campo. Puede ser:
Texto (Text) cualquier contenido.
Contrasea (Password) cualquier contenido pero escondiendo los caracteres.
Email para secuencias de formato similar a joe@bloggs.com.
Nmero (Number) slo caracteres numricos.
Nmero de telfono (Telephone number) slo caracteres de nmeros de telfono.
URL direcciones web de formato similar a http://example.com.
rea de texto (rea de texto) texto de varias lneas.
Los de tipo email, nmero, nmero de telfono y URL son ms tiles en dispositivos mviles ya que
cambia el tipo de teclado tctil de acuerdo al contenido a introducir. Por ejemplo, Texto mostrar un
teclado general mientras que Nmero mostrar solo los nmeros, haciendo la tarea ms fcil al usuario.
Tamao de fuente automtico (Auto font size)
Ajusta automticamente la propiedad de tamao de fuente de acuerdo a la escala de la capa y del plano.
Esto evitar se muestre la propiedad CSS ajustada manualmente con la accin Ajustar estilo CSS (Set CSS
style). Ajusta a No si pretendes ajustar t mismo el tamao con Ajustar estilo CSS (Set CSS style).
ID (Opcional)
Una id adicional para el elemento en el DOM (Modelo de Objetos del Documento). Puede ser til para
acceder al valor del elemento desde scripts externos, o dar estilo con CSS en la pgina HTML.
Este mosaico se puede conseguir con un solo objeto de Fondo Adosado, y mucho ms rpido (y ms fcil
de editar) que usar varios objetos Sprite en una cuadrcula. Usa este objeto simpre que la imagen se repita.
Este objeto no puede tener polgono de colisin. Siempre colisionand e acuerdo al rectngulo de accin
(bounding rectangle).
Multi-tctil (Multi-touch)
El objeto Tctil soporta tambin estmulos tctiles mltiples. Este modo es ms til con las condiciones
Objeto tocado (On touched object) y Est tocando objeto (Is touching object), que pueden detectar varios
controles tctiles simultneos.
Para ms usos avanzados, las expresiones Contador de toques (TouchCount), XAt y YAt dan los contactos
actuales en la pantalla. Los toques tienen un ndice basado en 0, as que 0 es el primer toque, 1 el segundo
y as sucesivamente. Los toques se ordenan como una pila: el primero (el ms viejo) es siempre el 0, el
segundo es siempre el 1 y as sucesivamente. Si un toque se destruye y despus se vuelve a aadir, se
convertir en el ltimo toque de la lista.
Propiedades de Tctil
Usar entradas de ratn (Use mouse input)
Si est en S, los clics del ratn simularn los toques en la pantalla. Clicar y arrastrar con el botn
izquierdo del ratn simular un arrastre con el dedo y los clics sencillos simularn toques. Puede ser muy
til para probar que los eventos tctiles funcionan correctamente en un ordenador de mesa que no tenga
pantalla tctil. Sin embargo, slo los toques simples se pueden simular adems de que el ratn es mucho
ms preciso, por lo que es mejor probarlos en un dispositivo tctil real.
Condiciones de Tctil
Cotejar velocidad de toque (Compare touch speed)
Coteja la velocidad de un toque especfico (dado por su ndice basado en 0). La velocidad se mide en el
lienzo en pxeles por segundo, por lo que no se ve afectado por la escala de la pantalla.
Est tocando (Is in touch)
Verdadero si algo est tocando la pantalla.
Est tocando un objeto (Is touching object)
Verdadero si se est tocando un objeto dado.
Toque finalizado (On touch end)
Detonado cuando cualquier toque se suelta de la pantalla.
Toque empezado (On touch start)
Detonado ante cualquier toque de la pantalla.
Objeto tocado (On touched object)
Detonado cuando se toca un objeto dado.
Acciones de Tctil
El objeto Tctil no tiene acciones.
Expresiones de Tctil
Aceleracin X (AccelerationX)
Aceleracin Y (AccelerationY)
Aceleracin Z (AccelerationZ)
Da el movimiento actual del dispositivo como su aceleracin en cada eje en m/s^2 (metros por segundo
por segundo) excluyendo el efecto de la gravedad. La expresin que incluye la gravedad (abajo) es ms
comn; esta dar 0 en los dispositivos que no la soporten.
En el plano
El objeto Medios de comunicacin del Usuario aparece como un rectngulo en la Vista de Plano,
con una cruz roja. Representa donde se mostrar el video introducido en el plano.
Parar (Stop)
Finaliza cualquier captura de video activa. Se debe volver a pedir permiso para poder usarse de nuevo.
Nota que Alamcenamineto Web solo almacena secuencias. Si pones una clave a un nmero como 100,
cuando lo recuperes ser una secuencia. Para volver a convertirlo, usa la expresin del sistema int,
int(WebStorage.LocalValue("score")).
6.21 Windows 8
El objeto Windows 8 (W8 en adelante) da acceso a caractersticas especficas de plataformas disponibles
cuando se usa el juego como aplicacin de Windows 8. Nota que estas caractersticas no se aplicarn para
otras formas, incluso en Internet Explorer - slo funciona en el nuevo estilo de apps de W8 a partir de su
men de inicio.
W8 tambin soporta entradas tctiles que es el nico mtodo disponible para mviles y tabletas de W8.
Para que funcione en estos dispositivos asegrate de aadir el objeto Tctil.
Condiciones de W8
Datos cambiados (On data changed)
Detonado cuando los datos de itinerancia se han actualizado con datos de otro dispositivo. Normalmente
esto ocurre cuando guardas los datos de itinerancia en un dispositivo y despus el usuario cambia la
aplicacin a otro dispositivo. Puede haber tiempo de espera hasta que se sincronicen los datos de
itinerancia y, cuando est todo preparado, este detonador se disparar.
Existe clave de itinerancia (Roaming key exists)
Verdadero si una clave dad existe en el almacenamiento de itinerancia.
Compartiendo (On share)
Detonado cuando el usuario activa Compartir (Share). Para especificar qu compartir, usa una de las
acciones para compartir de este detonador.
Cotejar estado de vista (Compare view state)
Comprueba el estado actual de la vista de la aplicacin. Puede ser la tradicional pantalla completa
apaisada o vertical, o snapped (que significa que la aplicacin est a un lado de la ventana, en un formato
estrecho) o filled (cuando hay distintas aplicaciones en vista snapped y sta est usando el rea ms
grande de la pantalla).
Estado de vista cambiado (On view state changed)
Detonado cuando se cambia el estado de la vista, (para detectar que est snapped usar Estado de la vista
snapped (On view state snapped))
Acciones de W8
Ajustar texto en mosaico (Set live tile text)
Cambia el mosaico de la aplicacin en el men de inicio para que muestre texto. Se debe elegir una
plantilla prediseada. Para una vista previa, mira el catlogo tile template catalog on MSDN . Nota que
usar plantillas amplias requerir que tu aplicacin est usando un mosaico amplio; si lo cambias a una
plantilla de tamao diferente no funcionar.
Eliminar datos de itinerancia (Clear roaming data)
Borra todas las claves de los datos de itinerancia, dejndolos vacos.
Quitar valor de itinerancia (Remove roaming value)
Quita una clave especfica de los datos de itinerancia.
Ajustar valor de itinerancia (Set roaming value)
Almacena una clave y un valor asociado a los datos de itinerancia. Si ya existe el valor se sobrescribe y si
no se crea. Los valores se almacenan como secuencias. Puedes usar un nmero como valor, pero se
convertir y se recuperar en forma de secuencia.
Fallo al compartir (Fail share)
Solo vlido en un evento Compartiendo (On share). Usa esta accin para indicar que compartir ha fallado
o no est disponible.
Compartir HTML (Share HTML)
Solo vlido en un evento Compartiendo (On share). Usa esta accin para compartir texto en formato
HTML de la aplicacin.
Compartir enlace (Share link)
Solo vlido en un evento Compartiendo (On share). Usa esta accin para compartir un enlace, como la
direccin de tu pgina.
Compartir texto (Share text)
Solo vlido en un evento Compartiendo (On share). Usa esta accin para compartir texto de la aplicacin.
Mostrar compartir UI (Show share UI)
Muestra Compartir UI (Share UI) de W8 automticamente. Asegrate de usarlo con cuidado para no
ofender o molestar a tus usuarios. Por ejemplo, una buena opcin es un botn Compartir (Share)
personalizado que muestre Compartir UI (Share UI). Esta accin solo funciona cuando tu aplicacin est
en la ventana activa.
Intentar quitar snap (Try unsnap)
Si tu aplicacin est en la vista snapped, esto intenta cambiarla a filled o pantalla completa. La accin
puede no funcionar si el usuario est usando otra aplicacin.
Expresiones de W8
Valor de itinerancia (clave) (RoamingValue (key))
Recupera un valor del almacenamiento de itinerancia asociado a una clave dada. Si la clave no existe se
dar una secuencia vaca. Nota que todos los valores se recuperan en secuencias, aunque los originales
fueran nmeros.
6.22 XML
El plugin XML puede analizar y leer datos de documentos XML. Usa XPath para acceder a ellos. XPath
es un tipo de lenguaje de consulta para XML similar a SQL para bases de datos. Para aprender ms sobre
XPath clica los siguientes enlaces:
W3Schools XPath tutorial
Some XPath examples
Another XPath tutorial with examples
El plugin XML es solo de lectura. Puedes leer datos pero no cambiar ningn valor en
documentos XML.
Para caractersticas comunes a otros plugins ve a Caractersticas comunes.
Internet Explorer
Internet Explorer no soporta consultas XPath que dan un nmero (como count()). En este caso puedes
usar la expresin Contador de nodos (NodeCount) en su lugar. Asegrate de probar tu proyecto en varios
navegadores. El resto de ellos tienen soporte completo estndar para XPath.
Condiciones XML
Para cada nodo (For each node)
Repite el evento una vez por cada nodo dado por la consulta XPath. Normalmente se usar con consultas
que dan nodos mltiples, como "/bookstore/book" para seleccionar todos los nodos libro (book) bajo
almacen de libros (bookstore). En el evento Para cada nodo (For each node) el nodo actual se ajusta
al que est siendo repetido. Esto significa que XPaths relativos, como "title/text()" trabajan en relacin
con el nodo actual (en este caso dando el texto de la pestaa ttulo (title)). Para cada nodo (For each
node) tambin se puede anidar, as que puedes repetir otra lista relativa en el nodo actual.
Acciones XML
Cargar (Load)
Carga un documento XML de una secuencia. Mira las seccin de arriba Cargar un documento XML.
Expresiones XML
Contador de nodos (NodeCount)
Da el nmero de nodos dados por una expresin XPath. Por ejemplo, puede contar el nmero de
elementos en un nombre dado. En el evento Para cada nodo (For each node), XPath es relativo al nodo
actual.
Valor de nmero (NumberValue)
Da un nmero de una expresin XPath. Si se dan mltiples valores, solo se recupera el primero. En el
evento Para cada nodo (For each node), XPath es relativo al nodo actual.
Valor de secuencia (StringValue)
Da una secuencia de una expresin XPath. Si se dan mltiples valores, solo se recupera el primero. En el
evento Para cada nodo (For each node), XPath es relativo al nodo actual.
7. Referencia de Sistema
El objeto Sistema es el nico objeto integrado en C2. Ofrece caractersticas para acceder al motor del
juego y usos que son tiles para la mayora de los juegos. Para ms informacin sobre el objeto Sistema
ve a la seccin del Resumen Estructura del Proyecto.
General
Cotejar dos valores (Compare two values)
Coteja dos expresiones cualquiera (nmeros o texto). El resultado puede ser Igual (Equal),
Distinto (Not equal), Menor (Less), Menor o igual (Less or equal), Mayor (Greater) o Mayor o
igual (Greater or equal).
Cada tick (Every tick)
Una condicin que siempre es verdadera. Funciona de forma independiente y se comprueba una vez por
tick, de ah el nombre. Un tick es sobre 60 veces por segundo en la mayora de ordenadores; para ms
informacin mira cmo funcionan los eventos. Aadir Cada tick (Every tick) a un evento con otras
condiciones es redundante y no tendr efecto.
Est entre valores (Is between values)
Comprueba si un nmero est entre dos valores (mayores o iguales que un valor ms bajo y
menores o iguales que otro ms alto).
Grupo activo (Is group active)
Comprueba si un grupo de eventos est activo o inactivo. Para identificarlos se usa el nombre del grupo.
Capas y Plano
Cotejar opacidad (Compare opacity)
Coteja la opacidad (o semitransparencia) de una capa, de 0 (transparente) a 100 (opaca). La
opacidad de una capa no puede estar fuera de este rango.
Se soportan efectos (Effect are supported)
Verdadero si el soporte WebGL est disponible para mostrar los efectos. Para ms informacin ve a la
seccin Efectos.
Capa visible (Layer is visible)
Comprueba si la capa actual es visible o no.
Bucles
Los bucles se pueden detener con la accin del sistema Parar bucle (Stop Loop).
Para (For)
Repite el evento un nmero de veces, usando una ndice de variables con un rango de valores. El ndice
puede recuperarse con la expresin ndice de Bucle (LoopIndex) y as dar el nombre del bucle.
Para cada (For Each)
Para cada (ordenado) (For Each (ordered))
Repite el evento una vez por ejemplo recogido. Slo repite el evento para ejemplos que renan
condiciones anteriores. Para ms informacin sobre la recogida de ejemplos mira cmo funcionan los
eventos. Para cada (For Each) suele ser mal utilizada o usada de forma redundante - las acciones ya
aplican para cada ejemplo recogido por condiciones, as que a menudo no es necesaria. Sin embargo, si
entiendes completamente cmo funcionan los eventos la puedes usar para forzar al evento a aplicarse a
cada ejemplo aunque el propio evento no lo hara de forma normal. La variante ordenado (ordened)
permite definir el orden en el que los ejemplos se repiten con una expresin. Por ejemplo, ordenando por
Sprite.Y ascendente repetir los ejemplo de arriba de la pantalla primero y se mover hacia abajo.
Repetir (Repeat)
Simplemente repite el evento un nmero dado de veces. Esto comprueba cualquier condicin que
lo sigue en cada repeticin y, si se renen esas condiciones, tambin funcionarn las acciones y
sub-eventos en cada repeticin.
Mientras (While)
Repite el evento hasta que una de las otras condiciones del evento sea falsa o se use la accin Parar bucle
(Stop loop). Ten cuidado de no crear bucles infinitos que pueden ralentizar el juego
Recoger ejemplos
Recoger todos (Pick all)
Selecciona todos los objetos. Las condiciones posteriores recogern entonces de todas, en vez de la
seleccin hecha por condiciones previas. Para ms informacin de cmo funciona la seleccin de
ejemplos en eventos ve a Cmo funcionan los ejemplos. til en sub-eventos para afectar a ejemplos
distintos del anterior.
Recoger ejemplo N (Pick Nth instance)
Selecciona un ejemplo de una lista dada de objetos recogidos. Es ms til en sub-eventos para afectar slo
a ciertos ejemplos. Por ejemplo, en un evento Sprite colisiona con Sprite, Recoger ejemplo 0 (Pick 0th
instance) y Recoger ejemplo 1 (Pick 1st instance) se usan para que ambas acten en esa colisin.
Si todos los objetos estn seleccionados, esta condicin se puede usar tambin para recoger un objeto por
su ndice de ID (IID). Para ms informacin ve a Caractersticas comunes.
Condiciones especiales
Otro (Else)
Funciona si el evento anterior no ha funcionado. Nota que esta condicin no selecciona objetos: si sigue a
un evento que recogi objetos, en el evento Otro (Else) todos los ejemplos se vuelven a seleccionar. Otro
(Else)slo puede seguir a eventos normales (no detonados). Tambin puede seguir a otro evento Otro
(Else) con otras condiciones para hacer una cadena si - otro si - (if - else if -).
Est en vista previa (Is in preview)
Verdadero cuando haces vista previa en C2, y falso cuando funciona tras haber sido exportado. til para
eliminar fallos o aadir caractersticas de diagnostico slo para la vista previa.
Est en un dispositivo mvil (Is on mobile devide)
Intenta detectar si el dispositivo actual es uno mvil (telfono o tableta). Es muy difcil precisar y la
deteccin pude no ser perfecta: puede haber algunos sistemas mviles para los que esta condicin no sea
verdadera y (menos a menudo) sistemas de mesa para los que s. La condicin siempre es verdadera
cuando se usa a travs de contenedores PhoneGap o AppMobi y para los dispositivos iOS o Android. A
parte de esto C2 comprobar otros fabricantes de mviles comunes. Dar verdadero si el sistema actual no
es un sistema fijo y ya que hay pocos as en OSs se comprobar en Windows, Linux, OS 9, OS X, Solaris
y BSD.
Detonar cuando sea verdadero (Trigger once while true)
Convierte un evento normal (que se comprueba cada vez o tick) en un detonador. Por ejemplo, si un
evento reproduce un sonido cuando tienes 0 vidas, normalmente el evento funcionar cada tick.
Reproducir 60 sonidos por segundo y sonara bastante mal. Aadir Detonar cuando sea verdadero
(Trigger once while true) tras la otra condicin har que el evento funcione slo cuando sea verdadera.
Esto hace que el ejemplo anterior reproduzca el sonido cuando las vidas estn a 0. Debe ser la ltima
condicin de un evento.
Inicio y fin
Al final del plano (On end of layout)
Detonado cuando el plano est terminando. Puede ocurrir cuando se quiere cambiar de plano o cuando el
proyecto finaliza.
Al inicio del plano (On start of layout)
Detonado cuando un plano empieza.
Tiempo
Cotejar tiempo (Compare time)
Coteja el tiempo, en segundos, desde que el juego empieza. Por ejemplo, los eventos se pueden programar
para suceder cuando el tiempo llegue (sea igual) a 10 segundos.
Cada X segundos (Every X seconds)
Hace que el evento funcione en un intervalo de segundos dado. Se puede usar tras otras condiciones para
hacer funcionar el evento en ese intervalo slo mientras otra condiciones son verdaderas, como El
jugador esta pulsando la barra espaciadora Y cada 0,5 segundos: se dispara el lser ("Player is holding
spacebar AND every 0.5 seconds: fire laser").
Monitor
Ajustar tamao del lienzo (Set canvas size)
Ajusta el tamao del lienzo en el rea de la pgina, si aparece en lnea a ella (no se usa el modo pantalla
completa).
Capturar el lienzo (Snapshot canvas)
Toma una captura de pantalla del monitor. Esto detona Captura de lienzo (On canvas snapshot) cuando la
foto est preparada y se puede acceder a ella con la expresin del sistema Captura de lienzo
(CanvasSnapshot). Despus se podr cargar en un sprite o en un fondo adosado, enviarse a un servidor o
abrir con el objeto Navegador en una pestaa nueva.
General
Crear objeto (Create object)
Crea un nuevo ejemplo de un tipo de objeto en una posicin dada de una capa. Si se elige una Familia, un
tipo de objeto al azar de la familia se seleccionar, crendose un ejemplo para l.
Ir a plano (Go to layout)
Ir a plano (por nombre) (Go to layout (by name))
Cambia a otro plano del proyecto. Nota que las variables globales mantienen su valor actual - no
se reajustan. Para reajustarlas usa la accin del sistema Reajustar variables globales (Reset
global variables).
Reiniciar plano (Restart layout)
Reinicia el plano actual. Nota que, a diferencia de Ir a plano (Go to layout), esta accin reajusta todos los
grupos de eventos a su estado inicial. Las variables globales mantienen su valor actual - no se reajustan.
Para reajustarlas usa la accin del sistema Reajustar variables globales (Reset global variables).
Activar grupo (Set group active)
Activa o desactiva un grupo de eventos. Ningno de los eventos dentro de un grupo inactivo funcionar
hasta que vuelva a ser activado. Los grupos se identifican por su nombre.
Parar bucle (Stop loop)
Detiene los bucles Repetir (Repeat), Para (For) o Para cada (For each). Estos bucles son
condiciones del sistema. El resto de acciones de eventos y sub-eventos continuarn funcionando,
pero no en bucle.
Capas y plano
Para ms informacin sobre acciones de los efectos ve a la seccin Efectos.
Ajustar ngulo de capa (Set layer angle)
Rota una capa entera a un nmero de grados.
Habilitar efecto de capa (Set layer effect enabled)
Habilita o deshabilita uno de los efectos de una capa en el plano actual. Esta accin no puede
usarse para alterar capas de otros planos.
Ajustar parmetro de efecto de capa (Set layer effect parameter)
Cambia el valor de uno de los parmetros de un efecto de una capa en el plano actual. Esta accin no
puede usarse para alterar capas de otros planos. El parmetro a cambiar se especifica por su ndice basado
en cero, 0 cambiar el primer parmetro, 1 el segundo y as sucesivamente.
Desplazamiento
Para desplazar, el tamao del plano debe ser mayor que el tamao de la ventana o estar activada la
propiedad Desplazamiento ilimitado (Unbounded scrolling). De otra forma no habra a donde desplazarse
y esta accin no tendra efecto.
Desplazarse a objeto (Scroll to object)
Centra la vista en un objeto dado. Desplaza todas las capas teniendo en cuenta su propiedad de paralaje
(parallax).
Desplazar a posicin (Scroll to position)
Desplazar a X (Scroll to X)
Desplazar a Y (Scroll to Y)
Ajusta las posiciones X e Y en donde centrar la vista. Desplaza todas las capas teniendo en cuenta su
propiedad de paralaje (parallax).
Tiempo
Ajustar escala de tiempo (Set time scale)
Cambia la tasa a la que el tiempo transcurre en el juego. til para efectos a cmara lenta y de pausa. Mira
el tutorial Delta-time and framerate independence para ms informacin.
Ajustar escala de tiempo de objeto (Set object time scale)
Restaurar escala de tiempo de objeto (Restore object time scale)
Cambia la tasa a la que el tiempo transcurre para un objeto especfico. Afecta al comportamiento del
objeto y a su expresin dt. Restaurarla lo devuelve a la misma escala de tiempo que el resto del juego.
Mira el tutorial Delta-time and framerate independence para ms informacin.
Esperar (Wait)
Espera un nmero de segundos antes de continuar con la siguiente accin o sub-evento. Otros eventos
continuarn funcionando mientras. Mira el tutorial How to use the System 'Wait' action .
Monitor
Anchura de la ventana (WindowWidth)
Altura de la ventana (WindowHeight)
Da el tamao de la ventana. til con la propiedad Pantalla completa en el navegador (Fullscreen in
browser) ya que esto habilita una variable de tamao de ventana. Mira tambin Supporting multiple
screen sizes .
Capas
Expresiones donde se requiere una capa, por su nombre (como secuencia) o su ndice (como nmero
basado en 0).
CanvasToLayerX(layer)
CanvasToLayerY(layer)
Calcula las coordenadas del plano por debajo de una posicin en las coordenadas del lienzo para una capa
dada.
LayerToCanvasX(layer)
LayerToCanvasY(layer)
Calcula las coordenadas del lienzo por encima de una posicin en las coordenadas del plano para una
capa dada.
ngulo de Capa (capa) (LayerAngle(layer))
Da el ngulo de una capa en grados.
Plano
Captura del lienzo (CanvasSnapshot)
Contiene la imagen resultante de la accin Capturar lienzo (Snapshot canvas) y tras Captura del
lienzo (On canvas snapshot). (Nota que est expresin no estar disponible inmediatamente tras
la accin Capturar lienzo (Snapshot canvas) solo puedes usarlo cuando Captura del lienzo (On
canvas snapshot) se detone).La expresin da los datos URI del archivo de imagen. Despus, esto
puede cargarse en un objeto Sprite o Fondo Adosado mediante Cargar imagen de una URL
(Load image from URL), enviarse a un servidor para almacenarlo localmente o abierto con el
objeto navegador en una nueva pestaa para guardarla en el disco.
ngulo del plano (LayoutAngle)
Da el ngulo del plano actual en grados. No incluye la rotacin de las capas individualmente.
Escala del plano (LayoutScale)
Da la escala del plano complete dada por la accin Ajustar escala de plano (Set layout scale).
Esto no incluye la escala de las capas individualmente.
Anchura del plano (LayoutWidth)
Altura del plano (LayoutHeight)
Da el tamao del plano actual en pxeles.
Nombre de plano (LayoutName)
Da el nombre del plano actual.
Desplazamiento X (scrollx)
Desplazamiento Y (scrolly)
Da la posicin actual en la que la vista est centrada
Matemticas
Estas expresiones son funciones matemticas normales que puedes encontrar en calculadoras. Sin
embargo, nota que las funciones que usan ngulos trabajan con grados, no radianes. Los ngulos
empiezan en 0 grados y aumentan hacia la derecha en el sentido de las agujas del reloj.
sin(x), cos(x), tan(x), asin(x), acos(x), atan(x) Funciones trigonomtricas que usan ngulos en grados.
abs(x) Valor absoluto de x (abs(-5) = 5).
angle(x1, y1, x2, y2) Calcula el ngulo entre dos puntos.
anglelerp(a, b, x) Interpola linealmente el ngulo a al b por x. Tiene en cuenta la naturaleza cclica de los
ngulos, no como el estndar lerp.
anglediff(a1, a2) Da la diferencia ms pequea entre dos ngulos
anglerotate(start, end, step) Rota el ngulo desde el inicio (start) hasta el final (end) pasando por el
ngulo de paso (step), todo en grados. Si inicio (start) est a menor distancia en grados del final (end) que
el de paso (step), dar final (end).
ceil(x) Redondea al alza x (ceil(5.1) = 6).
distance(x1, y1, x2, y2) Calcula la distancia entre dos puntos.
exp(x) Calcula e^x.
floor(x) Redondea a la baja x (floor(5.9) = 5).
lerp(a, b, x) Interpolacin lineal del ngulo a al b por x. Calcula a + x * (b - a).
unlerp(a, b, y) Invierte la interpolacin lineal: si lerp(a, b, x) = y, entonces unlerp (a, b , y) = x. Calcula
(y - a) / (b - a).
ln(x) Logaritmo de base e de x.
log10(x) Logaritmo de base 10 de x.
max(a, b [, c...]), min(a, b [, c...]) Calcula el mximo o el mnimo de nmeros dados. Se puede usar
cualquier nmero de los parmetros mientras haya al menos dos.
pi La constante matemtica pi (3.14159...).
round(x) Redondea x al nmero entero ms cercano (round(5.6) = 6).
sqrt(x) Calcula la raz cuadrada de x (sqrt(25) = 5).
Sistema
Progreso de carga (loadingprogress)
Da el progreso de la carga actual en un plano cargador, o el progreso de una actualizacin mientras que la
condicin del objeto Navegador Est descargando actualizacin (Is downloading update) es verdadera.
El progreso viene dado por un nmero de 0 a 1 (0,5 sera la mitad). Para ms informacin ve a los
tutoriales Como hacer una pantalla de carga personalizada (how to make a custom loading screen ) y
Juegos offline en C2 (offline games in Construct 2 ).
ndice de bucle (loopindex)
Da el ndice (nmero de repeticiones) de cualquier bucle actual.
ndice de bucle (nombre) (loopindex(name))
Da el ndice (nmero de repeticiones) de un bucle dando su nombre. til para obtener ndices en un bucle
anidado.
Contador de objetos (objectcount)
El nmero total de objetos creados.
Texto
Encontrar (src, texto) (find(src, text))
Encuentra el primer ndice en src que aparece en el texto, de lo contrario da -1.
left(text, count)
Da la primera cuenta de caracteres de texto.
len(text)
Da el nmero de caracteres en el texto.
Minsculas (texto) (lowercase(text))
Convierte todo el texto dado en minsculas.
mid(text, index, count)
Da la cuenta de caracteres empezando por el ndice en el texto.
Nueva lnea (newline)
Una secuencia que contiene un salto de lnea. Usar para insertar saltos de lnea en secuencias (Hello" &
newline & "World)
Sustituir (src, find, rep) (replace(src, find, rep))
Encuentra todos los casos de find en src y las sustituye con rep.
right(text, count)
Da la ltima cuenta de caracteres del texto.
tokenat(src, index, separator)
Cuenta cuantos tokens hay en src usando separator. Por ejemplo, ("apples|oranges|bananas", "|") da 3.
trim(src)
Da src con todos los espacios en blanco (espacios, tabulaciones, etc.) quitados desde el principio al final
de la secuencia.
Maysculas (text) (uppercase(text))
Convierte todo el texto dado en maysculas.
Codificar URL (str) (URLEncode(str))
Decodificar URL (str) (URLDecode(str))
Convierte en o desde una secuencia a un formato apropiado para incluir en una URL o datos POST.
zeropad(number, digits)
Rellena los nmeros hasta llegar a ciertos dgitos aadiendo ceros a la izqueirda de los nmeros y dando
como resultado una secuencia. Por ejemplo zeropad(45, 5) dar la secuencia 00045.
Tiempo
Uso de CPU (CPUUtilisation)
El porcentaje del ltimo Segundo que se gast en la lgica de la aplicacin. Eso es para que usuarios
avanzados hagan mediciones del rendimiento. Nota que en los dispositivos aceleradores de hardware la
renderizacin ocurre en una GPU separada y esta medicin no te podr decir nada sobre como de rpido
se produce; para ello sera mejor la medicin fps.
dt
El tiempo delta en segundos. Ver Delta-time and framerate independence .
fps
La tasa de frames por segundo (FPS) actual, que es cuantos veces la pantalla se dibuja cada segundo. La
mayora de los ordenadores funcionan a 60 fps si son suficientemente rpidos.
Contador de ticks (tickcount)
El nmero de ticks que ha habido desde el inicio del juego.
Tiempo (Time)
El nmero de segundos desde que el juego empez, teniendo en cuenta la escala de tiempo.
Escala de tiempo (Timescale)
La escala de tiempo actual.
Tiempo real (Wallclocktime)
El nmero de segundos desde que el juego empez, sin tener en cuenta la escala de tiempo (el tiempo en
el mundo real).
Valores
Elegir ((a, b [, c...])) (choose(a, b [, c...]))
Elige uno de los parmetros dados al azar. Por ejemplo, choose(1, 3, 9, 20) escoger al azar uno de los
cuatro nmeros. Tambin funciona con secuencias, por ejemplo choose("Hello", "Hi") dar Hello o Hi.
Se puede usar cualquier nmero de parmetros, mnimo dos.