Ayudenme :/
#1

Hola chicos, buenas noches/maсana/madrugada dependiendo de la hora en cual estйn, querнa una ayuda con esto ya que eh estado intentando pero nada, mi gm esta es sqlite de igual forma el ladmin puesto en el mismo gm (no se si me entienden) pero quiero que el dinero guarde bien o bueno les explico mejor...

tengo 100000 de dinero y al momento de comprar una bomba restara -30000 pero en la base de datos en el cuadrito "dinero" sale -30000 no sale lo que en realidad tiene que salir que es 70000, y eso es mi error, de hecho me sucede con todo lo que tiene que ver con restarle dinero.. me me entendieron aqui de igual forma le dejo el code:

pawn Код:
CMD:comprarc4(playerid, params[]) {
    if(PlayerInfo[playerid][pVip] < 1) return SendClientMessage(playerid,red, "[ERROR]: Tъ No Eres Player Silver.");
    if(GetPlayerMoney(playerid) < 30000) return SendClientMessage(playerid, red, "[ERROR]: No tienes suficiente dinero (Costo $30000).");
    PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]- 30000;
    if(IsPlayerConnected(playerid) && PlayerInfo[playerid][pLogueado] == 1)
    {
    new Query[150];
    format(Query,sizeof(Query),"UPDATE `USERS` SET Dinero = '%d' WHERE `Nick` = '%s' COLLATE NOCASE",
    PlayerInfo[playerid][pCash],
    DB_Escape(pName(playerid)));
    db_query(MegaXtremeDB, Query);
    Query = "\0";
    }
    GivePlayerMoney(playerid, -30000);
    PlayerInfo[playerid][CantidadBombas] += 1;
    CMDMessageToVips(playerid,"COMPRARC4 (Ha Comprado una Bomba)");
    SendClientMessage(playerid, COLOR_BLUE, "[INFO]: Has comprado una bomba. Te ha costado 30000$.");
    SendClientMessage(playerid, COLOR_BLUE, "[INFO]: Usa /ponerc4 para colocar la bomba.");
    return 1;
}
Espero que puedan ayudarme saludos
Reply
#2

Prueba asi..

Код:
CMD:comprarc4(playerid, params[]) {
	if(PlayerInfo[playerid][pVip] < 1) return SendClientMessage(playerid,red, "[ERROR]: Tъ No Eres Player Silver.");
	if(GetPlayerMoney(playerid) < 30000) return SendClientMessage(playerid, red, "[ERROR]: No tienes suficiente dinero (Costo $30000).");
	PlayerInfo[playerid][pCash]= GetPlayerMoney(playerid) - 30000;
	if(IsPlayerConnected(playerid) && PlayerInfo[playerid][pLogueado] == 1)
	{
		new Query[150];
	    format(Query,sizeof(Query),"UPDATE `USERS` SET Dinero = '%d' WHERE `Nick` = '%s' COLLATE NOCASE",
	    PlayerInfo[playerid][pCash],
	    DB_Escape(pName(playerid)));
	    db_query(MegaXtremeDB, Query);
	    Query = "\0";
    }
    GivePlayerMoney(playerid, -30000);
    PlayerInfo[playerid][CantidadBombas] += 1;
	CMDMessageToVips(playerid,"COMPRARC4 (Ha Comprado una Bomba)");
	SendClientMessage(playerid, COLOR_BLUE, "[INFO]: Has comprado una bomba. Te ha costado 30000$.");
	SendClientMessage(playerid, COLOR_BLUE, "[INFO]: Usa /ponerc4 para colocar la bomba.");
	return 1;
}
Reply
#3

Es muy mala prбctica que por cada acciуn se realice una consulta. Lo que te recomiendo es que gestiones el servidor aparte de la db, y una vez que el player desconecta, haya una funciуn que guarde todos los datos en la db.

Saludos!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)