rendered paste body#include <a_samp>
#include <Dini>
#include <dutils>
#include <dudb>
#define COLOR_RED 0xFF0000AA
#define COLOR_GREEN 0x33AA33FF
#define COLOR_ORANGE 0xFF9900AA
#define COLOR_DARKGREEN 0x009600DD
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_BRIGHTRED 0xFF0000AA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_GRAD1 0xB4B5B7FF
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_BLUE 0x0000FFAA
#define COLOR_BLACK 0x000000AA
#define COLOR_RED1 0xFF0000AA
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_GRAD1 0xB4B5B7FF
#define TEAM_COP 1
new jailed[MAX_PLAYERS];
new gTeam[MAX_PLAYERS];
new bike1,bike2,bike3,bike4,bike5,bike6;
new dirt1,dirt2,dirt3,dirt4,dirt5,dirt6,dirt7,dirt8,dirt9;
new derby1,derby2,derby3,derby4,derby5,derby6,derby7,derby8,derby9,derby10;
new elegy;
new cop1,cop2,cop3,cop4;
LockElegy(playerid)
{
SetVehicleParamsForPlayer(elegy, playerid, 0, 1);
}
UnlockElegy(playerid)
{
SetVehicleParamsForPlayer(elegy, playerid, 0, 0);
}
LockCop(playerid)
{
SetVehicleParamsForPlayer(cop1, playerid, 0, 1);
SetVehicleParamsForPlayer(cop2, playerid, 0, 1);
SetVehicleParamsForPlayer(cop3, playerid, 0, 1);
SetVehicleParamsForPlayer(cop4, playerid, 0, 1);
}
UnlockCop(playerid)
{
SetVehicleParamsForPlayer(cop1, playerid, 0, 0);
SetVehicleParamsForPlayer(cop2, playerid, 0, 0);
SetVehicleParamsForPlayer(cop3, playerid, 0, 0);
SetVehicleParamsForPlayer(cop4, playerid, 0, 0);
}
main()
{
print("\n----------------------------------");
print(" New Gamemode By Scar");
print("----------------------------------\n");
}
public OnGameModeInit()
{
AllowInteriorWeapons(1);
EnableZoneNames(1);
EnableTirePopping(1);
SetGameModeText("RolePlay/Fun/iCe");
AddPlayerClass(120, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(22, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(78, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(84, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(265, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(266, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(267, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(268, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(269, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(270, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(271, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(272, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
elegy = AddStaticVehicle(562,2038.3367,1335.5554,10.3773,181.9235,35,1); //
AddStaticVehicle(562,2178.3047,920.8654,10.5397,0.2073,35,1); //
AddStaticVehicle(562,2129.9822,690.0913,11.0337,3.5154,35,1); //
AddStaticVehicle(560,2142.7283,1009.7618,10.6095,90.1545,3,3); //
AddStaticVehicle(560,2454.8257,1275.7939,10.6086,273.1903,3,3); //
AddStaticVehicle(415,2464.8865,1336.0117,10.5932,359.5371,25,1); //
AddStaticVehicle(415,2805.0762,1326.1823,10.5292,93.1942,25,1); //
AddStaticVehicle(405,2765.5859,1288.1406,10.6250,90.7128,24,1); //
AddStaticVehicle(475,2171.2195,1993.0074,10.6245,84.4276,9,39); //
AddStaticVehicle(475,2156.7571,2182.9060,10.5449,0.0150,9,39); //
AddStaticVehicle(405,2492.9380,1418.0631,10.7353,176.1850,24,1); //
AddStaticVehicle(405,2409.6414,1629.6558,10.6967,179.4297,24,1); //
AddStaticVehicle(405,2312.9844,1796.3704,10.6953,359.6036,24,1); //
AddStaticVehicle(411,2220.9810,1786.9474,10.5474,184.2246,64,1); //
AddStaticVehicle(411,2144.7224,1803.1960,10.5474,243.5896,64,1); //
AddStaticVehicle(411,2602.3477,2135.8730,10.5474,271.7307,64,1); //
AddStaticVehicle(421,2604.9944,2085.8752,10.7011,183.3742,13,1); //
AddStaticVehicle(421,2603.2612,2146.4136,10.7029,91.4946,13,1); //
AddStaticVehicle(421,2148.1001,987.3583,10.7375,180.7484,13,1); //
AddStaticVehicle(562,2038.5657,1012.1010,10.3810,180.7558,17,1); //
AddStaticVehicle(562,2075.1086,2228.0518,10.5245,269.8434,17,1); //
AddStaticVehicle(402,2062.7236,2206.8652,10.6517,173.2944,13,13); //
///-------------------------------Cop Cars-----------------------------------------------
cop1 = AddStaticVehicle(598,2251.4250,2477.9001,10.5689,359.7924,0,1); // cop1
cop2 = AddStaticVehicle(598,2251.5398,2459.8484,10.5687,1.7517,0,1); // cop2
cop3 = AddStaticVehicle(598,2260.2612,2477.8596,10.5641,354.5188,0,1); // cop3
cop4 = AddStaticVehicle(598,2272.7380,2444.5996,10.5694,359.5636,0,1); // cop4
///-----------------Bike Race-----------------------------------------------------------
bike1 = AddStaticVehicle(522,-1393.6804,-200.8766,1050.9463,358.8080,3,8); // bike1
bike2 = AddStaticVehicle(522,-1397.1130,-200.5289,1050.9692,356.6321,3,8); // bike2
bike3 = AddStaticVehicle(522,-1401.5906,-202.4543,1050.9155,5.3668,3,8); // bike3
bike4 = AddStaticVehicle(522,-1398.3918,-214.2274,1050.7439,355.8186,3,8); // bike4
bike5 = AddStaticVehicle(522,-1401.5410,-213.0965,1050.7561,7.6335,3,8); // bike5
bike6 = AddStaticVehicle(522,-1394.3101,-215.8236,1050.7031,356.1054,3,8); // bike6
LinkVehicleToInterior(bike1,7);
LinkVehicleToInterior(bike2,7);
LinkVehicleToInterior(bike3,7);
LinkVehicleToInterior(bike4,7);
LinkVehicleToInterior(bike5,7);
LinkVehicleToInterior(bike6,7);
///----------------------------------Dirt Bikes------------------------------------------------
dirt1 = AddStaticVehicle(468,-1364.7585,-669.5965,1055.6062,84.5932,46,46); // dirt1
dirt2 = AddStaticVehicle(468,-1365.4498,-666.5338,1055.6144,76.2890,46,46); // dirt2
dirt3 = AddStaticVehicle(468,-1364.8788,-662.8184,1055.6053,82.2707,46,46); // dirt3
dirt4 = AddStaticVehicle(468,-1353.2928,-664.9696,1055.6144,78.2283,46,46); // dirt4
dirt5 = AddStaticVehicle(468,-1352.1869,-668.3220,1055.6143,77.1906,46,46); // dirt5
dirt6 = AddStaticVehicle(468,-1352.2651,-671.5734,1055.6106,79.8826,46,46); // dirt6
dirt7 = AddStaticVehicle(471,-1333.0173,-670.8141,1055.4265,74.6133,103,111); // dirt7
dirt8 = AddStaticVehicle(471,-1325.1682,-676.0571,1055.4575,64.3824,103,111); // dirt8
dirt9 = AddStaticVehicle(471,-1318.7275,-683.6514,1055.5587,43.3025,103,111); // dirt9
LinkVehicleToInterior(dirt1,4);
LinkVehicleToInterior(dirt2,4);
LinkVehicleToInterior(dirt3,4);
LinkVehicleToInterior(dirt4,4);
LinkVehicleToInterior(dirt5,4);
LinkVehicleToInterior(dirt6,4);
LinkVehicleToInterior(dirt7,4);
LinkVehicleToInterior(dirt8,4);
LinkVehicleToInterior(dirt9,4);
///-------------------------------------Derby Cars----------------------------------------------------
derby1 = AddStaticVehicle(494,-1398.3638,1085.5244,1039.6868,270.3367,36,13); //
derby2 = AddStaticVehicle(494,-1398.2832,1080.4496,1039.4735,275.9196,36,13); //
derby3 = AddStaticVehicle(494,-1397.0978,1075.3491,1039.3516,274.2510,36,13); //
derby4 = AddStaticVehicle(494,-1396.9043,1069.3568,1039.4791,271.5550,36,13); //
derby5 = AddStaticVehicle(494,-1386.4221,1103.2861,1040.1052,266.0103,36,13); //
derby6 = AddStaticVehicle(504,-1348.8213,935.7652,1036.1652,5.9435,57,38); //
derby7 = AddStaticVehicle(504,-1312.2799,948.7751,1036.3154,1.9570,57,38); //
derby8 = AddStaticVehicle(504,-1286.5072,971.9337,1036.6606,27.6991,57,38); //
derby8 = AddStaticVehicle(504,-1281.5554,985.5833,1036.8766,357.8596,57,38); //
derby9 = AddStaticVehicle(504,-1286.4738,1007.5505,1037.2522,31.6699,57,38); //
derby10 = AddStaticVehicle(504,-1350.8229,1055.1012,1038.1531,183.0284,57,38); //
LinkVehicleToInterior(derby1,15);
LinkVehicleToInterior(derby2,15);
LinkVehicleToInterior(derby3,15);
LinkVehicleToInterior(derby4,15);
LinkVehicleToInterior(derby5,15);
LinkVehicleToInterior(derby6,15);
LinkVehicleToInterior(derby7,15);
LinkVehicleToInterior(derby8,15);
LinkVehicleToInterior(derby9,15);
LinkVehicleToInterior(derby10,15);
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerFacingAngle(playerid, 90.0);
SetPlayerPos(playerid, 1979.3451,1329.2415,10.0156);
SetPlayerCameraPos(playerid, 1973.2175,1329.5684,10.0156);
SetPlayerCameraLookAt(playerid, 1973.2175,1329.5684,10.0156);
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnPlayerConnect(playerid)
{
SendClientMessage(playerid,COLOR_ORANGE,"-----------------------------------");
SendClientMessage(playerid,COLOR_GREEN,"Welcome To My Server");
SendClientMessage(playerid,COLOR_GREEN,"Type /help To Get Started");
SendClientMessage(playerid,COLOR_RED,"-----------------------------------");
GivePlayerMoney(playerid,5000);
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
return 1;
}
public OnPlayerSpawn(playerid)
{
UnlockElegy(playerid);
LockCop(playerid);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
new name[ 24 ], string[ 64 ];
GetPlayerName( playerid, name, 24 );
GivePlayerMoney(playerid,-100);
format( string, sizeof(string), "~w~%s Has Been Brutaly Killed!", name );
GameTextForAll( string, 5000, 3 );
printf("OnPlayerDeath(%d, %d, %d)", playerid, killerid, reason);
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerText(playerid, text[])
{
return 1;
}
public OnPlayerPrivmsg(playerid, recieverid, text[])
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new tmp[256];
new cmd[256];
new idx;
cmd = strtok(cmdtext, idx);
if (strcmp("/help", cmdtext, true, 10) == 0) {
SendClientMessage(playerid,COLOR_BLUE,"Type /cmds To get You Started");
return 1;
}
if (strcmp("/cmds", cmdtext, true, 10) == 0) {
SendClientMessage(playerid,COLOR_GREEN,"/bikerace /dirtbike /derby /race /club");
return 1;
}
if (strcmp("/bikerace", cmdtext, true, 10) == 0) {
SetPlayerPos(playerid,-1396.8925,-194.5198,1051.4613);
SetPlayerInterior(playerid, 7);
SendClientMessage(playerid, COLOR_ORANGE,"type /Back To go back to spawn");
return 1;
}
if (strcmp("/elegy123", cmdtext, true, 10) == 0) {
LockElegy(playerid);
SendClientMessage(playerid, COLOR_GREEN,"The Elegy Is Unlocked :)");
return 1;
}
///-----------------------Start o Cops-------------------------------
if (strcmp("/log_copaman12", cmdtext, true, 10) == 0) {
UnlockCop(playerid);
GivePlayerWeapon(playerid, 24, 10000);
GivePlayerWeapon(playerid, 3, 10000);
SetPlayerSkin(playerid, 280);
SetPlayerColor(playerid,COLOR_BLUE);
gTeam[playerid]=TEAM_COP;
SetPlayerPos(playerid, 2295.0293,2459.4961,10.8203);
SendClientMessage(playerid,COLOR_RED,"Your Commands Are Coming Soon ^^");
return 1;
}
if(strcmp(cmd, "/jail", true) == 0) {//UPDATED JAIL CMD ONlY JAILS IF THE SPECIFIED PERSON ISNT JAILED!
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_GREEN, "Usage: /jail [Player ID]");
return 1;
}
giveplayerid = strval(tmp);
if(jailed[giveplayerid]==0) {
if (gTeam[playerid] == TEAM_COP) {
if (IsPlayerConnected(giveplayerid)) {
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "You have been jailed by %s!", sendername, playerid);
SendClientMessage(giveplayerid, COLOR_RED1, string);
format(string, sizeof(string), "%s has been jailed by %s!", giveplayer, giveplayerid, sendername, playerid);
SendClientMessageToAll(COLOR_RED1, string);
printf(string);
SetPlayerInterior(giveplayerid,3);
jailed[giveplayerid] = 1;
SetPlayerPos(giveplayerid,198.3797,160.8905,1003.0300);
SetPlayerFacingAngle(giveplayerid,177.0350);
SetCameraBehindPlayer(giveplayerid);
PlayerPlaySound(giveplayerid,1082,198.3797,160.8905,1003.0300);
TogglePlayerControllable(giveplayerid,0); //So the player that is jailed can't use /kill
DisablePlayerCheckpoint(giveplayerid);
return 1;
}else{
format(string, sizeof(string), "id %d is not an active player.", giveplayerid);
SendClientMessage(playerid, COLOR_YELLOW, string);
}
}else{
format(string, sizeof(string), "You are not a cop why are you trying to jail", giveplayerid);
SendClientMessage(playerid, COLOR_YELLOW, string);
}
}else{
format(string, sizeof(string), "Someone already jailed that player", giveplayerid);
SendClientMessage(playerid, COLOR_YELLOW, string);
}
return 1;
}
if(strcmp(cmd, "/unjail", true) == 0) {//UPDATED UNJAIL CMD ONly UNJAILS IF THE SPECIFIED PERSON IS JAILED!
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_GREEN, "Usage: /unjail [Player ID]");
return 1;
}
if(jailed[giveplayerid]==1) {
if (gTeam[playerid] == TEAM_COP) {
if (IsPlayerConnected(giveplayerid)) {
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "You have been unjailed by %s (ID:%d)!", sendername, playerid);
SendClientMessage(giveplayerid, COLOR_GREEN, string);
format(string, sizeof(string), "%s (ID:%d) has been unjailed by %s (ID:%d)", giveplayer, giveplayerid, sendername, playerid);
SendClientMessageToAll(COLOR_GREEN, string);
printf(string);
jailed[giveplayerid] = 0;
SetPlayerInterior(giveplayerid,0);
SetPlayerFacingAngle(giveplayerid,90.00);
SetPlayerPos(giveplayerid,2296.4031,2468.7754,10.8203);
SetPlayerFacingAngle(giveplayerid,177.0350);
SetCameraBehindPlayer(giveplayerid);
TogglePlayerControllable(giveplayerid,1);
return 1;
}else{
format(string, sizeof(string), "id %d Is not even online Dumbass!!", giveplayerid);
SendClientMessage(playerid, COLOR_YELLOW, string);
}
}else{
format(string, sizeof(string), "You Can't unjail when your not a cop", giveplayerid);
SendClientMessage(playerid, COLOR_WHITE, string);
}
}else{
format(string, sizeof(string), "This person Is already unjailed", giveplayerid);
SendClientMessage(playerid, COLOR_WHITE, string);
}
return 1;
}
///----------------------End o Cops----------------------------------------
if (strcmp("/race", cmdtext, true, 10) == 0) {
SetPlayerPos(playerid,-1384.8315,1094.9307,1040.7969);
SetPlayerInterior(playerid, 15);
SendClientMessage(playerid, COLOR_ORANGE,"type /Back To go back to spawn");
return 1;
}
if (strcmp("/derby", cmdtext, true, 10) == 0) {
SetPlayerPos(playerid,-1375.0470,931.8470,1041.5313);
SetPlayerInterior(playerid, 15);
SendClientMessage(playerid, COLOR_ORANGE,"type /Back To go back to spawn");
return 1;
}
if (strcmp("/dirtbike", cmdtext, true, 10) == 0) {
SetPlayerPos(playerid,-1396.3378,-665.8495,1057.2438);
SetPlayerInterior(playerid, 4);
SendClientMessage(playerid, COLOR_ORANGE,"type /Back To go back to spawn");
return 1;
}
if (strcmp("/back", cmdtext, true, 10) == 0) {
SetPlayerPos(playerid,1958.3783,1343.1572,15.3746);
SetPlayerInterior(playerid, 0);
return 1;
}
if (strcmp("/club", cmdtext, true, 10) == 0) {
SetPlayerPos(playerid,963.6428,-53.2055,1001.1246);
SetPlayerInterior(playerid, 3);
return 1;
}
if (strcmp("/Hooker", cmdtext, true, 10) == 0) {
SetPlayerPos(playerid,748.9203,1438.6792,1102.9531);
SetPlayerInterior(playerid, 6);
return 1;
}
if (strcmp(cmdtext, "/lock", true)==0)
{
if(IsPlayerInAnyVehicle(playerid))
{
new State=GetPlayerState(playerid);
if(State!=PLAYER_STATE_DRIVER)
{
SendClientMessage(playerid,0xFFFF00AA,"You can only lock the doors as the driver.");
return 1;
}
new i;
for(i=0;i<MAX_PLAYERS;i++)
{
if(i != playerid)
{
SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 1);
}
}
SendClientMessage(playerid, 0xFFFF00AA, "Vehicle locked!");
new Float:pX, Float:pY, Float:pZ;
GetPlayerPos(playerid,pX,pY,pZ);
PlayerPlaySound(playerid,1056,pX,pY,pZ);
}
else
{
SendClientMessage(playerid, 0xFFFF00AA, "You're not in a vehicle!");
}
return 1;
}
if (strcmp(cmdtext, "/unlock", true)==0)
{
if(IsPlayerInAnyVehicle(playerid))
{
new State=GetPlayerState(playerid);
if(State!=PLAYER_STATE_DRIVER)
{
SendClientMessage(playerid,0xFFFF00AA,"You can only unlock the doors as the driver.");
return 1;
}
new i;
for(i=0;i<MAX_PLAYERS;i++)
{
SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 0);
}
SendClientMessage(playerid, 0xFFFF00AA, "Vehicle unlocked!");
new Float:pX, Float:pY, Float:pZ;
GetPlayerPos(playerid,pX,pY,pZ);
PlayerPlaySound(playerid,1057,pX,pY,pZ);
}
else
{
SendClientMessage(playerid, 0xFFFF00AA, "You're not in a vehicle!");
}
return 1;
}
return 0;
}
public OnPlayerInfoChange(playerid)
{
return 1;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
/*if (vehicleid == elegy)
{
AddVehicleComponent(elegy, 1037);
AddVehicleComponent(elegy, 1035);
AddVehicleComponent(elegy, 1039);
AddVehicleComponent(elegy, 1041);
AddVehicleComponent(elegy, 1146);
AddVehicleComponent(elegy, 1148);
AddVehicleComponent(elegy, 1172);
AddVehicleComponent(elegy, 1010);
ChangeVehiclePaintjob(100, 12);
}*/
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}