]> git.localhorst.tv Git - l2e.git/blobdiff - src/battle/states/SelectIkari.cpp
store an application handle in each state
[l2e.git] / src / battle / states / SelectIkari.cpp
index 1a36e41c86ed9483e54ac4f7ae7646932eae7aea..604689c998d28dbd258f2c8f4636cfc68d1489b2 100644 (file)
@@ -25,11 +25,11 @@ using graphics::Frame;
 namespace battle {
 
 void SelectIkari::OnEnterState(Application &c, SDL_Surface *screen) {
-       ctrl = &c;
+
 }
 
 void SelectIkari::OnExitState(Application &c, SDL_Surface *screen) {
-       ctrl = 0;
+
 }
 
 void SelectIkari::OnResumeState(Application &ctrl, SDL_Surface *screen) {
@@ -65,19 +65,19 @@ void SelectIkari::HandleEvents(const Input &input) {
                                ac.SetType(AttackChoice::IKARI);
                                ac.SetItem(battle->ActiveHero().IkariMenu().Selected());
                                battle->NextHero();
-                               ctrl->PopState();
+                               Ctrl().PopState();
                        } else {
                                if (ikari->GetTargetingMode().TargetsSingle()) {
                                        ac.Selection().SetSingle();
                                } else {
                                        ac.Selection().SetMultiple();
                                }
-                               ctrl->PushState(new SelectTarget(battle, parent, &ac.Selection(), ikari->IsMagical() ? battle->Res().magicTargetCursor : battle->Res().weaponTargetCursor));
+                               Ctrl().PushState(new SelectTarget(battle, parent, &ac.Selection(), ikari->IsMagical() ? battle->Res().magicTargetCursor : battle->Res().weaponTargetCursor));
                        }
                }
        }
        if (input.JustPressed(Input::ACTION_B)) {
-               ctrl->PopState(); // return control to parent
+               Ctrl().PopState(); // return control to parent
        }
        if (input.JustPressed(Input::PAD_UP)) {
                battle->ActiveHero().IkariMenu().PreviousRow();