Ahoj, urcite to bude banalni zalezitost, ale uz nakou chvili dumam nad tim jak to zprovoznit a porad mi to nejde. Jde o toto:
Vytvoril jsem si pomoci window closeupy itemu v inventari. Mam to udelane tak, ze v hlavnim window je nested window a pod nested window je umistena entita v niz je sprite s animaci itemu. Kdyz dam script na tuto entitu tak vse funguje.
Avsak nechci aby byl bran jako aktivni cely obrazek v entite, v tomto pripade chci aktivni pouze vrsek konve, ktera se otevre a hrac z tohoto predmetu ziska otevrenou konev a viko od konve. Cili jsem si vytvoril button v nemz je obrazek pouze vrsku konve umisteny nad entitou konve. Script s eventem Take je prirazeny k tomuto button. Vse funguje, az na to, ze se mi neprehraje animace ve spritu.
definice pro itemCloseUp.window
; generated by WindowEdit
; $EDITOR_PROJECT_ROOT_DIR$ ..\..\..\
WINDOW
{
NAME="win_icu"
CAPTION=""
TITLE_ALIGN="left"
X=0
Y=0
WIDTH=1280
HEIGHT=800
DISABLED=FALSE
VISIBLE=FALSE
PARENT_NOTIFY=FALSE
TRANSPARENT=FALSE
PAUSE_MUSIC=TRUE
MENU=FALSE
IN_GAME=TRUE
CLIP_CONTENTS=FALSE
FADE_COLOR { 0, 0, 0 }
FADE_ALPHA=150
ALPHA_COLOR { 0, 0, 0 }
ALPHA=0
SCRIPT="interface\system\itemCloseUp.script"
EDITOR_PROPERTY
{
NAME="Selected"
VALUE="False"
}
BUTTON
{
NAME="b_back"
CAPTION="close"
FONT="fonts\verdana.font"
TEXT=""
TEXT_ALIGN="center"
X=0
Y=0
WIDTH=1280
HEIGHT=800
DISABLED=FALSE
VISIBLE=TRUE
PARENT_NOTIFY=TRUE
FOCUSABLE=FALSE
CENTER_IMAGE=FALSE
PRESSED=FALSE
PIXEL_PERFECT=FALSE
EDITOR_PROPERTY
{
NAME="Selected"
VALUE="False"
}
}
WINDOW
{
NAME="teapotCU"
CAPTION=""
IMAGE="interface\images\itemCloseUp.jpg"
TITLE_ALIGN="left"
X=215
Y=100
WIDTH=850
HEIGHT=600
DISABLED=FALSE
VISIBLE=FALSE
PARENT_NOTIFY=TRUE
TRANSPARENT=FALSE
PAUSE_MUSIC=TRUE
MENU=FALSE
IN_GAME=FALSE
CLIP_CONTENTS=FALSE
ALPHA_COLOR { 0, 0, 0 }
ALPHA=0
EDITOR_PROPERTY
{
NAME="Selected"
VALUE="False"
}
ENTITY_CONTAINER
{
NAME="teapotEntC"
X=345
Y=285
DISABLED=TRUE
VISIBLE=TRUE
ENTITY="items\teapot\teapot_ent.entity"
EDITOR_PROPERTY
{
NAME="Selected"
VALUE="True"
}
}
BUTTON
{
NAME="b_teapotTop"
CAPTION=""
IMAGE="items\teapot\img\TeapotTop.png"
TEXT=""
TEXT_ALIGN="center"
X=270
Y=130
WIDTH=250
HEIGHT=195
DISABLED=FALSE
VISIBLE=TRUE
PARENT_NOTIFY=TRUE
FOCUSABLE=FALSE
CENTER_IMAGE=TRUE
PRESSED=FALSE
PIXEL_PERFECT=TRUE
SCRIPT="items\teapot\teapot_Open.script"
EDITOR_PROPERTY
{
NAME="Selected"
VALUE="False"
}
}
}
STATIC
{
NAME=""
CAPTION=""
FONT="fonts\verdana.font"
TEXT="Item Close Up"
TEXT_ALIGN="left"
VERTICAL_ALIGN="center"
X=560
Y=115
WIDTH=145
HEIGHT=40
DISABLED=FALSE
VISIBLE=TRUE
PARENT_NOTIFY=TRUE
EDITOR_PROPERTY
{
NAME="Selected"
VALUE="False"
}
}
}
script itemu v inventari otevirajici itemCloseUp.window
#include "scripts\base.inc"
var icu = Game.LoadWindow("interface\system\itemCloseUp.window");
var teapotCU = icu.GetControl("teapotCU");
//var entityC = teapotCU.GetControl("teapotEntC");
////////////////////////////////////////////////////////////////////////////////
on "LookAt"
{
actor.Talk("An oddly textured teapot.");
}
////////////////////////////////////////////////////////////////////////////////
on "Take"
{
icu.Center();
icu.Visible=true;
teapotCU.Visible=true;
//entityC.Visible=false;
}
////////////////////////////////////////////////////////////////////////////////
on "LeftClick"
{
Game.SelectedItem = "teapot";
}
script otevreni konvice, aplikovany na button v nested window
#include "scripts\base.inc"
on "Take"
{
var icu = Game.LoadWindow("interface\system\itemCloseUp.window");
var teapotCU = icu.GetControl("teapotCU");
var entityC = teapotCU.GetControl("teapotEntC");
var entity = entityC.GetEntity();
var sprite = entity.GetSpriteObject();
sprite.Play();
this.Visible=false;
Game.TakeItem("teapot_Open");
Game.TakeItem("teapot_Top");
Game.DeleteItem("teapot");
//actor.Talk("Mmm...Nothing is there");
}