Szerző Téma: Megtett út  (Megtekintve 875 alkalommal)

Nem elérhető doboka98

  • 1002
    • Profil megtekintése
Megtett út
« Dátum: 2014. Április 11. - 14:03:01 »
0 Show voters
Heló! Keresnék egy kilóméter mérõt. Pontosabban nem speedometer kell, hanem egy mérõ, ami méri a megtett utat az autóval. Tehát megtett út szkriptre van szükségem, kerestem, de nem találtam semmi mûködõt.

Nem elérhető KovaNovik

  • 1121
  • KovaNovik
    • Profil megtekintése
Megtett út
« Válasz #1 Dátum: 2014. Április 11. - 14:53:21 »
0 Show voters
Egyszerû (mondanom :D):
Minden kocsinak csinálj egy változót, amiben a megtett útját számolod. Emellett legyen egy ElozoX, ElozoY, ElozoZ, és egy Tav változója is minden játékosnak. Ezután, OnPlayerUpdatenél, vagy egy timernél nézd meg, hogy mennyire van az elõzõ távolságától.
 

public OnPlayerUpdate(playerid)
{
    if(IsPlayerInAnyVehicle(playerid))
    {
        JarmuAdat[GetPlayerVehicleID(playerid)][MegtettUt] += GetPlayerDistanceFromPoint(playerid, JatekosAdat[playerid][ElozoX], JatekosAdat[playerid][ElozoY], JatekosAdat[playerid][ElozoZ]);
    }
    GetPlayerPos(playerid, JatekosAdat[playerid][ElozoX], JatekosAdat[playerid][ElozoY], JatekosAdat[playerid][ElozoZ]);
}

 
Emellett, hogy a legelsõ updatenél (a biztonság kedvéért, ha kocsiban lenne, bár ezt kétlem), OnPlayerConnectnél is kérdjük le bele a pozícióját.
 

public OnPlayerConnect(playerid)
{
    GetPlayerPos(playerid, JatekosAdat[playerid][ElozoX], JatekosAdat[playerid][ElozoY], JatekosAdat[playerid][ElozoZ]);
}

 
Nos, ezek is lennének a rendszer alapjai, ez még bõven bõvíthetõ, pl. csak akkor sazámolja, ha el van indítva a motorja, stb, de ez már a te rendszered függvénye :)
Mindenesetre sok szerencsét, további jó scriptelést!  :thumbsup:

Nem elérhető doboka98

  • 1002
    • Profil megtekintése
Megtett út
« Válasz #2 Dátum: 2014. Április 11. - 18:24:34 »
0 Show voters
Megoldottam másképp, de köszi! :)

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Megtett út
« Válasz #3 Dátum: 2014. Április 12. - 12:15:09 »
0 Show voters
[mod]Témát zártam![/mod]

Nem elérhető doboka98

  • 1002
    • Profil megtekintése
Megtett út
« Válasz #4 Dátum: 2014. Április 11. - 14:03:01 »
0 Show voters
Heló! Keresnék egy kilóméter mérõt. Pontosabban nem speedometer kell, hanem egy mérõ, ami méri a megtett utat az autóval. Tehát megtett út szkriptre van szükségem, kerestem, de nem találtam semmi mûködõt.

Nem elérhető KovaNovik

  • 1121
  • KovaNovik
    • Profil megtekintése
Megtett út
« Válasz #5 Dátum: 2014. Április 11. - 14:53:21 »
0 Show voters
Egyszerû (mondanom :D):
Minden kocsinak csinálj egy változót, amiben a megtett útját számolod. Emellett legyen egy ElozoX, ElozoY, ElozoZ, és egy Tav változója is minden játékosnak. Ezután, OnPlayerUpdatenél, vagy egy timernél nézd meg, hogy mennyire van az elõzõ távolságától.
 

public OnPlayerUpdate(playerid)
{
    if(IsPlayerInAnyVehicle(playerid))
    {
        JarmuAdat[GetPlayerVehicleID(playerid)][MegtettUt] += GetPlayerDistanceFromPoint(playerid, JatekosAdat[playerid][ElozoX], JatekosAdat[playerid][ElozoY], JatekosAdat[playerid][ElozoZ]);
    }
    GetPlayerPos(playerid, JatekosAdat[playerid][ElozoX], JatekosAdat[playerid][ElozoY], JatekosAdat[playerid][ElozoZ]);
}

 
Emellett, hogy a legelsõ updatenél (a biztonság kedvéért, ha kocsiban lenne, bár ezt kétlem), OnPlayerConnectnél is kérdjük le bele a pozícióját.
 

public OnPlayerConnect(playerid)
{
    GetPlayerPos(playerid, JatekosAdat[playerid][ElozoX], JatekosAdat[playerid][ElozoY], JatekosAdat[playerid][ElozoZ]);
}

 
Nos, ezek is lennének a rendszer alapjai, ez még bõven bõvíthetõ, pl. csak akkor sazámolja, ha el van indítva a motorja, stb, de ez már a te rendszered függvénye :)
Mindenesetre sok szerencsét, további jó scriptelést!  :thumbsup:

Nem elérhető doboka98

  • 1002
    • Profil megtekintése
Megtett út
« Válasz #6 Dátum: 2014. Április 11. - 18:24:34 »
0 Show voters
Megoldottam másképp, de köszi! :)

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Megtett út
« Válasz #7 Dátum: 2014. Április 12. - 12:15:09 »
0 Show voters
[mod]Témát zártam![/mod]

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal