pWBB4 v0.5 - PHP & WBB4 Funktionen für SAMP

  • Wie sieht denn deine Funktion aus zum Admin-Level ändern?

    „Nicht das, was du nicht weißt, bringt dich in Schwierigkeiten, sondern dass, was du sicher zu wissen glaubst, obwohl es gar nicht wahr ist.“
    Mark Twain

    ---
    ICH BIN NUR HIER UM LEUTE ANZUSCHREIEN

  • machen das mal erst mit ban ok @seegras


    if(strcmp("/ban", cmd, true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_BENUTZETEXT, "Benutze: /ban [SpielerName/ID] [Grund]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid))
    {
    if(PlayerInfo[playerid][pAdmin] >= 2)
    {
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[84];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_BENUTZETEXT, "Benutze: /ban [SpielerName/ID] [Grund]");
    return 1;
    }
    if(strfind(result, "'", true) != -1)
    {
    SendClientMessage(playerid, COLOR_ERRORTEXT, " Kein Apostroph(') !");
    return 1;
    }
    if(PlayerInfo[giveplayerid][pSQLID] == 1 || PlayerInfo[giveplayerid][pSQLID] == 2 && PlayerInfo[playerid][pSQLID] != 1)
    {
    format(string, sizeof(string), "AdmCmd: %s wurde von %s gebannt. Grund: %s", giveplayer, sendername, (result));
    SendClientMessage(playerid, COLOR_LIGHTRED, string);
    format(string, sizeof(string), "* %s hat versucht dich zu Bannen, er wurde aus sicherheits gründen gekickt.. Grund: %s", sendername, (result));
    SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
    Kick(playerid);
    return 1;
    }
    else
    {
    new year, month,day;
    getdate(year, month, day);
    format(string, sizeof(string), "AdmCmd: %s wurde von %s gebannt. Grund: %s", giveplayer, sendername, (result));
    SendAdminMessage(COLOR_LIGHTRED, -1, string);
    SendClientMessage(giveplayerid,COLOR_LIGHTRED, string);
    format(string,sizeof(string),"%s, gebannt von: %s ,Grund: %s.", giveplayer, sendername,(result));
    EnterToLog("ban",string);
    UserAkte(PlayerInfo[giveplayerid][pSQLID], string);
    SendClientMessage(giveplayerid,COLOR_GRAD3, "Du wurdest von einem Admin gebannt, sollte es sich hierbei um ein Missverständnis handeln,");
    SendClientMessage(giveplayerid,COLOR_GRAD3, "erstelle hiervon ein Screen (F8) und Erstelle im Forum einen Entbannantrag.");
    BanSelfmade(giveplayerid, playerid, (result), -1, 0);
    }
    return 1;
    }
    else
    {
    SendClientMessage(playerid, COLOR_KEINADMIN, "*** INFO: Dies ist ein Adminbefehl, du bist kein Admin.");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_ERRORTEXT, " Dieser Spieler ist Offline !");
    }
    }
    return 1;
    }

  • Da es gewünscht war ist pWBB4 nun mit der 5. Generation von WBB (WSF) kompatibel.
    Download gibt es bei GitHub: https://github.com/derpierre65/pWBB4/releases/tag/0.5


    Weiterhin würde ich weitere Funktionen (PHP, WBB oder WCF) einbauen, wenn diese denn gewünscht sind.
    Einfach über GitHub ein Issue erstellen und die kein GitHub Account haben schreiben einfach hier im Forum eine PN an mich.

    Mit freundlichen Grüßen derpierre65


    Ps: Rechtschreibfehler dürfen behalten werden.


    GitHub

  • Für mich ist das Include wohl leider nicht verwendbar, wenn bei mir viele Gruppen hintereinander zugewiesen/entfernt werden spuckt der Server-Log kurz danach nur noch folgendes aus:


    Verwendetes Script:

    if(SpielerInfo[playerid][Admin] == 1) {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "5", playerid);
    } else {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "5", playerid);
    }
    if(SpielerInfo[playerid][Admin] == 2) {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "11", playerid);
    } else {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "11", playerid);
    }
    if(SpielerInfo[playerid][Admin] == 3) {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "6", playerid);
    } else {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "6", playerid);
    }
    if(SpielerInfo[playerid][Admin] == 4) {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "10", playerid);
    } else {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "10", playerid);
    }
    if(SpielerInfo[playerid][Admin] == 5) {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "4", playerid);
    } else {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "4", playerid);
    }
    if(SpielerInfo[playerid][Supporter] == 1) {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "12", playerid);
    } else {
    if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "12", playerid);
    }



    Ich verwende die Version für WSC.




    Probleme beim Scripten?
    Melde dich per PM bei mir :D


    Server<< >>PC

  • Zeig mal pWBB4_Callback
    Wenn möglich mach einfach mal ein neues Thema hier auf Scripting Base


    public pWBB4_Callback(action, index, playerid, status, response[]) {
    new Query[256];
    if ( action == pWBB4_ACTION_WBBADDUSER ) {
    if ( status == 1 ) {
    printf("Der User wurde erfolgreich erstellt! UserID = %d", strval(response));
    SendClientMessage(playerid, LEUCHTBLAU, "Dein Forum-Account wurde erfolgreich erstellt.");
    SendClientMessage(playerid, LEUCHTBLAU, "Benutzername: %s, dein Forum-Passwort ist mit deinem Account-Passwort identisch.");
    //WBB_DisableUserID(strval(response));
    mysql_format(Handle, Query, sizeof(Query), "UPDATE `Spieler` SET `ForumID` = '%d' WHERE `Name` = '%s'", strval(response), Name[playerid]);
    mysql_query(Handle, Query);
    } else if ( status == -1 ) {
    printf("Der Benutzername '%s' ist ungültig.", response);
    } else if ( status == -2 ) {
    printf("Der Benutzername '%s' ist bereits vergeben.", response);
    } else if ( status == -3 ) {
    printf("Das Passwort '%s' ist nicht sicher genug.", response);
    } else if ( status == -4 ) {
    printf("Die E-Mail Adresse '%s' ist ungültig.", response);
    } else if ( status == -5 ) {
    printf("Die E-Mail Adresse '%s' ist bereits vergeben.", response);
    }
    }
    if ( action == pWBB4_ACTION_PHPCHECKEMAIL ) {
    if(GetPVarInt(playerid, "Register") == 1) {
    if ( status == 1 ) {
    SetPVarString(playerid, "E-Mail", response);
    ShowPlayerDialog(playerid, D_GENDER, DIALOG_STYLE_LIST, "Registration: Geschlechtswahl", "{FFFFFF}Männlich\nWeiblich", "Bestätigen", "Abbrechen");
    } else {
    SendClientMessage(playerid, ROT, "Bitte geb eine gültige E-Mail Adresse ein!");
    return ShowPlayerDialog(playerid, D_EMAIL, DIALOG_STYLE_INPUT, "Registration: E-Mail Adresse", "Wir benötigen eine E-Mail Adresse, diese wird für die erstellung eines Forum-Accounts benötigt.\nBitte trage eine gültige E-Mail Adresse ein:", "Bestätigen", "Abbrechen");
    }
    }
    }
    if(action == pWBB4_ACTION_WBBADDTOGROUPS) {
    if(status == 1) {
    printf("Benutzergruppenzuweisung für %s war erfolgreich!", Name[playerid]);
    } else if(status == -1) {
    printf("Es existiert kein ForumAccount für den Benutzer %s", Name[playerid]);
    } else if(status == -2) {
    printf("Es ist ein Fehler bei der Benutzergruppenweisung für den Benutzer %s aufgetreten.", Name[playerid]);
    }
    }
    if(action == pWBB4_ACTION_WBBREMOVEFROMGROUPS) {
    if(status == 1) {
    printf("Benutzergruppe für %s entfernt!", Name[playerid]);
    } else if(status == -1) {
    printf("Es existiert kein ForumAccount für den Benutzer %s", Name[playerid]);
    } else if(status == -2) {
    printf("Es ist ein Fehler bei der Benutzergruppenentfernung für den Benutzer %s aufgetreten.", Name[playerid]);
    }
    } return 1;
    }


    Ein neues Thema möchte ich erstmal nicht erstellen, das Problem betrifft ja ans ich das Plugin, daher denke ich ist es schon passen mein Problem hier zu äußerm.




    Probleme beim Scripten?
    Melde dich per PM bei mir :D


    Server<< >>PC

  • Für mich ist das Include wohl leider nicht verwendbar, wenn bei mir viele Gruppen hintereinander zugewiesen/entfernt werden spuckt der Server-Log kurz danach nur noch folgendes aus:

    Verwendetes Script:
    if(SpielerInfo[playerid][Admin] == 1) { if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "5", playerid);} else { if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "5", playerid);}if(SpielerInfo[playerid][Admin] == 2) { if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "11", playerid);} else { if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "11", playerid);}if(SpielerInfo[playerid][Admin] == 3) { if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "6", playerid);} else { if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "6", playerid);}if(SpielerInfo[playerid][Admin] == 4) { if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "10", playerid);} else { if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "10", playerid);}if(SpielerInfo[playerid][Admin] == 5) { if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "4", playerid);} else { if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "4", playerid);}if(SpielerInfo[playerid][Supporter] == 1) { if(SpielerInfo[playerid][ForumID] != -255) WBB_AddToGroups(SpielerInfo[playerid][ForumID], "12", playerid);} else { if(SpielerInfo[playerid][ForumID] != -255) WBB_RemoveFromGroups(SpielerInfo[playerid][ForumID], "12", playerid);}



    Ich verwende die Version für WSC.

    Wende dich ambesten via GitHub an ihn, ich denke da sieht er es schneller.

    Mit freundlichen Grüßen
    Robin
    <html> | <? echo 'PHP'; ?>


    Biete TSDNS und TSBot (JTS3ServerMod) Service mit Panel an, bei Interesse -> PN