Beiträge von The Sensei

    Hey,


    ich will die Skins für jeden Rank im Skript definieren. Dies hab ich auch geschafft doch es scheitert immoment in der Anwendung.


    static const f_skins[][] = { //Es geht nach Ranks
    {"301","284","265","266","267","280","280","281","281","286","283","283"},//LSPD
    {"302","303","282","282","282","310","311","285","288","288"},//LVPD
    };


    Die erste reihe ist für das LSPD dann kommt das LVPD.
    Ich möchte das Verbinden mit meinem Makeleader befehl:


    ocmd:makeleader(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,4) || !IsPlayerAdmin(playerid))return SendClientMessage(playerid,-1,""#error_farbe"Keine Berechtigung");
    new pID, fraction, string[128];
    if(sscanf(params,"ui",pID,fraction))return SendClientMessage(playerid,-1,"Tippe: /makeleader [spieler] [fraktion]");
    if(fraction<0||fraction>15)return SendClientMessage(playerid,-1,""#error_farbe"Bitte gültigen Fraktion angeben.");
    PlayerInfo[pID][pFraction] = fraction;
    if(fraction == 2){ PlayerInfo[pID][pFrank] = 10; } else { PlayerInfo[pID][pFrank] = 12; }
    SetPlayerSkin(pID, f_skins[PlayerInfo[pID][pFrank]]);
    SaveUserStats(pID);
    format(string, sizeof(string),""#info_farbe"%s hat dich zum Leader der Fraktion %s gemacht.",PlayerInfo[playerid][pName],f_name[PlayerInfo[pID][pFraction]]);
    SendClientMessage(pID,-1,string);
    format(string, sizeof(string),""#success_farbe"Du hast erfolgreich %s zum Leader der Fraktion %s gemacht.",PlayerInfo[pID][pName],f_name[PlayerInfo[pID][pFraction]]);
    SendClientMessage(playerid,-1,string);
    format(string, sizeof(string) ,"%s hat %s zum Leader der Fraktion %s gemacht.",PlayerInfo[playerid][pName],PlayerInfo[pID][pName],f_name[PlayerInfo[pID][pFraction]]);
    Log("AdminLog",string);
    return 1;
    }

    Hey,


    ich habe hier einen LoadFraction Stock. Dieser ist aber für das R7 Plugin.
    Ich suche gerade eine Funktion beim R39-3 die diese ersetzen kann.


    stock LoadFactions()
    {
    new query[400];
    for(new id; id < MAX_FACTIONS; id++) // Goes through all the slots, looking for the data
    {
    format(query, sizeof(query), "SELECT * FROM fractions WHERE fid = %d", id); // Selects all the information from the table
    mysql_pquery(handle, query);
    mysql_store_result();
    if(cache_affected_rows())
    if(mysql_fetch_row_format(query,"|")) // es geht um diese Funktion
    {
    sscanf(query, "p<|>e<is[64]ds[32]s[32]s[32]s[32]s[32]s[32]s[32]s[32]s[32]s[32]s[32]s[32]>",Factions[id]); // SSCANF seperates the data into the variables
    Total_Factions_Created++; // Counts the factions created
    }


    }
    printf("> %d factions have been loaded from the database.", Total_Factions_Created); // Prints out the information of how many factions created
    return 1;
    }

    Die Errors sind weg danke :>


    Ich habe hier noch einen Stock, dieser funktioniert nicht, da gewisse MySQL funktionen nicht mehr existieren.

    Code
    C:\Users\Patrick\Desktop\San Andreas\gamemodes\Hightech_Reallife.pwn(585) : error 017: undefined symbol "mysql_store_result"
    C:\Users\Patrick\Desktop\San Andreas\gamemodes\Hightech_Reallife.pwn(586) : error 017: undefined symbol "mysql_num_rows"
    C:\Users\Patrick\Desktop\San Andreas\gamemodes\Hightech_Reallife.pwn(587) : error 017: undefined symbol "mysql_fetch_row_format"
    Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase
    
    
    
    
    3 Errors.

    ocmd:ban(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,-1,""#error_farbe"Keine Berechtigung");
    new pID, reason[128],string[555];
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,-1,"Tippe: /ban [id] [grund]");
    format(string,sizeof(string),"Sie wurden gerade gesperrt da Sie gegen das Regelwerk verstößen haben.\nBitte lesen Sie erneut das Regelwerk damit soetwas nicht erneut passiert.\nWenn Sie denken das die Sperre zu unrecht verhangen wurde melden Sie sich bei dem Ausführendem Admin.\n\nInformationen:\n\nBan-Grund: %s\nAusführerender Admin: %s",reason,PlayerInfo[playerid][pName]);
    ShowPlayerDialog(playerid,DIALOG_BAN,DIALOG_STYLE_MSGBOX,"Spielausschluss",string,"Okay","");
    SetTimerEx("kicktimer",200,false,"d",pID);
    format(string,sizeof(string),""#error_farbe"%s wurde von %s gebannt. Grund: %s",PlayerInfo[pID][pName],PlayerInfo[playerid][pName],reason);
    SendClientMessageToAll(-1,string);
    PlayerInfo[pID][pBan] = 1;
    PlayerInfo[pID][pBanadmin] = PlayerInfo[playerid][pName];
    BanUser(pID, reason);
    format(string,sizeof(string),"%s wurde von %s gebannt. Grund: %s",PlayerInfo[pID][pName],PlayerInfo[playerid][pName],reason);
    Log("BanLog",string);
    return 1;
    }


    Er ist doch ein String?


    stock BanUser(pID, reason)
    {
    new query[256];
    gettime(stunde,minuten,sekunde);
    getdate(jahr,monat,tag);
    mysql_format(handle, query, sizeof(query), "INSERT INTO `accountbans` SET name = '%s', reason = '%s', admin = '%s', date = '%02d.%02d.%04d|%02d:%02d:%02d'",
    PlayerInfo[pID][pName],reason,PlayerInfo[pID][pBanadmin],tag,monat,jahr,stunde,minuten,sekunde);
    mysql_pquery(handle, query);
    return 1;
    }


    Er zeigt mir hier:
    BanUser(pID, reason);


    an das etwas fehlt aber ich wüsste nicht das im Stock ist das genauso geschrieben.


    C:\Users\Patrick\Desktop\San Andreas\gamemodes\Hightech_Reallife.pwn(159) : error 035: argument type mismatch (argument 2)
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.

    Die Fehlercodes waren oben:


    es hat angeblich was mit meinem Stock zutun (selbst erstellt)


    stock BanUser(pID, reason);
    {
    new query[256];
    gettime(stunde,minuten,sekunde);
    getdate(jahr,monat,tag);
    mysql_format(handle, query, sizeof(query), "INSERT INTO `accountbans` SET name = '%s', reason = '%s', admin = '%s', date = '%02d.%02d.%04d|%02d:%02d:%02d'",
    PlayerInfo[pID][pName],reason,PlayerInfo[pID][pBanadmin],tag,monat,jahr,stunde,minuten,sekunde);
    mysql_pquery(handle, query);
    return 1;
    }

    ocmd:ban(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,-1,""#error_farbe"Du hast kein Admin Level 3.");
    new pID, reason[128],string[555];
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,-1,"Tippe: /ban [id] [grund]");
    format(string,sizeof(string),"Sie wurden gerade gesperrt da Sie gegen das Regelwerk verstößen haben.\nBitte lesen Sie erneut das Regelwerk damit soetwas nicht erneut passiert.\nWenn Sie denken das die Sperre zu unrecht verhangen wurde melden Sie sich bei dem Ausführendem Admin.\n\nInformationen:\n\nBan-Grund: %s\nAusführerender Admin: %s",reason,PlayerInfo[playerid][pName]);
    ShowPlayerDialog(playerid,DIALOG_BAN,DIALOG_STYLE_MSGBOX,"Spielausschluss",string,"Okay","");
    SetTimerEx("kicktimer",200,false,"d",pID);
    format(string,sizeof(string),""#error_farbe"%s wurde von %s gebannt. Grund: %s",PlayerInfo[pID][pName],PlayerInfo[playerid][pName],reason);
    SendClientMessageToAll(-1,string);
    PlayerInfo[pID][pBan] = 1;
    PlayerInfo[pID][pBanadmin] = PlayerInfo[playerid][pName];
    format(string,sizeof(string),"%s wurde von %s gebannt. Grund: %s",PlayerInfo[pID][pName],PlayerInfo[playerid][pName],reason);
    Log("BanLog",string);
    BanUser(pID,reason);
    return 1;
    }

    Hey,


    ich habe mir einen stock erstellt der nicht funktioniert:


    Ich hoffe einer kann mir helfen

    die Tabelle "users" ist deine "Haupt"-Tabelle oder?
    Da stehen Passwort, Name etc. wenn ja dann würd ich doch Update benutzen hinten mit WHERE und dann schreibt er nicht immer einen neuen Eintrag in die Tabelle es sei denn du willst das so.

    Da steht doch alles:

    Code
    [21:46:47] [debug] Run time error 19: "File or function is not found"
    [21:46:47] [debug]  DestroyDynamicObject
    [21:46:47] [debug]  CreateDynamicObject
    [21:46:47] [debug]  SetDynamicObjectMaterial
    [21:46:47] [debug]  SetDynamicObjectMaterialText

    Ja du denkst in meine Richtung.
    Leider funktioniert meine Version nicht.