X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Fweaponslist.qc;h=157d22ffee2453db8d1713a90dc647f918ec4049;hb=4e21f418ad9e6287efb942c1fa2861a51981110a;hp=c1189dd9ba5c702214c50c0ecea30e4613f713b7;hpb=c741e6b3f012aa525f23e1df30d1d933b383fbc5;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/xonotic/weaponslist.qc b/qcsrc/menu/xonotic/weaponslist.qc index c1189dd9b..157d22ffe 100644 --- a/qcsrc/menu/xonotic/weaponslist.qc +++ b/qcsrc/menu/xonotic/weaponslist.qc @@ -1,24 +1,9 @@ -#ifndef WEAPONSLIST_H -#define WEAPONSLIST_H -#include "listbox.qc" -CLASS(XonoticWeaponsList, XonoticListBox) - METHOD(XonoticWeaponsList, configureXonoticWeaponsList, void(entity)); - METHOD(XonoticWeaponsList, toString, string(entity)); - ATTRIB(XonoticWeaponsList, rowsPerItem, float, 1) - METHOD(XonoticWeaponsList, draw, void(entity)); - METHOD(XonoticWeaponsList, drawListBoxItem, void(entity, int, vector, bool, bool)); - METHOD(XonoticWeaponsList, resizeNotify, void(entity, vector, vector, vector, vector)); - METHOD(XonoticWeaponsList, keyDown, float(entity, float, float, float)); - ATTRIB(XonoticWeaponsList, realFontSize, vector, '0 0 0') - ATTRIB(XonoticWeaponsList, realUpperMargin, float, 0) - METHOD(XonoticWeaponsList, mouseDrag, float(entity, vector)); -ENDCLASS(XonoticWeaponsList) -entity makeXonoticWeaponsList(); -void WeaponsList_MoveUp_Click(entity btn, entity me); -void WeaponsList_MoveDown_Click(entity box, entity me); -#endif +#include "weaponslist.qh" + +#include + +.bool disabled; -#ifdef IMPLEMENTATION entity makeXonoticWeaponsList() { entity me; @@ -73,7 +58,11 @@ float XonoticWeaponsList_mouseDrag(entity me, vector pos) if(me.pressed != 1) // don't change priority if the person is just scrolling { if(me.selectedItem != i) + { + if(me.applyButton) + me.applyButton.disabled = false; cvar_set("cl_weaponpriority", swapInPriorityList(cvar_string("cl_weaponpriority"), me.selectedItem, i)); + } } return f; @@ -87,7 +76,7 @@ string XonoticWeaponsList_toString(entity me) s = ""; for(i = 0; i < n; ++i) { - e = get_weaponinfo(stof(argv(i))); + e = REGISTRY_GET(Weapons, stof(argv(i))); s = strcat(s, e.m_name, ", "); } return substring(s, 0, strlen(s) - 2); @@ -102,7 +91,7 @@ void XonoticWeaponsList_drawListBoxItem(entity me, int i, vector absSize, bool i me.focusedItemAlpha = getFadedAlpha(me.focusedItemAlpha, SKINALPHA_LISTBOX_FOCUSED, SKINFADEALPHA_LISTBOX_FOCUSED); draw_Fill('0 0 0', '1 1 0', SKINCOLOR_LISTBOX_FOCUSED, me.focusedItemAlpha); } - e = get_weaponinfo(stof(argv(i))); + e = REGISTRY_GET(Weapons, stof(argv(i))); string msg = e.m_name; if(e.spawnflags & WEP_FLAG_MUTATORBLOCKED) msg = strcat(msg, "*"); @@ -132,4 +121,3 @@ float XonoticWeaponsList_keyDown(entity me, float scan, float ascii, float shift return 1; return 0; } -#endif