Szerző Téma: Interior  (Megtekintve 1033 alkalommal)

Interior
« Dátum: 2017. június 25. - 17:19:06 »
0 Show voters
Sziasztok. Van 1 olyan problémám hogy interirokat hozok létre, szóval van 1 pickup ha belemész akkor bedob az interiorba ha kimész akkor kidob. Nos csináltam 1 városházát az tökéletesen működik viszont a bolt amit csinálok az csak addig jó ameddig belemegy, ki már nem dob belőle. A pickup meg minden látszik csak ha belemegyek nem dob ki. Valakinek valami ötlete? 
KÓD:
 
 

   if(pickupid == Bolt)
{
   if(IsPlayerInRangeOfPoint(playerid, 10, 1168.5796,-1501.5100,22.7523))
   {
   SetPlayerPos(playerid, -25.884498,-185.868988,1003.546875);
   SetPlayerInterior(playerid, 17);
   SetPlayerVirtualWorld(playerid, 10);
   }
}
if(pickupid == BoltKi)
{
   if(IsPlayerInRangeOfPoint(playerid, 10, -25.9080,-188.1613,1003.5469))
   {
   SetPlayerPos(playerid, 1153.9940,-1766.8225,16.5938);
   SetPlayerInterior(playerid, 0);
   SetPlayerVirtualWorld(playerid, 0);
   SetPlayerFacingAngle(playerid, 359.1601);
   }
}

 
A működő városházáé pedig:
 
 

   if(pickupid == Varoshaza)
{
   if(IsPlayerInRangeOfPoint(playerid, 10, 1153.9661,-1770.3652,16.5938))
   {
   SetPlayerPos(playerid, 386.5259, 173.6381, 1008.3828);
   SetPlayerInterior(playerid, 3);
   SetPlayerVirtualWorld(playerid, 10);
   }
}
if(pickupid == VaroshazaKi)
{
   if(IsPlayerInRangeOfPoint(playerid, 10, 390.7699,173.8098,1008.3828))
   {
   SetPlayerPos(playerid, 1153.9940,-1766.8225,16.5938);
   SetPlayerInterior(playerid, 0);
   SetPlayerVirtualWorld(playerid, 0);
   SetPlayerFacingAngle(playerid, 359.1601);
   }
}

 
 
 
Válaszokat előre is köszönöm!

Interior
« Válasz #1 Dátum: 2017. június 25. - 17:35:52 »
0 Show voters
A pickupok létrehozását is csatold kérlek!

Interior
« Válasz #2 Dátum: 2017. június 25. - 17:38:57 »
0 Show voters

   Bolt = CreatePickup(1318, 1, 1168.5796,-1501.5100,22.7523);
    BoltKi = AddStaticPickup(1318, 1, -25.9080,-188.1613,1003.5469, 10);
    Varoshaza = CreatePickup(1318, 1, 1153.9661,-1770.3652,16.5938);
    VaroshazaKi = AddStaticPickup(1318, 1, 390.7699,173.8098,1008.3828, 10);

 
 

Interior
« Válasz #3 Dátum: 2017. június 25. - 17:48:35 »
0 Show voters
Nos két lehetséges probléma állhat fent.
 
Az első, mivel a kijáratot valamiért StaticPickupként hoztad létre, ( ez azt jelenti, hogy modeltől függően, egyből felvételre kerül, pl. ha fegyver a model, akkor megkapod a fegyvert stb. )  ezért lehet, hogy nem tudja megkülönböztetni, a rendszer a kettő.
 
Azt javaslom használj, CreatePickup-ot mindkét esetben, ugyanis ott is tudsz \"virtualworld\" paramétert megadni.
 
A második probléma az lehet, hogy amikor kidobja az interiorból, a pickuphoz nagyon közel van a \"bejárati\" koordináta, így egyből visszadobja, és így egy végtelen loopként fut végig, ezért rakd egy kicsit odébb, mivel a pickupoknak is van bizonyos rangeje.
 
 
 
Ha ezek közül, nemvált be egyik megoldás sem, akkor, próbálj debuggoltatni, pl. amikor felveszi a BoltKi pickupot, akkor printf(\"\"); függvénnyel írj ki valamit konzolba, és ha az lefut, akkor nem a koordinátákkal van a  gond. Ha ki \"spam\"-eli, akkor a 2. probléma áll fent.
 
 
 
Tanács: Használj Streamer plugint, ugyanis X darab alap pickup után össze fog kavarodni, illetve nem mindig fogja ellátni a funkcióját. Illetve a limit is sokkal kisebb. És ahogyan a nevéből is ered, egy adott stream range-ben mutatja a pickupokat.
 
 
 
Amennyiben, a probléma továbbra is fentáll, írj és segítek tovább!

Interior
« Válasz #4 Dátum: 2017. június 25. - 17:58:20 »
0 Show voters
Megtudnád mondani hogy a CreatePickupba, hol tudok virtualworld paramétert megadni? Ugyan úgy a végén mint a staticpickupnál?

Interior
« Válasz #5 Dátum: 2017. június 25. - 18:00:36 »
0 Show voters
http://wiki.sa-mp.com/wiki/CreatePickup
 

CreatePickup(model, type, Float:X, Float:Y, Float:Z, virtualworld)
 

 
Igen, ugyanúgy a végén.

Interior
« Válasz #6 Dátum: 2017. június 25. - 18:06:38 »
0 Show voters
Nagyon szépen köszönöm. működik :)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal