Bienvenue, Invité. Veuillez vous connecter ou vous inscrire.
Avez-vous perdu votre courriel d'activation?
Connexion avec identifiant, mot de passe et durée de la session

 
avancée

254731 Messages dans 14037 Fils de discussion- par 6623 Membres - Dernier membre: Magicien

24 Mai 2012 à 17:49:59
GTAOnline.frSan Andreas MultiplayerScripting SA-MP [Pawn center] (Modérateurs: S!m, Xartrick)Forcer la paye par une commande
Pages: [1]   Bas de page
Imprimer
Auteur Fil de discussion: Forcer la paye par une commande  (Lu 326 fois)
0 Membres et 1 Invité sur ce fil de discussion.
jordanve
Hors ligne Hors ligne

Grand Banditisme
*

Messages: 88


WWW
« le: 09 Mars 2010 à 22:35:12 »

Bonjour,

Je voudrais forcer la paye qui vient toutes les heures.

Un pote ma passé ce code ci dessous mais ça marque "Vous n'avez pas jouer ainser longtemp pour obtenir votre paye".

Code:
if(strcmp(cmd, "/payday", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
        if(gPlayerLogged[playerid] == 0)
        {
            SendClientMessage(playerid, COLOR_GREY, "   Vous devez d'abord vous identifiez !");
            return 1;
        }
if (PlayerInfo[playerid][pAdmin] < 2)
{
SendClientMessage(playerid, COLOR_GRAD2, "   Vous n'êtes pas autorisé à utilisez cette commande !");
return 1;
}
    PayDay();
}
return 1;
}

Merci beaucoup
Journalisée
Mr_C30
Hors ligne Hors ligne


GTAOnline Addict
*

souvent conquise jamais soumise

Messages: 947






Djames69

« Répondre #1 le: 09 Mars 2010 à 22:40:08 »

fait nous voir le payday  homy
Journalisée




Manger du radis noir !
>>> >>> >>><<< <<< <<<

jordanve
Hors ligne Hors ligne

Grand Banditisme
*

Messages: 88


WWW
« Répondre #2 le: 09 Mars 2010 à 22:42:27 »

Voilà :

Code:
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, "Vous n'avez pas payé vos dette, vous allez en prison.");
    GameTextForPlayer(i, "~r~Bousiller!", 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), "Vous êtes en prisons pour %d secondes.   Caution: Incapable", 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, "Vous avez été éjecté.");
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; }//HouseInfo[key][hLevel]
}
else
{
    if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = 3; }
else { tmpintrate = 1; }
}
if(PlayerInfo[i][pPayDay] >= 6)
{
    Tax += TaxValue;//Should work for every player online
    PlayerInfo[i][pAccount] -= TaxValue;
new checks = PlayerInfo[i][pPayCheck] / 6;
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_GREEN, "|________________ Extrait de Compte ________________|");
format(string, sizeof(string), "  Salaire HTC: $%d   Taxe: -$%d", checks, TaxValue);
SendClientMessage(i, COLOR_WHITE, string);
if(PlayerInfo[i][pPhousekey] != 255 || PlayerInfo[i][pPbiskey] != 255)
{
    format(string, sizeof(string), "  Facture d'Electrécité: -$%d", ebill);
SendClientMessage(i, COLOR_WHITE, string);
}
format(string, sizeof(string), "  Argent sur le compte avant  paycheck: $%d", account - checks);
SendClientMessage(i, COLOR_WHITE, string);
format(string, sizeof(string), "  Interêt: 0.%d pourcent",tmpintrate);
SendClientMessage(i, COLOR_WHITE, string);
format(string, sizeof(string), "  Interêt Gagné $%d", interest);
SendClientMessage(i, COLOR_WHITE, string);
SendClientMessage(i, COLOR_GREEN, "|----------------------------------------------------|");
format(string, sizeof(string), "  Argent sur le compte après  paycheck: $%d", PlayerInfo[i][pAccount]);
SendClientMessage(i, COLOR_WHITE, string);
format(string, sizeof(string), "  Location: -$%d", rent);
SendClientMessage(i, COLOR_WHITE, string);
if(PlayerInfo[i][pHotel] == 1)
{
                        new hotelcost = BizzInfo[6][bEntranceCost];
    format(string, sizeof(string), "  Hotel: -$%d", hotelcost);
SendClientMessage(i, COLOR_WHITE, string);
BizzInfo[6][bTill] += BizzInfo[6][bEntranceCost];
ExtortionBiz(6, BizzInfo[6][bEntranceCost]);
BizzInfo[6][bProducts]--;
PlayerInfo[i][pAccount] -= hotelcost;
OnPropUpdate();
}
format(string, sizeof(string), "~y~PayDay~n~~w~Allez voir votre compte");
GameTextForPlayer(i, string, 5000, 1);
rent = 0;
PlayerInfo[i][pPayDay] = 0;
PlayerInfo[i][pPayCheck] = 0;
PlayerInfo[i][pConnectTime] += 1;
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, "* Vous n'avez pas jouer assez longtemps pour obtenir votre paye.");
}
}
}
}
SaveAccounts();
Checkprop();
return 1;
}
Journalisée
Mr_C30
Hors ligne Hors ligne


