Skocz do zawartości

separator tysięcy


jdpl2401

Rekomendowane odpowiedzi

Hej ;-) Potrzebuje jakiejś rady. Chciałbym zrobić jakiś separator do pieniędzy. Konkretnie chodzi mi o to, że liczhba $1000 zapisywana by była jako $1.000. Nie wiem czy dobrze myślę, ale zapewne powinienem zrobić 2 zmienne, jedna (1.) a druga (.000). Tylko, że jeżeli będę chciał zwiększyć podczas gry stan pieniędzy o np $2.300 to muszę zrobić: global.kasa1+=2; oraz global.kasa2+=300; Tu moje pytanie, bo według mnie będzie to wyglądać tak, że jak zmienna bedzie równa 000 to będzie nam wyświetlać liczbę 0.

 

 

 

 

Chyba, że jest jakaś możliwość nadania zmiennej wartości 1.200, tak aby wyświetlało 1.200 a nie 1.2 ?

Odnośnik do komentarza
Udostępnij na innych stronach

To ze zmiennymi to zły pomysł.

Nie wiem, czy GML ma taki bajer, ale zmienną liczbową trzymaj w pamięci, a wyświetlaj jako string.

Ofc, ten string możesz sformatować, że co czwarty znak możesz dodać '.', lub coś w ten deseń

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

Nie wiem czy to najszybszy sposób, ale:

 

skrypt: separator

GML (separator)
var i, j, strin;

strin = string(argument0);

i = string_length(strin);

 

if i < 4 return strin;

 

var strout;

strout = '';

 

for(j = i; j > 3; j-=3) {

strout = '.' + string_copy(strin, j - 2, 3) + strout;

}

strout = string_copy(strin, 0, j) + strout;

 

return strout;

 

użycie

GML
draw_text(10,10,separator(1000000));
Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...