Files
Recompilable-gscs-for-BO2-z…/patch_mp/maps/mp/_bb.gsc
2020-06-13 01:37:00 -07:00

93 lines
2.0 KiB
Plaintext

//includes match cerberus output
#include common_scripts/utility;
#include maps/mp/_utility;
init() //checked matches cerberus output
{
level thread onplayerconnect();
}
onplayerconnect() //checked matches cerberus output
{
for ( ;; )
{
level waittill( "connected", player );
player thread onplayerspawned();
player thread onplayerdeath();
}
}
onplayerspawned() //checked matches cerberus output
{
self endon( "disconnect" );
self._bbdata = [];
for ( ;; )
{
self waittill( "spawned_player" );
self._bbdata[ "score" ] = 0;
self._bbdata[ "momentum" ] = 0;
self._bbdata[ "spawntime" ] = getTime();
self._bbdata[ "shots" ] = 0;
self._bbdata[ "hits" ] = 0;
}
}
onplayerdisconnect() //checked changed to match beta dump
{
for ( ;; )
{
self waittill( "disconnect" );
self commitspawndata();
break;
}
}
onplayerdeath() //checked matches cerberus output
{
self endon( "disconnect" );
for ( ;; )
{
self waittill( "death" );
self commitspawndata();
}
}
commitspawndata() //checked matches cerberus output
{
/*
/#
assert( isDefined( self._bbdata ) );
#/
*/
if ( !isDefined( self._bbdata ) )
{
return;
}
bbprint( "mpplayerlives", "gametime %d spawnid %d lifescore %d lifemomentum %d lifetime %d name %s", getTime(), getplayerspawnid( self ), self._bbdata[ "score" ], self._bbdata[ "momentum" ], getTime() - self._bbdata[ "spawntime" ], self.name );
}
commitweapondata( spawnid, currentweapon, time0 ) //checked matches cerberus output
{
/*
/#
assert( isDefined( self._bbdata ) );
#/
*/
if ( !isDefined( self._bbdata ) )
{
return;
}
time1 = getTime();
bbprint( "mpweapons", "spawnid %d name %s duration %d shots %d hits %d", spawnid, currentweapon, time1 - time0, self._bbdata[ "shots" ], self._bbdata[ "hits" ] );
self._bbdata[ "shots" ] = 0;
self._bbdata[ "hits" ] = 0;
}
bbaddtostat( statname, delta ) //checked matches cerberus output
{
if ( isDefined( self._bbdata ) && isDefined( self._bbdata[ statname ] ) )
{
self._bbdata[ statname ] += delta;
}
}