Teleport listing mysql problem
#1

I'm trying to create a dynamic teleport system , i want in this dialog to look "Name of the frist teleport ,Name of The 2tH teleport" but only the frist teleport name's is loading.... can somebody help me ?
i think is something wrong with the loading because when i'm creating them in-game and after type /tplist is working.

The last teleport "Name" has been created 2 seconds before calling the dialog.

In-game:



But my DB is :



My loading code.
pawn Код:
stock IncarcaTeleporturi()
{
    new Cache: Result = mysql_query( SQL, "SELECT * FROM `teleports`" ), Get[ 2 ];
    cache_get_data( Get[ 0 ], Get[ 1 ], SQL ); // Get[ 0 ] - Rows || Get[ 1 ] - Fields || SQL - connectionHandle
    for(new i = 0; i < Get[ 0 ]; i++)
    {
        new field[129];
        new tid =  cache_get_field_content_int( i, "ID", SQL );
        TeleportInfo[tid][TeleportAngle]  = cache_get_field_content_int( i, "Angle", SQL );
        TeleportInfo[tid][Interior]  = cache_get_field_content_int( i, "INT", SQL );
        TeleportInfo[tid][State]  = cache_get_field_content_int( i, "State", SQL );
        TeleportInfo[tid][World]  = cache_get_field_content_int( i, "VW", SQL );
        TeleportInfo[tid][TeleportX]  = cache_get_field_content_float( i, "X", SQL );
        TeleportInfo[tid][TeleportY] = cache_get_field_content_float( i, "Y", SQL );
        TeleportInfo[tid][TeleportZ] = cache_get_field_content_float( i, "Z", SQL );
        cache_get_field_content( 0, "Name", field, SQL, sizeof( field ) );
        format( TeleportInfo[tid][Name], 50, "%s", field );
        sTeles++;
    }
    cache_delete( Result );
    printf("[6.] Am incarcat toate teleporturile [%d]",sTeles);
    return 1;
}

My command to create & list

pawn Код:
if(strcmp(cmd, "/createtp", true) == 0 || strcmp(cmd, "/createteleport", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][Administrator] != 20)
            {
                SendClientMessage(playerid, -1, "{FFFFFF}(( {FFCC00}Informatie -{C0C0C0} nu ai accces la aceasta comanda! {FFFFFF}))");
                return 1;
            }
            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_YELLOW2, "{FFFFFF}(( {FFCC00}Exemplu folosire: {C0C0C0} /createteleport [nume] {FFFFFF}))");
                return 1;
            }
            new Float:x, Float:y, Float:z, Float:Angle;
            GetPlayerPos(playerid, x, y, z);
            GetPlayerFacingAngle(playerid, Angle);
            sTeles++;
            new tid = sTeles;
            TeleportInfo[tid][TeleportX] = x;
            TeleportInfo[tid][TeleportY] = y;
            TeleportInfo[tid][TeleportZ] = z;
            TeleportInfo[tid][State] = 1;
            TeleportInfo[tid][TeleportAngle] = Angle;
            TeleportInfo[tid][Interior] = GetPlayerInterior(playerid);
            TeleportInfo[tid][World] = GetPlayerVirtualWorld(playerid);
            format(TeleportInfo[tid][Name], 50,"%s", result);
            szQuery[ 0 ] = EOS;
            format( szQuery , 500 , "INSERT INTO `teleports` ( ID, Name, X, Y, Z, Angle, `INT`, VW, State) VALUES ( %d,'%s',%f,%f,%f,%f,%d,%d, %d )", tid, TeleportInfo[tid][Name], TeleportInfo[tid][TeleportX],TeleportInfo[tid][TeleportY],TeleportInfo[tid][TeleportZ],TeleportInfo[tid][TeleportAngle],TeleportInfo[tid][Interior],TeleportInfo[tid][World],TeleportInfo[tid][State]);
            mysql_tquery( SQL , szQuery , "" , "" );
            SendClientMessage(playerid, -1 , "done");
               
        }
        return 1;
    }
pawn Код:
if (strcmp(cmd, "/tplist", true) == 0 || strcmp(cmd, "/teleports", true) == 0)
    {
        if(PlayerInfo[playerid][Administrator] >= 1 || PlayerInfo[playerid][Helper] == 1)
        {
            new count = 0;
            new string[766];
            for(new i = 0; i < MAX_TELES; i++)
            {
                if(TeleportInfo[i][State] == 1)
                {
                    format(string, sizeof(string), "%s\n%s \n", string,TeleportInfo[i][Name]);
                    count++;

                }
            }
            new string2[456];
            format(string2, sizeof(string2), "Lista de teleportare (%d in total)", count);
            ShowPlayerDialog(playerid, DIALOG_TPLIST, DIALOG_STYLE_LIST, string2, string, "Teleport", "Cancel");

        }
        return 1;
    }
Reply
#2

Done , fixed.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)