Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2017-06-27, 10:56


admiral123







Wiek: 29
Na forum: 3276 dni
Posty: 16

Piwa: 1

Respekt: 50

Ostrzeżeń: 100%
Mam problem z groszami, w mysql wszystko jest dobrze. ale w gui przy liczbie 1000000+ nie pokazuje setnej grosza a przy 10 mln+ nie wy?wietla w og?le groszy jest (liczba.00) Jak to naprawi??

    kasa string.format("PLN %.02f"kasa)


za pomoc repka!

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-06-27, 10:58


Atroth







Wiek: 23
Na forum: 3677 dni
Posty: 1089
Nick w MP: Atroth

Piwa: 4808

Respekt: 540
Respekt: 540

admiral123, Zr?b za pomoc? elementDaty z?ot?wki i grosze. Musisz r?wnie? zrobi?, ?e gdy gracz ma wi?cej ni? 100 groszy daje mu +1z?. System z "getPlayerMoney" Ci z groszami nie pomo?e.

Podpis

Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-06-27, 11:26


admiral123







Wiek: 29
Na forum: 3276 dni
Posty: 16

Piwa: 1

Respekt: 50

Ostrzeżeń: 100%
Rookspack, nie mam getplayermoney tylko setElementData

[ Dodano: 2017-06-27, 11:28 ]
Rookspack, Musze odzielnie zrobi? grosze i z?oty? na 2 elementdaty?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-06-27, 11:34


Atroth







Wiek: 23
Na forum: 3677 dni
Posty: 1089
Nick w MP: Atroth

Piwa: 4808

Respekt: 540
Respekt: 540

admiral123, Szczerze nigdy nie robi?em tego systemu, ale my?l?, ?e tak. Prosty przyk?ad:


local function naliczGrosze ()

    if getElementData(localPlayer"grosze") > 100 then
        local zloty getElementData(localPlayer"zloty")
            setElementData(localPlayer"zloty", +1)
    end
end


Podpis

Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-06-27, 12:55


neku^







Wiek: 24
Na forum: 3521 dni
Posty: 461
Nick w MP: neku^

Piwa: 1186

Respekt: 320,5
Respekt: 320,5Respekt: 320,5Respekt: 320,5

Wystarczy podzielic getPlayerMoney przez 100 i wyjd? ci grosze :)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-06-27, 14:14


Dexnes_

Tiger






Wiek: 26
Na forum: 4401 dni
Posty: 620
Nick w MP: Dexnes

Piwa: 1394

Respekt: 390
Respekt: 390Respekt: 390Respekt: 390Respekt: 390

dbn69, Jest to bezsensowny pomys?, gdy? ca?y serwer musia?by? dostosowa? do tego. Gdy b?dziesz chcia? u?y? funkcji setPlayerMoney i dasz 100$ to nada ci 1z? 00 gr. Moim zdaniem najlepszym rozwi?zaniem s? element daty. Jedna odpowiada za centy, natomiast druga za euro.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-06-27, 15:10


Wittx

8===D






Wiek: 26
Na forum: 4794 dni
Posty: 121
Nick w MP: wittula

Piwa: 1905

Respekt: 120
Respekt: 120

local money getPlayerMoney(localPlayer) --pobieramy pieni?dze od lokalnego gracza

local moneyText string.format("%.2f"money/100).." z?" --formatujemy pieni?dze takaby otrzymanasze pseudogrosze

outputChatBox(moneyText) --wy?wietlamy wynik naszego kodu


Nie musisz bawi? si? w ?adne elementData. Jedyne co musisz zrobi? to podnie?? ceny stokrotnie oraz zmieni? ich wy?wietlanie w przer??nych sklepach. Zmiana tekstu w sklepach to chwila, sam widzisz ile miejsca zaj??o "przerobienie" pieni?dzy gracza w moim kodzie.

Wybieraj?c m?j spos?b zmniejszasz maksymaln? ilo?? pieni?dzy jak? mo?e posiada? gracz. Zamiast $999999999 (9 cyfr) gracz b?dzie m?g? mie? maksymalnie 9999999.99 z? (7 cyfr i dwie po kropce).

