X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Fcredits.qc;h=64fac23d27519c47ba7c861070c273b19ab3f86d;hp=57320a018240e3ac47bf8eae814280674004b705;hb=1556aa4ea70b3b275afb1cb4587e555fb44f71c3;hpb=fc2be4c1e7547ae97301f7966333e4dc858baf92 diff --git a/qcsrc/menu/xonotic/credits.qc b/qcsrc/menu/xonotic/credits.qc index 57320a0182..64fac23d27 100644 --- a/qcsrc/menu/xonotic/credits.qc +++ b/qcsrc/menu/xonotic/credits.qc @@ -2,13 +2,14 @@ #define CREDITS_H #include "listbox.qc" CLASS(XonoticCreditsList, XonoticListBox) - METHOD(XonoticCreditsList, configureXonoticCreditsList, void(entity)) + METHOD(XonoticCreditsList, configureXonoticCreditsList, void(entity)); ATTRIB(XonoticCreditsList, rowsPerItem, float, 1) - METHOD(XonoticCreditsList, draw, void(entity)) - METHOD(XonoticCreditsList, drawListBoxItem, void(entity, int, vector, bool, bool)) - METHOD(XonoticCreditsList, resizeNotify, void(entity, vector, vector, vector, vector)) - METHOD(XonoticCreditsList, keyDown, float(entity, float, float, float)) - METHOD(XonoticCreditsList, destroy, void(entity)) + METHOD(XonoticCreditsList, draw, void(entity)); + METHOD(XonoticCreditsList, drawListBoxItem, void(entity, int, vector, bool, bool)); + METHOD(XonoticCreditsList, resizeNotify, void(entity, vector, vector, vector, vector)); + METHOD(XonoticCreditsList, keyDown, float(entity, float, float, float)); + METHOD(XonoticCreditsList, destroy, void(entity)); + ATTRIB(XonoticCreditsList, selectionDoesntMatter, bool, true) ATTRIB(XonoticCreditsList, realFontSize, vector, '0 0 0') ATTRIB(XonoticCreditsList, realUpperMargin, float, 0) @@ -41,13 +42,10 @@ void XonoticCreditsList_destroy(entity me) } void XonoticCreditsList_draw(entity me) { - float i; if(me.scrolling) { me.scrollPos = bound(0, (time - me.scrolling) * me.itemHeight, me.nItems * me.itemHeight - 1); - i = min(me.selectedItem, floor((me.scrollPos + 1) / me.itemHeight - 1)); - i = max(i, ceil(me.scrollPos / me.itemHeight)); - me.setSelected(me, i); + me.scrollPosTarget = me.scrollPos; } SUPER(XonoticCreditsList).draw(me); } @@ -91,24 +89,7 @@ void XonoticCreditsList_drawListBoxItem(entity me, int i, vector absSize, bool i float XonoticCreditsList_keyDown(entity me, float key, float ascii, float shift) { - float i; - me.dragScrollTimer = time; me.scrolling = 0; - if(key == K_PGUP || key == K_KP_PGUP) - me.scrollPos = max(me.scrollPos - 0.5, 0); - else if(key == K_PGDN || key == K_KP_PGDN) - me.scrollPos = min(me.scrollPos + 0.5, me.nItems * me.itemHeight - 1); - else if(key == K_UPARROW || key == K_KP_UPARROW) - me.scrollPos = max(me.scrollPos - me.itemHeight, 0); - else if(key == K_DOWNARROW || key == K_KP_DOWNARROW) - me.scrollPos = min(me.scrollPos + me.itemHeight, me.nItems * me.itemHeight - 1); - else - return SUPER(XonoticCreditsList).keyDown(me, key, ascii, shift); - - i = min(me.selectedItem, floor((me.scrollPos + 1) / me.itemHeight - 1)); - i = max(i, ceil(me.scrollPos / me.itemHeight)); - me.setSelected(me, i); - - return 1; + return SUPER(XonoticCreditsList).keyDown(me, key, ascii, shift); } #endif