X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fitem%2Fmodalcontroller.qc;h=228f7a51363a1d70749912b5ab2cf5c0e07dc0e9;hb=244f8292cf03247e90bf1a0c3fee1f491f6b93a0;hp=bff21707906c9919927ce8557a5934aacbaa4bff;hpb=bb80a6aba067167c6ef8d5f3465f03bd34142fa2;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/item/modalcontroller.qc b/qcsrc/menu/item/modalcontroller.qc index bff217079..228f7a513 100644 --- a/qcsrc/menu/item/modalcontroller.qc +++ b/qcsrc/menu/item/modalcontroller.qc @@ -1,5 +1,5 @@ #ifdef INTERFACE -CLASS(ModalController) EXTENDS(Container) +CLASS(ModalController, Container) METHOD(ModalController, resizeNotify, void(entity, vector, vector, vector, vector)) METHOD(ModalController, draw, void(entity)) METHOD(ModalController, showChild, void(entity, entity, vector, vector, float)) @@ -150,22 +150,11 @@ void ModalController_draw(entity me) if(e.ModalController_state) { if(front) - { me.switchState(me, front, 2, 0); - if(front.ModalController_factor < 1) - animating = 1; - } front = e; } if(front) - { me.switchState(me, front, 1, 0); - if(front.ModalController_factor < 1) - animating = 1; - } - - if(front && front.Container_alpha == front.ModalController_initialAlpha) - goto update_done; // update isn't needed, everything stay as is df = frametime * 3; // animation speed @@ -209,6 +198,7 @@ void ModalController_draw(entity me) me.setAlphaOf(me, e, e.Container_alpha * prevFactor); else { + animating = 1; targetFactor = df / (1 - f + df); if(e.ModalController_state == 1) @@ -234,7 +224,6 @@ void ModalController_draw(entity me) e.Container_fontscale_y = fs.y * e.ModalController_initialFontScale.y; } } - :update_done if(animating || !me.focused) me.setFocus(me, NULL);