aboutsummaryrefslogtreecommitdiff
path: root/Northstar.CustomServers/mod/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'Northstar.CustomServers/mod/scripts')
-rw-r--r--Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_fd.nut126
-rw-r--r--Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_fd_events.nut4
2 files changed, 22 insertions, 108 deletions
diff --git a/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_fd.nut b/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_fd.nut
index e92f9b7f..c97c491e 100644
--- a/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_fd.nut
+++ b/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_fd.nut
@@ -686,32 +686,8 @@ void function OnHarvesterDamaged(entity harvester, var damageInfo)
fd_harvester.lastDamage = Time()
- int difficultyLevel = FD_GetDifficultyLevel()
- switch ( difficultyLevel )
- {
- case eFDDifficultyLevel.EASY:
- case eFDDifficultyLevel.NORMAL: // easy and normal have no damage scaling
- break
-
- case eFDDifficultyLevel.HARD:
- {
- DamageInfo_SetDamage( damageInfo, (damageAmount * 1.5) )
- damageAmount = (damageAmount * 1.5) // for use in health calculations below
- break
- }
-
- case eFDDifficultyLevel.MASTER:
- case eFDDifficultyLevel.INSANE:
- {
- DamageInfo_SetDamage( damageInfo, (damageAmount * 2.5) )
- damageAmount = (damageAmount * 2.5) // for use in health calculations below
- break
- }
+ damageAmount = (damageAmount * GetCurrentPlaylistVarFloat("fd_player_damage_scalar",1.0))
- default:
- unreachable
-
- }
float shieldPercent = ( (harvester.GetShieldHealth().tofloat() / harvester.GetShieldHealthMax()) * 100 )
@@ -929,27 +905,9 @@ void function DamageScaleByDifficulty( entity ent, var damageInfo )
if ( attacker.IsPlayer() && attacker.GetTeam() == TEAM_IMC ) // in case we ever want a PvP in Frontier Defense, don't scale their damage
return
-
- int difficultyLevel = FD_GetDifficultyLevel()
- switch ( difficultyLevel )
- {
- case eFDDifficultyLevel.EASY:
- case eFDDifficultyLevel.NORMAL: // easy and normal have no damage scaling
- break
-
- case eFDDifficultyLevel.HARD:
- DamageInfo_SetDamage( damageInfo, (damageAmount * 1.5) )
- break
-
- case eFDDifficultyLevel.MASTER:
- case eFDDifficultyLevel.INSANE:
- DamageInfo_SetDamage( damageInfo, (damageAmount * 2.5) )
- break
-
- default:
- unreachable
-
- }
+
+ DamageInfo_SetDamage( damageInfo, (damageAmount * GetCurrentPlaylistVarFloat("fd_player_damage_scalar",1.0)) )
+
}
@@ -961,74 +919,30 @@ void function HealthScaleByDifficulty( entity ent )
if ( ent.GetTeam() != TEAM_IMC )
return
- if ( ent.IsTitan() )
- if ( IsValid(GetPetTitanOwner( ent ) ) ) // in case we ever want pvp in FD
- return
-
- int difficultyLevel = FD_GetDifficultyLevel()
- switch ( difficultyLevel )
- {
- case eFDDifficultyLevel.EASY:
- if ( ent.IsTitan() )
- ent.SetMaxHealth( ent.GetMaxHealth() - 5000 )
- else
- ent.SetMaxHealth( ent.GetMaxHealth() - 2000 )
- break
- case eFDDifficultyLevel.NORMAL:
- if ( ent.IsTitan() )
- ent.SetMaxHealth( ent.GetMaxHealth() - 2500 )
- else
- ent.SetMaxHealth( ent.GetMaxHealth() - 1000 )
- break
-
- case eFDDifficultyLevel.HARD: // no changes in Hard Mode
- break
-
- case eFDDifficultyLevel.MASTER:
- case eFDDifficultyLevel.INSANE:
- if ( ent.IsTitan() )
- {
- entity soul = ent.GetTitanSoul()
- if (IsValid(soul))
- {
- soul.SetShieldHealthMax( 2500 ) // apparently they have 0, costs me some time debugging this ffs
- soul.SetShieldHealth( 2500 )
- }
- }
- break
-
- default:
- unreachable
+ if (ent.IsTitan()&& IsValid(GetPetTitanOwner( ent ) ) ) // in case we ever want pvp in FD
+ return
+
+ if ( ent.IsTitan() )
+ ent.SetMaxHealth( ent.GetMaxHealth() + GetCurrentPlaylistVarInt("fd_titan_health_adjust",0) )
+ else
+ ent.SetMaxHealth( ent.GetMaxHealth() + GetCurrentPlaylistVarInt("fd_reaper_health_adjust",0) )
+
+ if(GetCurrentPlaylistVarInt("fd_pro_titan_shields",0)&&ent.IsTitan()){
+ entity soul = ent.GetTitanSoul()
+ if(IsValid(soul)){
+ soul.SetShieldHealthMax(2500)
+ soul.SetShieldHealth(2500)
+ }
}
+
}
void function FD_createHarvester()
{
- int shieldamount = 6000
- int difficultyLevel = FD_GetDifficultyLevel()
- switch ( difficultyLevel )
- {
- case eFDDifficultyLevel.EASY:
- case eFDDifficultyLevel.NORMAL: // easy and normal have no shield changes
- break
-
- case eFDDifficultyLevel.HARD:
- shieldamount = 5000
- break
-
- case eFDDifficultyLevel.MASTER:
- case eFDDifficultyLevel.INSANE:
- shieldamount = 4000
- break
-
- default:
- unreachable
-
- }
- fd_harvester = SpawnHarvester(file.harvester_info.GetOrigin(),file.harvester_info.GetAngles(),25000,shieldamount,TEAM_MILITIA)
+ fd_harvester = SpawnHarvester(file.harvester_info.GetOrigin(),file.harvester_info.GetAngles(),GetCurrentPlaylistVarInt("fd_harvester_health",25000),GetCurrentPlaylistVarInt("fd_harvester_shield",6000),TEAM_MILITIA)
fd_harvester.harvester.Minimap_SetAlignUpright( true )
fd_harvester.harvester.Minimap_AlwaysShow( TEAM_IMC, null )
fd_harvester.harvester.Minimap_AlwaysShow( TEAM_MILITIA, null )
diff --git a/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_fd_events.nut b/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_fd_events.nut
index 751134a6..fbde5b46 100644
--- a/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_fd_events.nut
+++ b/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_fd_events.nut
@@ -14,7 +14,7 @@ global function createWaitUntilAliveEvent
global function createCloakDroneEvent
global function CreateTickEvent
global function CreateToneSniperTitanEvent
-global function CreateNorthstarSniperTitanEvent // northstars are always sniper titans
+global function CreateNorthstarSniperTitanEvent //northstars are always sniper titans
global function CreateIonTitanEvent
global function CreateScorchTitanEvent
global function CreateRoninTitanEvent
@@ -546,7 +546,7 @@ void function spawnSmoke(SmokeEvent smokeEvent,SpawnEvent spawnEvent,FlowControl
smokescreen.fxZRadius = 120
smokescreen.fxOffsets = [ <120.0, 0.0, 0.0>,<0.0, 120.0, 0.0>, <0.0, 0.0, 0.0>,<0.0, -120.0, 0.0>,< -120.0, 0.0, 0.0>, <0.0, 100.0, 0.0>]
-
+ Smokescreen(smokescreen)
}
void function waitForDeathOfEntitys(SmokeEvent smokeEvent,SpawnEvent spawnEvent,FlowControlEvent flowControlEvent,SoundEvent soundEvent)