Beiträge von BlackFoX

    Du kannst dazu die PlayerToPoint Function verwenden is ganz leicht



    // Player To Point Deklaration
    forward PlayerToPoint(Float:radi, playerid, Float:xd, Float:yd, Float:zd);
    // Kommando


    new cmd[256];
    new tmp[256];
    new idx;
    cmd = strtok(cmdtext, idx);
    if(strcmp(cmd, "/heal", true) == 0)
    {
    new health;
    new Player;
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    // Fehlermeldung
    return 1;
    }
    player = strval(tmp);
    new Float:px,Float:py,Float:pz;
    GetPlayerPos(player,px,py,pz);
    if(!PlayerToPoint(6,player,px,py,pz)) { return 1; }
    SetPlayerHealth(playerid,100);
    return 1;
    }


    // Funktion
    public PlayerToPoint(Float:radi, playerid, Float:xd, Float:yd, Float:zd)
    {
    new Float:oldposx, Float:oldposy, Float:oldposz;
    new Float:tempposx, Float:tempposy, Float:tempposz;
    GetPlayerPos(playerid, oldposx, oldposy, oldposz);
    tempposx = (oldposx -xd);
    tempposy = (oldposy -yd);
    tempposz = (oldposz -zd);
    //printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
    if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
    {
    return 1;
    }
    return 0;
    }

    Ich weiss nich ob das Weiterhilft aber ich denk sowas sollte gehen



    if (strcmp(cmdtext, "/kamera", true) == 0)
    {
    TogglePlayerControllable(playerid, 0);
    SetPlayerCameraPos(playerid, 927.6465,-693.2251,117.4456);
    SetPlayerCameraLookAt(playerid, 933.9771,-693.8071,119.9069);
    return 1;
    }


    Erst Spieler Koordinaten Speichern dann haste die Kamera Position , danach nen sich nen bissl nach vorne bewegen und nochmal /save blickwinkel


    Ich denk ma so sollte es klappen ^^

    Also bei einem Fahrzeug kannst du den Pickuptyp 14 nehmen , müsste schon passen


    So du kannst das Auto Freezen indem du nen Timer erstellst und den halt auf die Warte Zeit stellst



    new bool:PlayerInRepair[MAX_PLAYERS];


    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if (pickupid == repairpickup)
    {
    SendClientMessage(playerid, 0xFFFFFFFF, "Repariert.");
    SetVehicleHealth(1,1000.0);
    TogglePlayerControllable(playerid,0);
    PlayerInRepair[playerid] = true;
    SetTimer("FreezeTimer",2000,0);
    }
    return 1;
    }




    public FreezeTimer()
    {
    for(new i = 0; i <= MAX_PLAYERS; i++)
    {
    if(PlayerInRepair[i] == true)
    {
    TogglePlayerControllable(i,1);
    PlayerInRepair[playerid] = false;
    // Nachricht
    }
    }
    }


    So ungefähr

    Das mit den Spieler Farben könntest du ja mal so versuchen



    public OnPlayerText(playerid, text[])
    {
    new PlayerName[256];
    GetPlayerName(playerid,PlayerName,sizeof(PlayerName));
    new formatP[256];
    format(formatP,sizeof(formatP),"%s: %s",PlayerName,text);
    SendClientMessageToAll(COLOR_GREEN,formatP);
    return 0;
    }