diff --git a/scripting/FartsysAss.sp b/scripting/FartsysAss.sp index 4368e11..f602ff6 100644 --- a/scripting/FartsysAss.sp +++ b/scripting/FartsysAss.sp @@ -2,7 +2,7 @@ * * A FEW THINGS TO KNOW: ONE.... THIS IS INTENDED TO BE USED WITH UBERUPGRADES. * TWO..... THE MUSIC USED WITH THIS MOD MAY OR MAY NOT BE COPYRIGHTED. WE HAVE NO INTENTION ON INFRINGEMENT. THIS PROJECT IS PURELY NON PROFIT AND JUST FOR FUN. SHOULD COPYRIGHT HOLDERS WISH THIS PROJECT BE TAKEN DOWN, I (Fartsy) SHALL OBLIGE WITHOUT HESITATION. - * THREE..... THIS MOD IS INTENDED FOR USE ON THE FIREHOSTREDUX SERVERS ONLY. SUPPORT IS LIMITED. + * THREE..... THIS MOD IS INTENDED FOR USE ON THE HYDROGENHOSTING SERVERS ONLY. EXPECT LIMITED SUPPORT. * FOUR..... THIS WAS A NIGHTMARE TO FIGURE OUT AND BUG FIX. I HOPE IT WAS WORTH IT. * FIVE..... PLEASE HAVE FUN AND ENJOY YOURSELF! * SIX..... THE DURATION OF MUSIC TIMERS SHOULD BE SET DEPENDING WHAT SONG IS USED. SET THIS USING THE CONFIG FILES. SONG DUR IN SECONDS / 0.0151515151515 = REFIRE TIME. @@ -27,7 +27,6 @@ #pragma newdecls required #pragma semicolon 1 - public Database Get_Ass_Database(){ return Ass_Database; } @@ -37,7 +36,7 @@ public Plugin myinfo = { author = "Fartsy", description = "Framework for Fartsy's Ass (MvM Mods)", version = PLUGIN_VERSION, - url = "https://forums.firehostredux.com" + url = "https://wiki.hydrogenhosting.org" }; public void OnPluginStart() { @@ -92,5 +91,5 @@ public void OnGameFrame() { if(WeatherManager.TornadoWarning) WeatherManager.TickSiren(); if (AudioManager.shouldTick) AudioManager.TickBGM(); if (BossHandler.shouldTick) BossHandler.Tick(); - WeatherManager.TickFogDensity(); + WeatherManager.TickFog(); } diff --git a/scripting/include/fartsy/ass_enhancer.inc b/scripting/include/fartsy/ass_enhancer.inc index 50f062e..0017fb9 100644 --- a/scripting/include/fartsy/ass_enhancer.inc +++ b/scripting/include/fartsy/ass_enhancer.inc @@ -91,7 +91,11 @@ enum struct AUDIOMANAGER { strcopy(this.songName, sizeof(this.songName), BGMArray[this.indexBGM].songName); this.refireBGM = BGMArray[this.indexBGM].refireTime; this.ticksBGM = (this.tickBGMOffset ? BGMArray[this.indexBGM].ticksOffset : 0); - CustomSoundEmitter(BGMArray[this.indexBGM].realPath, BGMArray[this.indexBGM].SNDLVL, true, 1, 1.0, 100); + for (int i = 0; i < MaxClients; i++){ + //if(tacobell && isClientInEvent(i)) return;// To test if client is experiencing anything odd..... + CSEClient(i, BGMArray[this.indexBGM].realPath, BGMArray[this.indexBGM].SNDLVL, true, 1, 1.0, 100); + } + //CustomSoundEmitter(BGMArray[this.indexBGM].realPath, BGMArray[this.indexBGM].SNDLVL, true, 1, 1.0, 100); CreateTimer(1.0, SyncMusic, this.indexBGM); } } @@ -271,6 +275,12 @@ enum struct WEATHERMANAGER { float sirenPitch; float sirenPitchRate; float sirenPitchTarget; + int fogColorR; + int fogColorG; + int fogColorB; + int fogColorRTarget; + int fogColorGTarget; + int fogColorBTarget; int intensity; int mIntensity; void Activate(){ @@ -580,13 +590,27 @@ enum struct WEATHERMANAGER { void StartFogTransition(){ FastFire2("Weather.FogOutdoor", "StartFogTransition", "", 0.0, false); } - void TickFogDensity(){ + void TickFog(){ if(this.fogDensity != this.fogTarget){ char targetDensity[24]; this.fogDensity = (this.fogDensity < this.fogTarget) ? FloatMin(this.fogDensity+=this.fogChangeRate, this.fogTarget) : FloatMax(this.fogDensity-=this.fogChangeRate, this.fogTarget); FloatToString(this.fogDensity, targetDensity, sizeof(targetDensity)); FastFire2("Weather.FogOutdoor", "SetMaxDensity", targetDensity, 0.0, false); } + if(this.fogColorR != this.fogColorRTarget || this.fogColorG != this.fogColorGTarget || this.fogColorB != this.fogColorBTarget){ + char target[15]; + char targetR[3]; + char targetG[3]; + char targetB[3]; + this.fogColorR = (this.fogColorR < this.fogColorRTarget) ? FloatMin(this.fogColorR+=this.fogChangeRate, this.fogColorRTarget) : FloatMax(this.fogColorR-=this.fogChangeRate, this.fogColorRTarget); + this.fogColorG = (this.fogColorG < this.fogColorGTarget) ? FloatMin(this.fogColorG+=this.fogChangeRate, this.fogColorGTarget) : FloatMax(this.fogColorG-=this.fogChangeRate, this.fogColorGTarget); + this.fogColorB = (this.fogColorB < this.fogColorBTarget) ? FloatMin(this.fogColorB+=this.fogChangeRate, this.fogColorBTarget) : FloatMax(this.fogColorB-=this.fogChangeRate, this.fogColorBTarget); + IntToString(this.fogColorR, targetR, sizeof(targetR)); + IntToString(this.fogColorG, targetG, sizeof(targetG)); + IntToString(this.fogColorB, targetB, sizeof(targetB)); + Format(target, sizeof(target), "%i %i %i", targetR, targetG, targetB); + FastFire2("Weather.FogOutdoor", "SetColor", target, 0.0, false); + } } void TickSiren(){ if(this.TornadoWarning){ diff --git a/scripting/include/fartsy/ass_helper.inc b/scripting/include/fartsy/ass_helper.inc index 1d74132..eee43a2 100644 --- a/scripting/include/fartsy/ass_helper.inc +++ b/scripting/include/fartsy/ass_helper.inc @@ -76,6 +76,7 @@ enum struct COREDATA { int CodeEntry; int curWave; int failsafeCount; + int gamemode; int lastAdmin; int refireTime; int sacPoints; @@ -410,7 +411,7 @@ BULKFIRE crusaderAtk[64]; //Configure all variables void SetupCoreData(){ AssLogger(LOGLVL_INFO, "Setting up core data..."); - ass[0].name = "[10] Kissone Bath Salts"; + ass[0].name = "[10] Bath Salts"; ass[1].name = "[20] Summon Goobbue or Kirby"; ass[2].name = "[30] Robot Trap (Wave Fail-safe)"; ass[3].name = "[40] Explosives Paradise"; diff --git a/scripting/include/fartsy/ass_sudo.inc b/scripting/include/fartsy/ass_sudo.inc index b8b09f2..5f1e452 100644 --- a/scripting/include/fartsy/ass_sudo.inc +++ b/scripting/include/fartsy/ass_sudo.inc @@ -1,4 +1,4 @@ -public char PLUGIN_VERSION[8] = "8.0.0"; +public char PLUGIN_VERSION[8] = "8.1.0a"; void sudo(int task) { AssLogger(LOGLVL_DEBUG, "Calling sudo with %i", task); switch (task) {