/tv Problem

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
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
  • Hallo liebe Brotfische!
    Ich habe mich an ein /tv [id] Befehl gemacht. Klappt auch, bis der Spieler in ein Fahrzeug steigt...
    Dann zommt die Camera extrem nah ran und man sieht nichts mehr. Bei Motorrädern ins das nicht so schlimm, doch in nem Auto sieht man quazi nur den Kopf.


    Code:

    ocmd:tv(playerid,params[])
    {
    if(pInfo[playerid][Adminlevel] >= 2)
    {
    new pID;
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,COLOR_YELLOW,"Benutze: /Tv <Spielername/ID>");
    {
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,COLOR_RED,"Dieser Spieler ist nicht online!");
    TogglePlayerSpectating(playerid,1);
    PlayerSpectatePlayer(playerid,pID);
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht die nötigen Rechte für diesen Befehl!");
    return 1;
    }
    }

  • Würde es so gehen?
    Kann es grade nicht probieren, is grad Niemand zum testen da. :)



    ocmd:tv(playerid,params[])
    {
    if(pInfo[playerid][Adminlevel] >= 2)
    {
    new pID;
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,COLOR_YELLOW,"Benutze: /Tv <Spielername/ID>");
    {
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,COLOR_RED,"Dieser Spieler ist nicht online!");
    TogglePlayerSpectating(playerid,1);
    PlayerSpectatePlayer(playerid,pID);
    if(IsPlayerInAnyVehicle(pID))return PlayerSpectateVehicle(pID,GetPlayerVehicleID(pID));
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht die nötigen Rechte für diesen Befehl!");
    return 1;
    }
    }

  • Nein.


    Mach's so:



    new spectator[MAX_PLAYERS];


    ...


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    for (new i = 0; i < MAX_PLAYERS; i++)
    {
    if (IsPlayerConnected(i))
    {
    if (spectator[i] == playerid)
    {
    ... // Spectating auf Auto setzen
    }
    }
    }
    }


    Beim Exit mussts dann natürlich wieder zurücksetzen.
    Beim Command dann einfach spectator[playerid] auf die vicitm ID festlegen.


    #Brotfischbaron


    In schā'a llāh