diff options
-rw-r--r-- | assets/BuyBeans.png.import | 34 | ||||
-rw-r--r-- | assets/Kaffeevertrag.png.import | 34 | ||||
-rw-r--r-- | assets/laser_blast.png.import | 6 | ||||
-rw-r--r-- | buildings/dev.gd | 2 | ||||
-rw-r--r-- | main_scene/bean.gd | 13 | ||||
-rw-r--r-- | main_scene/management.tscn | 21 | ||||
-rw-r--r-- | save_state.gd | 16 | ||||
-rw-r--r-- | upgrades/upgrades.tscn | 31 |
8 files changed, 149 insertions, 8 deletions
diff --git a/assets/BuyBeans.png.import b/assets/BuyBeans.png.import new file mode 100644 index 0000000..636eecd --- /dev/null +++ b/assets/BuyBeans.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/BuyBeans.png-96fefb7045a683a8734d093b13b94241.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/BuyBeans.png" +dest_files=[ "res://.import/BuyBeans.png-96fefb7045a683a8734d093b13b94241.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Kaffeevertrag.png.import b/assets/Kaffeevertrag.png.import new file mode 100644 index 0000000..0215c3a --- /dev/null +++ b/assets/Kaffeevertrag.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Kaffeevertrag.png-210a36d5c1fe3873414b459b210f99bc.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Kaffeevertrag.png" +dest_files=[ "res://.import/Kaffeevertrag.png-210a36d5c1fe3873414b459b210f99bc.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/laser_blast.png.import b/assets/laser_blast.png.import index f9e6604..2899f95 100644 --- a/assets/laser_blast.png.import +++ b/assets/laser_blast.png.import @@ -2,15 +2,15 @@ importer="texture" type="StreamTexture" -path="res://.import/laser_blast.PNG-98f5df94b5d70eb459cbeaba7d67a38b.stex" +path="res://.import/laser_blast.png-faf99ac52547b5232e1f87a2c7649cc8.stex" metadata={ "vram_texture": false } [deps] -source_file="res://assets/laser_blast.PNG" -dest_files=[ "res://.import/laser_blast.PNG-98f5df94b5d70eb459cbeaba7d67a38b.stex" ] +source_file="res://assets/laser_blast.png" +dest_files=[ "res://.import/laser_blast.png-faf99ac52547b5232e1f87a2c7649cc8.stex" ] [params] diff --git a/buildings/dev.gd b/buildings/dev.gd index abc1d77..7ee407d 100644 --- a/buildings/dev.gd +++ b/buildings/dev.gd @@ -5,7 +5,7 @@ var riot := preload("res://riot/riot.tscn") func _tick() -> void: if SaveState.riot_cooldown == 0: - SaveState.coffee -= get_amount() + SaveState.coffee -= get_amount() * SaveState.upgrades['wageslavery'] if SaveState.coffee < 0: invoke_riot() SaveState.coffee = 0 diff --git a/main_scene/bean.gd b/main_scene/bean.gd new file mode 100644 index 0000000..83c87da --- /dev/null +++ b/main_scene/bean.gd @@ -0,0 +1,13 @@ +extends Sprite + +func _bought(): + set_amount(get_amount() + 1000) + +func get_amount(): + return SaveState.coffee_beans + +func set_amount(amount): + SaveState.coffee_beans = amount + +func get_cost(): + return 50 diff --git a/main_scene/management.tscn b/main_scene/management.tscn index 5e9a4f8..58c4935 100644 --- a/main_scene/management.tscn +++ b/main_scene/management.tscn @@ -1,15 +1,21 @@ -[gd_scene load_steps=8 format=2] +[gd_scene load_steps=12 format=2] [ext_resource path="res://assets/background.png" type="Texture" id=1] [ext_resource path="res://main_scene/coffee_machine.gd" type="Script" id=2] [ext_resource path="res://main_scene/Label.gd" type="Script" id=3] [ext_resource path="res://buildings/buildings.tscn" type="PackedScene" id=4] +[ext_resource path="res://main_scene/bean.gd" type="Script" id=5] +[ext_resource path="res://assets/BuyBeans.png" type="Texture" id=6] +[ext_resource path="res://lib/base_buyable.gd" type="Script" id=7] [ext_resource path="res://assets/coffee_maschine.png" type="Texture" id=8] [ext_resource path="res://upgrades/upgrades.tscn" type="PackedScene" id=9] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 360, 360 ) +[sub_resource type="RectangleShape2D" id=2] +extents = Vector2( 228.401, 203.958 ) + [node name="Node2D" type="Node2D"] [node name="background" type="Sprite" parent="."] @@ -42,3 +48,16 @@ shape = SubResource( 1 ) [node name="upgrades" parent="." instance=ExtResource( 9 )] position = Vector2( 20.5055, 36.9098 ) + +[node name="BeanIcon" type="Sprite" parent="."] +position = Vector2( 421.662, 194.889 ) +texture = ExtResource( 6 ) +script = ExtResource( 5 ) + +[node name="Area2D" type="Area2D" parent="BeanIcon"] +script = ExtResource( 7 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="BeanIcon/Area2D"] +position = Vector2( -0.0478821, -0.59053 ) +scale = Vector2( 0.174159, 0.186657 ) +shape = SubResource( 2 ) diff --git a/save_state.gd b/save_state.gd index 2ce8b0d..edd6ed5 100644 --- a/save_state.gd +++ b/save_state.gd @@ -7,6 +7,7 @@ var buildings = { var upgrades = { "wageslavery": 0, "sunglasses": 0, + "contract": 0, } func has_upgrade(name): @@ -23,14 +24,25 @@ func try_gain_coffee(amount: int) -> int: coffee += amount coffee_beans -= amount return 0 - + if has_upgrade("contract"): + if try_buy_coffee_beans(): + return try_gain_coffee(amount) coffee += coffee_beans var remains = amount - coffee_beans coffee_beans = 0 return remains +func try_buy_coffee_beans(): + var cost = int(100 * pow(0.9, upgrades['contract'] - 1) + 1) + if bitcoin < cost: + return false + coffee_beans += 1000 + bitcoin -= cost + return true + + var coffee = 10 -var coffee_beans = 1000 +var coffee_beans = 100 var bitcoin = 10000 var riot_cooldown = 0 diff --git a/upgrades/upgrades.tscn b/upgrades/upgrades.tscn index 503cbb6..7eea485 100644 --- a/upgrades/upgrades.tscn +++ b/upgrades/upgrades.tscn @@ -1,9 +1,10 @@ -[gd_scene load_steps=7 format=2] +[gd_scene load_steps=9 format=2] [ext_resource path="res://assets/wageslavery.png" type="Texture" id=1] [ext_resource path="res://lib/upgrade_interface.gd" type="Script" id=2] [ext_resource path="res://lib/base_buyable.gd" type="Script" id=3] [ext_resource path="res://assets/glasses.png" type="Texture" id=4] +[ext_resource path="res://assets/Kaffeevertrag.png" type="Texture" id=5] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 32, 32 ) @@ -11,6 +12,9 @@ extents = Vector2( 32, 32 ) [sub_resource type="RectangleShape2D" id=2] extents = Vector2( 14.3177, 10 ) +[sub_resource type="RectangleShape2D" id=3] +extents = Vector2( 11.8724, 13.514 ) + [node name="Node2D" type="Node2D"] [node name="wageslavery" type="Sprite" parent="."] @@ -60,3 +64,28 @@ margin_bottom = 14.0 __meta__ = { "_edit_use_anchors_": false } + +[node name="contract" type="Sprite" parent="."] +position = Vector2( 58.9314, 136.893 ) +scale = Vector2( 1.84407, 1.8057 ) +texture = ExtResource( 5 ) +script = ExtResource( 2 ) +tick_rate = -1.0 +base_cost = 1000.0 +cost_multiplier = 1.1 +building_identifier = "contract" + +[node name="Area2D" type="Area2D" parent="contract"] +script = ExtResource( 3 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="contract/Area2D"] +shape = SubResource( 3 ) + +[node name="Label" type="Label" parent="contract"] +margin_left = -8.34222 +margin_top = 1.0 +margin_right = 12.6578 +margin_bottom = 15.0 +__meta__ = { +"_edit_use_anchors_": false +} |