Autos Teleportieren | Bin am verzweifeln :(

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hey Leute folgendes Problem,


    Ich habe diesen Code


    if (strcmp(cmdtext, "/lv", true, 10) == 0)
    {
    SetPlayerPos(playerid,1318.6710,1258.5607,10.8203);


    format(string,sizeof(string),"%s befindet sich auf /lv!",PlayerName(playerid));
    SendClientMessageToAll(COLOR_RED,string);
    return 1;
    }


    und wollte den nun so umschreiben das ich an den Punkt gespawnt werde wenn ich im auto sitze.. Also für ohne Auto ist die Pos anderst, als die mit auto..


    Nur ich check es nich hab mich schon durchs wiki gekämpft aber leider ohne erfolg :(


    Hoffe das mir jemand weiterhelfen kann



    MFG

  • Also wennsch den so reinhaue:
    if (strcmp(cmdtext, "/lv", true, 10) == 0)
    {
    SetPlayerPos(playerid,1318.6710,1258.5607,10.8203);
    if PlayerIsInVehicle
    {
    SetVehiclePos(veh,1288.1506,1215.7238,10.5474);


    format(string,sizeof(string),"%s befindet sich auf /lv!",PlayerName(playerid));
    SendClientMessageToAll(COLOR_RED,string);
    return 1;
    }



    Bekomm ich 2 Errors:
    D:\Dokumente und Einstellungen\Administrator\Desktop\stunt.pwn(2425) : error 017: undefined symbol "PlayerIsInVehicle"
    D:\Dokumente und Einstellungen\Administrator\Desktop\stunt.pwn(2427) : error 017: undefined symbol "veh"


    Wenn ich sie mit new definiere bekomm ich:
    D:\Dokumente und Einstellungen\Administrator\Desktop\stunt.pwn(2428) : error 028: invalid subscript (not an array or too many subscripts): "PlayerIsInVehicle"

  • if (strcmp(cmdtext, "/lv", true, 10) == 0)
    {


    if(IsPlayerInAnyVehicle(playerid)) // Überprüft ob der Spieler überhaupt in einem Fahrzeug sitzt
    {
    new veh = GetPlayerVehicleID(playerid); // Holt die ID des Fahrzeuges in die Variable "veh"
    SetVehiclePos(veh,1288.1506,1215.7238,10.5474); // Setzt das Fahrzeug "veh" zu deiner Position
    }


    else // Wenn er nicht in einem Fahrzeug ist
    {
    SetPlayerPos(playerid,1318.6710,1258.5607,10.8203);
    }


    format(string,sizeof(string),"%s befindet sich auf /lv!",PlayerName(playerid));
    SendClientMessageToAll(COLOR_RED,string);
    return 1;
    }

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

  • Erm
    Wenn er im AUTO sitzt, wird nur das AUTO teleportiert.
    if (strcmp(cmdtext, "/lv", true, 10) == 0)
    {


    if(IsPlayerInAnyVehicle(playerid)) // Überprüft ob der Spieler überhaupt in einem Fahrzeug sitzt
    {
    new veh = GetPlayerVehicleID(playerid); // Holt die ID des Fahrzeuges in die Variable "veh"
    SetVehiclePos(veh,1288.1506,1215.7238,10.5474); // Setzt das Fahrzeug "veh" zu deiner Position
    SetPlayerPos(playerid,1318.6710,1258.5607,10.8203);
    }


    else // Wenn er nicht in einem Fahrzeug ist
    {
    SetPlayerPos(playerid,1318.6710,1258.5607,10.8203);
    }


    format(string,sizeof(string),"%s befindet sich auf /lv!",PlayerName(playerid));
    SendClientMessageToAll(COLOR_RED,string);
    return 1;
    }


    so ists besser.

  • So sollte es wahrscheinlich nicht sein, denn dann werden Fahrzeug und Spieler zu anderen Punkten teleportiert.
    Am leichtesten würde es wahrscheinlich so gehen
    if (strcmp(cmdtext, "/lv", true, 10) == 0)
    {


    if(IsPlayerInAnyVehicle(playerid)) // Überprüft ob der Spieler überhaupt in einem Fahrzeug sitzt
    {
    new veh = GetPlayerVehicleID(playerid); // Holt die ID des Fahrzeuges in die Variable "veh"
    SetVehiclePos(veh,1288.1506,1215.7238,10.5474); // Setzt das Fahrzeug "veh" zu deiner Position
    PutPlayerInVehicle(playerid,veh,0); // Setzt den Spieler als Fahrer in das Fahrzeug
    }


    else // Wenn er nicht in einem Fahrzeug ist
    {
    SetPlayerPos(playerid,1318.6710,1258.5607,10.8203);
    }


    format(string,sizeof(string),"%s befindet sich auf /lv!",PlayerName(playerid));
    SendClientMessageToAll(COLOR_RED,string);
    return 1;
    }

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

  • Wollte er doch.
    Er hat gesagt wenn man in einem Fahrzeug ist soll man woanders hin teleportiert werden, als wenn man zu Fuß ist.


    Mit freundlichen Grüßen
    Padarom

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

  • Padarom hat mich richtig verstanden ^^ wollte das so, damit man nicht von nem auto erschlagen wird wenn man i-wo steht ^^


    So nur nun habsch ein prob..
    Habe den befehl so übernommen:
    if (strcmp(cmdtext, "/lv", true, 10) == 0)
    if(IsPlayerInAnyVehicle(playerid)) // Überprüft ob der Spieler überhaupt in einem Fahrzeug sitzt
    {
    new veh = GetPlayerVehicleID(playerid); // Holt die ID des Fahrzeuges in die Variable "veh"
    SetVehiclePos(veh,1288.1506,1215.7238,10.5474); // Setzt das Fahrzeug "veh" zu deiner Position
    PutPlayerInVehicle(playerid,veh,0); // Setzt den Spieler als Fahrer in das Fahrzeug
    }
    else // Wenn er nicht in einem Fahrzeug ist
    {
    SetPlayerPos(playerid,1318.6710,1258.5607,10.8203);
    format(string,sizeof(string),"%s befindet sich auf /lv!",PlayerName(playerid));
    SendClientMessageToAll(COLOR_RED,string);
    return 1;
    }


    Wenn ich den Befehl eingebe, werde ich zwar hingetelt, sowohl auto als auch ohne.. nur bei dem mit auto spwan zeigt er mir an: Server:Unknown Command :(


    Wie bekomm ich des weg??

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Unter PutPlayerInVehicle "return 1;" einfügen. (ohne "")

    mfg RedDragon 8)


    Was ist GFKD?


    Ein revolutionärer Clan, dessen Eröffnung kurz bevorsteht.
    Mehr Informationen folgen bald.

  • if (strcmp(cmdtext, "/lv", true) == 0)
    {
    if (IsPlayerInAnyVehicle(playerid))
    {
    SetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
    SetVehicleZAngle(GetPlayerVehicleID(playerid),kameraa;
    LinkVehicleToInterior(GetPlayerVehicleID(playerid), 0);
    }
    if (!IsPlayerInAnyVehicle(playerid))
    {
    SetPlayerPos(playerid,x,y,z);
    SetPlayerFacingAngle(playerid, kamera;
    SetPlayerInterior(playerid, 0);
    }
    SendClientMessage(playerid,0x00FF0096, " Du befindest dich auf LV!");
    }
    }


    Das sollte klappen, du wirst sobald du /lv bist dahin geportet, egal ob du im auto sitzt oder zu fuß.

    Einmal editiert, zuletzt von Simon ()