#include forward PickDestroy(o); new weapmod[600] = {1212,331,333,334,335,336,337,338,339,341,321,322,323,324, 325,326,342,343,344,345,345,345,346,347,348,349,350,351,352,353,355,356,372,357, 358,359,360,361,362,363,364,365,366,367,368,369,371}; new PickUpMoney[101] = {false, ...}; new DropPick[101] = {false, ...}; new WeaponMelee[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; new WeaponSMelee[] = { 10, 11, 12, 13, 14, 15 }; forward Float:GetPlayerArmourEx(p); Float:GetPlayerArmourEx(p) { new Float:a; GetPlayerArmour(p, a); return a; } enum PlayerSpawnInfo1 { Float:PlayerX, Float:PlayerY, Float:PlayerZ, Float:PlayerAngle } enum PlayerSpawnInfo2 { Float:PlayerX, Float:PlayerY, Float:PlayerZ, Float:PlayerAngle } new Number[] = { 1,2,3,280,281,282,283,284,285,286,287,254,255,256,257,258,259,260,261,262,263,264, 274,275,276,290,291,292,293,294,295,296,297,298,299,288,277,278,279,47,48,49,50, 51,52,53,54,55,56,57,58,59,60,61,62,63,64,66,67,68,69,70,71,72,73,75,76,78,79,80, 81,82,83,84,85,86,87,88,89,91,92,93,95,96,97,98,99,100,101,102,103,104,105,106, 107,108,109,110,111,112,113,114,115,116,117,118,120,121,122,123,124,125,126,127, 128,129,131,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,150, 151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170, 171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190, 191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210, 211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230, 231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250, 251,253 }; new Float:gRandomStartSpawns[][PlayerSpawnInfo1] = { {2576.3540,-1280.7972,1060.9844,134.6950}, {2580.8687,-1283.4233,1054.6406,131.5850}, {2572.4883,-1299.7338,1054.6406,356.8504}, {2555.1799,-1300.5607,1054.6470,178.5620}, {2566.9807,-1281.3185,1054.6406,176.9954}, {2530.2720,-1302.0006,1054.6406,173.2353}, {2539.8242,-1287.3820,1054.6406,91.1646}, {2521.0806,-1282.1433,1054.6406,180.4421}, {2525.3621,-1291.0267,1048.2891,268.5693}, {2569.8931,-1306.5029,1048.2891,359.4368}, {2545.7000,-1280.7485,1048.2891,181.4852}, {2559.1785,-1281.5060,1044.1250,173.0251}, {2576.3672,-1281.6589,1044.1250,179.6052}, {2568.3884,-1294.6321,1037.7734,176.8414}, {2575.3367,-1281.4165,1031.4219,172.2443}, {2555.7791,-1285.7932,1031.4219,86.0768}, {2530.9226,-1289.7579,1031.4219,272.8581}, {2527.6555,-1290.1365,1031.4219,182.2805}, {2523.9763,-1311.2969,1031.4219,359.3156}, {2528.2156,-1321.5485,1031.4219,89.2431} }; new Float:gRandomAirSpawns[][PlayerSpawnInfo2] = { {-2515.5476,-713.7686,279.7344,299.3666}, {-2488.1536,-704.5867,279.7344,56.5543}, {-2488.3354,-697.9131,279.7344,122.0416}, {-2509.8284,-716.4245,279.7344,358.3534}, {-2509.7170,-685.3597,279.7344,178.8351}, {-2515.0623,-688.8592,279.7344,235.5490} }; main() { print("\n----------------------------------"); print(" Classes and Deathmachtes"); print("----------------------------------\n"); } public OnGameModeInit() { UsePlayerPedAnims(); print("GameModeInit()"); SetGameModeText("Blank Script"); AddPlayerClass(Number[random(sizeof(Number))],0.0, 0.0, 0.0, 0.0,WeaponMelee[random(sizeof(WeaponMelee))],-1,WeaponSMelee[random(sizeof(WeaponSMelee))],-1,0,0); return 1; } public OnPlayerDeath(playerid, killerid, reason) { ResetSpawnInfo(playerid); // - Defines new Float:X, Float:Y, Float:Z; GetPlayerPos(playerid, X, Y, Z); new weap[200]; new ammo; // not used new temp; new s[256]; new PX; new PY; // - End of Defines for(new i=0;i<15;i++){ // Getting random pos near to player format(s, 256 ,"%.0f", X); temp = strval(s); PX = random((temp+2)-(temp-2))+(temp-2); format(s, 256 ,"%.0f", Y); temp = strval(s); PY = random((temp+2)-(temp-2))+(temp-2); // end of pos // Placing Pickups if(i<12){ GetPlayerWeaponData(playerid, i, weap[i], ammo); if(weapmod[weap[i]] == 1212){ new pickid = CreatePickup(1212, 3,PX, PY, Z); PickUpMoney[pickid]=true; DropPick[pickid]=true; } else { DropPick[CreatePickup(weapmod[weap[i]], 3,PX, PY, Z)]=true; } } if(i==13)DropPick[CreatePickup(1240, 3,PX, PY, Z)]=true; if(i==14)if(GetPlayerArmourEx(playerid)>0.0)DropPick[CreatePickup(1242, 3,PX, PY, Z)]=true; else { new pickid = CreatePickup(1212, 3,PX, PY, Z); PickUpMoney[pickid]=true; DropPick[pickid]=true; } if(i==15){ new pickid = CreatePickup(1212, 3,PX, PY, Z); PickUpMoney[pickid]=true; DropPick[pickid]=true; } } // End of placing pickups return 1; } public OnPlayerPickUpPickup(playerid, pickupid) { if(PickUpMoney[pickupid])GivePlayerMoney(playerid, 20); // Will give you 500$ when you pickup money if(DropPick[pickupid])SetTimerEx("PickDestroy", 10, 0, "d", pickupid); // Destroying pickups return 1; } public PickDestroy(o)DestroyObject(o); // Destroy pickup ! Muha xD! ResetSpawnInfo(playerid) { new rand = random(sizeof(gRandomStartSpawns)); SetSpawnInfo(playerid, 255, Number[random(sizeof(Number))], gRandomStartSpawns[rand][PlayerX], gRandomStartSpawns[rand][PlayerY], gRandomStartSpawns[rand][PlayerZ], gRandomStartSpawns[rand][PlayerAngle], 0, 0, 0, 0, 0, 0); } public OnPlayerRequestClass(playerid, classid) { SetPlayerInterior(playerid,2); SetPlayerFacingAngle(playerid,190.0); SetPlayerPos(playerid,2566.9807,-1281.3185,1054.6406); SetCameraBehindPlayer(playerid); return 1; } public OnPlayerRequestSpawn(playerid) { ResetSpawnInfo(playerid); return 1; } public OnPlayerSpawn(playerid) { SetPlayerHealth(playerid,100); SetPlayerInterior(playerid,2); SendClientMessage(playerid,0xFF9900AA,"You are in Big Smoke`s Crackfort"); GameTextForPlayer(playerid, "~r~/help", 1000, 3); return 1; } public OnPlayerConnect(playerid) { new name[MAX_PLAYER_NAME+1]; new string[256]; GetPlayerName(playerid, name, sizeof(name)); SendClientMessageToAll(0x33CCFFAA,""); format(string, sizeof(string), "Welcome %s ", name); SendClientMessageToAll(0x33AA33AA, string); SendClientMessageToAll(0x33CCFFAA,""); return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp(cmdtext, "/help", true)==0) { SendClientMessage(playerid,0x33AA33AA,"Help"); SendClientMessage(playerid,0x33CCFFAA,"/position"); SendClientMessage(playerid,0x33CCFFAA,"/interior"); SendClientMessage(playerid,0x33CCFFAA,"/deathmachtes (Melee)"); return 1; } if (strcmp(cmdtext, "/deathmatch", true)==0) { SendClientMessage(playerid,0x33AA33AA,"Deathmatches"); SendClientMessage(playerid,0x33CCFFAA,"/dinterior"); SendClientMessage(playerid,0x33CCFFAA,"/doutside"); return 1; } if (strcmp(cmdtext, "/dinterior", true)==0) { SendClientMessage(playerid,0x33AA33AA,"Deathmatch Interior"); SendClientMessage(playerid,0x33CCFFAA,"/shamal"); return 1; } if (strcmp(cmdtext, "/doutside", true)==0) { SendClientMessage(playerid,0x33AA33AA,"Deathmatch Outside with meleeweapons"); SendClientMessage(playerid,0x33CCFFAA,"/fix"); SendClientMessage(playerid,0x33CCFFAA,"/lbay"); SendClientMessage(playerid,0x33CCFFAA,"/air"); } if (strcmp("/position", cmdtext, true, 10) == 0) { new Float:x, Float:y, Float:z; GetPlayerPos(playerid,x,y,z); new string[256]; format(string, sizeof(string), "Position: %.2f, %.2f, %.2f", x, y, z); SendClientMessage(playerid,0xAA3333AA, string); } if (strcmp("/restart", cmdtext, true, 10) == 0) { GameModeExit(); return 1; } if (strcmp("/fix", cmdtext, true, 10) == 0) { SetPlayerInterior(playerid,0); SetPlayerPos(playerid,2394.03,1491.39,10.54); } if (strcmp("/shamal", cmdtext, true, 10) == 0) { SetPlayerInterior(playerid,1); SetPlayerPos(playerid,1.80,33.49,1199.59); } if (strcmp("/lbay", cmdtext, true, 10) == 0) { SetPlayerInterior(playerid,0); SetPlayerPos(playerid,1643.90,-1515.57,13.57); } if (strcmp("/air", cmdtext, true, 10) == 0) { SetPlayerInterior(playerid,0); new rand = random(sizeof(gRandomAirSpawns)); SetPlayerPos(playerid, gRandomAirSpawns[rand][PlayerX], gRandomAirSpawns[rand][PlayerY], gRandomAirSpawns[rand][PlayerZ]); } return 0; }