|POMOC|Bug sa enterijerom


Započeo Tommy_Vercetty, Oktobar 20, 2014, 17:54:12 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: Mojaa
Detaljan opis problema: Imam jedan problem, ja sam sada uzeo enterijer od jedne org koji mi se svida i sada ja sam kopirao to sve i stavio na ovoj drugoj org logicno druge kordinate ulaza i izlaza.Kada udem u ovu novu org sve je ok ucita mi Enterijer ali kada izadem vrati me na poziciju  od stare org... ja cu staviti dole kordinate.. od jedne , te od druge org...
Dio skripte: Evo kod svega onog najbitnije


Od org koje sam kopirao :!

else if(IsPlayerInRangeOfPoint(playerid, 1,1298.7075,-798.5981,84.1406))
		{
			//La Famillia Vercetty  ulaz u hq
			if(PlayerInfo[playerid][pMember] == 6 || PlayerInfo[playerid][pLeader] == 6)
			{
				PlayerInfo[playerid][pInteriorNr] = 5;
				SafeSetPlayerInterior(playerid, 5);
				SafeSetPlayerPos(playerid, 1254.3436,-789.3809,1084.0078);
				GameTextForPlayer(playerid, "~w~La Famillia Vercetty HQ",5000,1);
				SetPlayerFacingAngle(playerid, 181);
			}
			else if(hqlock[luclock] == 0)
			{
				PlayerInfo[playerid][pInteriorNr] = 5;
				SafeSetPlayerInterior(playerid, 5);
			    SafeSetPlayerPos(playerid, 1254.3436,-789.3809,1084.0078);
				GameTextForPlayer(playerid, "~w~La Famillia Vercetty HQ",5000,1);
				SetPlayerFacingAngle(playerid, 181);
			}
			else
			{
			    GameTextForPlayer(playerid, "~r~Locked",5000,1);
			}
		}
		else if(IsPlayerInRangeOfPoint(playerid, 1, 1252.5208,-789.2282,1084.0078))
		{
			//La Famillia Vercetty izlaz iz hq-a
			PlayerInfo[playerid][pInteriorNr] = 0;
			SafeSetPlayerPos(playerid, 1298.6263,-801.5491,84.1406);
			GameTextForPlayer(playerid, "~w~Los Santos",5000,1);
			SafeSetPlayerInterior(playerid, 0);
			SetPlayerFacingAngle(playerid, 1);
		}



//Ovo je sad od ove moje nove org sto sam napravio


else if(IsPlayerInRangeOfPoint(playerid, 1,-49.8668,-269.3626,6.6332))
		{
			//La Familia Vercetti hq
   			if(PlayerInfo[playerid][pMember] == 23 || PlayerInfo[playerid][pLeader] == 23)
			{
				PlayerInfo[playerid][pInteriorNr] = 5;
				SafeSetPlayerInterior(playerid, 5);
				SafeSetPlayerPos(playerid, 1254.3436,-789.3809,1084.0078);
				GameTextForPlayer(playerid, "~w~La Familia Vercetti HQ",5000,1);
				SetPlayerFacingAngle(playerid, 0);
				TogglePlayerControllable(playerid, 0);
				SetTimerEx("UnFreezePlayer",1000,0,"i",playerid);
			}
			else if(hqlock[luclock] == 0)
			{
				PlayerInfo[playerid][pInteriorNr] = 0;
				SafeSetPlayerInterior(playerid, 3);
			    SafeSetPlayerPos(playerid, 1254.3436,-789.3809,1084.0078);
				GameTextForPlayer(playerid, "~w~La Familia Vercetti HQ",5000,1);
				SetPlayerFacingAngle(playerid, 0);
			}
			else
			{
			    GameTextForPlayer(playerid, "~r~Zakljucano",5000,1);
			}
  }
		else if(IsPlayerInRangeOfPoint(playerid, 1, 1252.2848,-789.2078,1084.0078))
		{
			//La Familia Vercetti izlaz                          
			PlayerInfo[playerid][pInteriorNr] = 0;
			SafeSetPlayerPos(playerid, -49.5852,-272.4478,6.5354);
			GameTextForPlayer(playerid, "~w~Los Santos",5000,1);
			SafeSetPlayerInterior(playerid, 0);
			SetPlayerFacingAngle(playerid, 1);
		}