GTAOnline Addict
*

souvent conquise jamais soumise

Messages: 947






Djames69

« Répondre #3 le: 09 Mars 2010 à 22:46:00 »

je n'arive pas trop a lire Grima&ccedil;ant   mais essaye secis  Clin d'oeil
Code: (pawno)
if(strcmp(cmd, "/payday", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
        if(gPlayerLogged[playerid] == 0)
        {
            SendClientMessage(playerid, COLOR_GREY, "   Vous devez d'abord vous identifiez !");
            return 1;
        }
if (PlayerInfo[playerid][pAdmin] < 2)
{
SendClientMessage(playerid, COLOR_GRAD2, "   Vous n'êtes pas autorisé à utilisez cette commande !");
return 1;
}
                            PlayerInfo[playerid][pPayDay] = 7;
    PayDay();
}
return 1;
}

Journalisée




Manger du radis noir !
>>> >>> >>><<< <<< <<<

jordanve
Hors ligne Hors ligne

Grand Banditisme
*

Messages: 88


WWW
« Répondre #4 le: 09 Mars 2010 à 22:55:18 »

Merci beaucoup ça fonctionne a merveille !

Bonne nuit
Journalisée
MrFredo
Hors ligne Hors ligne


GTAOnline Addict
*

Scripteur PHP/PAWN

Messages: 846


WWW
« Répondre #5 le: 10 Mars 2010 à 16:41:33 »

Sa marche pour toi mais pas pour les autre qui n'ont pas la variables a + de 7  Tire la langue
Journalisée

FuSion
Pawn coder
Hors ligne Hors ligne


GTAOnline Big Member
*

for(new i = 0; i < INFINI; i++)

Messages: 526


WWW



« Répondre #6 le: 10 Mars 2010 à 16:51:36 »

Un simple GetPlayerMoney puis une condition qui detecte s'il as l'argent qu'il faut puis un GivePlayerMoney en valeur negatif ferais l'affaire dans ce cas-ci alors  Sourire
Journalisée

dixon
Hors ligne Hors ligne


Banni
Tueur en série
*

Jamais Je n'abandonnerai

Messages: 163


WWWDiX0NeLiTe360

« Répondre #7 le: 10 Mars 2010 à 18:59:25 »

Bonjour, Oui Fredo à raison ! Pour cela tu a une solution tu le fait à chaque joueur connecté par son id approprié ! Et un giveplayerid suffit !

Code :

