Problema extraсo con el payday
#1

Hola a todos. Veran tengo un problema con el payday de mi servidor. El payday parece que esta bien pero solo da puntos de respeto a gente a partir de level 2. Los level 1 no les da o.O

Dejo los datos del payday

[spoiler]
pawn Код:
SetTimer("PayDay", 3600000, true);


public PayDay()
{
    new string[128];
    new account,interest;
    new rent = 0;
    printf("PRUEBADECARGAS"); // esto lo puse para comprobar que en la consola sale al dar payday y sale pero no lo da
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i))
        {
            if(PlayerInfo[i][pLevel] > 0)
            {
                if(MoneyMessage[i]==1)
                {
                    SendClientMessage(i, COLOR_RED, "no pagaste tu deuda");
                    GameTextForPlayer(i, "~r~Busted!", 2000, 1);
                    SetPlayerInterior(i, 6);
                    PlayerInfo[i][pInt] = 6;
                    SetPlayerPos(i, 264.6288,77.5742,1001.0391);
                    PlayerInfo[i][pJailed] = 1;
                    SafeResetPlayerWeapons(i);
                    SafeResetPlayerMoney(i);
                    WantedPoints[i] = 0;
                    PlayerInfo[i][pJailTime] = 240;
                    format(string, sizeof(string), "Usted es encarcelado por %d segundos.   Fianza: Incapaz", PlayerInfo[i][pJailTime]);
                    SendClientMessage(i, COLOR_RED, string);
                }
                new playername2[MAX_PLAYER_NAME];
                GetPlayerName(i, playername2, sizeof(playername2));
                account = PlayerInfo[i][pAccount];
                new key = PlayerInfo[i][pPhousekey];
                if(key != 255)
                {
                    rent = HouseInfo[key][hRent];
                    if(strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
                    {
                        rent = 0;
                    }
                    else if(rent > GetPlayerMoney(i))
                    {
                        PlayerInfo[i][pPhousekey] = 500;
                        SendClientMessage(i, COLOR_WHITE, "Usted ha sido desahuciado.");
                        rent = 0;
                    }
                    HouseInfo[key][hTakings] = HouseInfo[key][hTakings]+rent;
                }
                new tmpintrate;
                if (key != 500 && strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
                {
                    if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = intrate+4; }
                    else { tmpintrate = intrate+2; }//HouseInfo[key][hLevel]
                }
                else
                {
                    if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = 3; }
                    else { tmpintrate = 1; }
                }
                if(PlayerInfo[i][pPayDay] >= 5)
                {
                    Tax += TaxValue;//Should work for every player online
                    PlayerInfo[i][pAccount] -= TaxValue;
                    new checks = PlayerInfo[i][pPayCheck] / 5;
                    if(PlayerInfo[i][pDonateRank] > 0)
                    {
                        new bonus = PlayerInfo[i][pPayCheck] / 10;
                        checks += bonus;
                    }
                    new ebill = (PlayerInfo[i][pAccount]/10000)*(PlayerInfo[i][pLevel]);
                    //ConsumingMoney[i] = 1;
                    //SafeGivePlayerMoney(i, checks);
                    account += checks;
                    if(PlayerInfo[i][pAccount] > 0)
                    {
                        PlayerInfo[i][pAccount] -= ebill;
                        SBizzInfo[4][sbTill] += ebill;
                    }
                    else
                    {
                        ebill = 0;
                    }
                    interest = (PlayerInfo[i][pAccount]/1000)*(tmpintrate);
                    PlayerInfo[i][pExp]++;
                    PlayerPlayMusic(i);
                    PlayerInfo[i][pAccount] = account+interest;
                    SendClientMessage(i, COLOR_LIGHTBLUE, "      Anuncio del Banco");
                    format(string, sizeof(string), "  Pago: $%d   Impuestos: -$%d", checks, TaxValue);
                    SendClientMessage(i, COLOR_WHITE, string);
                    if(PlayerInfo[i][pPhousekey] != 255 || PlayerInfo[i][pPbiskey] != 255)
                    {
                        format(string, sizeof(string), "  Factura de la electricidad: -$%d", ebill);
                        SendClientMessage(i, COLOR_GRAD1, string);
                    }
                    format(string, sizeof(string), "  Balance: $%d", account - checks);
                    SendClientMessage(i, COLOR_WHITE, string);
                    format(string, sizeof(string), "  Tasa de interes: 0.%d Porciento",tmpintrate);
                    SendClientMessage(i, COLOR_WHITE, string);
                    format(string, sizeof(string), "  Interes Adelanto $%d", interest);
                    SendClientMessage(i, COLOR_WHITE, string);
                    SendClientMessage(i, COLOR_RED, " ");
                    format(string, sizeof(string), "  Nuevo Balance: $%d", PlayerInfo[i][pAccount]);
                    SendClientMessage(i, COLOR_WHITE, string);
                    format(string, sizeof(string), "  Alquiler: -$%d", rent);
                    SendClientMessage(i, COLOR_WHITE, string);
                    format(string, sizeof(string), "~y~Dia de paga~n~~w~Comprobante de pago en su cuenta");
                    GameTextForPlayer(i, string, 5000, 1);
                    rent = 0;
                    PlayerInfo[i][pPayDay] = 0;
                    PlayerInfo[i][pPayCheck] = 0;
                    PlayerInfo[i][pConnectTime] += 1;
                    timesrobbed[i]=0;
                    if(FarmerVar[i] == 0)
                    {
                        FarmerPickup[i][0] = 0;
                    }
                    if(DrugFarmerVar[i] == 0)
                    {
                        DrugFarmerPickup[i][0] = 0;
                    }
                    if(SmugglerWork[i] == 0)
                    {
                        PayDaySecure[i] = 0;
                    }
                    if(PlayerInfo[i][pDonateRank] > 0)
                    {
                        PlayerInfo[i][pPayDayHad] += 1;
                        if(PlayerInfo[i][pPayDayHad] >= 5)
                        {
                            PlayerInfo[i][pExp]++;
                            PlayerInfo[i][pPayDayHad] = 0;
                        }
                    }
                }
                else
                {
                    SendClientMessage(i, COLOR_WHITE, "* Usted no ha jugado bastante tiempo para obtener un Dia de paga.");
                }
            }
        }
    }
    SaveAccounts();
    Checkprop();
    return 1;
}

Y este es el comando que hize para darlo a mano pero me dice SERVER: Unknown Command...

if(strcmp(cmd, "/darpayday", true) == 0)
{
if(PlayerInfo[playerid][pAdmin] >= 10)
{
PayDay();
return 1;
}
return SendClientMessage(playerid, COLOR_GREY," No eres Administrador.");
}
[/spoiler]


Creo que no me dejo nada...

Utilizo base redweb.

Espero
Reply
#2

Mm, haber voy a buscar.

P.D.: No uses printf si solo vas a poner un mensaje sin formato. https://sampwiki.blast.hk/wiki/Print
Reply
#3

Lo puse para comprobar que en la consola daba el payday pero a los users no
Reply
#4

Y si pones:
pawn Код:
if(PlayerInfo[i][pLevel] >= 0)
Reply
#5

Ya esta puesto asi....
Reply
#6

Mira, mi sugerencia es que programes una nueva funciуn con un cуdigo de payday renovado, y mбs que estбs usando como base redwebs y dicho gamemode tiene un bug referente al payday.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)