SA:MP Woltlab Connect Tutorial

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • SA:MP Woltlab Connect Tutorial


    Herzlich Willkommen zur meinem ersten Pawn Tutorial,

    in diesem Tutorial möchte ich zeigen wie einfach man mit dem WBB_Connect v2 umgehen kann.
    Für alle die nicht wissen was WBB_Connect v2 ist sage ich es schnell, wbb connect ist eine Filterscript/Include das für
    eine Verbindung von SA:MP zu Woltlab herstellt. Ich werde Schritt für Schritt erklären wie ihr die Funktionen verwenden könnt.



    Als erstes:
    Ihr müsst als aller erstes alles Herunterladen. (HIER)
    danach zieht ihr alles was im Filterscript Ordner ist in den Filterscript Order von eurem Server.
    Danach den Include unter Pawno/Includes einfügen.



    Schritt 2:
    Ihr müsst nun denn Include in eurer Script laden. Das könnt ihr ganz einfach ganz oben vom Script einbinden. In etwa so:
    [pwn]#include <wbb_connect>[/pwn]



    Schritt 3:
    Nun geht hier erneut in die .rar Datei und nehmt 'wbb_connect_install.php' und 'wbb_connect.zip' raus und zieht sie in das Haupt Verzeichnis
    von eurem Woltlab Forum. Dann führt ihr wbb_connect_install.php aus. (eurerforum.de/wbb_connect_install.php)
    Am ende dieser Installation bekommt ihr einen AuthCode, diesen müsst ihr euch Aufschreiben!!!! (wird in Schritt nr. 4 benötigt!)



    Schritt 4:

    Nun geht ihr unter 'OnGameModeInit' und fügt das ein:
    [pwn]WBB_Initialize("EURE FORUM ADRESSE", "AUTHKEY");[/pwn]




    Schritt 5:
    Alle Callbacks ganz unten im Script eintragen!

    [pwn]public WBB_GotPostUser ( Index , Username[ ] ) {
    return 1;
    }

    public WBB_GotThreadStarter ( Index , Username[ ] ) {
    return 1;
    }

    public WBB_GotUserActivationCode ( Index , ActivationCode[ ] ) {
    return 1;
    }

    public WBB_GotUserActivationState ( Index , State ) {
    return 1;
    }

    public WBB_GotUserAge ( Index , Age ) {
    return 1;
    }

    public WBB_GotUserFriendState ( Index , State ) {
    return 1;
    }

    public WBB_GotUserGroupState ( Index , State ) {
    return 1;
    }

    public WBB_GotUserID ( Index , UserID ) {
    return 1;
    }

    public WBB_GotUserOnlineState ( Index , State ) {
    return 1;
    }

    public WBB_GotUserPasswordCheckState ( Index , State ) {
    return 1;
    }

    public WBB_GotUserTitle ( Index , Title[ ] ) {
    return 1;
    }

    public WBB_GotUserValidState ( Index , State ) {
    return 1;
    }

    public WBB_OnInitialize ( State ) {
    return 1;
    }

    public WBB_PostAdded ( Index ) {
    return 1;
    }

    public WBB_PostDeleted ( Index ) {
    return 1;
    }

    public WBB_PostEdited ( Index ) {
    return 1;
    }

    public WBB_PostTrashed ( Index ) {
    return 1;
    }

    public WBB_ThreadAdded ( Index , ThreadID ) {
    return 1;
    }

    public WBB_ThreadDeleted ( Index ) {
    return 1;
    }

    public WBB_ThreadSticked ( Index ) {
    return 1;
    }

    public WBB_ThreadUnsticked ( Index ) {
    return 1;
    }

    public WBB_UserAdded ( Index ) {
    return 1;
    }

    public WBB_UserAvatarDisabled ( Index ) {
    return 1;
    }

    public WBB_UserAvatarEnabled ( Index ) {
    return 1;
    }

    public WBB_UserBanned ( Index ) {
    return 1;
    }

    public WBB_UserDisabled ( Index ) {
    return 1;
    }

    public WBB_UserEnabled ( Index ) {
    return 1;
    }

    public WBB_UserRemovedFromGroup ( Index ) {
    return 1;
    }

    public WBB_UserSettedToGroup ( Index ) {
    return 1;
    }

    public WBB_UserSignaturDisabled ( Index ) {
    return 1;
    }

    public WBB_UserSignaturEnabled ( Index ) {
    return 1;
    }

    public WBB_UserUnbanned ( Index ) {
    return 1;
    }[/pwn]

    Diese werden nicht! für die haupt Funktionen genutzt!
    ihr könnt ihr z.B. print("User Hinzugefügt"); unter 'WBB_UserAdded' Hinzufügen.




    Ich hoffe das euch mein Tutorial gefallen hat, ihr könnt mir jegliche Frage dazu stellen, ich kann euch aber nicht versprechen das ich alle beantworten kann.
    Ich möchte mich auch für meine Rechtschreibung entschuldigen.


    Wichtig: Wenn du eine schleifen machen willst, nie so:
    [pwn]if(WBB_EnableUser == 0)
    {
    SendClientMessage(playerid, COLOR_RED, "Du bist nicht Aktiviert");
    return 1;
    }[/pwn]

    Sondern ihr müsste die Call Back dafür suchen!

    [pwn]if( State )
    {
    SendClientMessage(playerid, COLOR_RED, "Du bist Aktiviert");
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Du bist nicht Aktiviert");
    }
    [/pwn]


    Code Schnippsel werden darunter gepostet!

    Liebe Grüße,
    Phoenix


    [tabmenu][tab='Meine Forenstyles']
    Blue Style: HIER [/tabmenu]

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Phoenix ()

  • Funktion 1: (Wenn sich der User im Server Registriert bekommt er ein Forum Account, Rank Registriert und er wird Freigeschalten)
    Ihr tragt folgendes in der Funktion wo man Registriert wird ein

    [pwn]new Namewbb[MAX_PLAYER_NAME];
    GetPlayerName(playerid,Namewbb,MAX_PLAYER_NAME);
    WBB_AddUser(Namewbb,"info@youtube.de",inputtext,1); // NAME | EMAIL | PASSWORT
    WBB_SetUserToGroup(Namewbb,3); // NAME | RankID
    WBB_EnableUser(Namewbb); // NAME[/pwn]

    Funktion 2: (Jemanden mit dem Befehl /ban vom Server & vom Forum bannen mit dem selben Grund) | Diese Funktion wurde für ein Godfather geschrieben (müsste anders geschrieben werden!)

    [pwn]if(strcmp(cmd, "/ban", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /ban [playerid] [grund]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if (PlayerInfo[playerid][pAdmin] >= 1)
    {
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    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[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /ban [playerid] [grund]");
    return 1;
    }
    if(PlayerInfo[giveplayerid][pAdmin] > PlayerInfo[playerid][pAdmin])
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Du kannst diesen Spieler nicht bannen, da er ein höheres Adminlevel hat als du!");
    return 1;
    }
    new year, month,day;
    getdate(year, month, day);
    format(string, sizeof(string), "AdminSystem: %s wurde von %s gebannt, Grund: %s (%d-%d-%d)", giveplayer, sendername, (result),month,day,year);
    BanLog(string);
    format(string, sizeof(string), "AdminSystem: %s wurde von %s gebannt, Grund: %s", giveplayer, sendername, (result));
    SendClientMessageToAll(COLOR_LIGHTRED, string);
    PlayerInfo[giveplayerid][pAdmin] = PlayerInfo[giveplayerid][pLevel];
    PlayerInfo[giveplayerid][pLevel] = -999;
    GameTextForPlayer(playerid, "~r~GEBANNT", 5000, 3);
    Ban(giveplayerid);
    WBB_BanUser(giveplayer,(result)); // NAME DES AUSGEWÄHLTEN SPIELER | BAN GRUND
    return 1;
    }
    }
    }
    else
    {
    format(string, sizeof(string), " %d ist kein aktiver Spieler.", giveplayerid);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    }
    }
    return 1;
    }[/pwn]
    [tabmenu][tab='Meine Forenstyles']
    Blue Style: HIER [/tabmenu]