address issue with player unable to rob chuff ... move progress bar data there
This commit is contained in:
parent
cca1f347f1
commit
3524501d76
@ -151,9 +151,10 @@ hook OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
|
|||||||
|
|
||||||
if ( PRESSED( KEY_WALK ) )
|
if ( PRESSED( KEY_WALK ) )
|
||||||
{
|
{
|
||||||
if ( CanPlayerExitEntrance( playerid ) && player_vehicle )
|
if ( ! player_vehicle )
|
||||||
{
|
{
|
||||||
new Float: fX, Float: fY;
|
new
|
||||||
|
Float: fX, Float: fY;
|
||||||
|
|
||||||
UpdatePlayerEntranceExitTick( playerid );
|
UpdatePlayerEntranceExitTick( playerid );
|
||||||
|
|
||||||
@ -212,8 +213,137 @@ hook OnPlayerSpawn( playerid )
|
|||||||
return Y_HOOKS_CONTINUE_RETURN_1;
|
return Y_HOOKS_CONTINUE_RETURN_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ** Commands ** */
|
hook OnPlayerWeaponShot( playerid, weaponid, hittype, hitid, Float: fX, Float: fY, Float: fZ )
|
||||||
|
{
|
||||||
|
if ( hittype == BULLET_HIT_TYPE_VEHICLE )
|
||||||
|
{
|
||||||
|
// Secured Truck!
|
||||||
|
if ( g_secureTruckVehicle == hitid && GetPlayerSurfingVehicleID( playerid ) != g_secureTruckVehicle && IsPlayerConnected( g_secureTruckDriver ) && GetPlayerClass( playerid ) != CLASS_POLICE )
|
||||||
|
{
|
||||||
|
if ( IsSecurityDriverAFK( ) )
|
||||||
|
return 1; // Nothing cheeky when he's disabled.
|
||||||
|
|
||||||
|
static
|
||||||
|
Float: X, Float: Y, Float: Z;
|
||||||
|
|
||||||
|
GetPlayerPos( playerid, X, Y, Z );
|
||||||
|
|
||||||
|
for ( new i = 0; i < sizeof( g_secureTruckOffsets ); i++ ) if ( g_secureTruckOffsets[ i ] [ E_ENABLED ] )
|
||||||
|
{
|
||||||
|
if ( IsPointToPoint( 0.25, fX, fY, fZ, g_secureTruckOffsets[ i ] [ E_X ], g_secureTruckOffsets[ i ] [ E_Y ], g_secureTruckOffsets[ i ] [ E_Z ] ) )
|
||||||
|
{
|
||||||
|
new
|
||||||
|
Float: hingeDamage = floatdiv( GetWeaponDamageFromDistance( weaponid, GetVehicleDistanceFromPoint( hitid, X, Y, Z ) ), 2 );
|
||||||
|
|
||||||
|
if ( floatround( g_secureTruckOffsets[ i ] [ E_HP ] -= hingeDamage ) > 0.0 ) {
|
||||||
|
SendClientMessage( g_secureTruckDriver, 0x112233FF, "[0x01][NPC] PROVOKED." );
|
||||||
|
format( szNormalString, 6, "%0.0f%%", g_secureTruckOffsets[ i ] [ E_HP ] );
|
||||||
|
UpdateDynamic3DTextLabelText( g_secureTruckVehicleLabel[ i ], setAlpha( COLOR_GREY, 0x90 ), szNormalString );
|
||||||
|
} else {
|
||||||
|
g_secureTruckOffsets[ i ] [ E_HP ] = 0.0;
|
||||||
|
g_secureTruckOffsets[ i ] [ E_ENABLED ] = false;
|
||||||
|
UpdateDynamic3DTextLabelText( g_secureTruckVehicleLabel[ i ], setAlpha( COLOR_RED, 0x90 ), "0%" );
|
||||||
|
|
||||||
|
if ( allSecurityOffsetsShot( ) ) {
|
||||||
|
g_secureTruckData[ E_LOOT ] = RandomEx( 20000, 30000 );
|
||||||
|
g_secureTruckData[ E_ROBBED ] = false;
|
||||||
|
g_secureTruckData[ E_OPEN ] = true;
|
||||||
|
g_secureTruckData[ E_BEING_ROBBED ] = false;
|
||||||
|
SetVehicleParamsCarDoors( hitid, 0, 0, 1, 1 );
|
||||||
|
ShowPlayerHelpDialog( playerid, 5000, "You've successfully disabled the security truck.~n~~n~To rob it, press ~r~~k~~SNEAK_ABOUT~~w~ behind the truck." );
|
||||||
|
SendClientMessage( g_secureTruckDriver, 0x112233FF, "[0x00][NPC] TRUCK DISABLED." );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
hook OnPlayerProgressUpdate( playerid, progressid, bool: canceled, params )
|
||||||
|
{
|
||||||
|
static
|
||||||
|
Float: X, Float: Y, Float: Z, Float: Angle;
|
||||||
|
|
||||||
|
if ( progressid == PROGRESS_ROBTRUCK )
|
||||||
|
{
|
||||||
|
GetVehiclePos( g_secureTruckVehicle, X, Y, Z );
|
||||||
|
GetVehicleZAngle( g_secureTruckVehicle, Angle );
|
||||||
|
|
||||||
|
X += ( SECURE_TRUCK_DISTANCE * floatsin( -Angle + 180, degrees ) );
|
||||||
|
Y += ( SECURE_TRUCK_DISTANCE * floatcos( -Angle + 180, degrees ) );
|
||||||
|
|
||||||
|
if ( ! IsPlayerInRangeOfPoint( playerid, SECURE_TRUCK_RADIUS, X, Y, Z ) || !IsPlayerSpawned( playerid ) || !IsPlayerConnected( playerid ) || IsPlayerInAnyVehicle( playerid ) || GetPlayerState( playerid ) == PLAYER_STATE_WASTED || canceled )
|
||||||
|
{
|
||||||
|
g_secureTruckData[ E_BEING_ROBBED ] = false;
|
||||||
|
StopProgressBar( playerid );
|
||||||
|
return Y_HOOKS_BREAK_RETURN_1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
hook OnProgressCompleted( playerid, progressid, params )
|
||||||
|
{
|
||||||
|
static
|
||||||
|
Float: X, Float: Y, Float: Z, Float: Angle;
|
||||||
|
|
||||||
|
if ( progressid == PROGRESS_ROBTRUCK )
|
||||||
|
{
|
||||||
|
GetVehiclePos( g_secureTruckVehicle, X, Y, Z );
|
||||||
|
GetVehicleZAngle( g_secureTruckVehicle, Angle );
|
||||||
|
|
||||||
|
X += ( SECURE_TRUCK_DISTANCE * floatsin( -Angle + 180, degrees ) );
|
||||||
|
Y += ( SECURE_TRUCK_DISTANCE * floatcos( -Angle + 180, degrees ) );
|
||||||
|
|
||||||
|
if ( IsPlayerInRangeOfPoint( playerid, SECURE_TRUCK_RADIUS, X, Y, Z ) && IsPlayerSpawned( playerid ) && IsPlayerConnected( playerid ) && !IsPlayerInAnyVehicle( playerid ) && GetPlayerState( playerid ) != PLAYER_STATE_WASTED )
|
||||||
|
{
|
||||||
|
if ( g_secureTruckData[ E_BEING_ROBBED ] && g_secureTruckData[ E_OPEN ] == true && g_secureTruckData[ E_ROBBED ] == false )
|
||||||
|
{
|
||||||
|
new
|
||||||
|
szCity[ MAX_ZONE_NAME ],
|
||||||
|
szLocation[ MAX_ZONE_NAME ]
|
||||||
|
;
|
||||||
|
|
||||||
|
GetPlayerPos ( playerid, X, Y, Z );
|
||||||
|
Get2DCity ( szCity, X, Y, Z );
|
||||||
|
GetZoneFromCoordinates ( szLocation, X, Y, Z );
|
||||||
|
|
||||||
|
g_secureTruckData[ E_BEING_ROBBED ] = true;
|
||||||
|
g_secureTruckData[ E_ROBBED ] = true;
|
||||||
|
|
||||||
|
GivePlayerWantedLevel ( playerid, 24 );
|
||||||
|
GivePlayerScore ( playerid, 5 );
|
||||||
|
GivePlayerExperience ( playerid, E_ROBBERY, 2.0 );
|
||||||
|
|
||||||
|
if ( random( 101 ) >= 20 ) {
|
||||||
|
if ( IsPlayerConnected( playerid ) && p_MoneyBag{ playerid } == true ) {
|
||||||
|
new extra_loot = floatround( float( g_secureTruckData[ E_LOOT ] ) * ROBBERY_MONEYCASE_BONUS );
|
||||||
|
g_secureTruckData[ E_LOOT ] = extra_loot;
|
||||||
|
}
|
||||||
|
|
||||||
|
ach_HandlePlayerRobbery( playerid );
|
||||||
|
SplitPlayerCashForGang( playerid, float( g_secureTruckData[ E_LOOT ] ) );
|
||||||
|
|
||||||
|
SendGlobalMessage( -1, ""COL_GOLD"[ROBBERY]"COL_WHITE" %s(%d) has robbed "COL_GOLD"%s"COL_WHITE" from a Security Truck near %s in %s!", ReturnPlayerName( playerid ), playerid, cash_format( g_secureTruckData[ E_LOOT ] ), szLocation, szCity );
|
||||||
|
} else {
|
||||||
|
CreateCrimeReport( playerid );
|
||||||
|
SendClientMessageToCops( -1, ""COL_BLUE"[ROBBERY]"COL_WHITE" %s has failed robbing a security truck near %s, suspect is armed and dangerous.", ReturnPlayerName( playerid ), szLocation );
|
||||||
|
SendServerMessage( playerid, "You've found nothing tangible in here. Cops have been alerted." );
|
||||||
|
}
|
||||||
|
|
||||||
|
SendClientMessage( g_secureTruckDriver, 0x112233FF, "[0x02] RESTART." );
|
||||||
|
}
|
||||||
|
else SendError( playerid, "An unexpected error occurred." );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ** Commands ** */
|
||||||
CMD:chuffloc( playerid, params[ ] )
|
CMD:chuffloc( playerid, params[ ] )
|
||||||
{
|
{
|
||||||
static
|
static
|
||||||
|
@ -2643,7 +2643,7 @@ public OnPlayerWeaponShot( playerid, weaponid, hittype, hitid, Float:fX, Float:f
|
|||||||
else if ( hittype == BULLET_HIT_TYPE_VEHICLE )
|
else if ( hittype == BULLET_HIT_TYPE_VEHICLE )
|
||||||
{
|
{
|
||||||
new
|
new
|
||||||
Float: Health, Float: Damage,
|
Float: Health,
|
||||||
iModel = GetVehicleModel( hitid )
|
iModel = GetVehicleModel( hitid )
|
||||||
;
|
;
|
||||||
|
|
||||||
@ -2651,52 +2651,15 @@ public OnPlayerWeaponShot( playerid, weaponid, hittype, hitid, Float:fX, Float:f
|
|||||||
g_VehicleLastAttacked[ hitid ] = g_iTime;
|
g_VehicleLastAttacked[ hitid ] = g_iTime;
|
||||||
|
|
||||||
// BMX, Bike, Mountain Bike, Train, Train Cargo, Train Passenger, Tram, Freight Box
|
// BMX, Bike, Mountain Bike, Train, Train Cargo, Train Passenger, Tram, Freight Box
|
||||||
if ( iModel != 481 && iModel != 509 && iModel != 510 && iModel != 537 && iModel != 569 && iModel != 570 && iModel != 538 && iModel != 449 && iModel != 590 ) {
|
if ( iModel != 481 && iModel != 509 && iModel != 510 && iModel != 537 && iModel != 569 && iModel != 570 && iModel != 538 && iModel != 449 && iModel != 590 )
|
||||||
|
{
|
||||||
GetPlayerPos( playerid, X, Y, Z );
|
GetPlayerPos( playerid, X, Y, Z );
|
||||||
GetVehicleHealth( hitid, Health );
|
GetVehicleHealth( hitid, Health );
|
||||||
|
|
||||||
Damage = GetWeaponDamageFromDistance( weaponid, GetVehicleDistanceFromPoint( hitid, X, Y, Z ) );
|
|
||||||
|
|
||||||
#if defined __cnr__chuffsec
|
|
||||||
// Secured Truck!
|
|
||||||
if ( g_secureTruckVehicle == hitid && GetPlayerSurfingVehicleID( playerid ) != g_secureTruckVehicle && IsPlayerConnected( g_secureTruckDriver ) && p_Class[ playerid ] != CLASS_POLICE )
|
|
||||||
{
|
|
||||||
if ( IsSecurityDriverAFK( ) )
|
|
||||||
return 1; // Nothing cheeky when he's disabled.
|
|
||||||
|
|
||||||
for( new i = 0; i < sizeof( g_secureTruckOffsets ); i++ ) if ( g_secureTruckOffsets[ i ] [ E_ENABLED ] )
|
|
||||||
{
|
|
||||||
if ( IsPointToPoint( 0.25, fX, fY, fZ, g_secureTruckOffsets[ i ] [ E_X ], g_secureTruckOffsets[ i ] [ E_Y ], g_secureTruckOffsets[ i ] [ E_Z ] ) )
|
|
||||||
{
|
|
||||||
new Float: hingeDamage = floatdiv( Damage, 2 );
|
|
||||||
if ( floatround( g_secureTruckOffsets[ i ] [ E_HP ] -= hingeDamage ) > 0.0 ) {
|
|
||||||
SendClientMessage( g_secureTruckDriver, 0x112233FF, "[0x01][NPC] PROVOKED." );
|
|
||||||
format( szNormalString, 6, "%0.0f%%", g_secureTruckOffsets[ i ] [ E_HP ] );
|
|
||||||
UpdateDynamic3DTextLabelText( g_secureTruckVehicleLabel[ i ], setAlpha( COLOR_GREY, 0x90 ), szNormalString );
|
|
||||||
} else {
|
|
||||||
g_secureTruckOffsets[ i ] [ E_HP ] = 0.0;
|
|
||||||
g_secureTruckOffsets[ i ] [ E_ENABLED ] = false;
|
|
||||||
UpdateDynamic3DTextLabelText( g_secureTruckVehicleLabel[ i ], setAlpha( COLOR_RED, 0x90 ), "0%" );
|
|
||||||
|
|
||||||
if ( allSecurityOffsetsShot( ) ) {
|
|
||||||
g_secureTruckData[ E_LOOT ] = RandomEx( 20000, 30000 );
|
|
||||||
g_secureTruckData[ E_ROBBED ] = false;
|
|
||||||
g_secureTruckData[ E_OPEN ] = true;
|
|
||||||
g_secureTruckData[ E_BEING_ROBBED ] = false;
|
|
||||||
SetVehicleParamsCarDoors( hitid, 0, 0, 1, 1 );
|
|
||||||
ShowPlayerHelpDialog( playerid, 5000, "You've successfully disabled the security truck.~n~~n~To rob it, press ~r~~k~~SNEAK_ABOUT~~w~ behind the truck." );
|
|
||||||
SendClientMessage( g_secureTruckDriver, 0x112233FF, "[0x00][NPC] TRUCK DISABLED." );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
new
|
new
|
||||||
iDriver = GetVehicleDriver( hitid );
|
Float: Damage = GetWeaponDamageFromDistance( weaponid, GetVehicleDistanceFromPoint( hitid, X, Y, Z ) ),
|
||||||
|
iDriver = GetVehicleDriver( hitid )
|
||||||
|
;
|
||||||
|
|
||||||
if ( iDriver == INVALID_PLAYER_ID )
|
if ( iDriver == INVALID_PLAYER_ID )
|
||||||
{
|
{
|
||||||
@ -3733,9 +3696,6 @@ public OnPlayerLeaveGang( playerid, gangid, reason )
|
|||||||
|
|
||||||
public OnPlayerProgressUpdate( playerid, progressid, bool: canceled, params )
|
public OnPlayerProgressUpdate( playerid, progressid, bool: canceled, params )
|
||||||
{
|
{
|
||||||
static
|
|
||||||
Float: X, Float: Y, Float: Z;
|
|
||||||
|
|
||||||
if ( progressid == PROGRESS_CRACKING || progressid == PROGRESS_BRUTEFORCE ) {
|
if ( progressid == PROGRESS_CRACKING || progressid == PROGRESS_BRUTEFORCE ) {
|
||||||
if ( !IsPlayerSpawned( playerid ) || !IsPlayerInDynamicCP( playerid, g_houseData[ p_HouseCrackingPW[ playerid ] ] [ E_CHECKPOINT ] [ 0 ] ) || !IsPlayerConnected( playerid ) || IsPlayerInAnyVehicle( playerid ) || canceled )
|
if ( !IsPlayerSpawned( playerid ) || !IsPlayerInDynamicCP( playerid, g_houseData[ p_HouseCrackingPW[ playerid ] ] [ E_CHECKPOINT ] [ 0 ] ) || !IsPlayerConnected( playerid ) || IsPlayerInAnyVehicle( playerid ) || canceled )
|
||||||
return g_houseData[ p_HouseCrackingPW[ playerid ] ] [ E_BEING_CRACKED ] = false, StopProgressBar( playerid ), 1;
|
return g_houseData[ p_HouseCrackingPW[ playerid ] ] [ E_BEING_CRACKED ] = false, StopProgressBar( playerid ), 1;
|
||||||
@ -3783,23 +3743,6 @@ public OnPlayerProgressUpdate( playerid, progressid, bool: canceled, params )
|
|||||||
if ( !IsPlayerInRangeOfPoint( playerid, 2.0, 2084.2842, 1234.0254, 414.7454 ) || !IsPlayerInMethlab( playerid ) || canceled )
|
if ( !IsPlayerInRangeOfPoint( playerid, 2.0, 2084.2842, 1234.0254, 414.7454 ) || !IsPlayerInMethlab( playerid ) || canceled )
|
||||||
return DeletePVar( playerid, "pouring_chemical" ), StopProgressBar( playerid ), 1;
|
return DeletePVar( playerid, "pouring_chemical" ), StopProgressBar( playerid ), 1;
|
||||||
}
|
}
|
||||||
#if defined __cnr__chuffsec
|
|
||||||
else if ( progressid == PROGRESS_ROBTRUCK )
|
|
||||||
{
|
|
||||||
static Float: Angle;
|
|
||||||
GetVehiclePos( g_secureTruckVehicle, X, Y, Z );
|
|
||||||
GetVehicleZAngle( g_secureTruckVehicle, Angle );
|
|
||||||
X += ( SECURE_TRUCK_DISTANCE * floatsin( -Angle + 180, degrees ) );
|
|
||||||
Y += ( SECURE_TRUCK_DISTANCE * floatcos( -Angle + 180, degrees ) );
|
|
||||||
|
|
||||||
if ( !IsPlayerInRangeOfPoint( playerid, SECURE_TRUCK_RADIUS, X, Y, Z ) || !IsPlayerSpawned( playerid ) || !IsPlayerConnected( playerid ) || IsPlayerInAnyVehicle( playerid ) || GetPlayerState( playerid ) == PLAYER_STATE_WASTED || canceled )
|
|
||||||
{
|
|
||||||
g_secureTruckData[ E_BEING_ROBBED ] = false;
|
|
||||||
StopProgressBar( playerid );
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4077,63 +4020,10 @@ public OnProgressCompleted( playerid, progressid, params )
|
|||||||
SendServerMessage( playerid, "You've yielded a pound of meth. Take your bags over to "COL_GREY"Cluckin' Bell"COL_WHITE" for exportation." );
|
SendServerMessage( playerid, "You've yielded a pound of meth. Take your bags over to "COL_GREY"Cluckin' Bell"COL_WHITE" for exportation." );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#if defined __cnr__chuffsec
|
|
||||||
case PROGRESS_ROBTRUCK:
|
|
||||||
{
|
|
||||||
static Float: Angle;
|
|
||||||
GetVehiclePos( g_secureTruckVehicle, X, Y, Z );
|
|
||||||
GetVehicleZAngle( g_secureTruckVehicle, Angle );
|
|
||||||
X += ( SECURE_TRUCK_DISTANCE * floatsin( -Angle + 180, degrees ) );
|
|
||||||
Y += ( SECURE_TRUCK_DISTANCE * floatcos( -Angle + 180, degrees ) );
|
|
||||||
|
|
||||||
if ( IsPlayerInRangeOfPoint( playerid, SECURE_TRUCK_RADIUS, X, Y, Z ) && IsPlayerSpawned( playerid ) && IsPlayerConnected( playerid ) && !IsPlayerInAnyVehicle( playerid ) && GetPlayerState( playerid ) != PLAYER_STATE_WASTED )
|
|
||||||
{
|
|
||||||
if ( g_secureTruckData[ E_BEING_ROBBED ] && g_secureTruckData[ E_OPEN ] == true && g_secureTruckData[ E_ROBBED ] == false )
|
|
||||||
{
|
|
||||||
new
|
|
||||||
szCity[ MAX_ZONE_NAME ],
|
|
||||||
szLocation[ MAX_ZONE_NAME ]
|
|
||||||
;
|
|
||||||
|
|
||||||
GetPlayerPos ( playerid, X, Y, Z );
|
|
||||||
Get2DCity ( szCity, X, Y, Z );
|
|
||||||
GetZoneFromCoordinates ( szLocation, X, Y, Z );
|
|
||||||
|
|
||||||
g_secureTruckData[ E_BEING_ROBBED ] = true;
|
|
||||||
g_secureTruckData[ E_ROBBED ] = true;
|
|
||||||
|
|
||||||
GivePlayerWantedLevel ( playerid, 24 );
|
|
||||||
GivePlayerScore ( playerid, 5 );
|
|
||||||
GivePlayerExperience ( playerid, E_ROBBERY, 2.0 );
|
|
||||||
|
|
||||||
if ( random( 101 ) >= 20 ) {
|
|
||||||
if ( IsPlayerConnected( playerid ) && p_MoneyBag{ playerid } == true ) {
|
|
||||||
new extra_loot = floatround( float( g_secureTruckData[ E_LOOT ] ) * ROBBERY_MONEYCASE_BONUS );
|
|
||||||
g_secureTruckData[ E_LOOT ] = extra_loot;
|
|
||||||
}
|
|
||||||
|
|
||||||
Achievement::HandlePlayerRobbery( playerid );
|
|
||||||
SplitPlayerCashForGang( playerid, float( g_secureTruckData[ E_LOOT ] ) );
|
|
||||||
|
|
||||||
SendGlobalMessage( -1, ""COL_GOLD"[ROBBERY]"COL_WHITE" %s(%d) has robbed "COL_GOLD"%s"COL_WHITE" from a Security Truck near %s in %s!", ReturnPlayerName( playerid ), playerid, cash_format( g_secureTruckData[ E_LOOT ] ), szLocation, szCity );
|
|
||||||
} else {
|
|
||||||
CreateCrimeReport( playerid );
|
|
||||||
SendClientMessageToCops( -1, ""COL_BLUE"[ROBBERY]"COL_WHITE" %s has failed robbing a security truck near %s, suspect is armed and dangerous.", ReturnPlayerName( playerid ), szLocation );
|
|
||||||
SendServerMessage( playerid, "You've found nothing tangible in here. Cops have been alerted." );
|
|
||||||
}
|
|
||||||
|
|
||||||
SendClientMessage( g_secureTruckDriver, 0x112233FF, "[0x02] RESTART." );
|
|
||||||
}
|
|
||||||
else SendError( playerid, "An unexpected error occurred." );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
stock randomArrayItem( const array[ ], exclude = 0xFFFF, arraysize = sizeof( array ) )
|
stock randomArrayItem( const array[ ], exclude = 0xFFFF, arraysize = sizeof( array ) )
|
||||||
{
|
{
|
||||||
new
|
new
|
||||||
|
Loading…
Reference in New Issue
Block a user