Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include common_scripts\utility;
- #include maps\mp\_utility;
- #include maps\mp\gametypes\_hud_util;
- init()
- {
- level thread onPlayerConnect();
- }
- onPlayerConnect()
- {
- while( true )
- {
- level waittill( "connected", player );
- player thread onPlayerSpawned();
- }
- }
- onPlayerSpawned()
- {
- self endon( "disconnect" );
- while( true )
- {
- self waittill( "spawned_player" );
- self thread spotEnemies();
- }
- }
- spotEnemies()
- {
- self endon( "disconnect" );
- self endon( "death" );
- distanceText = self createFontString( "smallfixed", 1 );
- distanceText setPoint( "CENTER", "CENTER", 10, 7 );
- distanceText.color = ( 51/255, 215/255, 54/255 );
- self thread destroyOnDeath( distanceText );
- while( true )
- {
- wait .05;
- if( self getCurrentWeapon() != "binoculars_mp" )
- continue;
- if( !self playerADS() )
- continue;
- start = self getTagOrigin( "tag_eye" );
- end = start + vecScale( anglesToForward( self getPlayerAngles() ), level.rm_maxbulletrange );
- trace = bulletTrace( start, end, true, self );
- meters = inchesToMetres( distance( start, trace["position"] ) );
- distanceText setText( meters + "m" );
- if( !isDefined( trace["entity"] ) )
- continue;
- if( !isPlayer( trace["entity"] ) )
- continue;
- spottedEnemy = trace["entity"];
- spotFailed = false;
- for( i = 0; i < 30; i++ )
- {
- start = self getTagOrigin( "tag_eye" );
- end = start + vecScale( anglesToForward( self getPlayerAngles() ), level.rm_maxbulletrange );
- trace = bulletTrace( start, end, true, self );
- meters = inchesToMetres( distance( start, trace["position"] ) );
- distanceText setText( meters + "m" );
- if( !isPlayer( trace["entity"] ) || ( trace["entity"] != spottedEnemy ) || !self playerADS() )
- {
- spotFailed = true;
- break;
- }
- wait .05;
- }
- if( spotFailed )
- continue;
- self maps\mp\gametypes\_battlechatter_mp::mpSayLocalSound( self, "enemy", "infantry", false );
- }
- }
- destroyOnDeath( hudElem )
- {
- self waittill( "death" );
- hudElem destroy();
- }
- inchesToMetres( inches )
- {
- return ( inches * 0.0254 );
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement