• 07 Juin 2026, 05:08:00


Auteur Sujet: Les points pour l'argent (Ex: 1.000.000)  (Lu 1940 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne inbox

  • *
  • Tueur en série
  • Messages: 214
    • Voir le profil
    • Blog sur Gta
Les points pour l'argent (Ex: 1.000.000)
« le: 31 Mai 2008, 16:38:04 »
Bonsoir,

Je me suis mis a faire un script avec les TextDraw
et je voudrais savoir si c'est possible de mettre l'argent avec les points ?

j'ai fait ceci
new Float:heal;
new Float:banque;
banque = bank[playerid];
heal = GetPlayerMoney(playerid);

format(string, sizeof(string), "~r~Argent: ~y~%.2f ~r~Banque: ~y~%.2f", heal,banque);
TextDrawSetString(info[playerid], string);

ca me donne bien un point mais quand le joueur arrive a plus de 500000000
ca me donne ca 5000000.00

au lieu d'avoir ca comment faire pour que l'argent soit a 50.000.000 ?

Merci
Cordialement,
signature hors-normes (image trop grande)

Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : Les points pour l'argent (Ex: 1.000.000)
« Réponse #1 le: 01 Juin 2008, 19:56:46 »
Tu veu quoi exactement ? quand on a 500 d'argent, ca nous met 500 de score ??

++
nikko

MadFire

  • Invité
Re : Les points pour l'argent (Ex: 1.000.000)
« Réponse #2 le: 01 Juin 2008, 20:38:55 »
Non il veut par exemple que si il ya 5 millions que ca lui fasse 5.000.000 et non 5000000  ;)

Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : Les points pour l'argent (Ex: 1.000.000)
« Réponse #3 le: 01 Juin 2008, 20:56:20 »
Que ca lui fasse 500.500.500 dans le tableau des scores ??

++
nikko

Hors ligne Bayshore

  • *
  • Grand Banditisme
  • Messages: 923
    • Voir le profil
Re : Les points pour l'argent (Ex: 1.000.000)
« Réponse #4 le: 01 Juin 2008, 20:57:53 »
Dans sa textdraw :)

Hors ligne 77190A

  • *
  • Tueur
  • Messages: 99
    • Voir le profil
    • gtaMP
Re : Les points pour l'argent (Ex: 1.000.000)
« Réponse #5 le: 01 Juin 2008, 20:58:14 »
je crois que 'est pas possible sa
a moins de modifier dans le pwn le gains de cash en tuant une personne ?

Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : Les points pour l'argent (Ex: 1.000.000)
« Réponse #6 le: 01 Juin 2008, 21:14:21 »
Ouai, a part un textdraw, cest pas possible de faire aparaitre des 100.100.111 dans le tableau des scores ..

++
nikko

Hors ligne Bayshore

  • *
  • Grand Banditisme
  • Messages: 923
    • Voir le profil
Re:
« Réponse #7 le: 01 Juin 2008, 21:20:06 »
nikko, il ne parle aucunement du score. :)


Code: (pawn) [Sélectionner]
new size = strlen(bank[playerid]);
new argent[size+10];    valstr(argent, bank[playerid])

if(size > 3)
{
if(size == 4)
{
strins(argent, ".", 1);
}
if(size == 5)
{
strins(argent, ".", 2);
}
if(size == 6
{
strins(argent, ".", 3);
}
if(size == 7)
{
strins(argent, ".", 1);strins(argent, ".", 4);
}
if(size == 8)
{
strins(argent, ".", 2);strins(argent, ".", 5);
}
if(size == 9)
{
strins(argent, ".", 3);strins(argent, ".", 6);
}
if(size == 10)
{
strins(argent, ".", 1);strins(argent, ".", 4);strins(argent, ".", 7);
}
if(size == 11)
{
strins(argent, ".", 2);strins(argent, ".", 5);strins(argent, ".", 8);
}
if(size == 12)
{
strins(argent, ".", 3);strins(argent, ".", 6);strins(argent, ".", 9);
}
} //fin if(size > 3)

Pas testé. :)


++
Alexandre

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : Les points pour l'argent (Ex: 1.000.000)
« Réponse #8 le: 02 Juin 2008, 14:22:55 »
Bien compliqué tout ça Alexandre.
Tout d'abord, tu n'as pas retenu la leçon sur les else devant les if ....
De plus :
- On ne peut pas faire de strlen sur une valeur numérique (bank[playerid]).
- On ne peut pas mettre de variable pour dimensioner un tableau (argent[size+10];).

Pour faire ce que tu veux faire inbox, il faut analyser un peu la chose.
Donc tu veux mettre un point pour separer les chiffres d'un nombre par groupe de trois en partant de la fin.
Pour faire ça, il faut partir de la fin de la chaine qui contient le nombre (boucle inversée).
On copie chaque chiffre dans une chaine temporaire et tous les 3 chiffres, on ajoute un '.' dans cette chaine temporaire.
Une fois qu'on a copié tous les chiffres, il ne reste plus qu'à retourner la chaine temporaire (puisqu'elle est à l'envers).
Je sais, ce n'est pas très clair mais ça devrait suffir pour donner une base.

Je ne donne pas le code, je laisse les codeurs en herbe essayer de le faire (ça c'est mon coté sadique  ;)).

++
Syg
Courtesy of GtaManiac