Beiträge von SlashQ

    Habe es jetzt mal so gemacht:
    Timer
    SetTimerEx("ConnectGehtEVTL", 700, 0, "i", 0);


    forward ConnectGehtEVTL(KeinSpielerSondernBot);
    public ConnectGehtEVTL(KeinSpielerSondernBot)
    {
    switch(KeinSpielerSondernBot)
    { case 0:
    {
    ConnectNPC("Bank1", "Bank1");print("Bot1");
    }
    case 1:
    {
    ConnectNPC("BankTante2", "BankTante2");print("Bot10");
    }
    }
    }
    return 1;
    }



    Der Timer ist unter OnGameModeInit

    Hier die Log


    ----------
    Loaded log file: "server_log.txt".
    ----------
    SA-MP Dedicated Server
    ----------------------
    v0.3.7-R2, (C)2005-2015 SA-MP Team


    Server Plugins
    --------------
    Loading plugin: mysql
    >> plugin.mysql: R37 successfully loaded.
    Loaded.
    Loading plugin: streamer


    *** Streamer Plugin v2.7 by Incognito loaded ***
    Loaded.
    Loading plugin: sscanf


    ===============================
    sscanf plugin loaded.
    Version: 2.8.1
    (c) 2012 Alex "Y_Less" Cole
    ===============================
    Loaded.
    Loading plugin: MapAndreas
    Loaded.
    Loading plugin: crashdetect
    CrashDetect v4.13 is OK.
    Loaded.
    Loaded 5 plugins.


    Ban list
    --------
    Loaded: samp.ban


    Started server on port: 7777, with maxplayers: 500 lanmode is OFF.


    Filterscripts
    ---------------
    Loading filterscript 'ls_elevator.amx'...
    Loaded 1 filterscripts.
    [MYSQL]: Verbindung zur Datenbank hergestellt!
    Bot1
    Bot2
    Bot3
    Bot4
    Bot5
    Bot6
    Bot7
    Bot8
    Bot9
    Bot10

    Danke habe jetzt noch ein Problem mit meinem /Leader Befehl. Wenn man /Leader eingibt sollen alle Leader Aufgelistet sein aber es kommt kein Dialog,
    Hier der Code:

    CMD:leader(playerid,params[])
    {
    mysql_query("SELECT "#Tabelle_Spieler", Leader FROM Name WHERE Rang = 10;");
    mysql_store_result();
    new rows = mysql_num_rows();
    if(!rows) return SendClientMessage(playerid, 0xFF0000FF, "Error: Etwas ist schief gegangen.");
    new str[512], row[64], name[32], frak, fname[32];
    while(mysql_fetch_row(row))
    {
    sscanf(row, "p<|>sd", name, frak);
    switch(frak)
    {
    case 1:{fname = "Regierung";}
    case 2:{fname = "SAPD";}
    }
    if(ReturnPlayerID(name) != INVALID_PLAYER_ID) format(str, sizeof(str), "%s{FFFFFF}%d [%s] - {00FF00}Online\n", str, name, fname);
    else format(str, sizeof(str), "%s{FFFFFF}%d [%s] - {FF0000}Offline\n", str, name, fname);
    ShowPlayerDialog(playerid,DIALOG_SONSTIGES,DIALOG_STYLE_MSGBOX,"Leader",str,"Schliessen","");
    }
    return 1;
    }

    Also, ich möchte die Häuser Laden und wenn es ein haus mit der nicht gibt soll es Übersprungen werden und das nächste geladen werden.
    Hier der Code:

    stock LoadHaus()
    {
    new string[400],idx=0;
    for(new i; i<MAX_HAUS; i++)
    {
    mysql_fetch_row_format(data, "|"); // Ansonsten werden die Daten in "data" gespeichert
    mysql_free_result();
    sscanf(data, "p<|>ifffffffiis[24]iiii", // Die Daten werden den Variablen zugewiesen
    Haus[i][h_id],
    Haus[i][h_posx],
    Haus[i][h_posy],
    Haus[i][h_posz],
    Haus[i][h_intx],
    Haus[i][h_inty],
    Haus[i][h_intz],
    Haus[i][h_inta],
    Haus[i][h_vw],
    Haus[i][h_int],
    Haus[i][h_besitzer],
    Haus[i][h_kosten],
    Haus[i][h_verkauf],
    Haus[i][h_isbiz],
    Haus[i][h_hid]);


    // Jetzt muss noch überprüft werden, ob das Haus ein Biz sein soll oder ein Haus UND ob es zum Verkauf steht
    if(Haus[i][h_isbiz] == 1)
    {
    if(Haus[i][h_verkauf] == 0)
    {
    Haus[i][h_id] = CreatePickup(1273, 1, Haus[i][h_posx], Haus[i][h_posy], Haus[i][h_posz], 0);
    format(string, sizeof string, "Haus: %d\nBesitzer: %s", i, Haus[i][h_besitzer]);
    Haus[i][label] = Create3DTextLabel(string, Grün, Haus[i][h_posx], Haus[i][h_posy], Haus[i][h_posz], 15.0, 0);
    }
    else
    {
    Haus[i][h_id] = CreatePickup(1273, 1, Haus[i][h_posx], Haus[i][h_posy], Haus[i][h_posz], 0);
    format(string, sizeof string, "Haus: %d\nZum Verkauf\nKosten: %d$", i, Haus[i][h_kosten]);
    Haus[i][label] = Create3DTextLabel(string, ROT, Haus[i][h_posx], Haus[i][h_posy], Haus[i][h_posz], 15.0, 0);
    }
    }
    else
    {
    if(Haus[i][h_verkauf] == 0)
    {
    Haus[i][h_id] = CreatePickup(1239, 1, Haus[i][h_posx], Haus[i][h_posy], Haus[i][h_posz], 0);
    format(string, sizeof string, "Biz: %s (%d)\nBesitzer: %s\nKosten: %d$", BizName[Haus[i][h_hid]], i, Haus[i][h_besitzer], Haus[i][h_kosten]);
    Haus[i][label] = Create3DTextLabel(string, Grün, Haus[i][h_posx], Haus[i][h_posy], Haus[i][h_posz], 15.0, 0);
    }
    else
    {
    Haus[i][h_id] = CreatePickup(1239, 1, Haus[i][h_posx], Haus[i][h_posy], Haus[i][h_posz], 0);
    format(string, sizeof string, "Biz: %s (%d)\nZum Verkauf\nKosten: %d$", BizName[Haus[i][h_hid]], i, Haus[i][h_kosten]);
    Haus[i][label] = Create3DTextLabel(string, ROT, Haus[i][h_posx], Haus[i][h_posy], Haus[i][h_posz], 15.0, 0);
    }
    }
    idx++;
    }
    printf("Es wurden %i Häuser geladen",idx);
    mysql_free_result();
    return 1;
    }

    Danke @Jeffry nun zu einem anderen Befehl :)


    Ich möchte denn Leader auslesen lasen aber es kommen Fehler :/
    Der Befehl:

    CMD:leader(playerid,params[])
    {
    mysql_query("SELECT accounts, Fraktion FROM Name WHERE raenge = 10;");
    mysql_store_result();
    new rows = mysql_num_rows();
    if(!rows) return SendClientMessage(playerid, 0xFF0000FF, "Error: Etwas ist schief gegangen.");
    new str[512], row[64], name[32], frak, fname[32];
    while(mysql_fetch_row(row, "|"))
    {
    sscanf(row, "p<|>sd", name, frak);
    switch(frak)
    {
    case 1:{fname = "Regierung";}
    case 2:{fname = "SAPD";}
    }
    if(ReturnPlayerID(name) != INVALID_PLAYER_ID) format(str, sizeof(str), "%s{FFFFFF}%d [%s] - {00FF00}Online\n", str, name, fname);
    else format(str, sizeof(str), "%s{FFFFFF}%d [%s] - {FF0000}Offline\n", str, name, fname);
    }
    ShowPlayerDialog(playerid, DIALOG_SONSTIGES, DIALOG_STYLE_MSGBOX, "Online-List", str, "Ok");
    return 1;
    }



    Der Fehler Code

    C:\Users\Basti\Desktop\Selfmade\gamemodes\Selfmade.pwn(10012) : error 035: argument type mismatch (argument 3)
    C:\Users\Basti\Desktop\Selfmade\gamemodes\Selfmade.pwn(10023) : warning 217: loose indentation
    C:\Users\Basti\Desktop\Selfmade\gamemodes\Selfmade.pwn(10023) : warning 202: number of arguments does not match definition
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    1 Error.


    Der Error ist in dieser Zeile :
    while(mysql_fetch_row(row, "|"))

    Hi, wie kann ich herrausfinden ob die haus id bereits Exisiert und wenn ja wie kann ich diese überspringen?
    Hier ist schon mal mein Angefangener Code:

    stock SaveHaus()
    {
    for(new i; i<MAX_HAUS; i++) // Die Schleife beginnt und geht alle Hausids durch
    {
    format(bfl, sizeof bfl, "UPDATE "#Tabelle_Haus" SET `h_posx` = %f, `h_posy` = %f, `h_posz` = %f, `h_intx` = %f, `h_inty` = %f, `h_intz` = %f, `h_inta` = %f, `h_int` = %f, `h_besitzer` = '%s', `h_vw` = %d, `h_kosten` = %d, `h_verkauf` = %d, `h_hid` = %d, `h_isbiz` = %d WHERE h_id = %d", // Das Haus wird nun geupdated
    Haus[i][h_posx],
    Haus[i][h_posy],
    Haus[i][h_posz],
    Haus[i][h_intx],
    Haus[i][h_inty],
    Haus[i][h_intz],
    Haus[i][h_inta],
    Haus[i][h_int],
    Haus[i][h_besitzer],
    Haus[i][h_vw],
    Haus[i][h_kosten],
    Haus[i][h_verkauf],
    Haus[i][h_hid],
    Haus[i][h_isbiz],
    i);
    mysql_query(bfl);
    print(">>>>>>>>>>><<<<<<<<<<<<");
    print("______________________");
    print(bfl);
    print("______________________");
    print(">>>>>>>>>>><<<<<<<<<<<<");
    mysql_free_result();
    }
    return 1;
    }



    @Jeffry