Код:
public OnPlayerRequestClass(playerid, classid)
{
if(gPlayerLogged[playerid] == 0 && !IsPlayerNPC(playerid))
{
PlayerPlaySound(playerid, 1097,-119.9460,23.1096,12.2238);
TogglePlayerSpectating(playerid,1);
if(gPlayerAccount[playerid] == 1)
{
ClearChatbox(playerid, 7);
ShowPlayerDialog(playerid, DIALOGID_LOGIN, DIALOG_STYLE_PASSWORD, "DC:RP Verification Process", "(( This username is registered. ))\n\nStranger says: Good to see you back again.", "Login", "Quit");
}
else
{
ShowPlayerDialog(playerid, DIALOGID_REGISTER, DIALOG_STYLE_PASSWORD, "DC:RP Registration Process", "(( This username is not registered. ))\n\nStranger says: What's wrong? You look around like you've never been here before.\nStranger says: Oh you are new in here? Go visit the immigration office then.", "Register", "Quit");
}
SetTimerEx("FixCamera", 1000, false, "i", playerid);
}
else if(gPlayerLogged[playerid] == 1 && UsingSkin[playerid] == 0 && !IsPlayerNPC(playerid))
{
SpawnPlayer(playerid);
}
else if(gPlayerLogged[playerid] == 1 && UsingSkin[playerid] == 1 && !IsPlayerNPC(playerid))
{
PlayerPlaySound(playerid, 1187,-119.9460,23.1096,12.2238);
SetPlayerPos(playerid,217.9099,-98.3519,1005.2578);
SetPlayerFacingAngle(playerid,118.3428);
SetPlayerCameraPos(playerid,215.7433,-99.2991,1005.2578+2);
SetPlayerCameraLookAt(playerid,217.9099,-98.3519,1005.2578);
SetPlayerInterior(playerid, 15);
SetPlayerVirtualWorld(playerid, playerid);
}
return 1;
}
Код:
public SetPlayerRandomSpawn(playerid,type)
{
new rand;
new playername[32];
new house = PlayerInfo[playerid][pHouseRenting];
GetPlayerName(playerid, playername, sizeof(playername));
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,300);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,300);
SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,300);
SetPlayerSkillLevel(playerid,WEAPONSKILL_AK47,200);
SetPlayerFightingStyle(playerid,PlayerInfo[playerid][pFightSkill]);
if(PlayerInfo[playerid][pTut] == 0)
{
SetPlayerScore(playerid,0);
PlayerInfo[playerid][pLevel] = 0;
SetPlayerToTeamColor(playerid);
SetPlayerInterior(playerid, 3);
PlayerInfo[playerid][pInt] = 3;
SetPlayerSkin(playerid, 26);
PlayerInfo[playerid][pModel] = 26;
SetPlayerPos(playerid, 361.3318,204.2354,1008.3828);
SetPlayerFacingAngle(playerid, 358);
SetPlayerCameraPos(playerid, 362.2910,208.3048,1008.7828);
SetPlayerCameraLookAt(playerid, 361.3318,204.2354,1008.3828);
TogglePlayerControllable(playerid, 0);
RegistrationStep[playerid] = 1;
PlayerInfo[playerid][pAdmin] = 0;
if(PlayerInfo[playerid][pCalledTutSay] == 0)
{
ShowPlayerDialog(playerid, DIALOGID_TGENDER, DIALOG_STYLE_MSGBOX, "Immigration Office - Gender","Welcome to the immigration office.\n\nImmigration Officer says: You are here to become legal citizen of the Bayside and El Quebrados state.\nImmigration Officer says: You will have to answer a few questions before I can hand you a passport.\nImmigration Officer says: Let's get started, what is your sex?", "Male", "Female");
PlayerInfo[playerid][pCalledTutSay] = 1;
GreenBar[playerid] = CreateProgressBar(152.00, 431.00, 336.50, 13.50, 16716287, 80.0);
ShowProgressBarForPlayer(playerid, GreenBar[playerid]);
SetProgressBarValue(GreenBar[playerid], 5.0);
UpdateProgressBar(GreenBar[playerid], playerid);
TextDrawSetString(Text:RegStep[playerid], "Registration Progress: [1/20]");
TextDrawShowForPlayer(playerid, RegStep[playerid]);
}
SetPlayerVirtualWorld(playerid,playerid);
return 1;
}
/*else if(PlayerInfo[playerid][pTut] == 1)
{
SetPlayerPos(playerid,-2212.0857,2422.5859,2.4941);
}*/
else if(PlayerInfo[playerid][pJailed] == 1)
{
SetPlayerInterior(playerid, 10);
SetPlayerVirtualWorld(playerid,20);
SetPlayerPos(playerid,227.2460,109.7719,999.0156);
if(!PlayerInfo[playerid][pWakeMsgSend]) {
SendClientMessage(playerid, COLOR_WHITE, "You woke up in prison.");
PlayerInfo[playerid][pWakeMsgSend]=1;
}
SetPlayerToTeamColor(playerid);
return 1;
}
else if(PlayerInfo[playerid][pJailed] == 2)
{
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 1);
PlayerInfo[playerid][pInt] = 0;
SetPlayerPos(playerid,-27.6696,2321.0247,24.3034);
TogglePlayerControllable(playerid, 0);
Mute[playerid] = 1;
if(!PlayerInfo[playerid][pWakeMsgSend]) {
SendClientMessage(playerid, COLOR_GREY, "Your admin-jail sentence is not over.");
PlayerInfo[playerid][pWakeMsgSend]=1;
}
SetPlayerToTeamColor(playerid);
return 1;
}
else if(PlayerInfo[playerid][pJailed] == 3)
{
if(!PlayerInfo[playerid][pWakeMsgSend]) {
SendClientMessage(playerid, COLOR_PURPLE, "You woke up in prison.");
}
SetPlayerToTeamColor(playerid);
SetPlayerInterior(playerid,1);
PlayerInfo[playerid][pInt] = 1;
IntEntered[playerid] = 21;
SetPlayerPos(playerid, 1778.2360,-1584.4476,-72.9203);
SetPlayerFacingAngle(playerid, 90);
return 1;
}
else if(Hospitalized[playerid] == 1)
{
SetPlayerToTeamColor(playerid);
TogglePlayerControllable(playerid,false);
SetPlayerHealthEx(playerid,1.0);
SetPlayerPos(playerid, -3451.3801,475.9214,58.0620);
TogglePlayerControllable(playerid, 0);
new RandomWeth;
RandomWeth = random(2);
switch(RandomWeth)
{
case 0:
{
SetPlayerVirtualWorld(playerid,1);
}
case 1:
{
SetPlayerVirtualWorld(playerid,2);
}
}
GameTextForPlayer(playerid,"~w~~n~~n~~n~~n~~n~~n~~n~~n~~n~Recovering.",8000,3);
SetTimerEx("AfterSpawnHos", 10000, false, "i", playerid);
ApplyAnimation(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, 0);
return 1;
}
else if(PlayerInfo[playerid][pCrashed] >= 1 && PlayerInfo[playerid][pCrashed] <= 2)
{
SetPlayerToTeamColor(playerid);
SetPlayerInterior(playerid,PlayerInfo[playerid][pInt]);
SetPlayerPos(playerid, PlayerInfo[playerid][pPos_x], PlayerInfo[playerid][pPos_y], PlayerInfo[playerid][pPos_z] + 1);
SetPlayerVirtualWorld(playerid,PlayerInfo[playerid][pWorld]);
if(PlayerInfo[playerid][pCrashHealth] > 5.0)
{
SetPlayerHealthEx(playerid,PlayerInfo[playerid][pCrashHealth]);
}
else
{
SetPlayerHealthEx(playerid,5.0);
}
SetPlayerArmourEx(playerid,PlayerInfo[playerid][pCrashArmour]);
SetTimerEx("UnsetCrash", 20000, false, "i", playerid);
SetPlayerWeapons(playerid);
return 1;
}
else if(PlayerInfo[playerid][pCrashed] > 2)
{
PlayerInfo[playerid][pCrashed] = 0;
}
else if(type == 1)
{
SendClientMessage(playerid,COLOR_WHITE," ");
SendClientMessage(playerid,COLOR_LIME,"Forum Support: | Please visit our forum: www.divinitygaming.com");
SendClientMessage(playerid,COLOR_LIME,"Reminder: | If you have any questions, feel free to contact our In-Game Helpers /helpme.");
// pSpawn(playerid);
return 1;
}
else if(house != 255)
{
if(house == 266)
{
SetPlayerPos(playerid, 2214.932617,-1150.530639,1025.796875);
SetPlayerInterior(playerid, 15);
return 1;
}
SetPlayerToTeamColor(playerid);
new Level = HouseInfo[house][hLevel];
SetPlayerPos(playerid, HousesCoords[Level][0], HousesCoords[Level][1], HousesCoords[Level][2]);
SetPlayerInterior(playerid, HousesLevels[Level][0]); SetPlayerVirtualWorld(playerid, HouseInfo[house][hWorld]);
HouseEntered[playerid] = house;
return 1;
}
else if (PlayerInfo[playerid][pMember] == 1)//Police Force spawn
{
SetPlayerToTeamColor(playerid);
rand = random(sizeof(gCopPlayerSpawns));
SetPlayerPos(playerid, gCopPlayerSpawns[rand][0], gCopPlayerSpawns[rand][1], gCopPlayerSpawns[rand][2]); // Warp the player
SetPlayerFacingAngle(playerid, 270.0);
SetPlayerInterior(playerid,3);
PlayerInfo[playerid][pInt] = 3;
return 1;
}
else if (PlayerInfo[playerid][pMember] == 2)//FBI spawn
{
SetPlayerToTeamColor(playerid);
SetPlayerInterior(playerid,3);
SetPlayerPos(playerid, 299.7097,183.1322,1007.1719);
SetPlayerFacingAngle(playerid, 90);
SetPlayerVirtualWorld(playerid,1);
PlayerInfo[playerid][pInt] = 3;
IntEntered[playerid] = 14;
return 1;
}
else if(PlayerInfo[playerid][pMember] == 3)//Mayor/Gov spawn
{
SetPlayerToTeamColor(playerid);
SetPlayerInterior(playerid, 3);
SetPlayerPos(playerid, 356.2998,151.9914,1025.7891);
PlayerInfo[playerid][pInt] = 3;
IntEntered[playerid] = 5;
return 1;
}
else if (PlayerInfo[playerid][pMember] == 4)//Fire/Ambulance spawn
{
SetPlayerToTeamColor(playerid);
SetPlayerPos(playerid, -3429.0164,475.4126,57.6132);
SetPlayerFacingAngle(playerid, 0);
SetPlayerVirtualWorld(playerid,0);
IntEntered[playerid] = 2;
return 1;
}
else if (PlayerInfo[playerid][pMember] == 14) // QE Police Force
{
SetPlayerToTeamColor(playerid);
rand = random(sizeof(gQECopPlayerSpawns));
SetPlayerPos(playerid, gQECopPlayerSpawns[rand][0], gQECopPlayerSpawns[rand][1], gQECopPlayerSpawns[rand][2]); // Warp the player
SetPlayerFacingAngle(playerid, 270.0);
SetPlayerInterior(playerid,5);
PlayerInfo[playerid][pInt] = 5;
return 1;
}
else if (PlayerInfo[playerid][pMember] >= 7 && FamilyInfo[PlayerInfo[playerid][pMember]][FamilyInterior] != 0 && FamilyInfo[PlayerInfo[playerid][pMember]][FamilyInterior] != 14) // Factions
{
new fam = PlayerInfo[playerid][pMember];
SetPlayerToTeamColor(playerid);
SetPlayerVirtualWorld(playerid,fam);
if(FamilyInfo[fam][FamilyInterior] == 1) // Crackden
{
SetPlayerInterior(playerid,5);
SetPlayerPos(playerid, 309.9930,1122.5713,1083.8828);
}
else if(FamilyInfo[fam][FamilyInterior] == 2) // Ryders House
{
SetPlayerInterior(playerid,2);
SetPlayerPos(playerid, 2465.8018,-1698.3330,1013.5078);
}
else if(FamilyInfo[fam][FamilyInterior] == 3) // CJs house
{
SetPlayerInterior(playerid,3);
SetPlayerPos(playerid, 2496.0498,-1694.3333,1014.7422);
}
return 1;
}
else // Nooby Spawn
{
SetPlayerToTeamColor(playerid);
if(PlayerInfo[playerid][pArrival] == 1)
{
SetPlayerPos(playerid, -2212.0857,2422.5859,2.4941); // Docks Arrival
}
else if(PlayerInfo[playerid][pArrival] == 2)
{
SetPlayerPos(playerid, -2491.6389,2255.2251,4.9844); // Bus Arrival
}
else if(PlayerInfo[playerid][pArrival] == 3)
{
SetPlayerPos(playerid, -1272.1931,2707.0906,50.0703); // Trucker Arrival
}
else if(PlayerInfo[playerid][pArrival] == 4)
{
SetPlayerPos(playerid, -1514.8119,2524.3264,55.7969); // Hospital Arrival
}
SetPlayerInterior(playerid, 0);
PlayerInfo[playerid][pInt] = 0;
return 1;
}
return 1;
}