Jobs erstellen und Befehle Scripten

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
  • public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/killme", cmdtext, true, 10) == 0)
    {
    SetPlayerHealth(playerid,0.0);
    SendClientMessage(playerid,0xFFFFFFF,"Du hast Dich getötet!");
    return 1;
    }
    return 0;
    }


    Nur z.B. :D

  • Man scriptet sie ?-_-
    Da mal ein Detective Job teil aus GF ausgeschnitten damit du endlich weist wie man Jobs macht
    if(strcmp(cmd, "/find", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pJob] != 1)
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist kein Detektiv!");
    return 1;
    }
    if(PlayerOnMission[playerid] > 0)
    {
    SendClientMessage(playerid, COLOR_GREY, "Wдhrend einer Mission kann dieser Befehl nicht verwendet werden!");
    return 1;
    }
    if(UsedFind[playerid] != 0 && PlayerInfo[playerid][pDetSkill] < 401)
    {
    SendClientMessage(playerid, COLOR_GREY, "Du hast bereits jemanden gesucht! Warte 2 Minuten!");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Verwendung: /find [spielerid/teildesnamens]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selbst suchen!"); return 1; }
    new points;
    new level = PlayerInfo[playerid][pDetSkill];
    if(level >= 0 && level <= 50)
    { points = 4; }
    else if(level >= 51 && level <= 100)
    { points = 6; }
    else if(level >= 101 && level <= 200)
    { points = 8; }
    else if(level >= 201 && level <= 400)
    { points = 10; }
    else if(level >= 401)
    { points = 12; }
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    new Float:X,Float:Y,Float:Z;
    GetPlayerPos(giveplayerid, X,Y,Z);
    SetPlayerCheckpoint(playerid, X,Y,Z, 6);
    FindTime[playerid] = 1;
    FindTimePoints[playerid] = points;
    PlayerInfo[playerid][pDetSkill] ++;
    UsedFind[playerid] = 1;
    if(PlayerInfo[playerid][pDetSkill] == 50)
    { SendClientMessage(playerid, COLOR_YELLOW, "* Dein Detective Skill ist nun Level 2."); }
    else if(PlayerInfo[playerid][pDetSkill] == 100)
    { SendClientMessage(playerid, COLOR_YELLOW, "* Dein Detective Skill ist nun Level 3."); }
    else if(PlayerInfo[playerid][pDetSkill] == 200)
    { SendClientMessage(playerid, COLOR_YELLOW, "* Dein Detective Skill ist nun Level 4."); }
    else if(PlayerInfo[playerid][pDetSkill] == 400)
    { SendClientMessage(playerid, COLOR_YELLOW, "* Dein Detective Skill ist nun Level 5."); }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Falsche/r Name /ID!");
    }
    }
    return 1;
    }

  • Varriable mit Parameter erstellen
    Varriable mit Parameter speichern
    Varriable mit Parameter abfragen
    z.b.
    new job[MAX_PLAYERS];
    abfragen:
    if(job[playerid] == 1)
    {
    Wert setzen:
    job[playerid] = 1;
    oder mit nem enum:


    enum PData
    {
    job,
    usw,
    }
    new SpielerData[MAX_PLAYERS][PData];
    abfragen:
    if(SpielerData[playerid][job] == 1)
    {
    Wert setzen:
    SpielerData[playerid][job] = 1;