Beiträge von Fabi.StaR

    Guten Tag,


    Ich arbeite grade an meinen Toren und das komische ist das ich den Befehl 2 mal eingeben muss bis der timer sich aktiviert.
    Wenn ich danach ein anderes Tor öffne geht alles einfand frei.



    woran könnte das liegen??


    So wende ich den Timer an:



    SetTimerEx("CloseGateTimer",5000, 0, "i",3);


    Hier mein Timer public:



    public CloseGateTimer(gateID)
    {
    switch(gateID)
    {
    case 1:return MoveObject(Gate[0], -493.39999, -562.79999, 26.2,1), MoveObject(Gate[1], -485.60001, -562.79999, 26.2,1);
    case 2:return MoveObject(Gate[2],1589.6, -1638.2, 14.6,1.0);
    case 3:return MoveObject(Gate[3], 1544.7, -1630.8, 13.1-0.1, 1.0, 0, 89.25, 90);
    }
    return 1;
    }

    Guten Abend,


    Ich habe ein Problem mit meiner Abfrage unzwar möchte das man Leader der fraktion sein muss oder Admin damit man den Befehl benutzen kann.



    Hier die abfrage.



    if(FracVehicles[f][f_FracID] != PlayerInfo[playerid][pFraktion] && !IsPlayerLeader(playerid) || PlayerInfo[playerid][pAdmin] < 5)return SCM(playerid,COLOR_WHITE, FEHLERTEXT"Du hast keine berechtigung diesen Befehl zubenutzen.");


    public OnQueryFinish(sqlid,playerid)
    {
    new string[350];
    switch(sqlid)
    {
    case _SQL_CheckAccount:
    {
    switch(cache_num_rows())
    {
    case 0:{
    format(string, sizeof string, "{C9C9C9}Willkommen "#SERVERFARBE"%s {C9C9C9}auf "#SERVERFARBE""#SERVERNAME"{C9C9C9}\n\nEs wurde kein Account unter diesem Namen gefunden.\nGib dein Passwort niemals weiter, auch nicht an Supporter.\nDu kannst dich nun Registrieren.\nBitte gib nun ein Passwort an:",Player[playerid][pName]);
    return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, #SERVERFARBE""#SERVERNAME"{FFFFFF}: Registrierung", string, "Weiter", "Abbrechen");
    }
    case 1: {
    format(string, sizeof string, "Willkommen zurück "#SERVERFARBE"%s{C9C9C9}\n\nDein Account wurde in der Datenbank gefunden,\nGib dein Passwort niemals weiter, auch nicht an Supporter\nDu kannst dich nun Einloggen.\nBitte gib nun dein Passwort ein:",Player[playerid][pName]);
    return ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, #SERVERFARBE""#SERVERNAME"{FFFFFF}: Anmeldung", string, "Login", "Abbrechen");
    }
    }
    orm_setkey(Player[playerid][pORM_ID],"id");
    return 1;
    }
    case _SQL_CreateNewAccount:
    {
    switch(orm_errno(Player[playerid][pORM_ID]))
    {
    case ERROR_OK:
    {
    format(string, sizeof string, ""SERVERFARBE""SERVERTAG"{FFFFFF}: Willkommen %s.",Player[playerid][pName]);
    SCM(playerid, 0xFFFFFFFF, string);
    Player[playerid][pLoggedin] = true;
    SetPlayerScore(playerid,Player[playerid][pScore]);
    GivePlayerMoney(playerid,Player[playerid][pCash]);
    return SpawnPlayer(playerid);
    }
    case ERROR_NO_DATA:
    {
    return Kick(playerid);
    }
    }
    return 1;
    }
    }
    return 1;
    }

    Guten Morgen,


    Ich bin grade dabei ein ORM basierendes Login / Register system zuschreiben.
    Un mein Problem ist das er den namen nicht in die Tabelle schreibt.


    Hier der code von OnPlayerConnect



    public OnPlayerConnect(playerid)
    {
    GetPlayerName(playerid, Player[playerid][pName], MAX_PLAYER_NAME+1);
    new ORM:ormid = Player[playerid][pORM_ID] = orm_create(SERVERTAG"_Accounts");
    orm_addvar_int(ormid, Player[playerid][pSQLid], "SQLid");
    orm_addvar_string(ormid, Player[playerid][pName], MAX_PLAYER_NAME+1, "Name");
    orm_addvar_string(ormid, Player[playerid][pPassword],100,"Password");
    orm_addvar_int(ormid, Player[playerid][pCash], "Cash");
    orm_addvar_int(ormid, Player[playerid][pScore], "Score");
    orm_addvar_int(ormid, Player[playerid][pAdmin], "Admin");
    orm_addvar_int(ormid, Player[playerid][pFraktion], "Fraktion");
    orm_addvar_int(ormid, Player[playerid][pFraktionsRang], "FraktionsRang");
    orm_addvar_int(ormid, Player[playerid][pChar], "Char");
    orm_setkey(ormid, "Name");
    orm_select(ormid, "OnQueryFinish", "dd", _SQL_CheckAccount, playerid);
    return 1;
    }


    Hier der MySQl Log:


    danke für eure antworten aber nun habe ich folgendes problem:


    ich hab es so gemacht;
    new myobject = CreateObject(19310,0,0,-1000,0,0,0,100), mycar = AddStaticVehicle(426,1140.9214,-1757.7600,13.3392,322.6366,1,1); // Fahrschul auto 01
    SetObjectMaterialText(myobject, "Fahrschule", 0, OBJECT_MATERIAL_SIZE_256x128, "Arial", 14, 0, 0x00000000, 0xFFFFFFFF, OBJECT_MATERIAL_TEXT_ALIGN_CENTER);
    AttachObjectToVehicle(myobject, mycar, 0.000000,-0.524999,0.899999,-0.000002,-2.700011,89.099983);


    das schild ist weiß aber der text ist nicht da.


    Bitte um hilfe.


    //EDIT


    Habe es hin bekommen danke @ all :)

    Guten Morgen,


    Wenn ich /sellhouse eingebe bekomme ich immer die meldung das ich kein haus besitze.


    Hier mein code:


    Spoiler anzeigen
    CMD:sellhouse(playerid, params[])
    {
    for(new i; i != MAX_HOUSES; i++)
    {
    if(!HouseInfo[i][hSQLid])continue;
    if(!IsPlayerInRangeOfPoint(playerid, 5, HouseInfo[i][hExitX], HouseInfo[i][hExitY], HouseInfo[i][hExitZ]))continue;
    if(!strcmp(pInfo[playerid][pName], HouseInfo[i][hOwner], true))return SCM(playerid, COLOR_WHITE, INFOTEXT"Du besitzt noch kein Haus.");
    if(!strlen(HouseInfo[i][hOwner]))continue;
    pInfo[playerid][pMoney] += HouseInfo[i][hPrice]/2;
    GivePlayerMoney(playerid, HouseInfo[i][hPrice]/2);
    strmid("", pInfo[playerid][pName], 0, MAX_PLAYER_NAME, MAX_PLAYER_NAME);
    UpdateHouse(i);
    SaveHouse(i);
    new string[128];
    format(string, sizeof string, " Du hast das Haus erfolgreich für $%i verkauft.",HouseInfo[i][hPrice]);
    return SCM(playerid, COLOR_LIGHTGREEN, string);
    }
    return 1;
    }


    Jeffry

    Versuche es mal so:


    Spoiler anzeigen

    public LoadBlitzer()
    {
    new rows, fields, count = 0;
    cache_get_data(rows, fields);
    if(!rows) return 1;
    while(count<num_rows)
    {
    new result[64];
    Blitzer[i][ID] = cache_get_field_content_int(i, "ID");
    cache_get_field_content(i,"SperreX",result);
    Blitzer[i][sperreX] = floatstr(result);
    cache_get_field_content(i,"SperreY",result);
    Blitzer[i][sperreY] = floatstr(result);
    cache_get_field_content(i,"SperreZ",result);
    Blitzer[i][sperreZ] = floatstr(result);
    cache_get_field_content(i,"BlitzerGeschwindigkeit",result);
    Blitzer[i][BlitzerGeschwindigkeit] = strval(result);
    cache_get_field_content(i, "BlitzerOrt", Blitzer[i][BlitzerOrt], myCon, 64);
    Blitzer[i][ID] = CreateDynamicObject(18880,Blitzer[i][sperreX],Blitzer[i][sperreY],Blitzer[i][sperreZ]-2.0,0.0,0.0,10);
    count++;
    }
    printf("[LOAD] Blitzer geladen: %d/%d", count, MAX_BLITZER);
    return 1;
    }

    Schreib es mal so:


    public OnFrakCarsLoad()
    {
    new num_fields,num_rows;
    cache_get_data(num_rows,num_fields,dbhandle);
    if(!num_rows)return 1;
    new i=1;
    while(i<num_rows;)
    {
    new id=getFreeFrakCarID();
    FrakCars[id][f_ModelID]=cache_get_field_content_int(i,"modelid",dbhandle);
    FrakCars[id][FraktionsID]=cache_get_field_content_int(i,"fraktion",dbhandle);
    FrakCars[id][f_x]=cache_get_field_content_float(i,"PosX",dbhandle);
    FrakCars[id][f_y]=cache_get_field_content_float(i,"PosY",dbhandle);
    FrakCars[id][f_z]=cache_get_field_content_float(i,"PosZ",dbhandle);
    FrakCars[id][f_r]=cache_get_field_content_float(i,"PosR",dbhandle);
    FrakCars[id][db_ID]=cache_get_field_content_int(i,"id",dbhandle);
    FrakCars[id][id_x]=CreateVehicle(FrakCars[id][f_ModelID],FrakCars[id][f_x],FrakCars[id][f_y],FrakCars[id][f_z],FrakCars[id][f_r],FrakCars[id][f_color1],FrakCars[id][f_color2],-1);
    tank[FrakCars[id][id_x]]=100;
    i++;
    }
    return 1;
    }