work work

This commit is contained in:
Spencer Killen 2026-09-26 10:54:26 -06:00
parent 2fa1acc73b
commit 1ba3772b71
Signed by: sjkillen
GPG key ID: 1DAA9D8D7C6ADD05
32 changed files with 105 additions and 7 deletions

View file

@ -5,4 +5,5 @@
[resource]
script = ExtResource("2_qihur")
name = "Plague"
metadata/_custom_type_script = "uid://ucjmg8grkta8"

View file

@ -5,4 +5,5 @@
[resource]
script = ExtResource("2_tg12d")
name = "Time"
metadata/_custom_type_script = "uid://ucjmg8grkta8"

View file

@ -5,4 +5,5 @@
[resource]
script = ExtResource("2_h7qij")
name = "Beer"
metadata/_custom_type_script = "uid://b3tqa2kc2bu0p"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="InanimateCurrency" format=3 uid="uid://by3dayfdpobpt"]
[ext_resource type="Script" uid="uid://cthcf4w1il4h8" path="res://currency/inanimate_currency.gd" id="1_6u8vm"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_vpm3o"]
[resource]
script = ExtResource("1_6u8vm")
name = "Blood"
metadata/_custom_type_script = "uid://b3tqa2kc2bu0p"

View file

@ -5,4 +5,5 @@
[resource]
script = ExtResource("2_nt5od")
name = "Bread"
metadata/_custom_type_script = "uid://b3tqa2kc2bu0p"

View file

@ -5,4 +5,5 @@
[resource]
script = ExtResource("2_aao11")
name = "Corpse"
metadata/_custom_type_script = "uid://b3tqa2kc2bu0p"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="InanimateCurrency" format=3 uid="uid://bnlnq4ucsgfxe"]
[ext_resource type="Script" uid="uid://cthcf4w1il4h8" path="res://currency/inanimate_currency.gd" id="1_i8ogj"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_u4rls"]
[resource]
script = ExtResource("1_i8ogj")
name = "Gold"
metadata/_custom_type_script = "uid://b3tqa2kc2bu0p"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="InanimateCurrency" format=3 uid="uid://ytteqojj7k1o"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_oss13"]
[ext_resource type="Script" uid="uid://cthcf4w1il4h8" path="res://currency/inanimate_currency.gd" id="1_r1hhf"]
[resource]
script = ExtResource("1_r1hhf")
name = "Stone"
metadata/_custom_type_script = "uid://b3tqa2kc2bu0p"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="InanimateCurrency" format=3 uid="uid://b8b6yr444ecdk"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_6tuon"]
[ext_resource type="Script" uid="uid://cthcf4w1il4h8" path="res://currency/inanimate_currency.gd" id="1_s2pc4"]
[resource]
script = ExtResource("1_s2pc4")
name = "Water"
metadata/_custom_type_script = "uid://b3tqa2kc2bu0p"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="InanimateCurrency" format=3 uid="uid://b7vjuqkog7cxd"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_g2gb5"]
[ext_resource type="Script" uid="uid://cthcf4w1il4h8" path="res://currency/inanimate_currency.gd" id="1_ilt41"]
[resource]
script = ExtResource("1_ilt41")
name = "Wood"
metadata/_custom_type_script = "uid://b3tqa2kc2bu0p"

View file

@ -1,11 +1,5 @@
extends Resource
class_name Production
enum Type {
Produce,
Consume,
}
@export var type = Type.Produce
@export var currency: Currency
@export var amount: int

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://l8osuuxl7exe"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_e7gnr"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_m37xt"]
[resource]
script = ExtResource("1_e7gnr")
name = "Archer"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://dlxnbyiurne1s"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_cnnt2"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_o1w50"]
[resource]
script = ExtResource("1_o1w50")
name = "Calvary"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://dsohovjbf3s2p"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_10o5k"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_cup2e"]
[resource]
script = ExtResource("1_10o5k")
name = "Chicken"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://b5qok0rcalr"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_0c5xt"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_607lg"]
[resource]
script = ExtResource("1_0c5xt")
name = "Cow"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://clx8tbrad4m7c"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_0dcki"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_qayfp"]
[resource]
script = ExtResource("1_0dcki")
name = "Dinosaur"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://b1tgtujqs5lnr"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_8u0th"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_ohece"]
[resource]
script = ExtResource("1_8u0th")
name = "Doctor"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -5,4 +5,5 @@
[resource]
script = ExtResource("2_j265y")
name = "Drunk"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://dn0c1pfq04obw"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_35xhy"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_kipvp"]
[resource]
script = ExtResource("1_kipvp")
name = "Farmer"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -5,4 +5,5 @@
[resource]
script = ExtResource("1_y7sat")
name = "King Guard"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://8uo3q8rn6qqr"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_8hvx0"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_qvvhd"]
[resource]
script = ExtResource("1_qvvhd")
name = "Lover"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://sq2lrgnfjugj"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_81xhi"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_m8i4c"]
[resource]
script = ExtResource("1_m8i4c")
name = "Mercenary"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://dq70tpr5osjkk"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_egwdx"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_iy37t"]
[resource]
script = ExtResource("1_egwdx")
name = "Messenger"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://dpaj2dk3qm7ow"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_phc4h"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_yn73g"]
[resource]
script = ExtResource("1_phc4h")
name = "Miner"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://rdrcyvuvrp2m"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_c1r5q"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_g345f"]
[resource]
script = ExtResource("1_g345f")
name = "Pig"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://dk3wsnr3ku7ka"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_acsld"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_jo5ux"]
[resource]
script = ExtResource("1_jo5ux")
name = "Royalty"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://dfj4jwdmff6bu"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_ou6ev"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_wync1"]
[resource]
script = ExtResource("1_ou6ev")
name = "Spy"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://chsv8oeajty8j"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_0qymk"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_an3bl"]
[resource]
script = ExtResource("1_an3bl")
name = "Town Crier"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,7 +1,9 @@
[gd_resource type="Resource" script_class="SentientCurrency" format=3 uid="uid://6xylw7p78fvf"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="1_05kyk"]
[ext_resource type="Script" uid="uid://hcvynq5fjypj" path="res://currency/sentient_currency.gd" id="1_tds6s"]
[resource]
script = ExtResource("1_tds6s")
name = "Wizard"
metadata/_custom_type_script = "uid://hcvynq5fjypj"

View file

@ -1,6 +1,36 @@
extends Node
signal productions_update(p: Array[Production])
signal production_log(producer: Currency, p: Production)
@export var currencies: Array[Production]
@export var members: Array
func get_currency(c: Currency) -> Production:
for p in currencies:
if c == p.currency:
return p
var p := Production.new()
p.currency = c
p.amount = 0
currencies.append(p)
productions_update.emit.call_deferred(currencies)
return p
func sync_currency():
#for p in currencies:
#if p.amount == 0:
#currencies.remove_at()
productions_update.emit.call_deferred(currencies)
func produce(producer: Currency, production: Production):
production_log.emit.call_deferred(producer, production)
func simulate():
pass
productions_update.emit.call_deferred(currencies)
func _ready() -> void:
simulate()
for i in range(100):
produce(preload("res://currency/sentient/chicken.tres"), currencies[0])
produce(preload("res://currency/sentient/chicken.tres"), currencies[2])

View file

@ -1,6 +1,29 @@
[gd_scene format=3 uid="uid://dnpioqaes87yb"]
[ext_resource type="Script" uid="uid://i14prh1jocdd" path="res://economy.gd" id="1_csm0v"]
[ext_resource type="Script" uid="uid://dddyxbkq0ienn" path="res://currency/production.gd" id="2_tljx8"]
[ext_resource type="Resource" uid="uid://dmctedq3pav0t" path="res://currency/inanimate/corpse.tres" id="3_4ctyq"]
[ext_resource type="Resource" uid="uid://rdrcyvuvrp2m" path="res://currency/sentient/pig.tres" id="4_d7dul"]
[ext_resource type="Resource" uid="uid://dfj4jwdmff6bu" path="res://currency/sentient/spy.tres" id="5_4ctyq"]
[sub_resource type="Resource" id="Resource_jd86c"]
script = ExtResource("2_tljx8")
currency = ExtResource("3_4ctyq")
amount = 10
metadata/_custom_type_script = "uid://dddyxbkq0ienn"
[sub_resource type="Resource" id="Resource_jd7cj"]
script = ExtResource("2_tljx8")
currency = ExtResource("4_d7dul")
amount = 3
metadata/_custom_type_script = "uid://dddyxbkq0ienn"
[sub_resource type="Resource" id="Resource_ei3g1"]
script = ExtResource("2_tljx8")
currency = ExtResource("5_4ctyq")
amount = -4
metadata/_custom_type_script = "uid://dddyxbkq0ienn"
[node name="Economy" type="Node" unique_id=1950923383]
script = ExtResource("1_csm0v")
currencies = Array[ExtResource("2_tljx8")]([SubResource("Resource_jd86c"), SubResource("Resource_jd7cj"), SubResource("Resource_ei3g1")])

View file

@ -10,11 +10,13 @@ config_version=5
[application]
run/main_scene="uid://d06w1wtct0mfs"
config/features=PackedStringArray("4.7")
[autoload]
Dialogic="*uid://ds2q0uclmolvu"
Economy="*uid://dnpioqaes87yb"
[dialogic]