From 48cf7e26c388b345f4fde76bebdd3e31ea770e72 Mon Sep 17 00:00:00 2001 From: Samual Lenks Date: Sun, 13 Oct 2013 01:26:42 -0400 Subject: [PATCH] New slider/handling for particle effects settings --- effects-high.cfg | 5 +- effects-low.cfg | 1 + effects-med.cfg | 5 +- effects-normal.cfg | 3 +- effects-omg.cfg | 1 + effects-ultimate.cfg | 5 +- effects-ultra.cfg | 5 +- qcsrc/menu/classes.c | 1 + qcsrc/menu/xonotic/dialog_settings_effects.c | 49 +++++++++----------- 9 files changed, 39 insertions(+), 36 deletions(-) diff --git a/effects-high.cfg b/effects-high.cfg index 979c8b174..b0178fa8f 100644 --- a/effects-high.cfg +++ b/effects-high.cfg @@ -1,7 +1,8 @@ cl_decals 1 cl_decals_models 0 cl_decals_time 4 -cl_particles_quality 1 +cl_particles 1 +cl_particles_quality 1.0 cl_damageeffect 1 cl_spawn_point_particles 1 cl_playerdetailreduction 0.5 @@ -15,7 +16,7 @@ hud_postprocessing_maxbluralpha 0.5 hud_powerup 0 r_depthfirst 2 r_drawdecals_drawdistance 500 -r_drawparticles_drawdistance 2000 +r_drawparticles_drawdistance 1500 r_glsl_deluxemapping 1 r_glsl_offsetmapping 0 r_glsl_offsetmapping_reliefmapping 0 diff --git a/effects-low.cfg b/effects-low.cfg index 8d6e72a4d..dd0b60709 100644 --- a/effects-low.cfg +++ b/effects-low.cfg @@ -1,6 +1,7 @@ cl_decals 1 cl_decals_models 0 cl_decals_time 2 +cl_particles 1 cl_particles_quality 0.4 cl_damageeffect 0 cl_spawn_point_particles 0 diff --git a/effects-med.cfg b/effects-med.cfg index 1611943c6..bc08dadc1 100644 --- a/effects-med.cfg +++ b/effects-med.cfg @@ -1,7 +1,8 @@ cl_decals 1 cl_decals_models 0 cl_decals_time 2 -cl_particles_quality 1 +cl_particles 1 +cl_particles_quality 0.8 cl_damageeffect 0 cl_spawn_point_particles 0 cl_playerdetailreduction 1 @@ -15,7 +16,7 @@ hud_postprocessing_maxbluralpha 0 hud_powerup 0 r_depthfirst 0 r_drawdecals_drawdistance 300 -r_drawparticles_drawdistance 1000 +r_drawparticles_drawdistance 750 r_glsl_deluxemapping 0 r_glsl_offsetmapping 0 r_glsl_offsetmapping_reliefmapping 0 diff --git a/effects-normal.cfg b/effects-normal.cfg index 064af6550..06b62edf2 100644 --- a/effects-normal.cfg +++ b/effects-normal.cfg @@ -1,7 +1,8 @@ cl_decals 1 cl_decals_models 0 cl_decals_time 2 -cl_particles_quality 1 +cl_particles 1 +cl_particles_quality 1.0 cl_damageeffect 1 cl_spawn_point_particles 1 cl_playerdetailreduction 1 diff --git a/effects-omg.cfg b/effects-omg.cfg index 9ede9c7d7..eb1ae56f9 100644 --- a/effects-omg.cfg +++ b/effects-omg.cfg @@ -1,6 +1,7 @@ cl_decals 0 cl_decals_models 0 cl_decals_time 2 +cl_particles 1 cl_particles_quality 0.4 cl_damageeffect 0 cl_spawn_point_particles 0 diff --git a/effects-ultimate.cfg b/effects-ultimate.cfg index 92539b9b7..d92cefe32 100644 --- a/effects-ultimate.cfg +++ b/effects-ultimate.cfg @@ -1,7 +1,8 @@ cl_decals 1 cl_decals_models 1 cl_decals_time 10 -cl_particles_quality 1 +cl_particles 1 +cl_particles_quality 1.0 cl_damageeffect 2 cl_spawn_point_particles 1 cl_playerdetailreduction 0 @@ -15,7 +16,7 @@ hud_postprocessing_maxbluralpha 0.5 hud_powerup 0.5 r_depthfirst 2 r_drawdecals_drawdistance 500 -r_drawparticles_drawdistance 2000 +r_drawparticles_drawdistance 3000 r_glsl_deluxemapping 1 r_glsl_offsetmapping 1 r_glsl_offsetmapping_reliefmapping 1 diff --git a/effects-ultra.cfg b/effects-ultra.cfg index 63cfc63ea..8da513bd0 100644 --- a/effects-ultra.cfg +++ b/effects-ultra.cfg @@ -1,8 +1,9 @@ cl_decals 1 cl_decals_models 0 cl_decals_time 10 -cl_particles_quality 1 -cl_damageeffect 1 +cl_particles 1 +cl_particles_quality 1.0 +cl_damageeffect 2 cl_spawn_point_particles 1 cl_playerdetailreduction 0 gl_flashblend 0 diff --git a/qcsrc/menu/classes.c b/qcsrc/menu/classes.c index f5fcfeda5..6bfdfb1c4 100644 --- a/qcsrc/menu/classes.c +++ b/qcsrc/menu/classes.c @@ -118,3 +118,4 @@ #include "xonotic/slider_picmip.c" #include "xonotic/dialog_settings_game_notification.c" #include "xonotic/dialog_multiplayer_media_demo_democonfirm.c" +#include "xonotic/slider_particles.c" diff --git a/qcsrc/menu/xonotic/dialog_settings_effects.c b/qcsrc/menu/xonotic/dialog_settings_effects.c index bea650eba..0d2c21913 100644 --- a/qcsrc/menu/xonotic/dialog_settings_effects.c +++ b/qcsrc/menu/xonotic/dialog_settings_effects.c @@ -126,21 +126,21 @@ void XonoticEffectsSettingsTab_fill(entity me) setDependentAND(e, "vid_gl20", 1, 1, "r_water", 1, 1); me.TR(me); me.TR(me); - me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Particles quality:"))); - me.TD(me, 1, 2, e = makeXonoticSlider(0.2, 1.0, 0.1, "cl_particles_quality")); - me.TR(me); - me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Particles distance:"))); - me.TD(me, 1, 2, e = makeXonoticSlider(500, 2000, 100, "r_drawparticles_drawdistance")); + me.TD(me, 1, 1, e = makeXonoticCheckBox(0, "cl_decals", _("Decals"))); + me.TD(me, 1, 2, e = makeXonoticCheckBox(0, "cl_decals_models", _("Decals on models"))); + setDependent(e, "cl_decals", 1, 1); me.TR(me); - me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Damage effects:"))); - me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_damageeffect")); - e.addValue(e, ZCTX(_("DMGPRTCLS^Disabled")), "0"); - e.addValue(e, ZCTX(_("DMGPRTCLS^Skeletal")), "1"); - e.addValue(e, ZCTX(_("DMGPRTCLS^All")), "2"); - e.configureXonoticTextSliderValues(e); + me.TDempty(me, 0.2); + me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Distance:"))); + setDependent(e, "cl_decals", 1, 1); + me.TD(me, 1, 2, e = makeXonoticSlider(200, 500, 20, "r_drawdecals_drawdistance")); + setDependent(e, "cl_decals", 1, 1); me.TR(me); - me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_spawn_point_particles", _("Particle effects for spawnpoints"))); - makeMulti(e, "cl_spawn_event_particles"); + me.TDempty(me, 0.2); + me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Time:"))); + setDependent(e, "cl_decals", 1, 1); + me.TD(me, 1, 2, e = makeXonoticSlider(1, 20, 1, "cl_decals_time")); + setDependent(e, "cl_decals", 1, 1); me.gotoRC(me, 2, 3.2); me.setFirstColumn(me, me.currentColumn); me.TD(me, 1, 3, e = makeXonoticRadioButton(1, "r_coronas", "0", _("No dynamic lighting"))); @@ -180,22 +180,17 @@ void XonoticEffectsSettingsTab_fill(entity me) me.TD(me, 1, 2, s); me.TR(me); me.TR(me); - me.TD(me, 1, 1, e = makeXonoticCheckBox(0, "cl_decals", _("Decals"))); - me.TD(me, 1, 2, e = makeXonoticCheckBox(0, "cl_decals_models", _("Decals on models"))); - setDependent(e, "cl_decals", 1, 1); - me.TR(me); - me.TDempty(me, 0.2); - me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Distance:"))); - setDependent(e, "cl_decals", 1, 1); - me.TD(me, 1, 2, e = makeXonoticSlider(200, 500, 20, "r_drawdecals_drawdistance")); - setDependent(e, "cl_decals", 1, 1); + me.TD(me, 1, 1, e = makeXonoticCheckBox(0, "cl_particles", _("Particles"))); + me.TD(me, 1, 2, e = makeXonoticCheckBox(0, "cl_spawn_point_particles", _("Spawnpoint effects"))); + makeMulti(e, "cl_spawn_event_particles"); + setDependent(e, "cl_particles", 1, 1); me.TR(me); me.TDempty(me, 0.2); - me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Time:"))); - setDependent(e, "cl_decals", 1, 1); - me.TD(me, 1, 2, e = makeXonoticSlider(1, 20, 1, "cl_decals_time")); - setDependent(e, "cl_decals", 1, 1); - + me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Quality:"))); + setDependent(e, "cl_particles", 1, 1); + me.TD(me, 1, 2, e = makeXonoticParticlesSlider()); + setDependent(e, "cl_particles", 1, 1); + me.gotoRC(me, me.rows - 1, 0); me.TD(me, 1, me.columns, makeXonoticCommandButton(_("Apply immediately"), '0 0 0', "vid_restart", COMMANDBUTTON_APPLY)); } -- 2.39.2