v0.3.4c: added callback functionality for scene changes

This commit is contained in:
Evan Debenham
2016-03-02 20:49:17 -05:00
parent e5e90b2696
commit 8ae4cd4fa5
5 changed files with 40 additions and 29 deletions
@@ -113,8 +113,17 @@ public class WndSettings extends WndTabbed {
protected void onChange() {
if (getSelectedValue() != ShatteredPixelDungeon.scale()) {
ShatteredPixelDungeon.scale(getSelectedValue());
PixelScene.windowOnCreate = WndSettings.class;
ShatteredPixelDungeon.switchNoFade((Class<? extends PixelScene>) ShatteredPixelDungeon.scene().getClass());
ShatteredPixelDungeon.switchNoFade((Class<? extends PixelScene>) ShatteredPixelDungeon.scene().getClass(), new Game.SceneChangeCallback() {
@Override
public void beforeCreate() {
//do nothing
}
@Override
public void afterCreate() {
Game.scene().add(new WndSettings());
}
});
}
}
};
@@ -242,9 +251,17 @@ public class WndSettings extends WndTabbed {
@Override
protected void onClick() {
super.onClick();
ShatteredPixelDungeon.classicFont(!checked());
PixelScene.windowOnCreate = WndSettings.class;
ShatteredPixelDungeon.switchNoFade((Class<? extends PixelScene>) ShatteredPixelDungeon.scene().getClass());
ShatteredPixelDungeon.switchNoFade((Class<? extends PixelScene>) ShatteredPixelDungeon.scene().getClass(), new Game.SceneChangeCallback() {
@Override
public void beforeCreate() {
ShatteredPixelDungeon.classicFont(!checked());
}
@Override
public void afterCreate() {
Game.scene().add(new WndSettings());
}
});
}
};
chkFont.setRect(0, slots.bottom() + GAP_SML, WIDTH, BTN_HEIGHT);