charge gangs $250 per spawn on their facility
This commit is contained in:
parent
c4e50c8bfc
commit
233d83cf39
@ -14,6 +14,8 @@
|
|||||||
#define MAX_FACILITIES ( 24 )
|
#define MAX_FACILITIES ( 24 )
|
||||||
#define MAX_FACILITY_BOMB ( 2 )
|
#define MAX_FACILITY_BOMB ( 2 )
|
||||||
|
|
||||||
|
#define FACILITY_SPAWN_FEE ( 250 )
|
||||||
|
|
||||||
#define FACILITY_AMMU_RESPECT ( 75000.0 )
|
#define FACILITY_AMMU_RESPECT ( 75000.0 )
|
||||||
#define FACILITY_BLOWUP_TIME ( 10 )
|
#define FACILITY_BLOWUP_TIME ( 10 )
|
||||||
|
|
||||||
@ -425,16 +427,24 @@ thread OnGangFaciltiesLoad( )
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* ** Functions ** */
|
/* ** Functions ** */
|
||||||
stock SetPlayerToGangFacility( playerid, handle )
|
stock SetPlayerToGangFacility( playerid, gangid, facilityid )
|
||||||
{
|
{
|
||||||
|
if ( g_gangData[ gangid ] [ E_BANK ] < FACILITY_SPAWN_FEE ) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
// preload interior
|
// preload interior
|
||||||
pauseToLoad( playerid );
|
pauseToLoad( playerid );
|
||||||
UpdatePlayerEntranceExitTick( playerid );
|
UpdatePlayerEntranceExitTick( playerid );
|
||||||
|
|
||||||
// set player position
|
// set player position
|
||||||
SetPlayerPos( playerid, g_gangFacilities[ handle ] [ E_X ], g_gangFacilities[ handle ] [ E_Y ], g_gangFacilities[ handle ] [ E_Z ] );
|
SetPlayerPos( playerid, g_gangFacilities[ facilityid ] [ E_X ], g_gangFacilities[ facilityid ] [ E_Y ], g_gangFacilities[ facilityid ] [ E_Z ] );
|
||||||
SetPlayerVirtualWorld( playerid, 0 );
|
SetPlayerVirtualWorld( playerid, 0 );
|
||||||
SetPlayerInterior( playerid, 0 );
|
SetPlayerInterior( playerid, 0 );
|
||||||
|
|
||||||
|
// charge the gang per spawn
|
||||||
|
GiveGangCash( gangid, -FACILITY_SPAWN_FEE );
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
stock GetFacilityInteriorType( gang_sql_id )
|
stock GetFacilityInteriorType( gang_sql_id )
|
||||||
@ -444,6 +454,13 @@ stock GetFacilityInteriorType( gang_sql_id )
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
stock GetGangIDFromFacilityID( facilityid ) {
|
||||||
|
foreach ( new f : gangs ) if ( g_gangFacilities[ facilityid ] [ E_GANG_SQL_ID ] == g_gangData[ g ] [ E_SQL_ID ] ) {
|
||||||
|
return f;
|
||||||
|
}
|
||||||
|
return ITER_NONE;
|
||||||
|
}
|
||||||
|
|
||||||
#if FACILITY_TAKEOVER_ENABLED == true
|
#if FACILITY_TAKEOVER_ENABLED == true
|
||||||
CMD:plant( playerid, params[ ] ) {
|
CMD:plant( playerid, params[ ] ) {
|
||||||
PlantFacilityC4( playerid, GetPVarInt( playerid, "in_facility" ) );
|
PlantFacilityC4( playerid, GetPVarInt( playerid, "in_facility" ) );
|
||||||
@ -801,7 +818,7 @@ static stock initializeFacilityObjects( )
|
|||||||
SetDynamicObjectMaterial( CreateDynamicObject( 19787, 241.391006, 1857.465942, 1864.854003, 0.000000, 0.000000, 180.000000, -1, -1, -1 ), 0, 16150, "ufo_bar", "black32", 0 );
|
SetDynamicObjectMaterial( CreateDynamicObject( 19787, 241.391006, 1857.465942, 1864.854003, 0.000000, 0.000000, 180.000000, -1, -1, -1 ), 0, 16150, "ufo_bar", "black32", 0 );
|
||||||
SetDynamicObjectMaterial( CreateDynamicObject( 19787, 243.671005, 1857.465942, 1864.854003, 0.000000, 0.000000, 180.000000, -1, -1, -1 ), 0, 16150, "ufo_bar", "black32", 0 );
|
SetDynamicObjectMaterial( CreateDynamicObject( 19787, 243.671005, 1857.465942, 1864.854003, 0.000000, 0.000000, 180.000000, -1, -1, -1 ), 0, 16150, "ufo_bar", "black32", 0 );
|
||||||
SetDynamicObjectMaterial( CreateDynamicObject( 11714, 238.455993, 1872.332031, 1859.208984, 0.000000, 0.000000, 0.000000, -1, -1, -1 ), 0, 19799, "all_vault", "liftdoorsac256", -16 );
|
SetDynamicObjectMaterial( CreateDynamicObject( 11714, 238.455993, 1872.332031, 1859.208984, 0.000000, 0.000000, 0.000000, -1, -1, -1 ), 0, 19799, "all_vault", "liftdoorsac256", -16 );
|
||||||
SetDynamicObjectMaterialText( CreateDynamicObject( 7909, 263.942993, 1861.439941, 1862.397949, 0.000000, 0.000000, -90.000000, -1, -1, -1 ), 0, "The Lost And Damned", 120, "impact", 48, 0, 0xFF964B00, 0, 1 );
|
// SetDynamicObjectMaterialText( CreateDynamicObject( 7909, 263.942993, 1861.439941, 1862.397949, 0.000000, 0.000000, -90.000000, -1, -1, -1 ), 0, "The Lost And Damned", 120, "impact", 48, 0, 0xFF964B00, 0, 1 );
|
||||||
tmpVariable = CreateDynamicObject( 19926, 248.494995, 1798.292968, 1856.375976, 0.000000, 0.000000, 90.000000, -1, -1, -1 );
|
tmpVariable = CreateDynamicObject( 19926, 248.494995, 1798.292968, 1856.375976, 0.000000, 0.000000, 90.000000, -1, -1, -1 );
|
||||||
SetDynamicObjectMaterial( tmpVariable, 0, 4552, "ammu_lan2", "newall4-4", 0 );
|
SetDynamicObjectMaterial( tmpVariable, 0, 4552, "ammu_lan2", "newall4-4", 0 );
|
||||||
SetDynamicObjectMaterial( tmpVariable, 1, 4552, "ammu_lan2", "newall4-4", 0 );
|
SetDynamicObjectMaterial( tmpVariable, 1, 4552, "ammu_lan2", "newall4-4", 0 );
|
||||||
|
@ -86,3 +86,7 @@ stock SetPlayerGang( playerid, joining_gang )
|
|||||||
SendClientMessageToGang( joining_gang, g_gangData[ joining_gang ] [ E_COLOR ], "[GANG]{FFFFFF} %s(%d) has joined the gang.", ReturnPlayerName( playerid ), playerid );
|
SendClientMessageToGang( joining_gang, g_gangData[ joining_gang ] [ E_COLOR ], "[GANG]{FFFFFF} %s(%d) has joined the gang.", ReturnPlayerName( playerid ), playerid );
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
stock GiveGangCash( gangid, cash ) {
|
||||||
|
g_gangData[ gangid ] [ E_BANK ] += cash;
|
||||||
|
}
|
||||||
|
@ -16207,8 +16207,11 @@ function SetPlayerRandomSpawn( playerid )
|
|||||||
else if ( strmatch( p_SpawningKey[ playerid ], "GNG" ) )
|
else if ( strmatch( p_SpawningKey[ playerid ], "GNG" ) )
|
||||||
{
|
{
|
||||||
if ( Iter_Contains( gangs, gangid ) && Iter_Contains( gangfacilities, index ) && g_gangData[ gangid ] [ E_SQL_ID ] == g_gangFacilities[ index ] [ E_GANG_SQL_ID ] ) {
|
if ( Iter_Contains( gangs, gangid ) && Iter_Contains( gangfacilities, index ) && g_gangData[ gangid ] [ E_SQL_ID ] == g_gangFacilities[ index ] [ E_GANG_SQL_ID ] ) {
|
||||||
SetPlayerToGangFacility( playerid, index );
|
if ( SetPlayerToGangFacility( playerid, gangid, index ) ) {
|
||||||
return 1;
|
return 1;
|
||||||
|
} else {
|
||||||
|
SendServerMessage( playerid, "You are unable to spawn at your gang's facility as the gang has no money in its account." );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else ResetSpawnLocation( playerid );
|
else ResetSpawnLocation( playerid );
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user