@rare__ You could use a script for that. Something like this should hide any of the hud elements but that also means that you cant see the progress when you plant or defuse the bomb I cant really test it so you have to say if it works or no
#include maps\mp\_utility;
#include maps\mp\gametypes\_hud_util;
init(){
for(i = 0; i < level.bombzones.size; i++){
level.bombzones[i] maps\mp\gametypes\_gameobjects::setvisibleteam( "none" );
level.bombzones[i].onuse = ::onuseplantobject;
}
level.sdbomb maps\mp\gametypes\_gameobjects::setvisibleteam( "none" );
}
onuseplantobject( player )
{
if ( !self maps\mp\gametypes\_gameobjects::isfriendlyteam( player.pers["team"] ) )
{
self maps\mp\gametypes\_gameobjects::setflags( 1 );
level thread bombplanted( self, player );
player logstring( "bomb planted: " + self.label );
for ( index = 0; index < level.bombzones.size; index++ )
{
if ( level.bombzones[index] == self )
continue;
level.bombzones[index] maps\mp\gametypes\_gameobjects::disableobject();
}
thread playsoundonplayers( "mus_sd_planted" + "_" + level.teampostfix[player.pers["team"]] );
player notify( "bomb_planted" );
level thread maps\mp\_popups::displayteammessagetoall( &"MP_EXPLOSIVES_PLANTED_BY", player );
if ( isdefined( player.pers["plants"] ) )
{
player.pers["plants"]++;
player.plants = player.pers["plants"];
}
maps\mp\_demo::bookmark( "event", gettime(), player );
player addplayerstatwithgametype( "PLANTS", 1 );
maps\mp\gametypes\_globallogic_audio::leaderdialog( "bomb_planted" );
maps\mp\_scoreevents::processscoreevent( "planted_bomb", player );
player recordgameevent( "plant" );
}
}
bombplanted( destroyedobj, player )
{
maps\mp\gametypes\_globallogic_utils::pausetimer();
level.bombplanted = 1;
team = player.pers["team"];
destroyedobj.visuals[0] thread maps\mp\gametypes\_globallogic_utils::playtickingsound( "mpl_sab_ui_suitcasebomb_timer" );
level thread maps\mp\gametypes\sd::bombplantedmusicdelay();
level.tickingobject = destroyedobj.visuals[0];
level.timelimitoverride = 1;
setgameendtime( int( gettime() + level.bombtimer * 1000 ) );
label = destroyedobj maps\mp\gametypes\_gameobjects::getlabel();
setmatchflag( "bomb_timer" + label, 1 );
if ( label == "_a" )
setbombtimer( "A", int( gettime() + level.bombtimer * 1000 ) );
else
setbombtimer( "B", int( gettime() + level.bombtimer * 1000 ) );
bbprint( "mpobjective", "gametime %d objtype %s label %s team %s", gettime(), "sd_bombplant", label, team );
if ( !level.multibomb )
{
level.sdbomb maps\mp\gametypes\_gameobjects::allowcarry( "none" );
level.sdbomb maps\mp\gametypes\_gameobjects::setvisibleteam( "none" );
level.sdbomb maps\mp\gametypes\_gameobjects::setdropped();
level.sdbombmodel = level.sdbomb.visuals[0];
}
else
{
for ( index = 0; index < level.players.size; index++ )
{
if ( isdefined( level.players[index].carryicon ) )
level.players[index].carryicon destroyelem();
}
trace = bullettrace( player.origin + vectorscale( ( 0, 0, 1 ), 20.0 ), player.origin - vectorscale( ( 0, 0, 1 ), 2000.0 ), 0, player );
tempangle = randomfloat( 360 );
forward = ( cos( tempangle ), sin( tempangle ), 0 );
forward = vectornormalize( forward - vectorscale( trace["normal"], vectordot( forward, trace["normal"] ) ) );
dropangles = vectortoangles( forward );
level.sdbombmodel = spawn( "script_model", trace["position"] );
level.sdbombmodel.angles = dropangles;
level.sdbombmodel setmodel( "prop_suitcase_bomb" );
}
destroyedobj maps\mp\gametypes\_gameobjects::allowuse( "none" );
destroyedobj maps\mp\gametypes\_gameobjects::setvisibleteam( "none" );
label = destroyedobj maps\mp\gametypes\_gameobjects::getlabel();
trigger = destroyedobj.bombdefusetrig;
trigger.origin = level.sdbombmodel.origin;
visuals = [];
defuseobject = maps\mp\gametypes\_gameobjects::createuseobject( game["defenders"], trigger, visuals, vectorscale( ( 0, 0, 1 ), 32.0 ), istring( "defuse" + label ) );
defuseobject maps\mp\gametypes\_gameobjects::allowuse( "friendly" );
defuseobject maps\mp\gametypes\_gameobjects::setusetime( level.defusetime );
defuseobject maps\mp\gametypes\_gameobjects::setusetext( &"MP_DEFUSING_EXPLOSIVE" );
defuseobject maps\mp\gametypes\_gameobjects::setusehinttext( &"PLATFORM_HOLD_TO_DEFUSE_EXPLOSIVES" );
/*defuseobject maps\mp\gametypes\_gameobjects::setvisibleteam( "any" );
defuseobject maps\mp\gametypes\_gameobjects::set2dicon( "friendly", "compass_waypoint_defuse" + label );
defuseobject maps\mp\gametypes\_gameobjects::set2dicon( "enemy", "compass_waypoint_defend" + label );
defuseobject maps\mp\gametypes\_gameobjects::set3dicon( "friendly", "waypoint_defuse" + label );
defuseobject maps\mp\gametypes\_gameobjects::set3dicon( "enemy", "waypoint_defend" + label );*/
defuseobject maps\mp\gametypes\_gameobjects::setflags( 1 );
defuseobject.label = label;
defuseobject.onbeginuse = maps\mp\gametypes\sd::onbeginuse;
defuseobject.onenduse = maps\mp\gametypes\sd::onenduse;
defuseobject.onuse = maps\mp\gametypes\sd::onusedefuseobject;
defuseobject.useweapon = "briefcase_bomb_defuse_mp";
player.isbombcarrier = 0;
bombtimerwait();
setbombtimer( "A", 0 );
setbombtimer( "B", 0 );
setmatchflag( "bomb_timer_a", 0 );
setmatchflag( "bomb_timer_b", 0 );
destroyedobj.visuals[0] maps\mp\gametypes\_globallogic_utils::stoptickingsound();
if ( level.gameended || level.bombdefused )
return;
level.bombexploded = 1;
bbprint( "mpobjective", "gametime %d objtype %s label %s team %s", gettime(), "sd_bombexplode", label, team );
explosionorigin = level.sdbombmodel.origin + vectorscale( ( 0, 0, 1 ), 12.0 );
level.sdbombmodel hide();
if ( isdefined( player ) )
{
destroyedobj.visuals[0] radiusdamage( explosionorigin, 512, 200, 20, player, "MOD_EXPLOSIVE", "briefcase_bomb_mp" );
level thread maps\mp\_popups::displayteammessagetoall( &"MP_EXPLOSIVES_BLOWUP_BY", player );
maps\mp\_scoreevents::processscoreevent( "bomb_detonated", player );
player addplayerstatwithgametype( "DESTRUCTIONS", 1 );
player recordgameevent( "destroy" );
}
else
destroyedobj.visuals[0] radiusdamage( explosionorigin, 512, 200, 20, undefined, "MOD_EXPLOSIVE", "briefcase_bomb_mp" );
rot = randomfloat( 360 );
explosioneffect = spawnfx( level._effect["bombexplosion"], explosionorigin + vectorscale( ( 0, 0, 1 ), 50.0 ), ( 0, 0, 1 ), ( cos( rot ), sin( rot ), 0 ) );
triggerfx( explosioneffect );
thread playsoundinspace( "mpl_sd_exp_suitcase_bomb_main", explosionorigin );
if ( isdefined( destroyedobj.exploderindex ) )
exploder( destroyedobj.exploderindex );
for ( index = 0; index < level.bombzones.size; index++ )
level.bombzones[index] maps\mp\gametypes\_gameobjects::disableobject();
defuseobject maps\mp\gametypes\_gameobjects::disableobject();
setgameendtime( 0 );
wait 3;
sd_endgame( game["attackers"], game["strings"]["target_destroyed"] );
}