Code:
if(strcmp(cmd, "/payday", true) == 0) // By DiXoN
{
   if(IsPlayerConnected(playerid))
   {
       if(gPlayerLogged[playerid] == 0)
       {
           SendClientMessage(playerid, COLOR_GREY, "   Vous devez d'abord vous identifiez !");
           return 1;
       }
       tmp = strtok(cmdtext,idx);
if (!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GREY, "USAGE: /payday [playerid/partiDuNom]");
    return 1;
    }
giveplayerid = ReturnUser(tmp);
if (giveplayerid == INVALID_PLAYER_ID)
    {
    SendClientMessage(playerid, COLOR_GREY, "Ce joueur n'est pas là");
    return 1;
    }
if (PlayerInfo[playerid][pAdmin] < 2)
{
SendClientMessage(playerid, COLOR_GRAD2, "   Vous n'êtes pas autorisé à utilisez cette commande !");
return 1;
}
   PlayerInfo[giveplayerid][pPayDay] = 7;
PayDay();
}
return 1;
}
« Dernière édition: 10 Mars 2010 à 19:02:44 par dixon » Journalisée

Modern Sensation RP, Du RP comme vous en avez jamais VU
En Construction | Ouverture Beta Bientôt
Oscar
Hors ligne Hors ligne

Criminel entrainé
*

Messages: 68


« Répondre #8 le: 10 Mars 2010 à 21:19:14 »

Mais non.. Ce qui veut, à mon avis, c'est forcer la paie à tous les joueurs connectés..
Journalisée
jordanve
Hors ligne Hors ligne

Grand Banditisme
*

Messages: 88


WWW
« Répondre #9 le: 11 Mars 2010 à 19:26:01 »

Salut

lol en faite je veux les 2 celle la de dixon et pour tous les joueurs. Embarrass&eacute;

Merci
Journalisée
Oscar
Hors ligne Hors ligne

Criminel entrainé
*

Messages: 68


« Répondre #10 le: 13 Mars 2010 à 18:51:12 »

Faut trouver autre chose que giveplayerid.. Je suis en train de chercher une commande qui permet de faire une certaine chose à tous les joueurs..

genre un allplayerid ou autre..
Journalisée
Gzsume
« J'apprends donc je suis »
Hors ligne Hors ligne


Team NSG
GTAOnline Fan Boy
*

Messages: 2115


« Répondre #11 le: 13 Mars 2010 à 19:05:56 »

Faut trouver autre chose que giveplayerid.. Je suis en train de chercher une commande qui permet de faire une certaine chose à tous les joueurs..

genre un allplayerid ou autre..

Il faut utiliser une boucle.

for(new i=0;i<MAX_PLAYERS;i++) {
          if(IsPlayerConnected(i)) {
                    // Tu place ta fonction ici, et tu utilise "i" plutôt que "playerid".
          }
}
Journalisée



« Dans la vie, il faut savoir
transformer les citrons en limonade. »



dixon
Hors ligne Hors ligne


Banni
Tueur en série
*

Jamais Je n'abandonnerai

Messages: 163


WWWDiX0NeLiTe360

« Répondre #12 le: 13 Mars 2010 à 19:09:26 »

Re, Voilà je ne l'ai pas re testé mais sa devrai être bon :

Code:
if(strcmp(cmd, "/payday", true) == 0) // By DiXoN
{
    if(IsPlayerConnected(playerid))
    {
        if(gPlayerLogged[playerid] == 0)
        {
            SendClientMessage(playerid, COLOR_GREY, "   Vous devez d'abord vous identifiez !");
            return 1;
        }
    for(new i=0; i<MAX_PLAYERS; i++)
    {
if (PlayerInfo[playerid][pAdmin] < 2)
{
SendClientMessage(playerid, COLOR_GRAD2, "   Vous n'êtes pas autorisé à utilisez cette commande !");
return 1;
}
PlayerInfo[playerid][pPayDay] = 5;
    PayDay();
}
}
return 1;
}
Journalisée

Modern Sensation RP, Du RP comme vous en avez jamais VU
En Construction | Ouverture Beta Bientôt
Pages: [1]   Haut de page
Imprimer
Aller à:  

Theme créé par padexx et modifié par GTAOnline.fr
Page générée en 0.195 secondes avec 22 requêtes.
Forum GTAOnline.fr 2.0 | Design par : Lalu et GtaManiac
Merci a toute la communaute pour son support !
Copyright © 2004-2012 - GTAOnline.fr | GTAPro.com | Contact