4.4 KiB
Interactive Base — objetos clicables dentro de la escena
Interactive Base coloca objetos clicables en las escenas de imagen: un objeto tirado en el suelo, una puerta, un punto «detrás de la cripta». Un objeto puede llevar su propia imagen dibujada sobre el fondo, puede brillar cuando el ratón pasa por encima, y un clic lanza un escenario. Los escenarios añaden y quitan objetos a medida que avanza la historia.
Lo usa el prólogo de Cthangover. Los mapas de tiles de RPG World funcionan en cambio con sus propios eventos.
En el juego
Al principio de Cthangover, un paño rojo descansa junto a la bicicleta, en el callejón. No es parte del fondo: es un objeto interactivo con su propia imagen.
Cuando el ratón pasa sobre el paño, el puntero se convierte en una mano y el paño toma un leve tinte dorado:
Un clic inicia el escenario del paño: Marao lo recoge, y el escenario retira el objeto de la escena.
Un objeto interactivo
Los objetos son archivos JSON en la carpeta interactives/ de un mod. Este es el paño de las imágenes (de Cthangover), con su contorno acortado:
{
"Items": [
{
"id": "cloak_ground",
"texture": "cloak_ground",
"layer": "foreground",
"zIndex": 5,
"cursor": "PointingHand",
"hitArea": {
"type": "polygon",
"vertices": [
{ "x": 0.2796, "y": 0.7318 }, { "x": 0.3207, "y": 0.7167 },
{ "x": 0.3456, "y": 0.8434 }, { "x": 0.3387, "y": 0.8872 }
]
},
"highlight": { "color": "#FFD70044", "scale": 1, "duration": 0.12 },
"actions": {
"onClick": { "scenario": "scenarios/prolog/morning_cloak.scenario" }
}
}
]
}
texture— una imagen del tamaño de toda la pantalla, transparente salvo por el objeto, de modo que encaja sola con el fondo. Omítela para un punto invisible.hitArea— dónde se puede hacer clic en el objeto, en fracciones de la pantalla (0–1):rectconx,y,width,height;circleconx,y,radius; opolygonconvertices.layer—backgroundoforeground; ambos son parte de la imagen y quedan bajo la caja de diálogo, la barra de herramientas y los paneles.uise dibuja sobre todo lo demás.zIndex— el orden entre los objetos de una misma capa: el número mayor se dibuja encima.cursor— el puntero del ratón sobre el objeto, por ejemploPointingHand.highlight— el tinte mientras el ratón está encima:color(con transparencia),scaleydurationdel fundido en segundos.enabled,visible— si reacciona y si se dibuja al principio.actions—onClickejecuta un archivoscenarioocommandsen línea;onHoverEnteryonHoverLeaveejecutan órdenes de escenario.
Cómo se colocan los objetos en una escena
Una definición por sí sola no aparece en ninguna parte. La añade un escenario de la escena, y normalmente la retira el escenario del clic:
interactive_add cloak_ground
interactive_remove cloak_ground
Los objetos se limpian al cambiar de escena, así que Cthangover los vuelve a añadir en cada entrada con un escenario de escena que consulta la historia:
scene: prolog_alley
priority: 15
condition: AwakeningQuest.notHasTag("cloak_taken") && AwakeningQuest.notHasTag("book_taken")
---
interactive_add cloak_ground
interactive_add book_ground
end
Añadir un objeto que ya está no hace nada, así que se puede repetir sin miedo.
También se pueden colocar los objetos y dibujar sus áreas de clic en el editor de interactivos de Editor Tools.
Si algo falla
- El clic no hace nada. El objeto nunca se añadió en esta escena, no está
enabled, o el clic cayó fuera de suhitArea. - La imagen está en un lugar equivocado. La textura debe ser una imagen a pantalla completa que encaje con el fondo, no un pequeño recorte.
- El objeto reaparece después de recogerlo. El escenario que lo añade debe comprobar la misma etiqueta o marcador que activa el escenario del clic.


