rendered paste bodypublic OnGameModeInit() {
AddPlayerClass(0,0.0,0.0,0.0,0.0,0,0,0,0,0,0);
AddPlayerClass(0,0.0,0.0,0.0,0.0,0,0,0,0,0,0);
AddPlayerClass(0,0.0,0.0,0.0,0.0,0,0,0,0,0,0);
}
new skins[] = {0,
1, 2, 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, 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, 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,254,255,256,257,258,259,260,
261,262,263,264, 274,275,276,277,278,279,280,
281,282,283,284,285,286,287,288, 290,291,292,293,294,295,296,297,298,299
};
new playerskin[MAX_PLAYERS] = 0;
new oldclass[MAX_PLAYERS] = 0;
new Float:spawns_police[][4] = {
{ 1550.3,-1680.8,13.6,100.0},
{ 1550.2,-1670.1,13.6,100.0}
};
new Float:spawns_peds[][4] = {
{ 1532.1, -890.3, 61.1,29.3},
{ 1426.7, -806.7, 86.5,324.4}
};
GetPlayerRandomSpawn(playerid,&Float:x, &Float:y, &Float:z, &Float:angle) { // random Spawns
if(skins[playerskin[playerid]] >= 280 && skins[playerskin[playerid]] <= 288) { // police skins, police spawns
new rand = random(sizeof(spawns_police));
x = spawns_police[rand][0];
y = spawns_police[rand][1];
z = spawns_police[rand][2];
angle = spawns_police[rand][3];
} else {
new rand = random(sizeof(spawns_peds));
x = spawns_peds[rand][0];
y = spawns_peds[rand][1];
z = spawns_peds[rand][2];
angle = spawns_peds[rand][3];
}
return 1;
}
SkinAdd(playerid) { // Adds +1 for skin selection
if(playerskin[playerid] < sizeof(skins) - 1) {
playerskin[playerid]++;
} else {
playerskin[playerid] = 0;
}
return;
}
SkinSub(playerid) { // adds -1 for skin selection
if(playerskin[playerid] > 0) {
playerskin[playerid]--;
} else {
playerskin[playerid] = sizeof(skins) - 1;
}
return;
}
public OnPlayerRequestClass(playerid, classid) { // The function
if(classid == 0) {
if(oldclass[playerid] == 2) { // Skin +
SkinAdd(playerid);
}
else if(oldclass[playerid] == 1) {
SkinSub(playerid);
}
}
else if(classid == 1) {
if(oldclass[playerid] == 0) { // Skin +
SkinAdd(playerid);
}
else if(oldclass[playerid] == 2) {
SkinSub(playerid);
}
}
if(classid == 2) {
if(oldclass[playerid] == 1) { // Skin +
SkinAdd(playerid);
}
else if(oldclass[playerid] == 0) {
SkinSub(playerid);
}
}
new Float:spawndata[4];
GetPlayerRandomSpawn(playerid,spawndata[0],spawndata[1],spawndata[2],spawndata[3]);
SetSpawnInfo(playerid,0,skins[playerskin[playerid]],spawndata[0],spawndata[1],spawndata[2],spawndata[3],0,0,0,0,0,0);
oldclass[playerid] = classid;
return 1;
}
public OnPlayerRequestSpawn(playerid) {
new Float:spawndata[4];
GetPlayerRandomSpawn(playerid,spawndata[0],spawndata[1],spawndata[2],spawndata[3]);
SetSpawnInfo(playerid,0,skins[playerskin[playerid]],spawndata[0],spawndata[1],spawndata[2],spawndata[3],0,0,0,0,0,0);
return 1;
}
public OnPlayerDeath(playerid,killerid,reason) {
new Float:spawndata[4];
GetPlayerRandomSpawn(playerid,spawndata[0],spawndata[1],spawndata[2],spawndata[3]);
SetSpawnInfo(playerid,0,skins[playerskin[playerid]],spawndata[0],spawndata[1],spawndata[2],spawndata[3],0,0,0,0,0,0);
return 1;
}
public OnPlayerConnect(playerid) {
playerskin[playerid] = random(sizeof(skins));
oldclass[playerid] = 0;
return 1;
}