09.06.2011, 13:41
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]
[/spoiler]
Creo que no me dejo nada...
Utilizo base redweb.
Espero
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.");
}
Creo que no me dejo nada...
Utilizo base redweb.
Espero