ExampleEffects - Lebby/ForScene GitHub Wiki
public class TestEffectsScene extends AbstractScene{
private BoatObject boat;
private TestFlagObject flag;
private TestBackground bg;
@Override
public void build()
{
bg = new TestBackground();
boat = new BoatObject();
flag = new TestFlagObject();
try {
addSceneObject("background",bg);
boat.addSceneObject("flag",flag);
addSceneObject("boat",boat);
} catch (NoNameException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Scroll scroll = new Scroll();
scroll.setTarget(boat);
scroll.setUpdateRate(10);
Blink blink = new Blink();
blink.setTarget(boat);
blink.setUpdateRate(1);
FadeIn fadeIn = new FadeIn();
fadeIn.setTarget(boat);
fadeIn.setUpdateRate(1);
FadeOut fadeOut = new FadeOut();
fadeOut.setTarget(boat);
fadeOut.setUpdateRate(1);
//fadeOut.start();
OnLoad listener = new OnLoad(this) {
private AbstractEffect scroll,fadeIn,fadeOut,blink;
@Override
public void run() {
this.setDone(false);
PlayN.log().debug("X " + ((Scroll) scroll).getPositionX());
if (getStatus() == EventStatus.STARTED)
{
scroll.start();
//blink.start();
fadeIn.start();
}
if (((FadeIn)fadeIn).getCurrentAlpha() >= 1f)
{
blink.stop();
fadeOut.start();
}
if (((Scroll) scroll).getPositionX() <= -500 )
{
scroll.stop();
setDone(true);
PlayN.log().debug("STOP!");
}
}
public OnLoad set(AbstractEffect scroll, AbstractEffect fadeIn, AbstractEffect fadeOut, AbstractEffect blink)
{
this.fadeIn = fadeIn;
this.fadeOut = fadeOut;
this.scroll = scroll;
this.blink =blink;
return this;
}
}.set(scroll, fadeIn, fadeOut, blink);
EventObserverManager.getInstance().register("LoadSceneEvent",listener);
}
@Override
public void updateState() {
// TODO Auto-generated method stub
}
}