Problema con MySQL
#1

Buenas ya habia hecho un post sobre esto. Pero al parecer lo redacte mal .

El problema es el siguiente entro ami servidor y me pongo nivel , dinero , compro una casa etc pero lo que sucede que no se guarda..... cuando quiero relogear... Repito no se guarda nada lo que me puse no se escribe.... nada queda como cuando entre antes de ponerme todo.. jeje espero que me podais ayudar con este problema.

Gracias
Reply
#2

1. Si estas utilizando el plugin de G-Stylezzz, pon: mysql_debug(1); entre OnGameModeInit
Eso te daria muchas respuestas de porque esta fallando tu sistema.

2. Podrias postear tu script para salvar y guardar?
Reply
#3

pawn Код:
public OnPlayerUpdate(playerid)
{
    if(IsPlayerConnected(playerid))
    {
        if(!gPlayerLogged[playerid])
        {
            SetPlayerCameraPos(playerid, 163.0936,1189.4647,18.7676);
            SetPlayerCameraLookAt(playerid, 169.3990,1218.7959,23.3281);
            SetPlayerPos(playerid, 163.0936,1189.4647,15.7676);
        }
        if(gPlayerLogged[playerid])
        {
            new query[1024];
            PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
            GetPlayerHealth(playerid, PlayerInfo[playerid][pHealth]);
            if ((PlayerInfo[playerid][pPos_x]==0.0 && PlayerInfo[playerid][pPos_y]==0.0 && PlayerInfo[playerid][pPos_z]==0.0))
            {
                PlayerInfo[playerid][pPos_x] = 1684.9;
                PlayerInfo[playerid][pPos_y] = -2244.5;
                PlayerInfo[playerid][pPos_z] = 13.5;
            }
            if(Spectate[playerid] != 255)
            {
                PlayerInfo[playerid][pPos_x] = Unspec[playerid][sPx];
                PlayerInfo[playerid][pPos_y] = Unspec[playerid][sPy];
                PlayerInfo[playerid][pPos_z] = Unspec[playerid][sPz];
                PlayerInfo[playerid][pInt] = Unspec[playerid][sPint];
                PlayerInfo[playerid][pLocal] = Unspec[playerid][sLocal];
            }
            if(PlayerInfo[playerid][pDonateRank] < 1)
            {
                PlayerInfo[playerid][pFuel] = 0;
            }
            mysql_debug(1);
            mysql_reconnect();
            mysql_debug(1);
            format(query, 1024, "UPDATE players SET");
            format(query, 1024, "%s `Level`='%d'", query, PlayerInfo[playerid][pLevel]);
            format(query, 1024, "%s `Conectado`='%d'", query, PlayerInfo[playerid][pConectado]);
            format(query, 1024, "%s,`Admin`='%d'", query, PlayerInfo[playerid][pAdmin]);
            format(query, 1024, "%s,`DonateRank`='%d'", query, PlayerInfo[playerid][pDonateRank]);
            format(query, 1024, "%s,`UpgradePoints`='%d'", query, PlayerInfo[playerid][gPupgrade]);
            format(query, 1024, "%s,`ConnectedTime`='%d'", query, PlayerInfo[playerid][pConnectTime]);
            format(query, 1024, "%s,`Sex`='%d'", query, PlayerInfo[playerid][pSex]);
            format(query, 1024, "%s,`Age`='%d'", query, PlayerInfo[playerid][pAge]);
            format(query, 1024, "%s,`Origin`='%d'", query, PlayerInfo[playerid][pOrigin]);
            format(query, 1024, "%s,`CK`='%d'", query, PlayerInfo[playerid][pCK]);
            format(query, 1024, "%s,`Muted`='%d'", query, PlayerInfo[playerid][pMuted]);
            format(query, 1024, "%s,`Exp`='%d'", query, PlayerInfo[playerid][pExp]);
            format(query, 1024, "%s,`Money`='%d'", query, PlayerInfo[playerid][pCash]);
            format(query, 1024, "%s,`Bank`='%d'", query, PlayerInfo[playerid][pAccount]);
            format(query, 1024, "%s,`Crimes`='%d'", query, PlayerInfo[playerid][pCrimes]);
            format(query, 1024, "%s,`Kills`='%d'", query, PlayerInfo[playerid][pKills]);
            format(query, 1024, "%s,`Deaths`='%d'", query, PlayerInfo[playerid][pDeaths]);
            format(query, 1024, "%s,`Arrested`='%d'", query, PlayerInfo[playerid][pArrested]);
            format(query, 1024, "%s,`WantedDeaths`='%d'", query, PlayerInfo[playerid][pWantedDeaths]);
            format(query, 1024, "%s,`Phonebook`='%d'", query, PlayerInfo[playerid][pPhoneBook]);
            format(query, 1024, "%s,`LottoNr`='%d'", query, PlayerInfo[playerid][pLottoNr]);
            format(query, 1024, "%s,`Fishes`='%d'", query, PlayerInfo[playerid][pFishes]);
            format(query, 1024, "%s,`BiggestFish`='%d'", query, PlayerInfo[playerid][pBiggestFish]);
            format(query, 1024, "%s,`Job`='%d'", query, PlayerInfo[playerid][pJob]);
            format(query, 1024, "%s,`Paycheck`='%d'", query, PlayerInfo[playerid][pPayCheck]);
            format(query, 1024, "%s,`HeadValue`='%d'", query, PlayerInfo[playerid][pHeadValue]);
            format(query, 1024, "%s,`Jailed`='%d'", query, PlayerInfo[playerid][pJailed]);
            format(query, 1024, "%s,`JailTime`='%d'", query, PlayerInfo[playerid][pJailTime]);
            format(query, 1024, "%s,`Materials`='%d'", query, PlayerInfo[playerid][pMats]);
            format(query, 1024, "%s,`Drugs`='%d'", query, PlayerInfo[playerid][pDrugs]);
            format(query, 1024, "%s,`Comprimidos`='%d'", query, PlayerInfo[playerid][pComprimido]);
            format(query, 1024, "%s,`Leader`='%d'", query, PlayerInfo[playerid][pLeader]);
            format(query, 1024, "%s,`Member`='%d'", query, PlayerInfo[playerid][pMember]);
            format(query, 1024, "%s,`FMember`='%d'", query, PlayerInfo[playerid][pFMember]);
            format(query, 1024, "%s,`Rank`='%d'", query, PlayerInfo[playerid][pRank]);
            format(query, 1024, "%s,`Char`='%d'", query, PlayerInfo[playerid][pChar]);
            format(query, 1024, "%s,`ContractTime`='%d'", query, PlayerInfo[playerid][pContractTime]);
            format(query, 1024, "%s,`DetSkill`='%d'", query, PlayerInfo[playerid][pDetSkill]);
            format(query, 1024, "%s,`SexSkill`='%d'", query, PlayerInfo[playerid][pSexSkill]);
            format(query, 1024, "%s,`BoxSkill`='%d'", query, PlayerInfo[playerid][pBoxSkill]);
            format(query, 1024, "%s WHERE `id`='%d' LIMIT 1", query, PlayerInfo[playerid][pID]);
            mysql_query(query);
            format(query, 1024, "UPDATE players SET");
            format(query, 1024, "%s `LawSkill`='%d'", query, PlayerInfo[playerid][pLawSkill]);
            format(query, 1024, "%s,`MechSkill`='%d'", query, PlayerInfo[playerid][pMechSkill]);
            format(query, 1024, "%s,`JackSkill`='%d'", query, PlayerInfo[playerid][pJackSkill]);
            format(query, 1024, "%s,`NewsSkill`='%d'", query, PlayerInfo[playerid][pNewsSkill]);
            format(query, 1024, "%s,`DrugsSkill`='%d'", query, PlayerInfo[playerid][pDrugsSkill]);
            format(query, 1024, "%s,`CookSkill`='%d'", query, PlayerInfo[playerid][pCookSkill]);
            format(query, 1024, "%s,`FishSkill`='%d'", query, PlayerInfo[playerid][pFishSkill]);
            format(query, 1024, "%s,`SHealth`='%.1f'", query, PlayerInfo[playerid][pSHealth]);
            format(query, 1024, "%s,`Health`='%.1f'", query, PlayerInfo[playerid][pHealth]);
            format(query, 1024, "%s,`Int`='%d'", query, PlayerInfo[playerid][pInt]);
            format(query, 1024, "%s,`Local`='%d'", query, PlayerInfo[playerid][pLocal]);
            format(query, 1024, "%s,`Team`='%d'", query, PlayerInfo[playerid][pTeam]);
            format(query, 1024, "%s,`Model`='%d'", query, PlayerInfo[playerid][pModel]);
            format(query, 1024, "%s,`PhoneNr`='%d'", query, PlayerInfo[playerid][pPnumber]);
            format(query, 1024, "%s,`House`='%d'", query, PlayerInfo[playerid][pPhousekey]);
            format(query, 1024, "%s,`Bizz`='%d'", query, PlayerInfo[playerid][pPbiskey]);
            format(query, 1024, "%s,`Pos_x`='%.1f'", query, PlayerInfo[playerid][pPos_x]);
            format(query, 1024, "%s,`Pos_y`='%.1f'", query, PlayerInfo[playerid][pPos_y]);
            format(query, 1024, "%s,`Pos_z`='%.1f'", query, PlayerInfo[playerid][pPos_z]);
            format(query, 1024, "%s,`CarLic`='%d'", query, PlayerInfo[playerid][pCarLic]);
            format(query, 1024, "%s,`FlyLic`='%d'", query, PlayerInfo[playerid][pFlyLic]);
            format(query, 1024, "%s,`BoatLic`='%d'", query, PlayerInfo[playerid][pBoatLic]);
            format(query, 1024, "%s,`FishLic`='%d'", query, PlayerInfo[playerid][pFishLic]);
            format(query, 1024, "%s,`GunLic`='%d'", query, PlayerInfo[playerid][pGunLic]);
            format(query, 1024, "%s,`Gun1`='%d'", query, PlayerInfo[playerid][pGun1]);
            format(query, 1024, "%s,`Gun2`='%d'", query, PlayerInfo[playerid][pGun2]);
            format(query, 1024, "%s,`Gun3`='%d'", query, PlayerInfo[playerid][pGun3]);
            format(query, 1024, "%s,`Gun4`='%d'", query, PlayerInfo[playerid][pGun4]);
            format(query, 1024, "%s,`Ammo1`='%d'", query, PlayerInfo[playerid][pAmmo1]);
            format(query, 1024, "%s,`Ammo2`='%d'", query, PlayerInfo[playerid][pAmmo2]);
            format(query, 1024, "%s,`Ammo3`='%d'", query, PlayerInfo[playerid][pAmmo3]);
            format(query, 1024, "%s,`Ammo4`='%d'", query, PlayerInfo[playerid][pAmmo4]);
            format(query, 1024, "%s,`CarTime`='%d'", query, PlayerInfo[playerid][pCarTime]);
            format(query, 1024, "%s,`PayDay`='%d'", query, PlayerInfo[playerid][pPayDay]);
            format(query, 1024, "%s,`PayDayHad`='%d'", query, PlayerInfo[playerid][pPayDayHad]);
            format(query, 1024, "%s,`CDPlayer`='%d'", query, PlayerInfo[playerid][pCDPlayer]);
            format(query, 1024, "%s,`Wins`='%d'", query, PlayerInfo[playerid][pWins]);
            format(query, 1024, "%s,`Loses`='%d'", query, PlayerInfo[playerid][pLoses]);
            format(query, 1024, "%s,`AlcoholPerk`='%d'", query, PlayerInfo[playerid][pAlcoholPerk]);
            format(query, 1024, "%s,`DrugPerk`='%d'", query, PlayerInfo[playerid][pDrugPerk]);
            format(query, 1024, "%s,`MiserPerk`='%d'", query, PlayerInfo[playerid][pMiserPerk]);
            format(query, 1024, "%s,`PainPerk`='%d'", query, PlayerInfo[playerid][pPainPerk]);
            format(query, 1024, "%s,`TraderPerk`='%d'", query, PlayerInfo[playerid][pTraderPerk]);
            format(query, 1024, "%s,`Tutorial`='%d'", query, PlayerInfo[playerid][pTut]);
            format(query, 1024, "%s,`Mission`='%d'", query, PlayerInfo[playerid][pMissionNr]);
            format(query, 1024, "%s,`Warnings`='%d'", query, PlayerInfo[playerid][pWarns]);
            format(query, 1024, "%s,`Adjustable`='%d'", query, PlayerInfo[playerid][pAdjustable]);
            format(query, 1024, "%s,`Fuel`='%d'", query, PlayerInfo[playerid][pFuel]);
            format(query, 1024, "%s,`Married`='%d'", query, PlayerInfo[playerid][pMarried]);
            format(query, 1024, "%s,`MarriedTo`='%s'", query, PlayerInfo[playerid][pMarriedTo]);
            format(query, 1024, "%s,`Banned`='%d'", query, PlayerInfo[playerid][pBanned]);
            format(query, 1024, "%s WHERE `id`='%d' LIMIT 1", query, PlayerInfo[playerid][pID]);
            mysql_query(query);
        }
    }
    return 1;
}

