aboutsummaryrefslogtreecommitdiff
path: root/Northstar.Custom/scripts/vscripts/gamemodes/_gamemode_tt.gnut
diff options
context:
space:
mode:
authorBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2021-08-31 23:14:58 +0100
committerBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2021-08-31 23:14:58 +0100
commit9a96d0bff56f1969c68bb52a2f33296095bdc67d (patch)
tree4175928e488632705692e3cccafa1a38dd854615 /Northstar.Custom/scripts/vscripts/gamemodes/_gamemode_tt.gnut
parent27bd240871b7c0f2f49fef137718b2e3c208e3b4 (diff)
downloadNorthstarMods-9a96d0bff56f1969c68bb52a2f33296095bdc67d.tar.gz
NorthstarMods-9a96d0bff56f1969c68bb52a2f33296095bdc67d.zip
move to new mod format
Diffstat (limited to 'Northstar.Custom/scripts/vscripts/gamemodes/_gamemode_tt.gnut')
-rw-r--r--Northstar.Custom/scripts/vscripts/gamemodes/_gamemode_tt.gnut71
1 files changed, 0 insertions, 71 deletions
diff --git a/Northstar.Custom/scripts/vscripts/gamemodes/_gamemode_tt.gnut b/Northstar.Custom/scripts/vscripts/gamemodes/_gamemode_tt.gnut
deleted file mode 100644
index 6a53ef87b..000000000
--- a/Northstar.Custom/scripts/vscripts/gamemodes/_gamemode_tt.gnut
+++ /dev/null
@@ -1,71 +0,0 @@
-global function GamemodeTT_Init
-
-struct {
- entity lastPlayerDropped
-} file
-
-void function GamemodeTT_Init()
-{
- SetSpawnpointGamemodeOverride( TEAM_DEATHMATCH )
- Riff_ForceTitanAvailability( eTitanAvailability.Never )
-
- AddCallback_GameStateEnter( eGameState.Playing, OnEnterPlaying )
-
- AddCallback_OnPlayerKilled( OnPlayerKilled )
- AddDeathCallback( "npc_titan", OnTitanKilled )
-}
-
-void function OnEnterPlaying()
-{
- thread DropRandomTitan()
-}
-
-void function DropRandomTitan()
-{
- array<entity> players = GetPlayerArray()
-
- if ( players.len() == 1 )
- file.lastPlayerDropped = null // don't wanna loop forever if only 1 player
-
- entity titanPlayer
- do {
- titanPlayer = players[ RandomInt( players.len() ) ]
- } while ( titanPlayer == file.lastPlayerDropped )
-
- DropTitanForPlayer( titanPlayer, 5.0 )
-}
-
-void function DropTitanForPlayer( entity player, float delay )
-{
- wait delay
-
- file.lastPlayerDropped = player
- CreateTitanForPlayerAndHotdrop( player, GetTitanReplacementPoint( player, false ) )
-}
-
-void function AttemptToDropTitanForKill( entity victim, entity attacker, var damageInfo )
-{
- if ( !victim.IsTitan() )
- return
-
- if ( !attacker.IsPlayer() || victim == attacker )
- thread DropRandomTitan()
- else
- thread DropTitanForPlayer( attacker, 2.0 )
-}
-
-void function OnPlayerKilled( entity victim, entity attacker, var damageInfo )
-{
- if ( victim.IsTitan() )
- AttemptToDropTitanForKill( victim, attacker, damageInfo )
- else if ( attacker.IsTitan() )
- {
- AddTeamScore( attacker.GetTeam(), 1 )
- }
-}
-
-void function OnTitanKilled( entity victim, var damageInfo )
-{
- if ( IsPetTitan( victim ) )
- AttemptToDropTitanForKill( victim, DamageInfo_GetAttacker( damageInfo ), damageInfo )
-} \ No newline at end of file