// kako bi ja sad trebao napraviti da me vrati na ovu poziciju  -49.5852,-272.4478,6.5354 a ne na ovu   1298.6263,-801.5491,84.1406 unaprjed hvala :D


Kordinata izlaza od starog interijera ti se mijesa sa novim.
Ako si napravio na novom kordinatu ulaza i izlaza u onaj interijer koji se vec koristi u staroj org
logicno je da ce te stavljati na izlaz poziciju od starog a nece od novog.

Rijecenje je logicki jednostavno zamijeni id od interijera,stavi neki novi..
Ili mijenjaj kordinate...

else if(IsPlayerInRangeOfPoint(playerid, 1,-49.8668,-269.3626,6.6332))
		{
			//La Familia Vercetti hq
   			if(PlayerInfo[playerid][pMember] == 23 || PlayerInfo[playerid][pLeader] == 23)
			{
				PlayerInfo[playerid][pInteriorNr] = 4;
				SafeSetPlayerInterior(playerid, 4);
				SafeSetPlayerPos(playerid, 1254.3436,-789.3809,1084.0078);
				GameTextForPlayer(playerid, "~w~La Familia Vercetti HQ",5000,1);
				SetPlayerFacingAngle(playerid, 0);
				TogglePlayerControllable(playerid, 0);
				SetTimerEx("UnFreezePlayer",1000,0,"i",playerid);
				SetPlayerVirtualWorld(playerid, 0);
			}
			else if(hqlock[luclock] == 0)
			{
				PlayerInfo[playerid][pInteriorNr] = 0;
				SafeSetPlayerInterior(playerid, 3);
			    SafeSetPlayerPos(playerid, 1254.3436,-789.3809,1084.0078);
				GameTextForPlayer(playerid, "~w~La Familia Vercetti HQ",5000,1);
				SetPlayerFacingAngle(playerid, 0);
			}
			else
			{
			    GameTextForPlayer(playerid, "~r~Zakljucano",5000,1);
			}
  }
		else if(IsPlayerInRangeOfPoint(playerid, 1, 1252.2848,-789.2078,1084.0078))
		{
			//La Familia Vercetti izlaz                          //ado hq
			PlayerInfo[playerid][pInteriorNr] = 0;
			SafeSetPlayerPos(playerid, -49.5852,-272.4478,6.5354);
			GameTextForPlayer(playerid, "~w~Los Santos",5000,1);
			SafeSetPlayerInterior(playerid, 0);
			SetPlayerFacingAngle(playerid, 1);
			SetPlayerVirtualWorld(playerid, 0);
		}

Evo ti ukratko objasnjenje kako funkcionise taj ulaz/izlaz iz takvih enterijera pa ces ga lako razumeti
if (IsPlayerInRangeOfPoint(playerid, 1.0, X, Y, Z)) // Ulazak u Enterijer
{
	SetPlayerPos(playerid, X, Y, Z); // Postavlja igraca u Enterijer
}
else if (IsPlayerInRangeOfPoint(playerid, 1.0, X, Y, Z)) // Izlazak iz Enterijera
{
	SetPlayerPos(playerid, X, Y, Z); // Postavlja igraca napolje odakle je i usao
}


Naravno ja sam samo stavio da ga postavlja na te i te kordinate a ti dodas jos po zelji, koji enterijer dali da mu nesto pise kada udje itd...



Molimo te da procitas pravila foruma te da onda otvoris temu po pravilima.

Razlog zakljucavanja:

Treba proci 24 sata kako bi mogao bumpati temu.

Pravila:

Glavna pravila Balkan SA:MP foruma .
Razgovor u vezi PAWN-Skriptanja .