public OnPlayerLogin(playerid,password[])
{
    new string[MAX_STRING], query[MAX_STRING], playername[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername, MAX_PLAYER_NAME);
    format(query, MAX_STRING, "SELECT * FROM `players` WHERE `Name` = '%s' AND `Password` = MD5('%s') LIMIT 0, 1", playername, password);
    mysql_debug(1);
    mysql_reconnect();
    mysql_debug(1);
    mysql_query(query);
    mysql_store_result();
    if(mysql_num_rows() > 0 && mysql_retrieve_row())
    {
        new value[64];
        mysql_fetch_field_row(value, "id");             PlayerInfo[playerid][pID] = strval(value);
        mysql_fetch_field_row(value, "Validar");        PlayerInfo[playerid][pValidar] = strval(value);
        mysql_fetch_field_row(value, "Level");          PlayerInfo[playerid][pLevel] = strval(value);
        mysql_fetch_field_row(value, "Admin");          PlayerInfo[playerid][pAdmin] = strval(value);
        mysql_fetch_field_row(value, "DonateRank");     PlayerInfo[playerid][pDonateRank] = strval(value);
        mysql_fetch_field_row(value, "UpgradePoints");  PlayerInfo[playerid][gPupgrade] = strval(value);
        mysql_fetch_field_row(value, "ConnectedTime");  PlayerInfo[playerid][pConnectTime] = strval(value);
        mysql_fetch_field_row(value, "Sex");            PlayerInfo[playerid][pSex] = strval(value);
        mysql_fetch_field_row(value, "Age");            PlayerInfo[playerid][pAge] = strval(value);
        mysql_fetch_field_row(value, "Origin");         PlayerInfo[playerid][pOrigin] = strval(value);
        mysql_fetch_field_row(value, "CK");             PlayerInfo[playerid][pCK] = strval(value);
        mysql_fetch_field_row(value, "Muted");          PlayerInfo[playerid][pMuted] = strval(value);
        mysql_fetch_field_row(value, "Exp");            PlayerInfo[playerid][pExp] = strval(value);
        mysql_fetch_field_row(value, "Money");          PlayerInfo[playerid][pCash] = strval(value);
        mysql_fetch_field_row(value, "Banco");          PlayerInfo[playerid][pAccount] = strval(value);
        mysql_fetch_field_row(value, "Crimes");         PlayerInfo[playerid][pCrimes] = strval(value);
        mysql_fetch_field_row(value, "Kills");          PlayerInfo[playerid][pKills] = strval(value);
        mysql_fetch_field_row(value, "Deaths");         PlayerInfo[playerid][pDeaths] = strval(value);
        mysql_fetch_field_row(value, "Arrested");       PlayerInfo[playerid][pArrested] = strval(value);
        mysql_fetch_field_row(value, "WantedDeaths");   PlayerInfo[playerid][pWantedDeaths] = strval(value);
        mysql_fetch_field_row(value, "Phonebook");      PlayerInfo[playerid][pPhoneBook] = strval(value);
        mysql_fetch_field_row(value, "LottoNr");        PlayerInfo[playerid][pLottoNr] = strval(value);
        mysql_fetch_field_row(value, "Fishes");         PlayerInfo[playerid][pFishes] = strval(value);
        mysql_fetch_field_row(value, "BiggestFish");    PlayerInfo[playerid][pBiggestFish] = strval(value);
        mysql_fetch_field_row(value, "Job");            PlayerInfo[playerid][pJob] = strval(value);
        mysql_fetch_field_row(value, "Paycheck");       PlayerInfo[playerid][pPayCheck] = strval(value);
        mysql_fetch_field_row(value, "HeadValue");      PlayerInfo[playerid][pHeadValue] = strval(value);
        mysql_fetch_field_row(value, "Jailed");         PlayerInfo[playerid][pJailed] = strval(value);
        mysql_fetch_field_row(value, "JailTime");       PlayerInfo[playerid][pJailTime] = strval(value);
        mysql_fetch_field_row(value, "Materials");      PlayerInfo[playerid][pMats] = strval(value);
        mysql_fetch_field_row(value, "Drugs");          PlayerInfo[playerid][pDrugs] = strval(value);
        mysql_fetch_field_row(value, "Comprimidos");    PlayerInfo[playerid][pComprimido] = strval(value);
        mysql_fetch_field_row(value, "Leader");         PlayerInfo[playerid][pLeader] = strval(value);
        mysql_fetch_field_row(value, "Member");         PlayerInfo[playerid][pMember] = strval(value);
        mysql_fetch_field_row(value, "FMember");        PlayerInfo[playerid][pFMember] = strval(value);
        mysql_fetch_field_row(value, "Rank");           PlayerInfo[playerid][pRank] = strval(value);
        mysql_fetch_field_row(value, "Char");           PlayerInfo[playerid][pChar] = strval(value);
        mysql_fetch_field_row(value, "ContractTime");   PlayerInfo[playerid][pContractTime] = strval(value);
        mysql_fetch_field_row(value, "DetSkill");       PlayerInfo[playerid][pDetSkill] = strval(value);
        mysql_fetch_field_row(value, "SexSkill");       PlayerInfo[playerid][pSexSkill] = strval(value);
        mysql_fetch_field_row(value, "BoxSkill");       PlayerInfo[playerid][pBoxSkill] = strval(value);
        mysql_fetch_field_row(value, "LawSkill");       PlayerInfo[playerid][pLawSkill] = strval(value);
        mysql_fetch_field_row(value, "MechSkill");      PlayerInfo[playerid][pMechSkill] = strval(value);
        mysql_fetch_field_row(value, "JackSkill");      PlayerInfo[playerid][pJackSkill] = strval(value);
        mysql_fetch_field_row(value, "NewsSkill");      PlayerInfo[playerid][pNewsSkill] = strval(value);
        mysql_fetch_field_row(value, "DrugsSkill");     PlayerInfo[playerid][pDrugsSkill] = strval(value);
        mysql_fetch_field_row(value, "CookSkill");      PlayerInfo[playerid][pCookSkill] = strval(value);
        mysql_fetch_field_row(value, "FishSkill");      PlayerInfo[playerid][pFishSkill] = strval(value);
        mysql_fetch_field_row(value, "SHealth");        PlayerInfo[playerid][pSHealth] = floatstr(value);
        mysql_fetch_field_row(value, "Health");         PlayerInfo[playerid][pHealth] = floatstr(value);
        mysql_fetch_field_row(value, "Int");            PlayerInfo[playerid][pInt] = strval(value);
        mysql_fetch_field_row(value, "Local");          PlayerInfo[playerid][pLocal] = strval(value);
        mysql_fetch_field_row(value, "Team");           PlayerInfo[playerid][pTeam] = strval(value);
        mysql_fetch_field_row(value, "Model");          PlayerInfo[playerid][pModel] = strval(value);
        mysql_fetch_field_row(value, "PhoneNr");        PlayerInfo[playerid][pPnumber] = strval(value);
        mysql_fetch_field_row(value, "House");          PlayerInfo[playerid][pPhousekey] = strval(value);
        mysql_fetch_field_row(value, "Bizz");           PlayerInfo[playerid][pPbiskey] = strval(value);
        mysql_fetch_field_row(value, "Pos_x");          PlayerInfo[playerid][pPos_x] = floatstr(value);
        mysql_fetch_field_row(value, "Pos_y");          PlayerInfo[playerid][pPos_y] = floatstr(value);
        mysql_fetch_field_row(value, "Pos_z");          PlayerInfo[playerid][pPos_z] = floatstr(value);
        mysql_fetch_field_row(value, "CarLic");         PlayerInfo[playerid][pCarLic] = strval(value);
        mysql_fetch_field_row(value, "FlyLic");         PlayerInfo[playerid][pFlyLic] = strval(value);
        mysql_fetch_field_row(value, "BoatLic");        PlayerInfo[playerid][pBoatLic] = strval(value);
        mysql_fetch_field_row(value, "FishLic");        PlayerInfo[playerid][pFishLic] = strval(value);
        mysql_fetch_field_row(value, "GunLic");         PlayerInfo[playerid][pGunLic] = strval(value);
        mysql_fetch_field_row(value, "Gun1");           PlayerInfo[playerid][pGun1] = strval(value);
        mysql_fetch_field_row(value, "Gun2");           PlayerInfo[playerid][pGun2] = strval(value);
        mysql_fetch_field_row(value, "Gun3");           PlayerInfo[playerid][pGun3] = strval(value);
        mysql_fetch_field_row(value, "Gun4");           PlayerInfo[playerid][pGun4] = strval(value);
        mysql_fetch_field_row(value, "Ammo1");          PlayerInfo[playerid][pAmmo1] = strval(value);
        mysql_fetch_field_row(value, "Ammo2");          PlayerInfo[playerid][pAmmo2] = strval(value);
        mysql_fetch_field_row(value, "Ammo3");          PlayerInfo[playerid][pAmmo3] = strval(value);
        mysql_fetch_field_row(value, "Ammo4");          PlayerInfo[playerid][pAmmo4] = strval(value);
        mysql_fetch_field_row(value, "CarTime");        PlayerInfo[playerid][pCarTime] = strval(value);
        mysql_fetch_field_row(value, "PayDay");         PlayerInfo[playerid][pPayDay] = strval(value);
        mysql_fetch_field_row(value, "PayDayHad");      PlayerInfo[playerid][pPayDayHad] = strval(value);
        mysql_fetch_field_row(value, "CDPlayer");       PlayerInfo[playerid][pCDPlayer] = strval(value);
        mysql_fetch_field_row(value, "Wins");           PlayerInfo[playerid][pWins] = strval(value);
        mysql_fetch_field_row(value, "Loses");          PlayerInfo[playerid][pLoses] = strval(value);
        mysql_fetch_field_row(value, "AlcoholPerk");    PlayerInfo[playerid][pAlcoholPerk] = strval(value);
        mysql_fetch_field_row(value, "DrugPerk");       PlayerInfo[playerid][pDrugPerk] = strval(value);
        mysql_fetch_field_row(value, "MiserPerk");      PlayerInfo[playerid][pMiserPerk] = strval(value);
        mysql_fetch_field_row(value, "PainPerk");       PlayerInfo[playerid][pPainPerk] = strval(value);
        mysql_fetch_field_row(value, "TraderPerk");     PlayerInfo[playerid][pTraderPerk] = strval(value);
        mysql_fetch_field_row(value, "Tutorial");       PlayerInfo[playerid][pTut] = strval(value);
        mysql_fetch_field_row(value, "Mission");        PlayerInfo[playerid][pMissionNr] = strval(value);
        mysql_fetch_field_row(value, "Warnings");       PlayerInfo[playerid][pWarns] = strval(value);
        mysql_fetch_field_row(value, "Adjustable");     PlayerInfo[playerid][pAdjustable] = strval(value);
        mysql_fetch_field_row(value, "Fuel");           PlayerInfo[playerid][pFuel] = strval(value);
        mysql_fetch_field_row(value, "Married");        PlayerInfo[playerid][pMarried] = strval(value);
        mysql_fetch_field_row(PlayerInfo[playerid][pMarriedTo], "MarriedTo");
        mysql_fetch_field_row(value, "Banned");         PlayerInfo[playerid][pBanned] = strval(value);
        if(!PlayerInfo[playerid][pValidar])
        {
            SendClientMessage(playerid, COLOR_WHITE, "SERVIDOR: Tu cuenta no estб validada, debes de esperar a su validaciуn.");
            Kick(playerid);
            return 1;
        }
Aqui esta espero que me puedas ayudar jeje
Reply
#4

Felicitaciones, hay una sola cosa que falla en tu sistema: todo. Primero que nada, їPor quй pones todo en OnPlayerUpdate? Se ha dicho infinitas veces que ese callback es llamado MUCHAS VECES por segundo por cada jugador. Imagнnate, es como apretar CTRL + G en el block de notas 20 veces por segundo, їcrees que al servidor no le duele?

Segundo, estбs dandole formato a "query" mil y una vez, usando format, pero solo haces una bendita consulta al final de todo. "format" remplaza todo lo que hay en "query" cada vez que lo usas, por lo que si pretendes ir agregandole cosas a "query", no lo vas a lograr asн. Pon todas las cosas que vas a guardar en unos pocos "format"s, y asegurate de hacer la consulta ("mysql_query") despuйs de cada format.

A por cierto, tu casa probablemente se hubiera quemado si hubieras tenido 500 jugadores en el servidor (eso es seсal de que estбs aprendiendo bien).
Reply
#5

Buenos , pues ultimante no entendi.. ¬¬ pero si estoy mal agradeceria que me corrigieras lo que puse y como debo ponerlo ya que.... estoy aprendiendo... gracias. por tu ayuda.. jeje
Reply
#6

Por supuesto:

Primero, guardamos los datos con menos frecuencia, por ejemplo, cada 10 minutos y cuando el jugador se desconecta.
pawn Код:
public OnGameModeInit()
{
    ...
    SetTimer("CadaDiezMinutos", 600000, true); // Timer.
    return 1;
}
pawn Код:
forward CadaDiezMinutos();
public CadaDiezMinutos()
{
    for(new playerid = 0; playerid != MAX_PLAYERS; ++ playerid)
    {
        if(IsPlayerConnected(playerid))
        {
            // Aquн pondrнamos el cуdigo o funciуn que usemos.
        }
    }
    return 1;
}
pawn Код:
public OnPlayerDisconnect(playerid, reason)
{
    ... // Los tres puntos suspensivos significan que puede haber cualquier cosa allн.
    // Aquн ponemos nuestro cуdigo o function que usemos para guardar los datos.
    return 1;
}
Podemos una funciуn la cual usarнamos cuando queremos guardar los datos de cierto jugador.
pawn Код:
stock GuardarDatosDeJugador(playerid)
{
    if(gPlayerLogged[playerid])
    {
        new query[1024];
       
        PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
        GetPlayerHealth(playerid, PlayerInfo[playerid][pHealth]);
        if ((PlayerInfo[playerid][pPos_x]==0.0 && PlayerInfo[playerid][pPos_y]==0.0 && PlayerInfo[playerid][pPos_z]==0.0))
        {
            PlayerInfo[playerid][pPos_x] = 1684.9;
            PlayerInfo[playerid][pPos_y] = -2244.5;
            PlayerInfo[playerid][pPos_z] = 13.5;
        }
        if(Spectate[playerid] != 255)
        {
            PlayerInfo[playerid][pPos_x] = Unspec[playerid][sPx];
            PlayerInfo[playerid][pPos_y] = Unspec[playerid][sPy];
            PlayerInfo[playerid][pPos_z] = Unspec[playerid][sPz];
            PlayerInfo[playerid][pInt] = Unspec[playerid][sPint];
            PlayerInfo[playerid][pLocal] = Unspec[playerid][sLocal];
        }
        if(PlayerInfo[playerid][pDonateRank] < 1) PlayerInfo[playerid][pFuel] = 0;
        format(query, sizeof(query), "UPDATE players SET campo = %d, campo = %d, campo = '%s' WHERE id = %d", variable, variable2, string, PlayerInfo[playerid][pID]);
        mysql_query(query);
        format(query, sizeof(query), "UPDATE players SET otro_campo = %d, otro_campo = %d, otro_campo = '%s' WHERE id = %d", o_variable, o_variable2, o_string, PlayerInfo[playerid][pID]);
        mysql_query(query);
        // Y asн hasta que tengas todos los datos incluidos.
        return 1;
    }
    return 0;
}
Ya queda por tu parte aprender de los ejemplos.
Reply
#7

Gracias ahora si entendi!!! =D
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)