From 9a0ae70e21b51ec30be7fac592bc6b4fac4700f1 Mon Sep 17 00:00:00 2001 From: ChocoTaco Date: Sat, 10 Nov 2018 19:56:13 -0500 Subject: [PATCH] Cleaned up code --- Classic/scripts/autoexec/NoBaseRapeNotify.cs | 40 ++++--- Classic/scripts/autoexec/TeamBalanceNotify.cs | 101 ++++++++---------- 2 files changed, 63 insertions(+), 78 deletions(-) diff --git a/Classic/scripts/autoexec/NoBaseRapeNotify.cs b/Classic/scripts/autoexec/NoBaseRapeNotify.cs index 84dabae..aa18323 100644 --- a/Classic/scripts/autoexec/NoBaseRapeNotify.cs +++ b/Classic/scripts/autoexec/NoBaseRapeNotify.cs @@ -1,44 +1,40 @@ //Enable or Disable //$Host::EnableNoBaseRapeNotify = 1; // -//This function is at DefaultGame::spawnPlayer( %game, %client, %respawn ) defaultGame.cs -//Notifys the user if NoBase rape is on or off. Has a Counter so it is only run once and doesnt spam the client. It is triggered at spawn. -function PlayerNotify::AtSpawn( %game, %client, %respawn ) +//Notifys the user if NoBase rape is on or off. +function NBRStatusNotify( %game, %client, %respawn ) { if( $CurrentMissionType $= "CTF" && $Host::EnableNoBaseRapeNotify ) { //echo ("%client " @ %client); //echo ("$TeamBalanceClient " @ $TeamBalanceClient); - - //Is NoBaseRape On or off - if( !$Host::TournamentMode && $Host::EvoNoBaseRapeEnabled && $Host::EvoNoBaseRapeClassicPlayerCount > $TotalTeamPlayerCount ) { - //If on, has the client gotten the notification already - if($NoBaseRapeNotifyCount !$= 0) { - messageAll('MsgNoBaseRapeNotify', 'No Base Rape is \c1Enabled.~wfx/misc/nexus_cap.wav'); - $NoBaseRapeNotifyCount = 0; - } + + //On + if( !$Host::TournamentMode && $Host::EvoNoBaseRapeEnabled && $Host::EvoNoBaseRapeClassicPlayerCount > $TotalTeamPlayerCount && $NoBaseRapeNotifyCount !$= 0 ) + { + messageAll('MsgNoBaseRapeNotify', 'No Base Rape is \c1Enabled.~wfx/misc/nexus_cap.wav'); + $NoBaseRapeNotifyCount = 0; } - else - //NoBaseRape is off - //Has the client gotten the notification already - if($NoBaseRapeNotifyCount !$= 1) { - messageAll('MsgNoBaseRapeNotify', 'No Base Rape is \c1Disabled.~wfx/misc/diagnostic_on.wav'); - $NoBaseRapeNotifyCount = 1; - } - } + //Off + else if( $NoBaseRapeNotifyCount !$= 1 ) + { + messageAll('MsgNoBaseRapeNotify', 'No Base Rape is \c1Disabled.~wfx/misc/diagnostic_on.wav'); + $NoBaseRapeNotifyCount = 1; + } + } } //This function is at StaticShapeData::damageObject(%data, %targetObject, %sourceObject, %position, %amount, %damageType) -//In the evopackage.cs or evoClassic.vl2 +//In the staticshape.ovl in evoClassic.vl2 //Plays a sound when a player hits a protected asset -function PlayerNotifyEnabled::OnDamage( %game, %sourceObject ) +function NBRAssetSound( %game, %sourceObject ) { messageClient(%sourceObject.client, 'MsgNoBaseRapeNotify', '~wfx/misc/diagnostic_beep.wav'); } //This function is at DefaultGame::gameOver(%game) CTFGame.cs //Resets the client NotifyCount when the mission ends -function ResetNotify::MissionEnd( %game, %client ) +function ResetNBRNotify() { $NoBaseRapeNotifyCount = -1; } diff --git a/Classic/scripts/autoexec/TeamBalanceNotify.cs b/Classic/scripts/autoexec/TeamBalanceNotify.cs index b941372..ec1eb9d 100644 --- a/Classic/scripts/autoexec/TeamBalanceNotify.cs +++ b/Classic/scripts/autoexec/TeamBalanceNotify.cs @@ -2,65 +2,53 @@ //$Host::EnableTeamBalanceNotify = 1; // //Give the client a notification on the current state of balancing. -//This function is in GetTeamCounts( %game, %client, %respawn ) GetTeamCounts.cs +//This function is in GetTeamCounts.cs function TeamBalanceNotify::AtSpawn( %game, %client, %respawn ) { if( $CurrentMissionType !$= "LakRabbit" && $TotalTeamPlayerCount !$= 0 && $Host::EnableTeamBalanceNotify ) { - //Call for a GetTeamCount update - //GetTeamCounts( %game, %client, %respawn ); - - //evoplayercount does not count yourself - - //variables - //%balancedifference = 2; //player difference you want to allow before sending notifications between teams. - //%Team1Difference = $PlayerCount[1] - $PlayerCount[2]; - //%Team2Difference = $PlayerCount[2] - $PlayerCount[1]; + //variables + + %Team1Difference = $PlayerCount[1] - $PlayerCount[2]; + %Team2Difference = $PlayerCount[2] - $PlayerCount[1]; - //echo ("%Team1Difference " @ %Team1Difference); - //echo ("%Team2Difference " @ %Team2Difference); + //echo ("%Team1Difference " @ %Team1Difference); + //echo ("%Team2Difference " @ %Team2Difference); - - //Are teams unbalanced? - if( $PlayerCount[1] !$= $PlayerCount[2] ) { - //Reset Balanced - $BalancedCount = 0; - if( ($PlayerCount[1] - $PlayerCount[2]) >= 2 || ($PlayerCount[2] - $PlayerCount[1]) >= 2 ) { - //Has the client gotten the notification already - if($TeamBalanceNotifyCount !$= 1) { - //If unbalanced, send a notification. Will continue to send notifications until teams are balanced. + if( $PlayerCount[1] !$= $PlayerCount[2] ) + { + //Uneven. Reset Balanced. + $BalancedMsgPlayed = 0; + + if( %Team1Difference >= 2 || %Team2Difference >= 2 ) + { + if( $UnbalancedMsgPlayed !$= 1 && %Team2Difference == 2 || %Team1Difference == 2 ) + { messageAll('MsgTeamBalanceNotify', '\c1Teams are unbalanced.'); - //Only get the notification once per spawn. - $TeamBalanceNotifyCount = 1; - //Reset Stat - $StatsBalanceCount = 0; - } + //Once per cycle + $UnbalancedMsgPlayed = 1; + //Reset Stats. + $StatsMsgPlayed = 0; + } + //Stats Aspect. 3 or more difference gets a stats notify. + else if( $StatsMsgPlayed !$= 1 ) + { + messageAll('MsgTeamBalanceNotify', '\c1It is currently %1 vs %2 with %3 observers.', $PlayerCount[1], $PlayerCount[2], $PlayerCount[0] ); + $StatsMsgPlayed = 1; + } } } - else - //If teams are balanced and teams dont equal 0. - if( $PlayerCount[1] == $PlayerCount[2] && $TotalTeamPlayerCount !$= 0 ) { - //Has the client gotten the notification already - if($BalancedCount !$= 1) { - //If balanced, send a notification. - messageAll('MsgTeamBalanceNotify', '\c1Teams are balanced.'); - //Only get the balance notification once. - $BalancedCount = 1; - //Reset Unbalanced - $TeamBalanceNotifyCount = 0; - //Reset Stat - $StatsBalanceCount = 0; - } - } - - //3 or more difference gets a count notify - if( ($PlayerCount[1] - $PlayerCount[2]) >= 3 || ($PlayerCount[2] - $PlayerCount[1]) >= 3 ) { - //Run it once - if($StatsBalanceCount !$= 1) { - messageAll('MsgTeamBalanceNotify', '\c1It is currently %1 vs %2 with %3 observers.', $PlayerCount[1], $PlayerCount[2], $PlayerCount[0] ); - $StatsBalanceCount = 1; - } + //If teams are balanced and teams dont equal 0. + else if( $PlayerCount[1] == $PlayerCount[2] && $TotalTeamPlayerCount !$= 0 && $BalancedMsgPlayed !$= 1 ) + { + messageAll('MsgTeamBalanceNotify', '\c1Teams are balanced.'); + //Once per cycle. + $BalancedMsgPlayed = 1; + //Reset unbalanced. + $UnbalancedMsgPlayed = 0; + //Reset Stats. + $StatsMsgPlayed = 0; } } } @@ -69,15 +57,16 @@ function TeamBalanceNotify::AtSpawn( %game, %client, %respawn ) //Allows for another unbalanced notification everytime the flag is capped. function ResetUnbalancedNotifyPerCap() { - $TeamBalanceNotifyCount = 0; - $StatsBalanceCount = 0; + $UnbalancedMsgPlayed = 0; + $StatsMsgPlayed = 0; } //Reset Notify at defaultgame::gameOver in evo defaultgame.ovl -function ResetTeamBalanceNotifyGameOver( %game ) { - //Reset TeamBalance Variables - $BalancedCount = -1; - $TeamBalanceNotifyCount = -1; - $StatsBalanceCount = -1; +function ResetTeamBalanceNotifyGameOver( %game ) +{ + //Reset All TeamBalance Variables + $BalancedMsgPlayed = -1; + $UnbalancedMsgPlayed = -1; + $StatsMsgPlayed = -1; }