cześć chciałbym w grze zrobić kolor np 0-9999 zlota jest kolorem bialym a 10000-99999 zielony

i się tak zastanawiam czy to lepiej napisać w c++ czy w pythonie
mam oto taki kod próbowałem to tak zrobić w pythonie ale efekt jest nie za dobry bo po stracie zlota ponizej kolorku kolorek sie nie zmienia dopiero po przelogowaniu się.

i jeszcze jest taki błąd ze komendą mogę dodawać złoto i odejmować i wtedy się zaczyna kolejny błąd bo jak walne -123123123 powinno być 0 i kolor biały ale tak nie jest

def RefreshStatus(self):
 
    money = player.GetElk()
    if money <= 1000000:
        self.wndMoney.SetFontColor(122, 231, 93)
    elif money >= 1000001 and money <= 10000000:
        self.wndMoney.SetFontColor(255, 215, 76)
    elif money >= 10000001:
        self.wndMoney.SetFontColor(128, 192, 255)
    self.wndMoney.SetText(localeInfo.NumberToMoneyString(money))