Download Documentation API Reference Samples Asset Store Donate
Clicker Game
https://github.com/pokepetter/ursina/blob/master/samples/clicker_game.py
'''
clicker game
make a gold counter
make a button
you earn gold for every click
when you have enough gold you can unlock new nodes to automatically generate gold!
'''
from ursina import *
app = Ursina()
window.color = color._20
gold = 0
counter = Text(text='0', y=.25, z=-1, scale=2, origin=(0,0), background=True)
button = Button(text='+', color=color.azure, scale= .125)
def button_click():
global gold
gold += 1
counter.text = str(gold)
button.on_click = button_click
button_2 = Button(cost=10, x=.2, scale=.125, color=color.dark_gray, disabled=True)
button_2.tooltip = Tooltip(f'<gold>Gold Generator\n<default>Earn 1 gold every second.\nCosts {button_2.cost} gold.')
def buy_auto_gold():
global gold
if gold >= button_2.cost:
gold -= button_2.cost
counter.text = str(gold)
invoke(auto_generate_gold, 1, 1)
button_2.on_click = buy_auto_gold
def auto_generate_gold(value=1, interval=1):
global gold
gold += 1
counter.text = str(gold)
button_2.animate_scale(.125 * 1.1, duration=.1)
button_2.animate_scale(.125, duration=.1, delay=.1)
invoke(auto_generate_gold, value, delay=interval)
def update():
global gold
for b in (button_2, ):
if gold >= b.cost:
b.disabled = False
b.color = color.green
else:
b.disabled = True
b.color = color.gray
app.run()