WIP: economy: add money system #7

Draft
jeremy wants to merge 3 commits from robux into master
Showing only changes of commit 4402a72ce2 - Show all commits

View file

@ -10,6 +10,7 @@ const gear_slots = ["1", "2", "3"]
var starting_gear = preload("res://gears/ball.tscn")
var ep = PlayerParticipant.new(self)
var suspended = false
var direction = Vector3.ZERO
var target_velocity = Vector3.ZERO
@ -27,13 +28,17 @@ func resize_ui():
$HUD.position.x = 0
$HUD.position.y = size.y - hud_h
func make_hud():
func make_hud(balance = ep.balance()):
if suspended: # TODO: CHANGE TO DEAD!
return
var text = ""
for node in $Backpack.get_children():
if not node is Gear:
continue
text += "%s (%s)\n" % [node.gear_name(), node.name]
text += "Holding " + $Pivot/Container/Gear.gear_name() + "\n"
text += str(balance) + " ₹ (rupees)\n"
text += str(health()) + " hp"
$HUD.text = text
@ -147,6 +152,18 @@ func equip(gear: Gear):
message("Backpack full")
return false
# Economy participant definition
class PlayerParticipant extends Economy.Participant:
var player: Player
func _init(p: Player):
player = p
participant_name = "Player participant"
func message(string):
player.message(string)
func on_balance_update(bal):
player.make_hud(bal)
# Player mechanics
func move_player(x, z):
@ -217,6 +234,7 @@ func do_gears():
# Engine callbacks
func _ready():
get_tree().current_scene.get_node("Economy").register(ep)
get_viewport().size_changed.connect(resize_ui)
resize_ui()
respawn()