Beiträge von TutNichts

    Kann es eigtl. gar nicht, mskamilor...
    Ich greife mal auf diese Regel zurück, hoffe ich habe die richtig verstanden, wenn nicht, bitte ich einen Moderator mein Post zu löschen:

    Zitat

    Links zur eigenen Seite sind nur dann erlaubt, wenn es zur direkten Klärung der Frage dient.


    http://easy-scripting.net/index.php?page=Thread&threadID=28
    Dort findest du eine genaue Auflistung der Parameter und kannst dementsprechend auch entnehmen das "u" richtig ist. ;)

    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.