Ja som túto záležitosť riešil nasledujúcim spôsobom:
Poradie entít v scéne Room1 (scéna, kde sú dvere):V scéne mám teda tri entity, ktorých názvy sú nasledujúce:
- DvereZatvorene
- DvereOtvaranie
- DvereOtvorene
Každej horeuvedenej entity je priradený
jeden a ten istý skript.
dvere.script#include "scripts\base.inc"
global Room1;
on "LeftClick"
{
if(Room1.DvereOtvorene==false)
{
actor.
PlayAnim("actors\molly\uu\take1.sprite");
actor.
PlayAnim("actors\molly\uu\take2.sprite");
Room1.DvereOtvorene = true;
}
}
Keď bola postava v ďalšej scéne, do ktorej sa dostane cez otvorené dvere, je potrebné, aby pri návrate z tejto scény boli dvere stále otvorené. Toto je riešené v scene_init.script scény Room1.
#include "scripts\base.inc"
global Room1;
if(Room1==null)
{
Room1.DvereOtvorene = false;
}
if(Room1.DvereOtvorene)
{
// Animácia otvárania dverí sa nezobrazí
DvereOtvaranie.
Active =
false;
// Zobrazia sa otvorené dvere
}
Prosím, pozrite si video na YouTube:https://youtu.be/l0DQdCIcaXQ