PDA

Просмотр полной версии : [Вопрос] Спавн с бутылкой



verteich
01.04.2020, 18:26
Почему когда человек умирает в транспорте, с большой вероятностью он заспавнится с бутылкой и ему не присвоится интерьер?
forward PlayerSpawn(playerid);
public PlayerSpawn(playerid)
{
if(IsPlayerNPC(playerid)) return 1;
if(IsPlayerInAnyVehicle(playerid))
{
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
J_SetPlayerPos(playerid, X, Y, Z);
SetTimerEx("PlayerSpawn", 50, false, "i", playerid);
return 1;
}
SettingSpawn(playerid);
AntiCheatsOFF(playerid, 2);
if(pTemp[playerid][SPECTPLAYER] == true) SpecPl(playerid, false);
else SpawnPlayer(playerid);
time_lspawn = gettime();
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetSpawnInfo(playerid, 255, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0);
if(IsPlayerLogged{playerid})
{
PlayerSpawn(playerid);
GetSkinOfPlayer(playerid);
}
return 0;
}
stock SettingSpawn(playerid)
{
if(IsPlayerNPC(playerid)) return 1;
TogglePlayerControllable(playerid, true);
new skin = GetSkinOfPlayer(playerid);

if(PI[playerid][pHospital]>0)
{
if(PI[playerid][pHealth]>5) J_SetPlayerHealth(playerid,PI[playerid][pHealth]);
else J_SetPlayerHealth(playerid,20);
}
else
{
if(PI[playerid][pLevel]>1)
{
PI[playerid][pHospital]=1;
J_SetPlayerHealth(playerid,20);
SendClientMessage(playerid,COLOR_WHITE,"{DFCFCF}[Ïîäñêàçêà] {FAAC58}Ñîñòîÿíèå çäîðîâüÿ ñëèøêîì íèçêîå! Íåîáõîäèìî âûëå÷èòüñÿ ó âðà÷à èëè èñïîëüçîâàòü àïòå÷êó!");
}
}
if(PI[playerid][pJailTime] > 0)
{
new rand = random(2);
if(PI[playerid][pPrison]==1)
{
SetPlayerVirtualWorld(playerid, 11);
SetSpawnInfoEx(playerid, skin, JailPos[rand][0], JailPos[rand][1], JailPos[rand][2], 180.0);
}
else if(PI[playerid][pPrison]==2)
{
SetPlayerVirtualWorld(playerid, 12);
SetSpawnInfoEx(playerid, skin, JailPos[rand][0], JailPos[rand][1], JailPos[rand][2], 180.0);
}
else if(PI[playerid][pPrison]==3)
{
SetPlayerVirtualWorld(playerid, 13);
SetSpawnInfoEx(playerid, skin, JailPos[2][0], JailPos[2][1], JailPos[2][2], 180.0);
}
else
{
SetPlayerVirtualWorld(playerid, 11);
SetSpawnInfoEx(playerid, skin, JailPos[rand][0], JailPos[rand][1], JailPos[rand][2], 180.0);
}
SetPlayerInterior(playerid, 6);
J_SetPlayerHealth(playerid,100);
return 1;
}
else if(PI[playerid][pDemorgan] > 0)
{
SetSpawnInfoEx(playerid, skin, -801.45, 2831.39, 1501.99, 180.0);
J_SetPlayerHealth(playerid, 100);
SetPlayerInterior(playerid, 6);
SetPlayerVirtualWorld(playerid, 6);
SetPlayerSkinEx(playerid, 268);
return 1;
}
else if(PI[playerid][pHeal] > 0)
{
if(!IsAArmy(playerid))
{
if(PI[playerid][pLevel] < 20)
{
switch(random(2))
{
case 0: SetSpawnInfoEx(playerid, skin, -1753.7180, -2017.6670, 1500.7856,0.000);
case 1: SetSpawnInfoEx(playerid, skin, -1791.3062, -2018.2821, 1500.7856,0.000);
}
}
else SetSpawnInfoEx(playerid, skin, -1354.0164, 8.2145, 1601.0859, 290.6552);
switch(PI[playerid][pHospCity])
{
case 1:
{
SetPlayerVirtualWorld(playerid, 1);
SetPlayerInterior(playerid, 2);
}
case 2:
{
SetPlayerVirtualWorld(playerid, 2);
SetPlayerInterior(playerid, 3);
}
default:
{
SetPlayerVirtualWorld(playerid, 3);
SetPlayerInterior(playerid, 3);
}
}
}
else
{
if(GetTeamID(playerid) == TEAM_ARMY) SetSpawnInfoEx(playerid, skin, 471.80, 881.74, 1500.96, 180.000);
if(GetTeamID(playerid) == TEAM_ARMYLV) SetSpawnInfoEx(playerid, skin, 549.5598,1466.0801,1900.7980,353.8267);
if(GetTeamID(playerid) == TEAM_ARMYSF) SetSpawnInfoEx(playerid, skin, -1609.6104,-113.5421,1501.0859,179.3103);
SetPlayerVirtualWorld(playerid, 1);
SetPlayerInterior(playerid, 2);
return 1;
}
J_SetPlayerHealth(playerid,25);
if(startlomka[playerid]==1)PI[playerid][pOldRepl]=0;
return 1;
}
else//ñïàâí äîìà
{
if(PI[playerid][pDCTime] == 0)
{
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
if(PI[playerid][pLevel] < 3)
{
if(PI[playerid][pRace] == 0)
{
switch(random(4))
{
case 0: SetSpawnInfoEx(playerid, skin, 1765.5046, -1892.7008, 13.5611, 175.9128);
case 1: SetSpawnInfoEx(playerid, skin, 1765.3536, -1902.9863, 13.5661, 355.7444);
case 2: SetSpawnInfoEx(playerid, skin, 1758.8562, -1903.0684, 13.5646, 357.3111);
case 3: SetSpawnInfoEx(playerid, skin, 1758.8551, -1892.5815, 13.5559, 177.4561);
}
return 1;
}
else
{
SetSpawnInfoEx(playerid, skin, 2229.4236,-1156.9237,25.8201,39.4635);
return 1;
}
}
else if(PI[playerid][pLevel] >= 3 && PI[playerid][pLevel] < 7)
{
switch(random(2))
{
case 0: SetSpawnInfoEx(playerid, skin, -1975.1952, 137.6538, 27.6873, 94.4402);
case 1: SetSpawnInfoEx(playerid, skin, -1972.2318, 122.2105, 27.6873, 5.4760);
}
return 1;
}
else if(PI[playerid][pLevel] >= 7 && PI[playerid][pLevel] < 20)
{
switch(random(4))
{
case 0: SetSpawnInfoEx(playerid, skin, 2859.1819, 1259.2250, 11.3906, 331.3528);
case 1: SetSpawnInfoEx(playerid, skin, 2859.4858, 1284.0747, 11.3906, 201.6550);
case 2: SetSpawnInfoEx(playerid, skin, 2858.7656, 1320.1461, 11.3906, 223.5886);
case 3: SetSpawnInfoEx(playerid, skin, 2848.8167, 1293.3512, 11.3906, 99.5075);
}
return 1;
}
else if(PI[playerid][pLevel] >= 20) return SetSpawnInfoEx(playerid, skin, -71.1408, 1223.8297, 19.6863, 119.4150);

}
if(PI[playerid][pDCTime]==2 && PI[playerid][pHouseKey] != -1)//ïðîâåðêà âûáîðà ñïàâíà è íàëè÷èÿ êëþ÷åé
{
if(GetString(HouseInfo[PI[playerid][pHouseKey]][hOwner],PN(playerid)))//ïðîâåðêà ñîîòâåòñòâèÿ èìåíè è
{
HouseEntered[playerid] = PI[playerid][pHouseKey];//îòìå÷àåò â êàêîì äîìå íàõîäèòüñÿ ÷óâàê è îòïðàâëÿåò åãî òóäà
SetSpawnInfoEx(playerid, skin, HouseInfo[PI[playerid][pHouseKey]][hExit_X],HouseInfo[PI[playerid][pHouseKey]][hExit_Y],HouseInfo[PI[playerid][pHouseKey]][hExit_Z],0.0);
//SetPlayerSkinEx(playerid, GetSkinOfPlayer(playerid));
SetPlayerInterior(playerid,HouseInfo[PI[playerid][pHouseKey]][hInt]);
SetPlayerVirtualWorld(playerid,PI[playerid][pHouseKey]+50);
return 1;
}
else
{
new s = GetHouseStyle(PI[playerid][pHouseKey]);//òèï äîìà
for(new i;i < HouseRooms[s];i ++)// ïåðåáèðàåòüñÿ êîëè÷åñòâî êîìíàò
{
if(GetString(HRoomOwner[PI[playerid][pHouseKey]][i],PN(playerid)))//âîçâðàùàåò êîìíàòû
{
HouseEntered[playerid] = PI[playerid][pHouseKey];
//SetSpawnInfoEx(playerid, skin, HouseInfo[PI[playerid][pHouseKey]][hExit_X],HouseInfo[PI[playerid][pHouseKey]][hExit_Y],HouseInfo[PI[playerid][pHouseKey]][hExit_Z],0.0);
SetSpawnInfoEx(playerid, skin, HouseInfo[PI[playerid][pHouseKey]][hExit_X],HouseInfo[PI[playerid][pHouseKey]][hExit_Y],HouseInfo[PI[playerid][pHouseKey]][hExit_Z],0.0);
//SetPlayerSkinEx(playerid, GetSkinOfPlayer(playerid));
SetPlayerInterior(playerid,HouseInfo[PI[playerid][pHouseKey]][hInt]);
SetPlayerVirtualWorld(playerid,PI[playerid][pHouseKey]+50);
return 1;
}
}
}
}else if(PI[playerid][pDCTime]==1 && PI[playerid][pFrom] != -1){
EnterHotel[playerid] = PI[playerid][pFrom];
NoEnterPickup[playerid] =2;
TogglePlayerControllable(playerid,false);
SetSpawnInfoEx(playerid, skin, HotelInfo[PI[playerid][pFrom]][htExit_X],HotelInfo[PI[playerid][pFrom]][htExit_Y],HotelInfo[PI[playerid][pFrom]][htExit_Z],270.1216);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
return 1;
}
else if(PI[playerid][pDCTime]==3 && GetTeamID(playerid) != 0){//íèæå åñëè ñîñòîèò â îðãàíèçàöèè.
J_SetPlayerFacingAngle(playerid,SpawnInfo[PI[playerid][pMember]][3]);
SetPlayerInterior(playerid,SpawnIntWorld[PI[playerid][pMember]][0]);
SetPlayerVirtualWorld(playerid,SpawnIntWorld[PI[playerid][pMember]][1]);
SetSpawnInfoEx(playerid, skin, SpawnInfo[PI[playerid][pMember]][0], SpawnInfo[PI[playerid][pMember]][1], SpawnInfo[PI[playerid][pMember]][2], SpawnInfo[PI[playerid][pMember]][3]);
return 1;
}
}
SetSpawnInfoEx(playerid, skin, 167.5974,-109.2371,1.5501,272.6516);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
PI[playerid][pDCTime] = 0;
//SetPlayerSkinEx(playerid, GetSkinOfPlayer(playerid));
return 1;
}

stock SetSpawnInfoEx(playerid, skin, Float:x, Float:y, Float:z, Float:a)
{
return SetSpawnInfo(playerid, 255, skin, x, y, z-0.2, a, 0, 0, 0, 0, 0, 0);
}