Beiträge von TutNichts

    dcmd_kick(playerid, params[])
    {
    new GiveID, Grund[128];
    if(Spieler[playerid][admin] >= 2)
    {
    if(sscanf(params, "us", GiveID, Grund))
    {
    return SendClientMessage(playerid, COLOR_RED, "{FFA200}Benutzung: {26FF00}/kick [Spielerid] [Grund]");
    }
    if(!IsPlayerConnected(GiveID))
    {
    return SendClientMessage(playerid, COLOR_RED, "{FFA200}Es wurde kein Spieler mit dieser {26FF00}ID{FFA200} gefunden!");
    }
    new Text1[128], Text2[128], Text3[128], GiveName[MAX_PLAYER_NAME], AdminName[MAX_PLAYER_NAME];
    GetPlayerName(GiveID, GiveName, sizeof(GiveName));
    GetPlayerName(playerid, AdminName, sizeof(AdminName));
    format(Text1, sizeof(Text1), "{FFA200}*Admin {26FF00}%s{FFA200}(%d) hat {26FF00}%s{FFA200}(%d) vom Server gekickt!", AdminName, playerid, GiveName, GiveID);
    format(Text2, sizeof(Text2), "{26FF00}[Grund]{FFA200} - %s", Grund);
    SendClientMessageToAll(COLOR_ORANGE, Text1);
    SendClientMessageToAll(COLOR_ORANGE, Text2);
    SendClientMessage(GiveID, COLOR_ORANGE, "{FFA200}Sie wurden vom Server {26FF00}gekickt{FFA200}!");
    format(Text3,sizeof(Text3), "{26FF00}[Grund]{FFA200} - %s", /*...*/);
    SendClientMessage(GiveID, COLOR_ORANGE,Text3);
    Kick(GiveID);
    } else SendClientMessage(playerid, COLOR_RED, "{FFA200}Sie sind nicht berechtigt den Befehl ({26FF00}/kick{FFA200}) zubenutzen!");
    return 1;
    }

    ocmd:kick(playerid,params[])
    {
    new pID, string[64];
    if(sscanf(params,"us",pID,string)) return SCM(playerid,WEIS,"Benutze: /kick [playerid] [Grund]");
    if(!IsPlayerConnected(pID)) return SCM(playerid,WEIS,"Der Spieler kann nicht gefunden werden!");
    if(SpielerInfo[playerid][admin] >= 1)
    {
    new SpielerName[MAX_PLAYER_NAME], string2[64];
    GetPlayerName(pID,SpielerName,sizeof(SpielerName));
    format(string2,sizeof(string2),"AdmCmd: %s wurde vom Server gekickt! Grund: %s",SpielerName, string);
    SendClientMessageToAll(ROT,string2);
    Kick(pID);
    return 1;
    }
    else
    {
    SCM(playerid,ROT,AFEHLER);
    }
    return 1;
    }


    u = PlayerID
    d = Zahlenwert


    Ich verstan das "%s hat von Officer %s ein Fahrverbot bekommen" eher als SendClientMessageToAll ... ansonsten natürlich, zwei strings, formatieren und den Spieler & Officer (pID & playerid) senden, fertig.

    Hallo,
    das grundlegende des Textdraws gehört in OnGameModeInit.
    Das aufrufen des Textdraws kann verschieden geschehen, per CMD oder OnVehicleEnter ect.
    Sprich:
    public OnGameModeInit()
    {
    TXT[playerid] = TextDrawCreate(500 ,439 , "Km/h:---");
    TextDrawFont(TXT[playerid] , 1);
    TextDrawLetterSize(TXT[playerid] , 0.9, 6.3);
    TextDrawColor(TXT[playerid] , 0x000000FF);
    TextDrawSetOutline(TXT[playerid] , false);
    TextDrawSetProportional(TXT[playerid] , true);
    TextDrawSetShadow(TXT[playerid] , 1);
    return 1;
    }


    Zudem ist an einem Script keinerlei TextDrawSetString zu finden, was daraufhin den Textdraw auf die aktuelle Geschwindigkeit nicht updatet, dafür nutze am besten einen Timer (http://wiki.sa-mp.com/wiki/SetTimer). Diesen würde ich ebenfalls in OnGameModeInit packen und das ganze dann per Schleife aufrufen in diesem public sollte folgendes für eine vernünpftigen Tacho vorhanden sein:

    • IsPlayerInAnyVehicle-Abfrage
    • For-Schleife
    • TextDrawSetString


    Bei weiteren Fragen stehe ich zur Verfügung.

    Hallo,
    ocmd:verbot(playerid, params[])
    {
    new pID;
    if(sscanf(params, "u", pID))
    return SendClientMessage(playerid, Farbe, "Benutzung: /verbot [ID]");
    if(IsPlayerInTeam(playerid, 1))
    {
    new str[128], Officer[MAX_PLAYER_NAME], Spieler[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Officer, sizeof(Officer));
    GetPlayerName(pID, Spieler, sizeof(Spieler));
    PlayerInfo[pID][pFahrverbot] = 1;
    format(str, sizeof(str), "Officer %s hat %s ein Verbot ausgesprochen!", Officer, Spieler);
    SendClientMessageToAll(Farbe, str);
    }
    return 1;
    }


    Ungetestet, viel Spaß. ;)

    Bitte merke dir folgendes für OnPlayerDeath:

    • playerid = Spieler der getötet worden ist
    • killerid = Der Mörder der playerid


    Dementsprechend:
    SendClientMessage(playerid,COLOR_YELLOW,"TOT");


    Grüße.

    Hallo,
    etwas falsch ist dein Code schon ... hier mal meiner:
    new vehicleid = GetPlayerVehicleID(playerid);
    SetVehiclePos(vehicleid,135.2437,1935.2457,19.2657);
    PutPlayerInVehicle(playerid,vehicleid,0);


    Müsste funktionieren ... wenn nicht, sag bescheid. ;)

    Hallo,
    den oben genannten Error würde ich einfach oben im Script wie folgt definieren, dann sollte es gehen:
    new MoneySpams[MAX_PLAYERS];


    Ich hoffe ich konnte helfen.

    Hallo,
    if (PlayerInfo[killerid][pMember] == 5 || PlayerInfo[killerid][pLeader] == 5)
    {
    if(PlayerInfo[playerid][lcnbl]==1)
    {
    new giveplayer[MAX_PLAYER_NAME], killer[MAX_PLAYER_NAME];
    new killstr[256];
    GetPlayerName(playerid,giveplayer,sizeof(giveplayer));
    GetPlayerName(killerid,killer,sizeof(killer));
    format(killstr,sizeof(killstr),"%s hat %s getötet",killer,giveplayer);
    SendFamilyMessage(5, COLOR_YELLOW, killstr);
    PlayerInfo[playerid][lcnbl] = 0; // giveplayer ist ein String der den Namen beinhaltet, playerid ist hier richtig
    return 1;
    }
    }


    Dieser Code müsste funktionieren.

    public OnPlayerCommandText(playerid, cmdtext[])
    {
    new vehicleid;
    vehicleid = GetPlayerVehicleID(playerid);
    if(strcmp(cmdtext,"/repair",true)==0)
    {
    if(isPlayerInFrakt(playerid,5))
    {
    SetVehicleHealth(vehicleid, 1000.0);
    SendClientMessage(playerid,0xFFFF00FF,"Du hast das Auto repariert!");
    return 1;
    }
    }
    ? :D

    new vehicle;
    vehicle = GetPlayerVehicleID(playerid);


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    new vehicleid;
    vehicleid = GetPlayerVehicleID(playerid);
    if(strcmp(cmdtext,"/repair",true)==0)
    {
    if(isPlayerInFrakt(playerid,5))
    {
    SetVehicleHealth(vehicleid, 1000.0);
    SendClientMessage(playerid,0xFFFF00FF,"Du hast das Auto repariert!");
    return 1;
    }
    }

    Geh jetzt essen, dann mach ich das und editiere es dir hier rein.


    Arbeite mit:
    TogglePlayerControllable
    IsPlayerInRangeOfPoint
    GetPlayerPos


    Das ist eig. das wichtigste.