adjust /vip

This commit is contained in:
Lorenc Pekaj 2018-10-22 22:35:55 +11:00
parent 2901c315c5
commit e3a0f389fd
3 changed files with 81 additions and 26 deletions

View File

@ -211,6 +211,7 @@
#define DIALOG_HOUSE_SELL 1201 #define DIALOG_HOUSE_SELL 1201
#define DIALOG_BUSINESS_SELL_CONFIRM 1202 #define DIALOG_BUSINESS_SELL_CONFIRM 1202
#define DIALOG_PASSIVE_MODE 1203 #define DIALOG_PASSIVE_MODE 1203
#define DIALOG_NEXT_PAGE_VIP 1204
/* ** Hooks ** */ /* ** Hooks ** */
hook OnDialogResponse( playerid, dialogid, response, listitem, inputtext[ ] ) hook OnDialogResponse( playerid, dialogid, response, listitem, inputtext[ ] )

View File

@ -310,6 +310,52 @@ hook OnDialogResponse( playerid, dialogid, response, listitem, inputtext[ ] )
} }
return ShowPlayerDialog( playerid, DIALOG_CHANGENAME, DIALOG_STYLE_INPUT, "Change your name", ""COL_WHITE"What would you like your new name to be? And also, double check!", "Change", "Back" ); return ShowPlayerDialog( playerid, DIALOG_CHANGENAME, DIALOG_STYLE_INPUT, "Change your name", ""COL_WHITE"What would you like your new name to be? And also, double check!", "Change", "Back" );
} }
else if ( dialogid == DIALOG_NEXT_PAGE_VIP && response )
{
static
vip_description[ 1250 ];
if ( vip_description[ 0 ] == '\0' )
{
vip_description = " \t"COL_PLATINUM"Platinum VIP\t"COL_DIAMOND"Diamond VIP\n";
strcat( vip_description, "Money\t"COL_GREEN"$12,500,000\t"COL_GREEN"$25,000,000\n" );
strcat( vip_description, "House\tY\tY\n" );
strcat( vip_description, "Vehicle\tY\tY\n" );
strcat( vip_description, "Garage\tY\tY\n" );
strcat( vip_description, "Gate\tN\tY\n" );
strcat( vip_description, "Weed Business\tN\tY\n" );
strcat( vip_description, "House Customization\tMedium\tLarge\n" );
strcat( vip_description, "Total house slots\t10\tunlimited\n" );
strcat( vip_description, "Total garage slots\t10\tunlimited\n" );
strcat( vip_description, "Total business slots\t10\tunlimited\n" );
strcat( vip_description, "Total vehicle slots\t10\t20\n" );
strcat( vip_description, "Weapons on spawn\t2\t2\n" );
strcat( vip_description, "Armour on spawn\t100%\t100%\n" );
strcat( vip_description, "Coin generation increase\t10%\t25%\n" );
strcat( vip_description, "Ability to transfer coins P2P\tY\tY\n" );
strcat( vip_description, "Ability to sell coins on the coin market (/ic sell)\tY\tY\n" );
strcat( vip_description, "Ability to use two jobs (/vipjob)\tN\tY\n" );
strcat( vip_description, "Premium home listing fees waived\tY\tY\n" );
strcat( vip_description, "Tax reduction\t0%\t50%\n" );
strcat( vip_description, "Inactive asset protection\t14 days\t31 days\n" );
strcat( vip_description, "Total Vehicle component editing slots\t8\t10\n" );
strcat( vip_description, "Furniture slots available\t45\t50\n" );
strcat( vip_description, "V.I.P Lounge Weapon Redeeming Cooldown\t1 min\tno limit\n" );
strcat( vip_description, "V.I.P Tag On Forum\tY\tY\n" );
strcat( vip_description, "Access to V.I.P chat\tY\tY\n" );
strcat( vip_description, "Access to V.I.P lounge\tY\tY\n" );
strcat( vip_description, "Can spawn with a specific skin\tY\tY\n" );
strcat( vip_description, "Access to V.I.P toys\tY\tY\n" );
strcat( vip_description, "Access to custom gang colors (/gangcolor)\tY\tY\n" );
strcat( vip_description, "Access to extra house weapon storage slots\tY\tY\n" );
strcat( vip_description, "Can play custom radio URLs (/radio)\tY\tY\n" );
strcat( vip_description, "Ability to adjust your label's color (/labelcolor)\tY\tY\n" );
strcat( vip_description, "Can show a message to people you kill (/deathmsg)\tY\tY\n" );
strcat( vip_description, "Can adjust the sound of your hitmarker (/hitmarker)\tY\tY\n" );
strcat( vip_description, ""COL_GREEN"Price (USD)\t"COL_PLATINUM"$50.00 USD\t"COL_DIAMOND"$100.00 USD" );
}
return ShowPlayerDialog( playerid, DIALOG_BUY_VIP, DIALOG_STYLE_TABLIST_HEADERS, "{FFFFFF}Donate for V.I.P", vip_description, "Buy VIP", "Close" );
}
else if ( dialogid == DIALOG_BUY_VIP && response ) else if ( dialogid == DIALOG_BUY_VIP && response )
{ {
return ShowPlayerCoinMarketDialog( playerid ); return ShowPlayerCoinMarketDialog( playerid );
@ -384,27 +430,34 @@ CMD:donate( playerid, params[ ] ) return cmd_vip( playerid, params );
CMD:vip( playerid, params[ ] ) CMD:vip( playerid, params[ ] )
{ {
static static
vip_description[ 1300 ]; vip_description[ 1350 ];
if ( vip_description[ 0 ] == '\0' ) { if ( vip_description[ 0 ] == '\0' )
vip_description = " \t"COL_WHITE"Regular VIP\t"COL_BRONZE"Bronze VIP\t"COL_GOLD"Gold V.I.P\n"; {
strcat( vip_description, ""COL_GREEN"Price (USD)\t"COL_WHITE"$5.00 /mo\t"COL_BRONZE"$10.00 /mo\t"COL_GOLD"$18.00 /mo\n" ); vip_description = " \t"COL_WHITE"Regular VIP\t"COL_BRONZE"Bronze VIP\t"COL_GOLD"Gold VIP\n";
strcat( vip_description, "Total house slots\t5\t10\tunlimited\n" ); strcat( vip_description, "Money\t"COL_GREEN"$500,000\t"COL_GREEN"$2,500,000\t"COL_GREEN"$5,000,000\n" );
strcat( vip_description, "Total garage slots*\t5\t10\tunlimited\n" ); strcat( vip_description, "House\tN\tY\tY\n" );
strcat( vip_description, "Total business slots\t5\t10\tunlimited\n" ); strcat( vip_description, "Vehicle\tN\tN\tY\n" );
strcat( vip_description, "Total vehicle slots\t5\t10\t20\n" ); strcat( vip_description, "Garage\tN\tN\tN\n" );
strcat( vip_description, "Weapons on spawn\t1\t2\t3\n" ); strcat( vip_description, "Gate\tN\tN\tN\n" );
strcat( vip_description, "Armour on spawn\t0%\t100%\t100%\n" ); strcat( vip_description, "Weed Business\tN\tN\tN\n" );
strcat( vip_description, "Coin generation increase\t0%\t10%\t25%\n" ); strcat( vip_description, "House Customization\tN\tN\tSmall\n" );
strcat( vip_description, "Total house slots\t5\t6\t8\n" );
strcat( vip_description, "Total garage slots\t5\t6\t8\n" );
strcat( vip_description, "Total business slots\t5\t6\t8\n" );
strcat( vip_description, "Total vehicle slots\t3\t4\t6\n" );
strcat( vip_description, "Weapons on spawn\t1\t1\t2\n" );
strcat( vip_description, "Armour on spawn\t0%\t0%\t100%\n" );
strcat( vip_description, "Coin generation increase\t0%\t0%\t0%\n" );
strcat( vip_description, "Ability to transfer coins P2P\tN\tY\tY\n" ); strcat( vip_description, "Ability to transfer coins P2P\tN\tY\tY\n" );
strcat( vip_description, "Ability to sell coins on the coin market (/ic sell)\tN\tY\tY\n" ); strcat( vip_description, "Ability to sell coins on the coin market (/ic sell)\tN\tY\tY\n" );
strcat( vip_description, "Ability to use two jobs (/vipjob)\tN\tN\tY\n" ); strcat( vip_description, "Ability to use two jobs (/vipjob)\tN\tN\tN\n" );
strcat( vip_description, "Premium home listing fees waived\tN\tN\tY\n" ); strcat( vip_description, "Premium home listing fees waived\tN\tN\tN\n" );
strcat( vip_description, "Tax reduction\t0%\t0%\t50%\n" ); strcat( vip_description, "Tax reduction\t0%\t0%\t0%\n" );
strcat( vip_description, "Inactive asset protection\t14\t14\t30\n" ); strcat( vip_description, "Inactive asset protection\t14 days\t14 days\t14 days\n" );
strcat( vip_description, "Total Vehicle component editing slots\t4\t6\t10\n" ); strcat( vip_description, "Total Vehicle component editing slots\t3\t4\t6\n" );
strcat( vip_description, "Furniture slots available\t30\t40\t50\n" ); strcat( vip_description, "Furniture slots available\t30\t35\t40\n" );
strcat( vip_description, "V.I.P Lounge Weapon Redeeming Cooldown\t5 min\t1 min\tnone\n" ); strcat( vip_description, "V.I.P Lounge Weapon Redeeming Cooldown\t5 min\t5 min\t5 min\n" );
strcat( vip_description, "V.I.P Tag On Forum\tY\tY\tY\n" ); strcat( vip_description, "V.I.P Tag On Forum\tY\tY\tY\n" );
strcat( vip_description, "Access to V.I.P chat\tY\tY\tY\n" ); strcat( vip_description, "Access to V.I.P chat\tY\tY\tY\n" );
strcat( vip_description, "Access to V.I.P lounge\tY\tY\tY\n" ); strcat( vip_description, "Access to V.I.P lounge\tY\tY\tY\n" );
@ -415,9 +468,10 @@ CMD:vip( playerid, params[ ] )
strcat( vip_description, "Can play custom radio URLs (/radio)\tY\tY\tY\n" ); strcat( vip_description, "Can play custom radio URLs (/radio)\tY\tY\tY\n" );
strcat( vip_description, "Ability to adjust your label's color (/labelcolor)\tY\tY\tY\n" ); strcat( vip_description, "Ability to adjust your label's color (/labelcolor)\tY\tY\tY\n" );
strcat( vip_description, "Can show a message to people you kill (/deathmsg)\tY\tY\tY\n" ); strcat( vip_description, "Can show a message to people you kill (/deathmsg)\tY\tY\tY\n" );
strcat( vip_description, "Can adjust the sound of your hitmarker (/hitmarker)\tY\tY\tY" ); strcat( vip_description, "Can adjust the sound of your hitmarker (/hitmarker)\tY\tY\tY\n" );
strcat( vip_description, ""COL_GREEN"Price (USD)\t"COL_WHITE"$5.00\t"COL_BRONZE"$15.00 USD\t"COL_GOLD"$25.00 USD" );
} }
ShowPlayerDialog( playerid, DIALOG_BUY_VIP, DIALOG_STYLE_TABLIST_HEADERS, "{FFFFFF}Donate for V.I.P", vip_description, "Buy Now", "Close" ); ShowPlayerDialog( playerid, DIALOG_NEXT_PAGE_VIP, DIALOG_STYLE_TABLIST_HEADERS, "{FFFFFF}Donate for V.I.P", vip_description, "See More", "Close" );
return 1; return 1;
} }
@ -504,7 +558,7 @@ stock GetPlayerGarageSlots( playerid ) return GetPlayerHouseSlots( playerid );
stock GetPlayerVehicleSlots( playerid ) stock GetPlayerVehicleSlots( playerid )
{ {
static const static const
slots[ 5 ] = { 3, 6, 8, 10, 20 }; slots[ 6 ] = { 3, 4, 6, 8, 10, 20 };
return slots[ GetPlayerVIPLevel( playerid ) ] + p_ExtraAssetSlots{ playerid }; return slots[ GetPlayerVIPLevel( playerid ) ] + p_ExtraAssetSlots{ playerid };
} }
@ -512,7 +566,7 @@ stock GetPlayerVehicleSlots( playerid )
stock GetPlayerPimpVehicleSlots( playerid ) stock GetPlayerPimpVehicleSlots( playerid )
{ {
static const static const
slots[ 5 ] = { 2, 4, 6, 8, 10 }; slots[ 6 ] = { 2, 3, 4, 6, 8, 10 };
return slots[ GetPlayerVIPLevel( playerid ) ]; return slots[ GetPlayerVIPLevel( playerid ) ];
} }

View File

@ -3797,7 +3797,7 @@ CMD:gettaxrate( playerid, params[ ] ) return cmd_tax( playerid, params );
CMD:getmytax( playerid, params[ ] ) return cmd_tax( playerid, params ); CMD:getmytax( playerid, params[ ] ) return cmd_tax( playerid, params );
CMD:tax( playerid, params[ ] ) CMD:tax( playerid, params[ ] )
{ {
new Float: tax_discount = p_VIPLevel[ playerid ] >= VIP_GOLD ? 0.5 : 1.0; new Float: tax_discount = p_VIPLevel[ playerid ] >= VIP_DIAMOND ? 0.5 : 1.0;
new Float: tax_rate = GetGVarFloat( "taxrate" ) * tax_discount; new Float: tax_rate = GetGVarFloat( "taxrate" ) * tax_discount;
new player_tax = floatround( float( GetPlayerTotalCash( playerid ) ) * ( tax_rate / 100.0 ) ); new player_tax = floatround( float( GetPlayerTotalCash( playerid ) ) * ( tax_rate / 100.0 ) );
if ( player_tax < 0 ) player_tax = 0; if ( player_tax < 0 ) player_tax = 0;
@ -4523,10 +4523,10 @@ CMD:myaccid( playerid, params[ ] )
CMD:job( playerid, params[ ] ) CMD:job( playerid, params[ ] )
{ {
if ( p_VIPLevel[ playerid ] >= VIP_GOLD && p_VIPJob{ playerid } != p_Job{ playerid } ) if ( p_VIPLevel[ playerid ] >= VIP_DIAMOND && p_VIPJob{ playerid } != p_Job{ playerid } )
return SendServerMessage( playerid, "Your jobs are "COL_GOLD"%s"COL_WHITE" and "COL_GOLD"%s"COL_WHITE".", GetJobName( p_Job{ playerid } ), GetJobName( p_VIPJob{ playerid } ) ); return SendServerMessage( playerid, "Your jobs are "COL_GOLD"%s"COL_WHITE" and "COL_GOLD"%s"COL_WHITE".", GetJobName( p_Job{ playerid } ), GetJobName( p_VIPJob{ playerid } ) );
if ( p_VIPLevel[ playerid ] >= VIP_GOLD && p_VIPJob{ playerid } == p_Job{ playerid } ) if ( p_VIPLevel[ playerid ] >= VIP_DIAMOND && p_VIPJob{ playerid } == p_Job{ playerid } )
return SendServerMessage( playerid, "Your jobs are "COL_GOLD"%s"COL_WHITE" and your VIP job is disabled.", GetJobName( p_Job{ playerid } ) ); return SendServerMessage( playerid, "Your jobs are "COL_GOLD"%s"COL_WHITE" and your VIP job is disabled.", GetJobName( p_Job{ playerid } ) );
SendServerMessage( playerid, "Your job is a "COL_GOLD"%s"COL_WHITE".", GetJobName( p_Job{ playerid } ) ); SendServerMessage( playerid, "Your job is a "COL_GOLD"%s"COL_WHITE".", GetJobName( p_Job{ playerid } ) );
@ -9397,7 +9397,7 @@ public OnDialogResponse( playerid, dialogid, response, listitem, inputtext[ ] )
""COL_GREY"Army Warns:{FFFFFF} %d/%d\n"\ ""COL_GREY"Army Warns:{FFFFFF} %d/%d\n"\
""COL_GREY"V.I.P Job:{FFFFFF} %s\n"\ ""COL_GREY"V.I.P Job:{FFFFFF} %s\n"\
""COL_GREY"Current Job:{FFFFFF} %s", ""COL_GREY"Current Job:{FFFFFF} %s",
szLargeString, VIPToString( p_VIPLevel[ pID ] ), vipSeconds > 0 ? secondstotime( vipSeconds ) : ( "N/A" ), p_CopBanned{ pID }, MAX_CLASS_BAN_WARNS, p_ArmyBanned{ pID }, MAX_CLASS_BAN_WARNS, p_VIPLevel[ pID ] < VIP_GOLD ? ( "N/A" ) : GetJobName( p_VIPJob{ pID } ), GetJobName( p_Job{ pID } ) ); szLargeString, VIPToString( p_VIPLevel[ pID ] ), vipSeconds > 0 ? secondstotime( vipSeconds ) : ( "N/A" ), p_CopBanned{ pID }, MAX_CLASS_BAN_WARNS, p_ArmyBanned{ pID }, MAX_CLASS_BAN_WARNS, p_VIPLevel[ pID ] < VIP_DIAMOND ? ( "N/A" ) : GetJobName( p_VIPJob{ pID } ), GetJobName( p_Job{ pID } ) );
if ( gangid != -1 ) { if ( gangid != -1 ) {
format( szLargeString, 750, "%s\n"COL_GREY"Gang:"COL_WHITE" %s(%d)", szLargeString, g_gangData[ gangid ] [ E_NAME ], gangid ); format( szLargeString, 750, "%s\n"COL_GREY"Gang:"COL_WHITE" %s(%d)", szLargeString, g_gangData[ gangid ] [ E_NAME ], gangid );