diff options
4 files changed, 48 insertions, 17 deletions
diff --git a/Northstar.Client/mod/resource/northstar_client_localisation_english.txt b/Northstar.Client/mod/resource/northstar_client_localisation_english.txt index 07e37186..a74177ec 100644 --- a/Northstar.Client/mod/resource/northstar_client_localisation_english.txt +++ b/Northstar.Client/mod/resource/northstar_client_localisation_english.txt @@ -127,16 +127,18 @@ Press Yes if you agree to this. This choice can be changed in the mods menu at a "PL_sns_desc" "Free For All. Use Pulse Blades and Executions to Reset Enemy Score" "PL_sns_abbr" "SNS" "GAMEMODE_SNS" "Sticks and Stones" - "SCOREBOARD_BANKRUPTS" "Bankrupts" + "SCOREBOARD_BANKRUPTS" "Bankrupt Kills" "SNS_LEADER_BANKRUPT" "Score Leader Bankrupt!" "SNS_LEADER_BANKRUPT_SUB" "%s1 Was Reset By %s2" "SNS_BANKRUPT" "Bankrupt!" "SNS_BANKRUPT_SUB" "Your Score Was Reset By %s1" - "wme_kill_value" "Wingman Elite Kill Value" - "offhand_kill_value" "Offhand Kill Value" - "reset_kill_value" "Pulse/Execution Kill Value" - "melee_kill_value" "Melee Kill Value" - "reset_pulse_blade_cooldown_on_pulse_blade_kill" "Kill Cooldown Resets" + "sns_wme_kill_value" "Wingman Elite Kill Value" + "sns_softball_kill_value" "Softball Kill Value" + "sns_offhand_kill_value" "Offhand Kill Value" + "sns_reset_kill_value" "Pulse/Execution Kill Value" + "sns_melee_kill_value" "Melee Kill Value" + "sns_reset_pulse_blade_cooldown_on_pulse_blade_kill" "Kill Cooldown Resets" + "sns_softball_enabled" "Softball Enabled" "PL_inf" "Infection" "PL_inf_lobby" "Infection Lobby" diff --git a/Northstar.Custom/keyvalues/scripts/weapons/mp_weapon_softball.txt b/Northstar.Custom/keyvalues/scripts/weapons/mp_weapon_softball.txt new file mode 100644 index 00000000..5da9357f --- /dev/null +++ b/Northstar.Custom/keyvalues/scripts/weapons/mp_weapon_softball.txt @@ -0,0 +1,14 @@ +WeaponData +{ + Mods + { + sns + { + explosion_damage "50" + damage_near_value "50" + damage_far_value "50" + ammo_clip_size "1" + projectile_launch_speed "7500" + } + } +} diff --git a/Northstar.Custom/mod/scripts/vscripts/gamemodes/_gamemode_sns.gnut b/Northstar.Custom/mod/scripts/vscripts/gamemodes/_gamemode_sns.gnut index 98bb06b9..7ac728de 100644 --- a/Northstar.Custom/mod/scripts/vscripts/gamemodes/_gamemode_sns.gnut +++ b/Northstar.Custom/mod/scripts/vscripts/gamemodes/_gamemode_sns.gnut @@ -5,8 +5,10 @@ struct { string offhand_weapon = "mp_weapon_thermite_grenade" // offhand weapon bool reset_pulse_blade_cooldown_on_pulse_blade_kill + bool softball_enabled int wme_kill_value + int softball_kill_value int offhand_kill_value int reset_kill_value int melee_kill_value @@ -27,11 +29,13 @@ void function SNS_Init() AddCallback_OnPlayerRespawned( OnPlayerRespawned ) AddCallback_GameStateEnter( eGameState.WinnerDetermined, OnWinnerDetermined ) - file.reset_pulse_blade_cooldown_on_pulse_blade_kill = GetCurrentPlaylistVarInt( "reset_pulse_blade_cooldown_on_pulse_blade_kill", 1 ) == 1 - file.wme_kill_value = GetCurrentPlaylistVarInt( "wme_kill_value", 10 ) - file.offhand_kill_value = GetCurrentPlaylistVarInt( "offhand_kill_value", 10 ) - file.reset_kill_value = GetCurrentPlaylistVarInt( "reset_kill_value", 5 ) - file.melee_kill_value = GetCurrentPlaylistVarInt( "melee_kill_value", 5 ) + file.reset_pulse_blade_cooldown_on_pulse_blade_kill = GetCurrentPlaylistVarInt( "sns_reset_pulse_blade_cooldown_on_pulse_blade_kill", 1 ) == 1 + file.softball_enabled = GetCurrentPlaylistVarInt( "sns_softball_enabled", 0 ) == 1 + file.wme_kill_value = GetCurrentPlaylistVarInt( "sns_wme_kill_value", 10 ) + file.softball_kill_value = GetCurrentPlaylistVarInt( "sns_softball_kill_value", 10 ) + file.offhand_kill_value = GetCurrentPlaylistVarInt( "sns_offhand_kill_value", 10 ) + file.reset_kill_value = GetCurrentPlaylistVarInt( "sns_reset_kill_value", 5 ) + file.melee_kill_value = GetCurrentPlaylistVarInt( "sns_melee_kill_value", 5 ) } void function OnPlayerKilled( entity victim, entity attacker, var damageInfo ) @@ -73,6 +77,11 @@ void function OnPlayerKilled( entity victim, entity attacker, var damageInfo ) AddTeamScore( attacker.GetTeam(), file.wme_kill_value ) attacker.AddToPlayerGameStat( PGS_ASSAULT_SCORE, file.wme_kill_value ) } + else if ( DamageInfo_GetDamageSourceIdentifier( damageInfo ) == eDamageSourceId.mp_weapon_softball ) + { + AddTeamScore( attacker.GetTeam(), file.softball_kill_value ) + attacker.AddToPlayerGameStat( PGS_ASSAULT_SCORE, file.softball_kill_value ) + } else { AddTeamScore( attacker.GetTeam(), file.offhand_kill_value ) @@ -110,6 +119,10 @@ void function OnPlayerRespawned( entity player ) array<string> mods = ["sns", "pas_fast_ads", "tactical_cdr_on_kill", "pas_run_and_gun", "pas_fast_swap"] player.GiveWeapon( "mp_weapon_wingman_n", mods) + if (file.softball_enabled) { + mods.append("jump_kit") // the funny + player.GiveWeapon( "mp_weapon_softball", mods) + } player.GiveOffhandWeapon( "melee_pilot_emptyhanded", OFFHAND_MELEE ) player.GiveOffhandWeapon( file.offhand_weapon, OFFHAND_RIGHT ) player.GiveOffhandWeapon( "mp_weapon_grenade_sonar", OFFHAND_LEFT ) diff --git a/Northstar.Custom/mod/scripts/vscripts/gamemodes/sh_gamemode_sns.gnut b/Northstar.Custom/mod/scripts/vscripts/gamemodes/sh_gamemode_sns.gnut index e0f26b94..df336867 100644 --- a/Northstar.Custom/mod/scripts/vscripts/gamemodes/sh_gamemode_sns.gnut +++ b/Northstar.Custom/mod/scripts/vscripts/gamemodes/sh_gamemode_sns.gnut @@ -23,12 +23,14 @@ void function CreateGamemodeSNS() GameMode_SetColor( GAMEMODE_SNS, [147, 204, 57, 255] ) AddPrivateMatchMode( GAMEMODE_SNS ) // add to private lobby modes - - AddPrivateMatchModeSettingArbitrary( "#PL_sns", "wme_kill_value", "10" ) - AddPrivateMatchModeSettingArbitrary( "#PL_sns", "offhand_kill_value", "10" ) - AddPrivateMatchModeSettingArbitrary( "#PL_sns", "reset_kill_value", "5" ) - AddPrivateMatchModeSettingArbitrary( "#PL_sns", "melee_kill_value", "5" ) - AddPrivateMatchModeSettingEnum( "#PL_sns", "reset_pulse_blade_cooldown_on_pulse_blade_kill", [ "Disabled", "Enabled" ], "1" ) + AddPrivateMatchModeSettingEnum( "#PL_sns", "sns_reset_pulse_blade_cooldown_on_pulse_blade_kill", [ "Disabled", "Enabled" ], "1" ) + AddPrivateMatchModeSettingEnum( "#PL_sns", "sns_softball_enabled", [ "False", "True" ], "0" ) + AddPrivateMatchModeSettingArbitrary( "#PL_sns", "sns_softball_kill_value", "10" ) + AddPrivateMatchModeSettingArbitrary( "#PL_sns", "sns_wme_kill_value", "10" ) + AddPrivateMatchModeSettingArbitrary( "#PL_sns", "sns_offhand_kill_value", "10" ) + AddPrivateMatchModeSettingArbitrary( "#PL_sns", "sns_reset_kill_value", "5" ) + AddPrivateMatchModeSettingArbitrary( "#PL_sns", "sns_melee_kill_value", "5" ) + GameMode_SetDefaultScoreLimits( GAMEMODE_SNS, 300, 0 ) |