[Ayuda] Ayuda payday facciones.
#1

Buenas, me gustarнa como conseguir o modificar la opciуn de PayDay de facciones ya que solo me sale los mismo paydays en todos los facciones, me gustaria como poder modificarlo o crearlo.

Muchas Gracias!
Reply
#2

Con un if en el public PayDay que chekee si el usuario es miembro o lider de X facciуn, le de $X de dinero.
Ejemplo:

pawn Код:
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1)
                    {
                    SendClientMessage(playerid, 0xFFFFFFAA, "Pago extra: $200");
                    GivePlayerMoney(playerid, 200);
                    }
Reply
#3

Pбsanos la lнnea del public payday
Reply
#4

Quote:
Originally Posted by ermakiloko
Посмотреть сообщение
Pбsanos la lнnea del public payday
Es tu cуdigo, bъsca "Public Payday" en el GameMode con el Pawn.

Quote:

Este foro requiere que tъ esperes 120 segundos entre mensajes.

Esto ya me tiene cansado..
Reply
#5

Este es el codigo, donde pongo lo que me has pasado?

Код:
public PayDay()
{

 new string[128];
 new account,interest;
 new rent = 0;
 for(new i = 0; i < MAX_PLAYERS; i++)
 {
  if(IsPlayerConnected(i))
  {
      if(PlayerInfo[i][pLevel] > 0)
      {
       if(MoneyMessage[i]==1)
    {
        SendClientMessage(i, COLOR_LIGHTRED, "Gobierno Federal: Fuiste Arrestado Por No Pagar Tus Impuestos..");
        GameTextForPlayer(i, "~r~Agarrado!", 2000, 1);
        SetPlayerInterior(i, 6);
        PlayerInfo[i][pInt] = 6;
             new ArrSp = random(1)
     if(ArrSp == 0) SetPlayerPos(i,264.5170,82.2344,1001.0391);
     else if(ArrSp == 1) SetPlayerPos(i,263.9358,87.1664,1001.0391);
              PlayerInfo[i][pJailed] = 1;
              SafeResetPlayerWeapons(i);
              SafeResetPlayerMoney(i);
     WantedPoints[i] = 0;
     PlayerInfo[i][pJailTime] = 240;
     format(string, sizeof(string), "Fuiste Encarcelado Por: %d Segundos. Fianza: La Deuda.", PlayerInfo[i][pJailTime]);
     SendClientMessage(i, COLOR_WHITE, 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] = 255;
      SendClientMessage(i, COLOR_WHITE, "Fuiste Denunciado.");
      rent = 0;
     }
     HouseInfo[key][hTakings] = HouseInfo[key][hTakings]+rent;
    }
    new tmpintrate;
    if (key != 255 && strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
    {
        if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = intrate+4; }
     else { tmpintrate = intrate+2; }
    }
    else
    {
        if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = 3; }
     else { tmpintrate = 1; }
    }
    if(PlayerInfo[i][pPayDay] >= 5)
    {
        CrackDen += 10;
        Tax += TaxValue;
        SaveStuff();
        PlayerInfo[i][pAccount] -= TaxValue;
     new checks = 150;
     if(PlayerInfo[i][pDonateRank] > 0)
     {
         new bonus = PlayerInfo[i][pPayCheck] / 10;
         checks += bonus;
     }
        new ebill = (PlayerInfo[i][pAccount]/10000)*(PlayerInfo[i][pLevel]);
        account += checks;
        if(PlayerInfo[i][pAccount] > 0)
        {
         PlayerInfo[i][pAccount] -= ebill;
     }
     else
     {
         ebill = 0;
     }

     // --------------- PRESTAMO ------------------ //
     if(PlayerInfo[i][pPrestamo] > 0)
      {
          if(PlayerInfo[i][pPrestamo] < PlayerInfo[i][pAccount])
              {
                  PlayerInfo[i][pPrestamo] -= PlayerInfo[i][pCantidad];
                  PlayerInfo[i][pDias] -= 1;
                  PlayerInfo[i][pAccount] -= PlayerInfo[i][pCantidad];
         BizzInfo[11][bTill] += PlayerInfo[i][pCantidad]
              }
       else
           {
               PlayerInfo[i][pDias] -= 1;
        }
      }
     if(PlayerInfo[i][pHipoteca] > 0)
         {
             if(PlayerInfo[i][pAccount] > PlayerInfo[i][pHipoteca])
                 {
                     PlayerInfo[i][pHipoteca] -= PlayerInfo[i][pCantidad];
                                    PlayerInfo[i][pAccount] -= PlayerInfo[i][pCantidad];
                                    BizzInfo[11][bTill] += PlayerInfo[i][pCantidad]
        }
       else
           {
           PlayerInfo[i][pHipoteca] += PlayerInfo[i][pCantidad]
           }
      }
      // ----------------------------------------------- //
                    interest = (PlayerInfo[i][pAccount]/1000)*(tmpintrate);
     PlayerInfo[i][pExp]++;
     PlayerPlayMusic(i);
     PlayerInfo[i][pAccount] = account+interest+PlayerInfo[i][pSueldo];
     // --------------------------------
     SendClientMessage(i, 0x808080FF, "|______ DНA DE PAGA - Estado Bancario _____|");
     format(string, sizeof(string), "  Salario: $%d   Impuestos: -$%d", checks+PlayerInfo[i][pSueldo], TaxValue);
     SendClientMessage(i, COLOR_GRAD4, string);
     if(PlayerInfo[i][pPhousekey] != 255 || PlayerInfo[i][pPbiskey] != 255)
     {
         format(string, sizeof(string), "  Factura Electricidad: -$%d", ebill);
      SendClientMessage(i, COLOR_GRAD1, string);
     }
     format(string, sizeof(string), "  Intereses: 0.%d PorCiento",tmpintrate);
     SendClientMessage(i, COLOR_GRAD2, string);
     format(string, sizeof(string), "  Interйs Ganado: $%d", interest);
     SendClientMessage(i, COLOR_GRAD3, string);
     SendClientMessage(i, 0x808080FF, "|--------------------------------------|");
     format(string, sizeof(string), "  Nuevo Balance: $%d", PlayerInfo[i][pAccount]);
     SendClientMessage(i, 0x00CC00FF, string);
     format(string, sizeof(string), "  Renta: -$%d", rent);
     SendClientMessage(i, COLOR_GRAD5, string);
     format(string, sizeof(string), "~g~~h~Dia De la Paga");
     GameTextForPlayer(i, string, 5000, 1);
     // -------------------------------------- //
Reply
#6

Abajo de
pawn Код:
format(string, sizeof(string), "~g~~h~Dia De la Paga");
GameTextForPlayer(i, string, 5000, 1);
Reply
#7

EDIT:
Quote:
Originally Posted by El Bardo
Посмотреть сообщение
Abajo de
pawn Код:
format(string, sizeof(string), "~g~~h~Dia De la Paga");
GameTextForPlayer(i, string, 5000, 1);
Si lo pone debajo de

pawn Код:
format(string, sizeof(string), "~g~~h~Dia De la Paga");
GameTextForPlayer(i, string, 5000, 1);
No le saldrб en un buen formato para que quede bonito y bien presentado.


Si lo quieres bien presentado, hazlo asi:

pawn Код:
public PayDay()
{

 new string[128];
 new account,interest;
 new rent = 0;
 for(new i = 0; i < MAX_PLAYERS; i++)
 {
  if(IsPlayerConnected(i))
  {
      if(PlayerInfo[i][pLevel] > 0)
      {
       if(MoneyMessage[i]==1)
    {
        SendClientMessage(i, COLOR_LIGHTRED, "Gobierno Federal: Fuiste Arrestado Por No Pagar Tus Impuestos..");
        GameTextForPlayer(i, "~r~Agarrado!", 2000, 1);
        SetPlayerInterior(i, 6);
        PlayerInfo[i][pInt] = 6;
             new ArrSp = random(1)
     if(ArrSp == 0) SetPlayerPos(i,264.5170,82.2344,1001.0391);
     else if(ArrSp == 1) SetPlayerPos(i,263.9358,87.1664,1001.0391);
              PlayerInfo[i][pJailed] = 1;
              SafeResetPlayerWeapons(i);
              SafeResetPlayerMoney(i);
     WantedPoints[i] = 0;
     PlayerInfo[i][pJailTime] = 240;
     format(string, sizeof(string), "Fuiste Encarcelado Por: %d Segundos. Fianza: La Deuda.", PlayerInfo[i][pJailTime]);
     SendClientMessage(i, COLOR_WHITE, 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] = 255;
      SendClientMessage(i, COLOR_WHITE, "Fuiste Denunciado.");
      rent = 0;
     }
     HouseInfo[key][hTakings] = HouseInfo[key][hTakings]+rent;
    }
    new tmpintrate;
    if (key != 255 && strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
    {
        if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = intrate+4; }
     else { tmpintrate = intrate+2; }
    }
    else
    {
        if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = 3; }
     else { tmpintrate = 1; }
    }
    if(PlayerInfo[i][pPayDay] >= 5)
    {
        CrackDen += 10;
        Tax += TaxValue;
        SaveStuff();
        PlayerInfo[i][pAccount] -= TaxValue;
     new checks = 150;
     if(PlayerInfo[i][pDonateRank] > 0)
     {
         new bonus = PlayerInfo[i][pPayCheck] / 10;
         checks += bonus;
     }
        new ebill = (PlayerInfo[i][pAccount]/10000)*(PlayerInfo[i][pLevel]);
        account += checks;
        if(PlayerInfo[i][pAccount] > 0)
        {
         PlayerInfo[i][pAccount] -= ebill;
     }
     else
     {
         ebill = 0;
     }

     // --------------- PRESTAMO ------------------ //
     if(PlayerInfo[i][pPrestamo] > 0)
      {
          if(PlayerInfo[i][pPrestamo] < PlayerInfo[i][pAccount])
              {
                  PlayerInfo[i][pPrestamo] -= PlayerInfo[i][pCantidad];
                  PlayerInfo[i][pDias] -= 1;
                  PlayerInfo[i][pAccount] -= PlayerInfo[i][pCantidad];
         BizzInfo[11][bTill] += PlayerInfo[i][pCantidad]
              }
       else
           {
               PlayerInfo[i][pDias] -= 1;
        }
      }
     if(PlayerInfo[i][pHipoteca] > 0)
         {
             if(PlayerInfo[i][pAccount] > PlayerInfo[i][pHipoteca])
                 {
                     PlayerInfo[i][pHipoteca] -= PlayerInfo[i][pCantidad];
                                    PlayerInfo[i][pAccount] -= PlayerInfo[i][pCantidad];
                                    BizzInfo[11][bTill] += PlayerInfo[i][pCantidad]
        }
       else
           {
           PlayerInfo[i][pHipoteca] += PlayerInfo[i][pCantidad]
           }
      }
      // ----------------------------------------------- //
                    interest = (PlayerInfo[i][pAccount]/1000)*(tmpintrate);
     PlayerInfo[i][pExp]++;
     PlayerPlayMusic(i);
     PlayerInfo[i][pAccount] = account+interest+PlayerInfo[i][pSueldo];
     // --------------------------------
     SendClientMessage(i, 0x808080FF, "|______ DНA DE PAGA - Estado Bancario _____|");
     format(string, sizeof(string), "  Salario: $%d   Impuestos: -$%d", checks+PlayerInfo[i][pSueldo], TaxValue);
     SendClientMessage(i, COLOR_GRAD4, string);
     if(PlayerInfo[i][pPhousekey] != 255 || PlayerInfo[i][pPbiskey] != 255)
     {
         format(string, sizeof(string), "  Factura Electricidad: -$%d", ebill);
      SendClientMessage(i, COLOR_GRAD1, string);
     }
     if(PlayerInfo[i][pMember] == 1 || if(PlayerInfo[i][pLeader] == 1)
     {
         SendClientMessage(i, COLOR_GRAD1, "Pago extra: $200");
         GivePlayerMoney(i, 200);
     }
     format(string, sizeof(string), "  Intereses: 0.%d PorCiento",tmpintrate);
     SendClientMessage(i, COLOR_GRAD2, string);
     format(string, sizeof(string), "  Interйs Ganado: $%d", interest);
     SendClientMessage(i, COLOR_GRAD3, string);
     SendClientMessage(i, 0x808080FF, "|--------------------------------------|");
     format(string, sizeof(string), "  Nuevo Balance: $%d", PlayerInfo[i][pAccount]);
     SendClientMessage(i, 0x00CC00FF, string);
     format(string, sizeof(string), "  Renta: -$%d", rent);
     SendClientMessage(i, COLOR_GRAD5, string);
     format(string, sizeof(string), "~g~~h~Dia De la Paga");
     GameTextForPlayer(i, string, 5000, 1);
     // -------------------------------------- //
Busca esto:

pawn Код:
if(PlayerInfo[i][pMember] == 1 || if(PlayerInfo[i][pLeader] == 1)
     {
         SendClientMessage(i, COLOR_GRAD1, "Pago extra: $200");
         GivePlayerMoney(i, 200);
     }
Y verбs donde lo aсadн
Reply
#8

Me da estos errores:

Код:
Desktop\Server SpainRol\gamemodes\ES-RP.pwn(17691) : error 017: undefined symbol "playerid"
Desktop\Server SpainRol\gamemodes\ES-RP.pwn(17693) : error 017: undefined symbol "playerid"
Desktop\Server SpainRol\gamemodes\ES-RP.pwn(17694) : error 017: undefined symbol "playerid"
Reply
#9

Claro, ponlo como yo te dije arriba, el payday en un public en general por asi decirlo, no puedes usar "playerid", deberбs usar "i"
Reply
#10

Funciones perfecto....
pero el dinero extra me llega en mano, como puedo hacer para que me llegue al banco?

Gracias y disculpa por preguntar mucho...
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)