X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Fdialog_multiplayer_create_mutators.qc;h=65edcdec9b48759ec8f7f6f166f23233d18d75d1;hb=429e52163f53e75b848135f076b77c4eb43935ac;hp=0329f1ee7657837c1797a882e0cb11fa09c4e5cb;hpb=c89dfaa4d0342b98c320621557973a65114fbdf4;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.qc b/qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.qc index 0329f1ee7..65edcdec9 100644 --- a/qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.qc +++ b/qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.qc @@ -1,25 +1,17 @@ -#include "../../common/weapons/all.qh" +#include "dialog_multiplayer_create_mutators.qh" +#include -#ifndef DIALOG_MULTIPLAYER_CREATE_MUTATORS_H -#define DIALOG_MULTIPLAYER_CREATE_MUTATORS_H -#include "dialog.qc" -CLASS(XonoticMutatorsDialog, XonoticDialog) - METHOD(XonoticMutatorsDialog, toString, string(entity)); - METHOD(XonoticMutatorsDialog, fill, void(entity)); - METHOD(XonoticMutatorsDialog, showNotify, void(entity)); - METHOD(XonoticMutatorsDialog, close, void(entity)); - ATTRIB(XonoticMutatorsDialog, title, string, _("Mutators")) - ATTRIB(XonoticMutatorsDialog, color, vector, SKINCOLOR_DIALOG_MUTATORS) - ATTRIB(XonoticMutatorsDialog, intendedWidth, float, 0.9) - ATTRIB(XonoticMutatorsDialog, rows, float, 20) - ATTRIB(XonoticMutatorsDialog, columns, float, 6) - ATTRIB(XonoticMutatorsDialog, refilterEntity, entity, NULL) -ENDCLASS(XonoticMutatorsDialog) -#endif +#include "weaponarenacheckbox.qh" +#include "checkbox.qh" +#include "slider.qh" +#include "textlabel.qh" +#include "checkbox_slider_invalid.qh" +#include "radiobutton.qh" +#include "button.qh" -#ifdef IMPLEMENTATION void XonoticMutatorsDialog_showNotify(entity me) { + SUPER(XonoticMutatorsDialog).showNotify(me); loadAllCvars(me); } @@ -28,8 +20,7 @@ string weaponarenastring_cvar; string WeaponArenaString() { string s; - float n, i, j; - entity e; + float n, i; s = cvar_string("g_weaponarena"); if(s == "0") return ""; @@ -50,12 +41,10 @@ string WeaponArenaString() s = ""; for(i = 0; i < n; ++i) { - for(j = WEP_FIRST; j <= WEP_LAST; ++j) - { - e = get_weaponinfo(j); - if(argv(i) == e.netname) - s = strcat(s, " & ", e.message); - } + FOREACH(Weapons, it != WEP_Null, LAMBDA( + if(argv(i) == it.netname) + s = strcat(s, " & ", it.m_name); + )); } s = sprintf(_("%s Arena"), substring(s, 3, strlen(s) - 3)); @@ -251,13 +240,13 @@ void XonoticMutatorsDialog_fill(entity me) e.cvarOffValue = "0"; for(i = WEP_FIRST, j = 0; i <= WEP_LAST; ++i) { - w = get_weaponinfo(i); + w = Weapons_from(i); if(w.spawnflags & WEP_FLAG_HIDDEN) continue; if((j & 1) == 0) me.TR(me); me.TDempty(me, 0.2); - me.TD(me, 1, 1.8, e = makeXonoticWeaponarenaCheckBox(strzone(w.netname), strzone(w.message))); + me.TD(me, 1, 1.8, e = makeXonoticWeaponarenaCheckBox(strzone(w.netname), strzone(w.m_name))); setDependentWeird(e, checkCompatibility_weaponarena_weapon); ++j; } @@ -290,7 +279,7 @@ void XonoticMutatorsDialog_fill(entity me) setDependent(e, "g_nix", 1, 1); me.TR(me); me.TDempty(me, 0.2); - me.TD(me, 1, 1.8, e = makeXonoticRadioButton(1, "g_balance_blaster_weaponstart", "0", _("No start weapons"))); + me.TD(me, 1, 1.8, e = makeXonoticRadioButton_T(1, "g_balance_blaster_weaponstart", "0", _("No start weapons"), "-")); e.cvarOffValue = "-1"; makeMulti(e, "g_balance_shotgun_weaponstart g_balance_machinegun_weaponstart g_balance_devastator_weaponstart g_balance_minelayer_weaponstart g_balance_electro_weaponstart g_balance_crylink_weaponstart g_balance_hagar_weaponstart g_balance_porto_weaponstart g_balance_vaporizer_weaponstart g_balance_hook_weaponstart g_balance_rifle_weaponstart g_balance_fireball_weaponstart g_balance_seeker_weaponstart g_balance_tuba_weaponstart g_balance_arc_weaponstart g_balance_vortex_weaponstart g_balance_mortar_weaponstart"); @@ -300,10 +289,11 @@ void XonoticMutatorsDialog_fill(entity me) e.onClickEntity = me; } +.void(entity) refilter; + void XonoticMutatorsDialog_close(entity me) { if(me.refilterEntity) me.refilterEntity.refilter(me.refilterEntity); SUPER(XonoticMutatorsDialog).close(me); } -#endif