Beiträge von Kaliber

    In diesem Thread sollen bitte nur Verbesserungsvorschläge, Bugs und neue Ideen gepostet werden.


    Habe es mir noch nicht genau angeschaut, aber ein Bug ist mir direkt aufgefallen, die API mit Facebook funktioniert nicht :D


    //Edit: Entweder ist deine Seite offline..oder der Bug hat sie crashen lassen :D


    mfg. :thumbup:

    Aber die Inkludierung von der samp include brauchst du doch eigendlich nicht, oder täusche ich mich da?


    Nun, sicher ist sicher ;)


    #include <a_samp>
    #include <KindVehicle>
    Das würde ohne Fehler funktionieren, da könnte man auch das Includieren weg lassen, da man es ja im Gamemode schon macht.


    Aber folgendes:


    #include <KindVehicle>
    #include <a_samp>
    Das würde zu Fehlern kommen, da auf Funktionen zugegriffen werden, die in der a_samp Include sind ;)


    Aus diesem Grund ist es halt sicherer, dass es auch ja nicht zu Fehlern kommt und durch die Directives in der a_samp Include kann sie auch nicht 2x includiert werden ;)


    Aus diesem Grund ist das besser so, wie er es gemacht hat ;)


    //Edit:
    Was er noch machen sollte wäre sowas:
    #if defined _KindaVehicle
    #endinput
    #endif
    #define _KinaVehicle
    Damit sein Include nicht 2x includiert werden kann ;)


    mfg. :thumbup:

    "UPDATE Spielerautos SET X='%f',Y='%f',Z='%f',ROTATION='%f' WHERE DB_ID='%i'"


    Diese Zeile verursacht den Fehler ;)


    Schreibe sie mal so:


    format(query,sizeof(query),"UPDATE `Spielerautos` SET `X`='%f',`Y`='%f',`Z`='%f',`ROTATION`='%f' WHERE `DB_ID`='%i'",cInfo[i][carx],cInfo[i][cary],cInfo[i][carz],cInfo[i][carrota],cInfo[i][DB_ID]);


    und wenn das nichts hilft, printe dir mal, was daraus kommt...überprüfe deine Werte und schau ob das auch alles wirklich existiert ;)


    mfg. :thumbup:

    Bisschen was falsch kann das sein ?


    Ja...mach es so:


    new bool:d_response; //Das ist eine globale Variable
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid == DIALOG_SPIELAUSWAHL) {
    if(!response) return 1;
    switch(listitem) {
    case 0: //Hier Code, aber kein return!
    case 1: //Hier Code, aber kein return!
    case 2: //Hier Code, aber kein return!
    }
    if(!d_response) d_response=true;
    else {
    d_response=false;
    //Hier kannst du dann weiter machen, da beide gewählt haben
    }
    }
    return 0;
    }


    mfg. :rolleyes:

    Einfach mit nem boolean:


    new bool:d_response;


    //Unter OnDialogResponse
    if(response) {
    if(!d_response) d_response=true;
    else {
    d_response=false;
    //Hier kannst du dann weiter machen, da beide gewählt haben
    }
    }


    PS: Das würde nur klappen, wenn immer nur 2 Spieler auf dem ganzen Server spielen können! Andernfalls, musst du mit einem Array arbeiten ;)


    mfg. :thumbup:

    Du kannst nicht nut strcmp benutzen!


    Doch in diesem Fall könnte er das tun:


    ocmd:accept(playerid,params[]) {
    if(!params[0]) return SendClientMessage(playerid,-1,"Benutzung: /accept [Aktion]");
    if(!strcmp(params,"invite",true)) {
    //Wenn invite angegben wurde...
    } else if(!strcmp(params,"pd",true)) {
    //Wenn pd angegben wurde...
    }
    return 1;
    }


    mfg. :thumbup:

    anscheinend ist die Wirkung in Java anders als in Pawn oder C.


    Nein, eigentlich nicht.


    Das ist halt das Bitwise OR...auf Binärer Ebene kannst du das halt nutzen:


    Nehmen wir ein Beispiel:


    11001 //25
    |
    10010 //18
    = 11011 //27
    Zur kurzen Erklärung, wenn du im Binär rechnen aufgepasst hast, wird hier einfach wo mind eine 1 ist, bleibt es bei eins und wo eine 0 ist wird diese übernommen ;)


    In Pawn kannst du das so rechnen:


    new x = 0b11001;
    x |= 18;
    printf("%d",x); //-> x ist 27


    So nutzt man diesen Operator ;)


    mfg. :thumbup:

    Meine frage ist wie ich es machen könnte das in einer Zeile der Dialog an beide Personen gerichtet ist.


    Über ein Makro kannst du das lösen:


    //Schreib das oben in dein Skript:
    #define ShowTwoDialog(%0,%1,%2,%3,%4,%5,%6,%7) ShowPlayerDialog(%0,%2,%3,%4,%5,%6,%7),ShowPlayerDialog(%1,%2,%3,%4,%5,%6,%7)


    //Und nutzen tuhst du das dann so:
    ShowTwoDialog(playerid,pID,dialogid, style, caption[], info[], button1[], button2[])


    mfg. :thumbup:

    Einfach so schreiben:


    if(sSpieler[playerid][Fraktion] >= 1)


    Das stimmt doch so, der Spieler soll ja in einer Fraktion die != 0 (nicht gleich null ist bzw >= 1 größer gleich 1) ist sein... :rolleyes:


    mfg. :thumbup:

    Also ich habe die neusten Plugins eig. (Mysql auf jedenfall SScanf weiß nicht genau)
    und im Script alle includes includiert aber was meinst du mit define? ^^


    Aktualisiere dein sscanf Plugin, das ist falsch und dein MySQL Plugin bzw das Include, da passt was nicht zusammen ;)


    mfg. :thumbup:

    if(sSpieler[playerid][Adminlevel] >= 1)


    In dieser Zeile prüfst du, ob der Spieler ein Adminlevel >= (größer gleich) 1 hat.
    Ändere einfach die Variable Adminlevel auf z.B. Fraktion oder Member bzw Leader...halt das was du dafür verwendest.


    mfg. :rolleyes:

    Ja, das stimmt wohl, aber es sollte eigentlich nur um die Größe gehen :D Habe die Funktion ja gelinkt, also jeder der mehr darüber wissen will...kann sie sich anschauen, da steht ja auch extra das mit den Limits usw.
    Wollte eigentlich nur mal auf die Funktion aufmerksam machen, dass man diese mit einem Bot kombinieren kann und somit super Features hat ;)


    mfg. :thumbup: