Beiträge von KeksOfDeath

    Wie denn, wenn du schon vorher returnst?
    if(strcmp("/enter", cmdtext, true) == 0)
    if(gTeam[playerid] == TEAM_GROVE)
    {
    if(IsPlayerConnected(playerid))
    {
    if (PlayerToPoint(3.0, playerid,2523.2729,-1679.2501,15.4970))// wo man /enter eingeben kann, das 3.0 ist der Radius


    {
    SetPlayerPos(playerid,2451.1497,-1685.2985,1013.5078);//Position wo der Spieler hinteleportiert wird bei /enter
    SetPlayerFacingAngle( playerid, 180 ); // Dreh grad
    SetPlayerInterior(playerid,2);// Interoir(nur bei selbst gemachten Objekten)
    GameTextForPlayer(playerid, "~w~ Willkommen in der GroveStreet Base", 5000, 1);// Text die kommt wenn man zu dem Punkt Teleoprtiert wird
    }}}
    else <------------------------ genau ab da
    {
    SendClientMessage(playerid,ROT,"Du bist kein GS Mitglied!");
    } <---------------------------- bis da!!!! wo soll ich das genau einfügen?
    return 1;
    }

    //ganz nach oben:
    new kills[MAX_PLAYERS];
    //OnPlayerDeath:
    if(killerid!=INVALID_PLAYER_ID) {
    kills[killerid]++; }
    //dann kann man es z.b. in einem cmd abfragen:
    if(strcmp(cmdtext,"/bla",true)==0) {
    new s[20];
    format(s,sizeof(s),"Kills: %d",kills[playerid]);
    SendClientMessage(playerid,FARBE,s);
    return 1;
    }
    PS: Kann dir zwar helfen, das liegt aber auch mehr an deinen Fragen, als an meinem "Wissen". Die Fragen könnte jeder 2te hier beantworten

    AddPlayerClass(0,266.5557,-1331.0865,53.3383,309.1194,0,0,0,0,0,0);
    Skinid (ID 0 wär z.b. CJ)
    x-Float: Längengrad (kann auch Breitengrad sein, bin mich nicht sicher)
    y-Float: Breitengrad (kann auch Längengrad sein, bin mir nicht sicher)
    z-Float: Höhe
    Waffe1, Munition für Waffe 1
    Waffe2, Munition für Waffe 2
    Waffe3, Munition für Waffe 3
    Du brauchst dafür die x, y und z-Floats

    Indem du den alten abspeicherst (ganz nach oben: "new altskin[MAX_PLAYERS];") und dann setzt das halt auf die Skinid ("altskin[playerid]=GetPlayerSkin(playerid);")

    ---------------------------------------------------------------------------------

    Spoiler anzeigen

    Grün
    //ganz nach oben:
    new cpzahler[MAX_PLAYERS];
    //da hin, wo dus bruachst:
    cpzahler[playerid]=1;
    SetPlayerCheckpoint(playerid,....);
    //OnPlayerEnterCheckpoint:
    if(cpzahler[playerid]==1) {
    //...
    }

    ---------------------------------------------------------------------------------
    Spoiler anzeigen

    Blau
    //ganz nach oben:
    new skinpickup;
    //OnGameModeInit:
    skinpickup=AddStaticPickup(....);
    //OnPlayerPickupPickup:
    if(pickupid==skinpickup) {
    SetPlayerSkin(playerid,...); }

    ---------------------------------------------------------------------------------
    Spoiler anzeigen

    Rot
    //ganz nach oben:
    forward payday();
    //OnGameModeInit:
    SetTimer("payday",3600000,1);//die 3600000 sind in millisekunden, das dürfte eine stunde sein, wenn ich mich nicht verzählt habe, bei den nullen
    //ganz anch unten:
    public payday() {
    for(new i=0; i<MAX_PLAYERS; i++) {
    if(IsPlayerConnected(i)) {
    GivePlayerMoney(i,...); }}
    return 1;
    }

    "ABroadCast(COLOR_YELLOW,string,1);" dürft für die meisten ein Error ergeben
    "BanLog(string);" dürft ebenfalls für die meisten ein Error ergeben
    Und zur "256" sag ich ma nix
    PS: Waffen wie z.b die ID 28 kann man im Ammu Nation kaufen ---> sie kaufen sich die Waffe und werden gebannt

    if(strcmp(cmdtext, "/o", true, 2) == 0 || strcmp(cmdtext, "/ooc", true, 4) == 0)
    {
    new ding;
    if(cmdtext[3]=='o') { ding=2; }
    if(strlen(cmdtext[3+ding]) )
    {
    new pname[MAX_PLAYER_NAME];
    new string[128];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s sagt: %s ))", pname, cmdtext[3+ding]);
    GameTextForAll(string, 10000, 5);
    }
    return 1;
    }

    Kleiner Verbesserungsvorschlag:
    //ganz nach oben:
    #define MaxMienen 10
    new minescharf[MaxMienen], miene[MaxMienen];
    forward scharfmachen(id);
    //als cmd:
    if (strcmp("/mine", cmdtext, true) == 0)
    {
    if (IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,blau," Du kannst eine Mine nur ausßerhalb eines Fahrzeuges legen");
    for(new i=0; i<MaxMienen; i++) {
    if(mienescharf[i]==0) {
    mienescharf[i]=2;
    SendClientMessage(playerid,blau,"In 5 Sekunden wird die Mine scharf gemacht.");

    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    miene[i] = CreatePickup(1654,3,x,y,z-0.5);
    SetTimerEx("scharfmachen", 5000, 0,"d",i);
    i=MaxMienen; }}
    return 1;
    }
    //ganz nach unten:
    public scharfmachen(id) {
    mienescharf[id]=1;
    return 1;
    }
    //erklärt sich von selbst^^:
    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    for(new i=0; i<MaxMienen; i++) {
    if(pickupid == miene[i])
    {
    if(mienescharf[i] == 1)
    {
    if(!IsPlayerInAnyVehicle(playerid))
    {
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    CreateExplosion(x,y,z+5,2,10);
    DestroyPickup(miene[i]);
    mienescharf[i]=0;
    i=MaxMienen; }
    }
    }
    }
    return 1;
    }
    So kannste bis zu 400 Mienen legen, wenn du das "#define MaxMienen" mit veränderst

    Mach in dem public "OnPlayerPrivmsg" aus dem "return 1;" ein "return 0;"
    Und darüber:
    if(!strlen(text)) return SendClientMessage(playerid,FARBE,"/pm ID Text");
    if(recieverid==playerid) return SendClientMessage(playerid,FARBE,"Du kannst keine pm an dich selbst senden");
    if(IsPlayerConnected(recieverid)) {
    new s[128], name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(s,sizeof(s),"%s sagt dir: %s",name,text);
    SendClientMessage(recieverid,FARBE,s);
    GetPlayerName(recieverid,name,sizeof(name));
    format(s,sizeof(s),"Du sagst %s: %s",name,text);
    SendClientMessage(playerid,FARBE,s); }
    else { SendClientMessage(playerid,FARBE,"ID nicht vergeben"); }

    @ Weed: Nein^^
    @ Blackfox: Augen auf, das war nicht seine Frage
    @ 8D.:
    dcmd(teleport,8,cmdtext);
    //-------------
    dcmd_teleport(playerid,params[]) {
    new Float:x, Float:y, Float:z;
    if(sscanf(params,"fff",x,y,z)) return SendClientMessage(playerid,FARBE,"/teleport x y z");
    SetPlayerPos(playerid,x,y,z);
    return 1;
    }
    Als dcmd & sscanf Form

    Hhhmmmm... das ist schlecht^^
    dann mach ma:
    //ganz nach oben:
    new kills[MAX_PLAYERS], tode[MAX_PLAYERS];
    //OnPlayerDeath:
    tode[playerid]++;
    if(killerid!=INVALID_PLAYER_ID) {
    kills[killerid]++; }
    //register:
    dini_IntSet(string, "kills", kills[playerid]);
    dini_IntSet(string, "tode", tode[playerid]);
    //login:
    kills[playerid]=dini_Int(string,"kills");
    tode[playerid]=dini_Int(string,"tode");
    Hast du bei OnPlayerDisconnect eig auch noch ein Autosave? Sonst bringt das ja alles nicht sehr viel, weils nicht gespeichert wird^^

    if(strcmp(cmdtext,"/hilfe",true,6)==0) {
    if(!strlen(cmdtext[7])) return SendClientMessage(playeird,FARBE,"/hilfe cheater oder /hilfe allgemein");
    if(strcmp(cmdtext[7],"cheater",true)==0) {
    //...
    else if(strcmp(cmdtext[7],"allgemien",true)==0) {
    //...

    dini_IntSet(string, "team", gTeam[playerid]);
    dini_IntSet(string, "leader", gLeader[playerid]);
    //------------------------
    //login:
    gTeam[playerid]=dini_Int(string,"team");
    gLeader[playerid]=dini_Int(string,"leader");
    Zu den Kills/Deaths: Kann man so schlecht machen, du musst die ja auch zählen^^
    Mit welcher Variable zählst du sie denn, wenn du sie zählst?