From 217ca928d5a607424a5898adb0a199c1d41ba029 Mon Sep 17 00:00:00 2001 From: Nicholas Hastings Date: Sat, 29 Mar 2014 15:07:07 -0400 Subject: [PATCH] Move funcommands material and sound defs to gamedata (bug 6085, r=asherkin). --- gamedata/funcommands.games.txt | 74 +++++++++++++++++++++++ plugins/funcommands.sp | 102 +++++++++++++++++++------------- plugins/funcommands/beacon.sp | 42 +++++++------ plugins/funcommands/fire.sp | 59 +++++++++++------- plugins/funcommands/ice.sp | 78 +++++++++++++++--------- plugins/funcommands/timebomb.sp | 30 +++++++--- tools/buildbot/PackageScript | 6 +- 7 files changed, 272 insertions(+), 119 deletions(-) create mode 100644 gamedata/funcommands.games.txt diff --git a/gamedata/funcommands.games.txt b/gamedata/funcommands.games.txt new file mode 100644 index 00000000..b823e9ed --- /dev/null +++ b/gamedata/funcommands.games.txt @@ -0,0 +1,74 @@ +"Games" +{ + "#default" + { + "Keys" + { + "SpriteBeam" "sprites/laser.vmt" + "SpriteBeam2" "sprites/bluelight1.vmt" + "SpriteExplosion" "sprites/sprite_fire01.vmt" + "SpriteGlow" "sprites/blueglow2.vmt" + "SpriteHalo" "sprites/halo01.vmt" + + "SoundBlip" "buttons/blip1.wav" + "SoundBeep" "buttons/button17.wav" + "SoundFinal" "weapons/cguard/charging.wav" + "SoundBoom" "weapons/explode3.wav" + "SoundFreeze" "physics/glass/glass_impact_bullet4.wav" + } + } + + "csgo" + { + "Keys" + { + "SpriteBeam" "sprites/laserbeam.vmt" + "SpriteBeam2" "sprites/physbeam.vmt" + "SpriteExplosion" "" + "SpriteGlow" "sprites/blueflare1.vmt" + "SpriteHalo" "sprites/glow01.vmt" + } + } + + "$INSURGENCY" // Standalone game + { + "Keys" + { + "SpriteBeam" "sprites/laserbeam.vmt" + "SpriteBeam2" "" + "SpriteExplosion" "sprites/sprite_fire01.vmt" + "SpriteGlow" "" + "SpriteHalo" "sprites/glow01.vmt" + } + } + + "swarm" + { + "Keys" + { + "SpriteBeam" "sprites/laserbeam.vmt" + "SpriteBeam2" "" + "SpriteExplosion" "sprites/flamelet1.vmt" + "SpriteGlow" "sprites/blueflare1.vmt" + "SpriteHalo" "sprites/glow01.vmt" + } + } + + "#default" + { + "#supported" + { + "game" "left4dead" + "game" "left4dead2" + } + + "Keys" + { + "SpriteBeam" "sprites/laserbeam.vmt" + "SpriteBeam2" "sprites/physbeam.vmt" + "SpriteExplosion" "sprites/floorfire4_.vmt" + "SpriteGlow" "sprites/blueflare1.vmt" + "SpriteHalo" "sprites/glow01.vmt" + } + } +} \ No newline at end of file diff --git a/plugins/funcommands.sp b/plugins/funcommands.sp index 1241dda7..bd04d877 100644 --- a/plugins/funcommands.sp +++ b/plugins/funcommands.sp @@ -51,11 +51,11 @@ public Plugin:myinfo = new Handle:hTopMenu = INVALID_HANDLE; // Sounds -#define SOUND_BLIP "buttons/blip1.wav" -#define SOUND_BEEP "buttons/button17.wav" -#define SOUND_FINAL "weapons/cguard/charging.wav" -#define SOUND_BOOM "weapons/explode3.wav" -#define SOUND_FREEZE "physics/glass/glass_impact_bullet4.wav" +new String:g_BlipSound[PLATFORM_MAX_PATH]; +new String:g_BeepSound[PLATFORM_MAX_PATH]; +new String:g_FinalSound[PLATFORM_MAX_PATH]; +new String:g_BoomSound[PLATFORM_MAX_PATH]; +new String:g_FreezeSound[PLATFORM_MAX_PATH]; // Following are model indexes for temp entities new g_BeamSprite = -1; @@ -179,45 +179,65 @@ HookEvents( ) public OnMapStart() { - PrecacheSound(SOUND_BLIP, true); - PrecacheSound(SOUND_BEEP, true); - PrecacheSound(SOUND_FINAL, true); - PrecacheSound(SOUND_BOOM, true); - PrecacheSound(SOUND_FREEZE, true); - - new EngineVersion:sdkversion = GetEngineVersion(); - if (sdkversion == Engine_Left4Dead || sdkversion == Engine_Left4Dead2 - || sdkversion == Engine_AlienSwarm || sdkversion == Engine_CSGO) + new Handle:gameConfig = LoadGameConfigFile("funcommands.games"); + if (gameConfig == INVALID_HANDLE) { - g_BeamSprite = PrecacheModel("materials/sprites/laserbeam.vmt"); - g_HaloSprite = PrecacheModel("materials/sprites/glow01.vmt"); - - // l4d, l4d2, and csgo have this. swarm does not. - if (sdkversion != Engine_AlienSwarm) - { - g_BeamSprite2 = PrecacheModel("materials/sprites/physbeam.vmt"); - } - - g_GlowSprite = PrecacheModel("materials/sprites/blueflare1.vmt"); - - if (sdkversion == Engine_Left4Dead || sdkversion == Engine_Left4Dead2) - { - g_ExplosionSprite = PrecacheModel("sprites/floorfire4_.vmt"); - } - else if (sdkversion == Engine_AlienSwarm) - { - g_ExplosionSprite = PrecacheModel("sprites/flamelet1.vmt"); - } - } - else - { - g_BeamSprite = PrecacheModel("materials/sprites/laser.vmt"); - g_HaloSprite = PrecacheModel("materials/sprites/halo01.vmt"); - g_BeamSprite2 = PrecacheModel("sprites/bluelight1.vmt"); - g_GlowSprite = PrecacheModel("sprites/blueglow2.vmt"); - g_ExplosionSprite = PrecacheModel("sprites/sprite_fire01.vmt"); + SetFailState("Unable to load game config funcommands.games"); + return; } + if (GameConfGetKeyValue(gameConfig, "SoundBlip", g_BlipSound, sizeof(g_BlipSound)) && g_BlipSound[0]) + { + PrecacheSound(g_BlipSound, true); + } + + if (GameConfGetKeyValue(gameConfig, "SoundBeep", g_BeepSound, sizeof(g_BeepSound)) && g_BeepSound[0]) + { + PrecacheSound(g_BeepSound, true); + } + + if (GameConfGetKeyValue(gameConfig, "SoundFinal", g_FinalSound, sizeof(g_FinalSound)) && g_FinalSound[0]) + { + PrecacheSound(g_FinalSound, true); + } + + if (GameConfGetKeyValue(gameConfig, "SoundBoom", g_BoomSound, sizeof(g_BoomSound)) && g_BoomSound[0]) + { + PrecacheSound(g_BoomSound, true); + } + + if (GameConfGetKeyValue(gameConfig, "SoundFreeze", g_FreezeSound, sizeof(g_FreezeSound)) && g_FreezeSound[0]) + { + PrecacheSound(g_FreezeSound, true); + } + + new String:buffer[PLATFORM_MAX_PATH]; + if (GameConfGetKeyValue(gameConfig, "SpriteBeam", buffer, sizeof(buffer)) && buffer[0]) + { + g_BeamSprite = PrecacheModel(buffer); + } + + if (GameConfGetKeyValue(gameConfig, "SpriteBeam2", buffer, sizeof(buffer)) && buffer[0]) + { + g_BeamSprite2 = PrecacheModel(buffer); + } + + if (GameConfGetKeyValue(gameConfig, "SpriteExplosion", buffer, sizeof(buffer)) && buffer[0]) + { + g_ExplosionSprite = PrecacheModel(buffer); + } + + if (GameConfGetKeyValue(gameConfig, "SpriteGlow", buffer, sizeof(buffer)) && buffer[0]) + { + g_GlowSprite = PrecacheModel(buffer); + } + + if (GameConfGetKeyValue(gameConfig, "SpriteHalo", buffer, sizeof(buffer)) && buffer[0]) + { + g_HaloSprite = PrecacheModel(buffer); + } + + CloseHandle(gameConfig); } public OnMapEnd() diff --git a/plugins/funcommands/beacon.sp b/plugins/funcommands/beacon.sp index 5017641c..45417bd3 100644 --- a/plugins/funcommands/beacon.sp +++ b/plugins/funcommands/beacon.sp @@ -91,27 +91,33 @@ public Action:Timer_Beacon(Handle:timer, any:value) new Float:vec[3]; GetClientAbsOrigin(client, vec); vec[2] += 10; - - TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_BeaconRadius), g_BeamSprite, g_HaloSprite, 0, 15, 0.5, 5.0, 0.0, greyColor, 10, 0); - TE_SendToAll(); - if (team == 2) + if (g_BeamSprite > -1 && g_HaloSprite > -1) { - TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_BeaconRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, redColor, 10, 0); - } - else if (team == 3) - { - TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_BeaconRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, blueColor, 10, 0); - } - else - { - TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_BeaconRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, greenColor, 10, 0); - } - - TE_SendToAll(); + TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_BeaconRadius), g_BeamSprite, g_HaloSprite, 0, 15, 0.5, 5.0, 0.0, greyColor, 10, 0); + TE_SendToAll(); - GetClientEyePosition(client, vec); - EmitAmbientSound(SOUND_BLIP, vec, client, SNDLEVEL_RAIDSIREN); + if (team == 2) + { + TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_BeaconRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, redColor, 10, 0); + } + else if (team == 3) + { + TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_BeaconRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, blueColor, 10, 0); + } + else + { + TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_BeaconRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, greenColor, 10, 0); + } + + TE_SendToAll(); + } + + if (g_BlipSound[0]) + { + GetClientEyePosition(client, vec); + EmitAmbientSound(g_BlipSound, vec, client, SNDLEVEL_RAIDSIREN); + } return Plugin_Continue; } diff --git a/plugins/funcommands/fire.sp b/plugins/funcommands/fire.sp index 662139db..dc198335 100644 --- a/plugins/funcommands/fire.sp +++ b/plugins/funcommands/fire.sp @@ -109,12 +109,18 @@ public Action:Timer_FireBomb(Handle:timer, any:value) if (g_FireBombTime[client] > 1) { color = RoundToFloor(g_FireBombTime[client] * (255.0 / GetConVarFloat(g_Cvar_FireBombTicks))); - EmitAmbientSound(SOUND_BEEP, vec, client, SNDLEVEL_RAIDSIREN); + if (g_BeepSound[0]) + { + EmitAmbientSound(g_BeepSound, vec, client, SNDLEVEL_RAIDSIREN); + } } else { color = 0; - EmitAmbientSound(SOUND_FINAL, vec, client, SNDLEVEL_RAIDSIREN); + if (g_FinalSound[0]) + { + EmitAmbientSound(g_FinalSound, vec, client, SNDLEVEL_RAIDSIREN); + } } SetEntityRenderColor(client, 255, color, color, 255); @@ -123,13 +129,16 @@ public Action:Timer_FireBomb(Handle:timer, any:value) GetClientName(client, name, sizeof(name)); PrintCenterTextAll("%t", "Till Explodes", name, g_FireBombTime[client]); - GetClientAbsOrigin(client, vec); - vec[2] += 10; + if (g_BeamSprite > -1 && g_HaloSprite > -1) + { + GetClientAbsOrigin(client, vec); + vec[2] += 10; - TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_FireBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 15, 0.5, 5.0, 0.0, greyColor, 10, 0); - TE_SendToAll(); - TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_FireBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, whiteColor, 10, 0); - TE_SendToAll(); + TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_FireBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 15, 0.5, 5.0, 0.0, greyColor, 10, 0); + TE_SendToAll(); + TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_FireBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, whiteColor, 10, 0); + TE_SendToAll(); + } return Plugin_Continue; } else @@ -140,21 +149,27 @@ public Action:Timer_FireBomb(Handle:timer, any:value) TE_SendToAll(); } - GetClientAbsOrigin(client, vec); - vec[2] += 10; - TE_SetupBeamRingPoint(vec, 50.0, GetConVarFloat(g_Cvar_FireBombRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.5, 30.0, 1.5, orangeColor, 5, 0); - TE_SendToAll(); - vec[2] += 15; - TE_SetupBeamRingPoint(vec, 40.0, GetConVarFloat(g_Cvar_FireBombRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 30.0, 1.5, orangeColor, 5, 0); - TE_SendToAll(); - vec[2] += 15; - TE_SetupBeamRingPoint(vec, 30.0, GetConVarFloat(g_Cvar_FireBombRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.7, 30.0, 1.5, orangeColor, 5, 0); - TE_SendToAll(); - vec[2] += 15; - TE_SetupBeamRingPoint(vec, 20.0, GetConVarFloat(g_Cvar_FireBombRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.8, 30.0, 1.5, orangeColor, 5, 0); - TE_SendToAll(); + if (g_BeamSprite > -1 && g_HaloSprite > -1) + { + GetClientAbsOrigin(client, vec); + vec[2] += 10; + TE_SetupBeamRingPoint(vec, 50.0, GetConVarFloat(g_Cvar_FireBombRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.5, 30.0, 1.5, orangeColor, 5, 0); + TE_SendToAll(); + vec[2] += 15; + TE_SetupBeamRingPoint(vec, 40.0, GetConVarFloat(g_Cvar_FireBombRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 30.0, 1.5, orangeColor, 5, 0); + TE_SendToAll(); + vec[2] += 15; + TE_SetupBeamRingPoint(vec, 30.0, GetConVarFloat(g_Cvar_FireBombRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.7, 30.0, 1.5, orangeColor, 5, 0); + TE_SendToAll(); + vec[2] += 15; + TE_SetupBeamRingPoint(vec, 20.0, GetConVarFloat(g_Cvar_FireBombRadius), g_BeamSprite, g_HaloSprite, 0, 10, 0.8, 30.0, 1.5, orangeColor, 5, 0); + TE_SendToAll(); + } - EmitAmbientSound(SOUND_BOOM, vec, client, SNDLEVEL_RAIDSIREN); + if (g_BoomSound[0]) + { + EmitAmbientSound(g_BoomSound, vec, client, SNDLEVEL_RAIDSIREN); + } IgniteEntity(client, GetConVarFloat(g_Cvar_BurnDuration)); KillFireBomb(client); diff --git a/plugins/funcommands/ice.sp b/plugins/funcommands/ice.sp index cad1afc0..3a2910e7 100644 --- a/plugins/funcommands/ice.sp +++ b/plugins/funcommands/ice.sp @@ -51,9 +51,12 @@ FreezeClient(client, time) SetEntityMoveType(client, MOVETYPE_NONE); SetEntityRenderColor(client, 0, 128, 255, 192); - new Float:vec[3]; - GetClientEyePosition(client, vec); - EmitAmbientSound(SOUND_FREEZE, vec, client, SNDLEVEL_RAIDSIREN); + if (g_FreezeSound[0]) + { + new Float:vec[3]; + GetClientEyePosition(client, vec); + EmitAmbientSound(g_FreezeSound, vec, client, SNDLEVEL_RAIDSIREN); + } g_FreezeTime[client] = time; g_FreezeSerial[client] = ++ g_Serial_Gen; @@ -67,12 +70,15 @@ UnfreezeClient(client) if (IsClientInGame(client)) { - new Float:vec[3]; - GetClientAbsOrigin(client, vec); - vec[2] += 10; - - GetClientEyePosition(client, vec); - EmitAmbientSound(SOUND_FREEZE, vec, client, SNDLEVEL_RAIDSIREN); + if (g_FreezeSound[0]) + { + new Float:vec[3]; + GetClientAbsOrigin(client, vec); + vec[2] += 10; + + GetClientEyePosition(client, vec); + EmitAmbientSound(g_FreezeSound, vec, client, SNDLEVEL_RAIDSIREN); + } SetEntityMoveType(client, MOVETYPE_WALK); @@ -189,13 +195,13 @@ public Action:Timer_Freeze(Handle:timer, any:value) if (g_GlowSprite > -1) { TE_SetupGlowSprite(vec, g_GlowSprite, 0.95, 1.5, 50); + TE_SendToAll(); } - else + else if (g_HaloSprite > -1) { TE_SetupGlowSprite(vec, g_HaloSprite, 0.95, 1.5, 50); + TE_SendToAll(); } - - TE_SendToAll(); return Plugin_Continue; } @@ -224,12 +230,18 @@ public Action:Timer_FreezeBomb(Handle:timer, any:value) if (g_FreezeBombTime[client] > 1) { color = RoundToFloor(g_FreezeBombTime[client] * (255.0 / GetConVarFloat(g_Cvar_FreezeBombTicks))); - EmitAmbientSound(SOUND_BEEP, vec, client, SNDLEVEL_RAIDSIREN); + if (g_BeepSound[0]) + { + EmitAmbientSound(g_BeepSound, vec, client, SNDLEVEL_RAIDSIREN); + } } else { color = 0; - EmitAmbientSound(SOUND_FINAL, vec, client, SNDLEVEL_RAIDSIREN); + if (g_FinalSound[0]) + { + EmitAmbientSound(g_FinalSound, vec, client, SNDLEVEL_RAIDSIREN); + } } SetEntityRenderColor(client, color, color, 255, 255); @@ -238,13 +250,16 @@ public Action:Timer_FreezeBomb(Handle:timer, any:value) GetClientName(client, name, sizeof(name)); PrintCenterTextAll("%t", "Till Explodes", name, g_FreezeBombTime[client]); - GetClientAbsOrigin(client, vec); - vec[2] += 10; + if (g_BeamSprite > -1 && g_HaloSprite > -1) + { + GetClientAbsOrigin(client, vec); + vec[2] += 10; - TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_FreezeBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 15, 0.5, 5.0, 0.0, greyColor, 10, 0); - TE_SendToAll(); - TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_FreezeBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, whiteColor, 10, 0); - TE_SendToAll(); + TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_FreezeBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 15, 0.5, 5.0, 0.0, greyColor, 10, 0); + TE_SendToAll(); + TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_FreezeBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, whiteColor, 10, 0); + TE_SendToAll(); + } return Plugin_Continue; } else @@ -255,7 +270,10 @@ public Action:Timer_FreezeBomb(Handle:timer, any:value) TE_SendToAll(); } - EmitAmbientSound(SOUND_BOOM, vec, client, SNDLEVEL_RAIDSIREN); + if (g_BoomSound[0]) + { + EmitAmbientSound(g_BoomSound, vec, client, SNDLEVEL_RAIDSIREN); + } KillFreezeBomb(client); FreezeClient(client, GetConVarInt(g_Cvar_FreezeDuration)); @@ -286,15 +304,19 @@ public Action:Timer_FreezeBomb(Handle:timer, any:value) continue; } - if (g_BeamSprite2 > -1) + if (g_HaloSprite > -1) { - TE_SetupBeamPoints(vec, pos, g_BeamSprite2, g_HaloSprite, 0, 1, 0.7, 20.0, 50.0, 1, 1.5, blueColor, 10); + if (g_BeamSprite2 > -1) + { + TE_SetupBeamPoints(vec, pos, g_BeamSprite2, g_HaloSprite, 0, 1, 0.7, 20.0, 50.0, 1, 1.5, blueColor, 10); + TE_SendToAll(); + } + else if (g_BeamSprite > -1) + { + TE_SetupBeamPoints(vec, pos, g_BeamSprite, g_HaloSprite, 0, 1, 0.7, 20.0, 50.0, 1, 1.5, blueColor, 10); + TE_SendToAll(); + } } - else - { - TE_SetupBeamPoints(vec, pos, g_BeamSprite, g_HaloSprite, 0, 1, 0.7, 20.0, 50.0, 1, 1.5, blueColor, 10); - } - TE_SendToAll(); FreezeClient(i, GetConVarInt(g_Cvar_FreezeDuration)); } diff --git a/plugins/funcommands/timebomb.sp b/plugins/funcommands/timebomb.sp index 41a4cb50..d91d7d16 100644 --- a/plugins/funcommands/timebomb.sp +++ b/plugins/funcommands/timebomb.sp @@ -102,12 +102,18 @@ public Action:Timer_TimeBomb(Handle:timer, any:value) if (g_TimeBombTime[client] > 1) { color = RoundToFloor(g_TimeBombTime[client] * (128.0 / GetConVarFloat(g_Cvar_TimeBombTicks))); - EmitAmbientSound(SOUND_BEEP, vec, client, SNDLEVEL_RAIDSIREN); + if (g_BeepSound[0]) + { + EmitAmbientSound(g_BeepSound, vec, client, SNDLEVEL_RAIDSIREN); + } } else { color = 0; - EmitAmbientSound(SOUND_FINAL, vec, client, SNDLEVEL_RAIDSIREN); + if (g_FinalSound[0]) + { + EmitAmbientSound(g_FinalSound, vec, client, SNDLEVEL_RAIDSIREN); + } } SetEntityRenderColor(client, 255, 128, color, 255); @@ -116,13 +122,16 @@ public Action:Timer_TimeBomb(Handle:timer, any:value) GetClientName(client, name, sizeof(name)); PrintCenterTextAll("%t", "Till Explodes", name, g_TimeBombTime[client]); - GetClientAbsOrigin(client, vec); - vec[2] += 10; + if (g_BeamSprite > -1 && g_HaloSprite > -1) + { + GetClientAbsOrigin(client, vec); + vec[2] += 10; - TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_TimeBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 15, 0.5, 5.0, 0.0, greyColor, 10, 0); - TE_SendToAll(); - TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_TimeBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, whiteColor, 10, 0); - TE_SendToAll(); + TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_TimeBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 15, 0.5, 5.0, 0.0, greyColor, 10, 0); + TE_SendToAll(); + TE_SetupBeamRingPoint(vec, 10.0, GetConVarFloat(g_Cvar_TimeBombRadius) / 3.0, g_BeamSprite, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, whiteColor, 10, 0); + TE_SendToAll(); + } return Plugin_Continue; } else @@ -133,7 +142,10 @@ public Action:Timer_TimeBomb(Handle:timer, any:value) TE_SendToAll(); } - EmitAmbientSound(SOUND_BOOM, vec, client, SNDLEVEL_RAIDSIREN); + if (g_BoomSound[0]) + { + EmitAmbientSound(g_BoomSound, vec, client, SNDLEVEL_RAIDSIREN); + } ForcePlayerSuicide(client); KillTimeBomb(client); diff --git a/tools/buildbot/PackageScript b/tools/buildbot/PackageScript index c43f4b24..04eb123f 100644 --- a/tools/buildbot/PackageScript +++ b/tools/buildbot/PackageScript @@ -137,7 +137,11 @@ CopyFiles('configs/sql-init-scripts/sqlite', 'addons/sourcemod/configs/sql-init- 'update_admins-r1409.sql', ] ) -CopyFiles('gamedata', 'addons/sourcemod/gamedata', ['sm-tf2.games.txt']) +CopyFiles('gamedata', 'addons/sourcemod/gamedata', + [ 'funcommands.games.txt', + 'sm-tf2.games.txt', + ] +) CopyFiles('gamedata/sdkhooks.games', 'addons/sourcemod/gamedata/sdkhooks.games', [ 'common.games.txt', 'engine.blade.txt',