New items + base typing + price generation + new menu template
This commit is contained in:
parent
ff19560f0b
commit
50be4a0bb2
20 changed files with 408 additions and 37 deletions
55
scripts/objects/Base.gd
Normal file
55
scripts/objects/Base.gd
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
extends Node2D
|
||||
|
||||
@export var type : Game.BASE_TYPE
|
||||
@onready var menu : Area2D = $MenuCollider
|
||||
@onready var ship : MainShip = get_tree().current_scene.get_node("MainShip")
|
||||
|
||||
var want_to_sell : Array[Item] = []
|
||||
var want_to_buy : Array[Item] = []
|
||||
|
||||
var sell_prices : Array[float] = []
|
||||
var buy_prices : Array[float] = []
|
||||
|
||||
func _ready():
|
||||
ship.minimap.add_marker(self, "base")
|
||||
match type:
|
||||
Game.BASE_TYPE.POWER:
|
||||
want_to_sell.append(Game.get_item("Energy Cell"))
|
||||
want_to_buy.append(Game.get_item("Raw Materials"))
|
||||
want_to_buy.append(Game.get_item("Water Barrel"))
|
||||
want_to_buy.append(Game.get_item("Food Supplies"))
|
||||
Game.BASE_TYPE.MINING:
|
||||
want_to_sell.append(Game.get_item("Raw Materials"))
|
||||
want_to_sell.append(Game.get_item("Water Barrel"))
|
||||
want_to_buy.append(Game.get_item("Energy Cell"))
|
||||
want_to_buy.append(Game.get_item("Food Supplies"))
|
||||
Game.BASE_TYPE.FOOD:
|
||||
want_to_sell.append(Game.get_item("Food Supplies"))
|
||||
want_to_buy.append(Game.get_item("Water Barrel"))
|
||||
want_to_buy.append(Game.get_item("Energy Cell"))
|
||||
want_to_buy.append(Game.get_item("Raw Materials"))
|
||||
Game.BASE_TYPE.TRADING:
|
||||
want_to_sell.append(Game.get_item("Food Supplies"))
|
||||
want_to_sell.append(Game.get_item("Water Barrel"))
|
||||
want_to_sell.append(Game.get_item("Energy Cell"))
|
||||
want_to_sell.append(Game.get_item("Raw Materials"))
|
||||
want_to_buy.append(Game.get_item("Food Supplies"))
|
||||
want_to_buy.append(Game.get_item("Water Barrel"))
|
||||
want_to_buy.append(Game.get_item("Energy Cell"))
|
||||
want_to_buy.append(Game.get_item("Raw Materials"))
|
||||
update_prices()
|
||||
|
||||
func update_prices():
|
||||
sell_prices = []
|
||||
buy_prices = []
|
||||
var price : float
|
||||
for item in want_to_sell:
|
||||
price = randi_range(item.min_price * 100, item.max_price * 100) / 100
|
||||
sell_prices.append(price)
|
||||
for item in want_to_buy:
|
||||
if type != Game.BASE_TYPE.TRADING:
|
||||
price = randi_range((item.max_price + item.min_price) / 2 * 100, item.max_price * 100) / 100
|
||||
else:
|
||||
price = randi_range(item.min_price * 100, (item.max_price + item.min_price) / 2 * 100) / 100
|
||||
buy_prices.append(price)
|
||||
print(sell_prices, buy_prices)
|
||||
Loading…
Add table
Add a link
Reference in a new issue