diff options
author | BobTheBob <32057864+BobTheBob9@users.noreply.github.com> | 2021-10-20 20:11:43 +0100 |
---|---|---|
committer | BobTheBob <32057864+BobTheBob9@users.noreply.github.com> | 2021-10-20 20:11:43 +0100 |
commit | e79a58640e1ef1ea1c3c954aefccd36c3cb55286 (patch) | |
tree | 8c7b822f8777ccdf6b0d86587da853b8451953c1 /Northstar.Custom/mod/scripts/vscripts/gamemodes/_riff_instagib.gnut | |
parent | d37c5ae333b4e622ebd0d18cf02a87d66aac62f9 (diff) | |
download | NorthstarMods-e79a58640e1ef1ea1c3c954aefccd36c3cb55286.tar.gz NorthstarMods-e79a58640e1ef1ea1c3c954aefccd36c3cb55286.zip |
automatic mod enable/disable, refactors and item registration callbacks
Diffstat (limited to 'Northstar.Custom/mod/scripts/vscripts/gamemodes/_riff_instagib.gnut')
-rw-r--r-- | Northstar.Custom/mod/scripts/vscripts/gamemodes/_riff_instagib.gnut | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/Northstar.Custom/mod/scripts/vscripts/gamemodes/_riff_instagib.gnut b/Northstar.Custom/mod/scripts/vscripts/gamemodes/_riff_instagib.gnut deleted file mode 100644 index b3868359e..000000000 --- a/Northstar.Custom/mod/scripts/vscripts/gamemodes/_riff_instagib.gnut +++ /dev/null @@ -1,65 +0,0 @@ -global function RiffInstagib_Init - -struct { - table<entity, int> playerWeapons - array<string> instagibWeapons -} file - -void function RiffInstagib_Init() -{ - if ( GetCurrentPlaylistVarInt( "riff_instagib", 0 ) == 0 ) - return - - SetLoadoutGracePeriodEnabled( false ) - SetWeaponDropsEnabled( false ) - - file.instagibWeapons = [ - "mp_weapon_sniper", - "mp_weapon_wingman", - "mp_weapon_defender", - "mp_weapon_arena3", - "mp_weapon_wingman_n", - "mp_weapon_doubletake", - ] - file.instagibWeapons.randomize() - - AddCallback_OnPlayerRespawned( InstagibSetWeapons ) - AddCallback_OnPlayerKilled( InstagibCycleWeaponsForKill ) - AddCallback_OnClientDisconnected( InstagibCleanupClient ) -} - -void function InstagibSetWeapons( entity player ) -{ - if ( !( player in file.playerWeapons ) ) - file.playerWeapons[ player ] <- 0 - - player.SetMaxHealth( 1 ) - InstagibUpdateWeapons( player ) -} - -void function InstagibUpdateWeapons( entity player ) -{ - foreach( entity weapon in player.GetMainWeapons() ) - player.TakeWeaponNow( weapon.GetWeaponClassName() ) - - player.TakeWeaponNow( player.GetOffhandWeapon( OFFHAND_RIGHT ).GetWeaponClassName() ) - if ( !HasOffhandWeapon( player, "mp_weapon_grenade_sonar" ) ) - player.GiveOffhandWeapon( "mp_weapon_grenade_sonar", OFFHAND_RIGHT ) - - player.GiveWeapon( file.instagibWeapons[ file.playerWeapons[ player ] ] ) -} - -void function InstagibCycleWeaponsForKill( entity victim, entity attacker, var damageInfo ) -{ - if ( !victim.IsPlayer() || !attacker.IsPlayer() || victim == attacker ) - return - - file.playerWeapons[ attacker ] = ( file.playerWeapons[ attacker ] + 1 ) % file.instagibWeapons.len() - InstagibUpdateWeapons( attacker ) -} - -void function InstagibCleanupClient( entity player ) -{ - if ( player in file.playerWeapons ) - delete file.playerWeapons[ player ] -}
\ No newline at end of file |