Tak szczerze - kto b?dzie trzepa? takie kokosy na serwerze... :D

System pieni?dzy oparty na "dw?ch zarezerwowanych szufladkach" w elementData (na przyk?ad "zlotowki" i "grosze") trzeba by by?o napisa? samemu od pocz?tku, napisa? funkcje na dawanie pieni?dzy, zabieranie pieni?dzy, sprawdzanie czy warto?? pieni?dzy wynosi tyle i tyle (zar?wno z?ot?wek jak i groszy), na przyk?ad czy gracz posiada wi?cej lub tyle samo co 125 z? 50 gr przy sobie. Dla kogo? kto dopiero zaczyna swoj? przygod? z klepaniem w klawiatur? napisanie takiego systemu mo?e by? problemem.

Rookspack napisał/a:

admiral123, Szczerze nigdy nie robi?em tego systemu, ale my?l?, ?e tak. Prosty przyk?ad:

local function naliczGrosze ()

    if getElementData(localPlayer"grosze") > 100 then
        local zloty getElementData(localPlayer"zloty")
            setElementData(localPlayer"zloty", +1)
    end
end


Oj du?o b??d?w. Na pierwszy strza? - warunek. 100 groszy to z?ot?wka, w warnuku z?ot?wk? b?dzie dopiero to co jest wi?ksze od 100. Nale?a?oby uzy? ">=" zamiast ">". Drugi b??d - setElementData. Napisanie samego +1 nam nic nie da, poniewa? tu ustawiasz warto?? i trzeba poda? konkrety.
setElementData(localPlayer"zloty"zloty 1)

Do zmiennej zloty dodajemy 1, tak zwana inkrementacja.

I teraz najwa?niejsze - trzeba my?le? zawsze w dwie strony. Je?li groszy jest 100 lub wi?cej to fajnie, wi?cej z?ot?wek, super i wgl (jeszcze grosze trzeba wyzerowa? o czym Rookspack zapomnia?), ale co je?li tych groszy b?dzie mniej ni? 0? Na serwerze mamy te? traci? pieni?dze, prawda?

Dexnes_ napisał/a:

Jest to bezsensowny pomys?, gdy? ca?y serwer musia?by? dostosowa? do tego.


Do systemu pieni?dzy opartym na elementData tym bardziej musia?by dostosowa? wszystkie skrypty. ?atwiej jest podnie?? ceny stokrotnie ni? zmienia? ca?y system wp?acania i wyp?acania pieni?dzy w cudzych skryptach (nie oszukujmy si?, pocz?tkuj?ca osoba nie napisze od razu systemu sklepu). Zw?aszcza, ?e wi?kszo?? takich skrypt?w oparta jest na tablicach gdzie zawarte s? przedmioty i kwoty, a co za tym idzie - s? pobierane dane z tablicy. Je?li nie mamy w planach dawa? warto?ci z groszem (na przyk?ad do salonu samochodowego) to nawet nie trzeba zmienia? cen w tablicach tylko pomno?y? cen? przez 100 podczas pobierania tej warto?ci z tablicy.

Nie mia?em na celu nikogo urazi?, po prostu chcia?em jako? wyt?umaczy? b??dy i przedstawi? swoje zdanie na ten temat. ;) Mam nadziej?, ?e pomog?em. :)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-06-27, 16:44


neku^







Wiek: 24
Na forum: 3521 dni
Posty: 461
Nick w MP: neku^

Piwa: 1186

Respekt: 320,5
Respekt: 320,5Respekt: 320,5Respekt: 320,5

Jak ostatnio sprawdza?em system pieni?dzy to na jednej element dacie wszystko dzia?a?o. Przy wy?wietlaniu string format, a przy odejmowaniu normalnie setPlayerData (tak samo z dodawaniem tylko ?e zamiast - b?dzie +). Tak?e nie widz? sensu robienia dwoch elementdat.

Postaw piwo autorowi tego posta
 

 
Tagi: grosze
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Grosze Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku