Teleportálás

Indította GoldTec, 2015. március 08. - 08:57:24

Előző téma - Következő téma

GoldTec

Az lenne a kérdésem, hogy hogyan lehet azt megoldani hogyha valaki elteleportál, akkor is benne maradjon az autóba. Csak mert ha valaki beírja mondjuk, hogy /ls, akkor el is teleportál, de a kocsit maga mögött hagyva.

TengeriMalac

SetPlayerPos helyett SetVehiclePos
csak arra s figyelj, hogy így nem a játékos IDjét kéri, hanem az autójét (GetPlayerVehicleID(playerid))

GoldTec

xD a pawno program kiakadt benne :D

citromhun

Ezzel most nagyon sokat segítettél nekünk.
Másold be azt amit éppen csinálsz!

GoldTec

#4
Itt van egy teleport példának viszont ezzel az a baj, hogy ha kocsiban ülünk akkor a kocsit ott fogja hagyni ahol beírtuk ezt a teleport parancsot.
 
   if (strcmp(\"/ls-air\", cmdtext, true, 10) == 0)
{
SetPlayerPos(playerid,1884.0902,-2543.0671,17.2270);
return 1;
}

Kyosuke_Hiroshi

#5
if (strcmp(\"/ls-air\", cmdtext, true, 10) == 0)
{
SetPlayerPos(playerid,1884.0902,-2543.0671,17.2270);
if(IsPlayerInAnyVehicle(playerid))
{
new kocsi = GetPlayerVehicleID(playerid);
SetVehiclePos(kocsi, 1884.0902,-2543.0671,17.2270);
}
return 1;
}

 
szerintem ez jó bár nem teszteltem.

GoldTec

#6
a kocsit így is maga után hagyja :D

Dupla hozzászólás automatikusan összefûzve. ( 2015. március 08. - 10:23:30 )

pontosabban érdekesen működik mert hol maga mögött hagyja a kocsit hol jön velem a kocsi is viszont ha jön velem a kocsin kívál maradok és beleragadok a kocsiba mert a kocsi külön spawnol :D

Kyosuke_Hiroshi

#7
PutPlayerInVehicle(playerid,kocsi,0);

 
akkor ezt még tedd oda a SetVehiclePos után

Flash

hülyeség az egész..
Tessék:
 
if (strcmp(\"/ls-air\", cmdtext, true, 10) == 0)
{
if(IsPlayerInAnyVehicle(playerid)) {
SetVehiclePos(GetPlayerVehicleID(playerid), 1884.0902,-2543.0671,17.2270);
else SetPlayerPos(playerid,1884.0902,-2543.0671,17.2270);
return 1;
}

GoldTec

#9
ha ezt a kódot használom akkor egy ilye szép hibasorozatot kapok
 
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(470) : error 017: undefined symbol \"dcmd_pm\"
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(580) : error 017: undefined symbol \"IsVehicleSkinCompatible_TF\"
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(617) : warning 217: loose indentation
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(621) : warning 217: loose indentation
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(621) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(625) : warning 217: loose indentation
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(994) : warning 217: loose indentation
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(994) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(994) : error 004: function \"OnPlayerEnterVehicle\" is not implemented
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(999) : warning 225: unreachable code
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(999) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(999) : error 004: function \"OnPlayerExitVehicle\" is not implemented
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1005) : warning 225: unreachable code
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1005) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1005) : error 004: function \"OnPlayerStateChange\" is not implemented
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1010) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1010) : error 004: function \"OnPlayerEnterCheckpoint\" is not implemented
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1017) : warning 225: unreachable code
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1017) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1017) : error 004: function \"OnPlayerLeaveCheckpoint\" is not implemented
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1022) : warning 225: unreachable code
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1022) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1022) : error 004: function \"OnPlayerEnterRaceCheckpoint\" is not implemented
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1027) : warning 225: unreachable code
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1027) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1027) : error 004: function \"OnPlayerLeaveRaceCheckpoint\" is not implemented
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1032) : warning 225: unreachable code
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1032) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1032) : error 004: function \"OnRconCommand\" is not implemented
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1037) : warning 225: unreachable code
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1037) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1037) : error 004: function \"OnPlayerRequestSpawn\" is not implemented
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1042) : warning 225: unreachable code
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1042) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1042) : error 004: function \"OnObjectMoved\" is not implemented
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1047) : warning 225: unreachable code
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1047) : error 029: invalid expression, assumed zero
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1047) : error 004: function \"OnPlayerObjectMoved\" is not implemented
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1052) : warning 225: unreachable code
D:\\Fájlok és programok\\Fájlok\\szervereim\\SAMP\\szerver\\GT szerver\\filterscripts\\GT2.pwn(1052) : error 029: invalid expression, assumed zero
Compilation aborted.Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase
 
26 Errors.

 
ha a régit használom nincs semmi baj

Flash

lehagytam egy kapcsot :$
 
if (strcmp(\"/ls-air\", cmdtext, true, 10) == 0)
{
        if(IsPlayerInAnyVehicle(playerid)) {
                SetVehiclePos(GetPlayerVehicleID(playerid), 1884.0902,-2543.0671,17.2270);
        }else SetPlayerPos(playerid,1884.0902,-2543.0671,17.2270);
        return 1;
}

 
Ha nem rakná kocsiba a játékost akkor PutPlayerInVehicle(playerid, GetPlayerVehicleID(playerid), 0);
ezt rakd setvehiclepos alá.

GoldTec

#11
nem látom a 2 kód között a különbséget :D

Dupla hozzászólás automatikusan összefûzve. ( 2015. Március 08. 12:30:18 )

köszönöm mindenkinek aki segített nekem sikerült a hozzászólásokból összerakni mit is szerettetek volna mondani :/ elnézést kezdő vagyok és rengeteg dolgot nem látok meg benne ha valami nem jó még nagyon ki kell tanulnom
helyes kód:
 
if (strcmp(\"/ls-air\", cmdtext, true, 10) == 0)
{
SetPlayerPos(playerid,1884.0902,-2543.0671,17.2270);
if(IsPlayerInAnyVehicle(playerid))
{
new kocsi = GetPlayerVehicleID(playerid);
SetVehiclePos(kocsi, 1884.0902,-2543.0671,17.2270);
        PutPlayerInVehicle(playerid,kocsi,0);
}
return 1;
}

 
Remélem a későbbiekben rátalálnak mások is erre a fórumra és segít nekik. Csak az ls-air helyére kell beírni a megfelelő parancsot meg a playerid után kell a megfelelő számot lecserélni. Más tutorialokban ott van, hogy hogyan lehet lekérni a pozíció számot.
Még várok 1 órát hogy lássam van e valakinek valami hozzáfűznivalója utána zárom a témát.

Kyosuke_Hiroshi

#12
Flash kihagyott 1 } jelet azért írt ki olyan sok hibát. az ő kódja is ugyan úgy jó.
 
if (strcmp(\"/ls-air\", cmdtext, true, 10) == 0)
{
        if(IsPlayerInAnyVehicle(playerid))
{
   SetVehiclePos(GetPlayerVehicleID(playerid), 1884.0902,-2543.0671,17.2270);
        }
else
{
   SetPlayerPos(playerid,1884.0902,-2543.0671,17.2270);
}
return 1;
}

 
Csak picit rendezettebben ... [Továbbra se teszteltem le de lehet hogy jó]