diff --git a/cvarinfo.txt b/cvarinfo.txt index f1d4ae988..f5a7d1d2e 100644 --- a/cvarinfo.txt +++ b/cvarinfo.txt @@ -72,3 +72,4 @@ user bool swwm_funtags = true; // replace vanilla monster names with silly one //server bool swwm_omnibust = false; // TODO add wallbusting effect to all weapons //server bool swwm_superfuel = false; // TODO enable unlimited fuel //server bool swwm_partytime = false; // TODO killed enemies burst into confetti +server bool swwm_simplefog = false; // simplified teleport fogs (useful to speed up slaughterwads) diff --git a/language.def_menu b/language.def_menu index 1c8b9c30a..dd9a04a85 100644 --- a/language.def_menu +++ b/language.def_menu @@ -110,6 +110,7 @@ SWWM_YNYKRONALERT = "Cap Ynykron Alert"; SWWM_MENUPAUSE = "Pause on Demolitionist Menu"; SWWM_FTITLE = "Fun Options"; SWWM_FUNTAGS = "Monster Renaming"; +SWWM_SIMPLEFOG = "Simplified Teleport Fog"; TOOLTIP_SWWM_VOICETYPE = "Sets the voice pack for the player."; TOOLTIP_SWWM_MUTEVOICE = "Control what gets muted, if you'd rather have a more silent protagonist."; TOOLTIP_SWWM_FLASHSTRENGTH = "Screen flashes usually happen when firing some weapons, you can lower this if these effects are harmful for you."; @@ -165,6 +166,7 @@ TOOLTIP_SWWM_NOTRACK = "Completely disables combat tracking (responsible for hea TOOLTIP_SWWM_YNYKRONALERT = "By default the Ynykron wakes all monsters in the map. This may sometimes cause issues (and would destroy your framerate with huge monstercounts)."; TOOLTIP_SWWM_MENUPAUSE = "In single player, the Demolitionist Menu by default will pause everything. You can disable this if you want a more Souls-like experience (or if you want to have a read while actively waiting for some looooooooong elevator or other timed event)."; TOOLTIP_SWWM_FUNTAGS = "Replaces the names of various vanilla monsters with funny alternatives."; +TOOLTIP_SWWM_SIMPLEFOG = "Replaces particle-based teleport fogs with simple sprites. Useful if they cause performance issues."; // knowledge base SWWM_COMINGSOON = "(coming soon)"; SWWM_MISSTAB = "Mission"; diff --git a/language.es_menu b/language.es_menu index db309ccc9..1cdb860fa 100644 --- a/language.es_menu +++ b/language.es_menu @@ -107,6 +107,7 @@ SWWM_YNYKRONALERT = "Limitar Alerta de Ynykron"; SWWM_MENUPAUSE = "Pausar en Menú de Demolicionista"; SWWM_FTITLE = "Opciones Divertidas"; SWWM_FUNTAGS = "Renombrar Monstruos"; +SWWM_SIMPLEFOG = "Efecto de Teletransporte Simple" TOOLTIP_SWWM_VOICETYPE = "Selecciona el pack de voz para el jugador."; TOOLTIP_SWWM_MUTEVOICE = "Controla lo que se mutea, si prefieres tener un protagonista más silencioso."; TOOLTIP_SWWM_FLASHSTRENGTH = "Los destellos en pantalla suelen ocurrir al disparar algunas armas, puedes reducirlo si este tipo de effectos te causan malestar."; @@ -162,6 +163,7 @@ TOOLTIP_SWWM_NOTRACK = "Desactiva completamente el rastreo de combate (responsab TOOLTIP_SWWM_YNYKRONALERT = "Por defecto el Ynykron alerta a todos los monstruos en el mapa. Esto puede causar problemas a veces (o destruir tus frames con números enormes de monstruos)."; TOOLTIP_SWWM_MENUPAUSE = "En modo de un jugador, el Menú de Demolicionista por defecto paus a todo. Puedes desactivar esto si quieres una experiencia más Souls-like (o si quieres leer un poco mientras esperas activamente algun ascensor leeeeeeento o algún otro evento temporizado)." TOOLTIP_SWWM_FUNTAGS = "Reemplaza los nombres de monstruos vanilla por alternativas graciosas."; +TOOLTIP_SWWM_SIMPLEFOG = "Reemplaza los efectos de teletransporte basados en partículas con simples sprites. Útil si causan problemas de rendimiento."; // knowledge base SWWM_COMINGSOON = "(próximamente)"; SWWM_MISSTAB = "Misión"; diff --git a/language.version b/language.version index 5f5dacb9a..32ac84859 100644 --- a/language.version +++ b/language.version @@ -1,2 +1,2 @@ [default] -SWWM_MODVER="\chSWWM \cwGZ\c- r464 (Fri 7 Aug 12:18:33 CEST 2020)"; +SWWM_MODVER="\chSWWM \cwGZ\c- r465 (Fri 7 Aug 23:17:41 CEST 2020)"; diff --git a/menudef.txt b/menudef.txt index 3694e7c9d..571385e18 100644 --- a/menudef.txt +++ b/menudef.txt @@ -75,6 +75,7 @@ OptionMenu "SWWMOptionMenu" Option "$SWWM_CAPMCRANGE", "swwm_capmcrange", "YesNo" Option "$SWWM_NOTRACK", "swwm_notrack", "YesNo" Option "$SWWM_YNYKRONALERT", "swwm_ynykronalert", "YesNo" + Option "$SWWM_SIMPLEFOG", "swwm_simplefog", "YesNo" StaticText " " StaticText "$SWWM_ITITLE", "Gold" Option "$SWWM_ARMORUSE", "swwm_autousearmor", "YesNo" diff --git a/sprites/SPEXA0.png b/sprites/SPEXA0.png new file mode 100644 index 000000000..51c206096 Binary files /dev/null and b/sprites/SPEXA0.png differ diff --git a/sprites/SPEXB0.png b/sprites/SPEXB0.png new file mode 100644 index 000000000..4a12fbfda Binary files /dev/null and b/sprites/SPEXB0.png differ diff --git a/sprites/SPEXC0.png b/sprites/SPEXC0.png new file mode 100644 index 000000000..ae8576fbc Binary files /dev/null and b/sprites/SPEXC0.png differ diff --git a/sprites/SPEXD0.png b/sprites/SPEXD0.png new file mode 100644 index 000000000..8b7ca30de Binary files /dev/null and b/sprites/SPEXD0.png differ diff --git a/sprites/SPEXE0.png b/sprites/SPEXE0.png new file mode 100644 index 000000000..929557f40 Binary files /dev/null and b/sprites/SPEXE0.png differ diff --git a/sprites/SPEXF0.png b/sprites/SPEXF0.png new file mode 100644 index 000000000..2a94c820c Binary files /dev/null and b/sprites/SPEXF0.png differ diff --git a/sprites/SPEXG0.png b/sprites/SPEXG0.png new file mode 100644 index 000000000..4cca901d9 Binary files /dev/null and b/sprites/SPEXG0.png differ diff --git a/sprites/SPEXH0.png b/sprites/SPEXH0.png new file mode 100644 index 000000000..11d9560c6 Binary files /dev/null and b/sprites/SPEXH0.png differ diff --git a/sprites/SPEXI0.png b/sprites/SPEXI0.png new file mode 100644 index 000000000..16fb7ebaf Binary files /dev/null and b/sprites/SPEXI0.png differ diff --git a/sprites/SPEXJ0.png b/sprites/SPEXJ0.png new file mode 100644 index 000000000..a1feb2bbb Binary files /dev/null and b/sprites/SPEXJ0.png differ diff --git a/sprites/SPEXK0.png b/sprites/SPEXK0.png new file mode 100644 index 000000000..346a80e6a Binary files /dev/null and b/sprites/SPEXK0.png differ diff --git a/sprites/SPEXL0.png b/sprites/SPEXL0.png new file mode 100644 index 000000000..e794fba71 Binary files /dev/null and b/sprites/SPEXL0.png differ diff --git a/sprites/SPEXM0.png b/sprites/SPEXM0.png new file mode 100644 index 000000000..116255c28 Binary files /dev/null and b/sprites/SPEXM0.png differ diff --git a/sprites/SPEXN0.png b/sprites/SPEXN0.png new file mode 100644 index 000000000..3d6108206 Binary files /dev/null and b/sprites/SPEXN0.png differ diff --git a/sprites/SPEXO0.png b/sprites/SPEXO0.png new file mode 100644 index 000000000..0d33aecbf Binary files /dev/null and b/sprites/SPEXO0.png differ diff --git a/sprites/SPEXP0.png b/sprites/SPEXP0.png new file mode 100644 index 000000000..f7af6e189 Binary files /dev/null and b/sprites/SPEXP0.png differ diff --git a/sprites/SPEXQ0.png b/sprites/SPEXQ0.png new file mode 100644 index 000000000..ee7d45800 Binary files /dev/null and b/sprites/SPEXQ0.png differ diff --git a/sprites/SPEXR0.png b/sprites/SPEXR0.png new file mode 100644 index 000000000..53ba6b257 Binary files /dev/null and b/sprites/SPEXR0.png differ diff --git a/sprites/SPEXS0.png b/sprites/SPEXS0.png new file mode 100644 index 000000000..5aa59b900 Binary files /dev/null and b/sprites/SPEXS0.png differ diff --git a/sprites/SPEXT0.png b/sprites/SPEXT0.png new file mode 100644 index 000000000..9dce05842 Binary files /dev/null and b/sprites/SPEXT0.png differ diff --git a/sprites/SPEXU0.png b/sprites/SPEXU0.png new file mode 100644 index 000000000..89665d45f Binary files /dev/null and b/sprites/SPEXU0.png differ diff --git a/sprites/SPEXV0.png b/sprites/SPEXV0.png new file mode 100644 index 000000000..a42bb3a02 Binary files /dev/null and b/sprites/SPEXV0.png differ diff --git a/sprites/SPEXW0.png b/sprites/SPEXW0.png new file mode 100644 index 000000000..73a2bae9a Binary files /dev/null and b/sprites/SPEXW0.png differ diff --git a/sprites/SPEXX0.png b/sprites/SPEXX0.png new file mode 100644 index 000000000..8d99e9fce Binary files /dev/null and b/sprites/SPEXX0.png differ diff --git a/sprites/SPEXY0.png b/sprites/SPEXY0.png new file mode 100644 index 000000000..59d6ae51d Binary files /dev/null and b/sprites/SPEXY0.png differ diff --git a/sprites/SPEXZ0.png b/sprites/SPEXZ0.png new file mode 100644 index 000000000..a30c19c12 Binary files /dev/null and b/sprites/SPEXZ0.png differ diff --git a/sprites/SPEX[0.png b/sprites/SPEX[0.png new file mode 100644 index 000000000..88a285b70 Binary files /dev/null and b/sprites/SPEX[0.png differ diff --git a/sprites/SPEX]0.png b/sprites/SPEX]0.png new file mode 100644 index 000000000..6ef6de12b Binary files /dev/null and b/sprites/SPEX]0.png differ diff --git a/sprites/SPEX^0.png b/sprites/SPEX^0.png new file mode 100644 index 000000000..5dbbceefa Binary files /dev/null and b/sprites/SPEX^0.png differ diff --git a/zscript/swwm_common.zsc b/zscript/swwm_common.zsc index badd42ebb..3c3edb918 100644 --- a/zscript/swwm_common.zsc +++ b/zscript/swwm_common.zsc @@ -2133,10 +2133,14 @@ Class SWWMTeleportFog : Actor { Default { + RenderStyle "Add"; +NOGRAVITY; +NOBLOCKMAP; +DONTSPLASH; +NOINTERACTION; + +FORCEXYBILLBOARD; + Radius .1; + Height 0.; } override void PostBeginPlay() { @@ -2144,6 +2148,7 @@ Class SWWMTeleportFog : Actor SetOrigin(Vec3Offset(0,0,28),false); A_StartSound("misc/teleport",CHAN_VOICE); Spawn("TeleLight",pos); + if ( swwm_simplefog ) SetStateLabel("Simple"); } States { @@ -2179,6 +2184,9 @@ Class SWWMTeleportFog : Actor A_FadeOut(.07); } Wait; + Simple: + SPEX ABCDEFGHIJKLMNOPQRSTUVWXYZ[\] 1 Bright; + Stop; } } diff --git a/zscript/swwm_thiccboolet.zsc b/zscript/swwm_thiccboolet.zsc index 0e59fbc02..9482b2d51 100644 --- a/zscript/swwm_thiccboolet.zsc +++ b/zscript/swwm_thiccboolet.zsc @@ -1282,7 +1282,7 @@ Class SilverBullet : SWWMWeapon invoker.dezoomstate = invoker.fcbloaded?ResolveState("Unload2"):ResolveState("Unload"); return ResolveState("UnZoom"); } - return ResolveState(null); + return A_JumpIf(invoker.fcbloaded,"Unload2"); } Unload: XZW2 A 2 @@ -1306,7 +1306,7 @@ Class SilverBullet : SWWMWeapon { A_PlayerReload(); A_StartSound("silverbullet/meleestart",CHAN_WEAPON,CHANF_OVERLAP); - return A_JumpIf(invoker.clipcount<=0,"UnloadEmpty"); + return A_JumpIf(invoker.clipcount<=0,"UnloadEmpty2"); } XZWA DEFGHI 2; XZWA J 2 A_StartSound("silverbullet/magout",CHAN_WEAPON,CHANF_OVERLAP);