diff --git a/job_card.gd b/job_card.gd index 6474a90..f451d00 100644 --- a/job_card.gd +++ b/job_card.gd @@ -3,17 +3,31 @@ extends PanelContainer signal job_accepted var job_data: JobData +var job_time: float +var job_material: String @onready var job_name: Label = $MarginContainer/VBoxContainer/HBoxContainer2/PartName @onready var job_amount: Label = $MarginContainer/VBoxContainer/HBoxContainer3/PartAmount @onready var job_reward: Label = $MarginContainer/VBoxContainer/HBoxContainer/RewardLabel @onready var job_experience: Label = $MarginContainer/VBoxContainer/HBoxContainer3/PartExperience +@onready var job_time_label: Label = $MarginContainer/VBoxContainer/HBoxContainer/TimeLabel +@onready var job_material_label: Label = $MarginContainer/VBoxContainer/HBoxContainer2/PartMaterial + func initialize_job(data: JobData) -> void: job_data = data + job_material = 'PLA' + job_time = calculate_time() job_name.text = job_data.job_name - job_amount.text = "Amount: " + str(job_data.job_amount) - job_reward.text = "Reward: " + str(job_data.job_reward) + "€" - job_experience.text = "Experience: " + str(job_data.job_experience) + job_amount.text = 'Amount: %d pcs' % job_data.job_amount + job_reward.text = 'Reward: %.2f €' % job_data.job_reward + job_experience.text = 'Experience: %.0f xp | ' % job_data.job_experience + job_time_label.text = 'Time: %.2f s' % job_time + job_material_label.text = '| %s' % job_material func _on_accept_job_pressed() -> void: job_accepted.emit(self) + +func calculate_time() -> float: + var print_time: float = sqrt(job_data.job_experience + job_data.job_reward) * job_data.job_amount + var round_time: float = round(print_time * 100) / 100 + return round_time diff --git a/printer.gd b/printer.gd index 9d869a9..f0334e5 100644 --- a/printer.gd +++ b/printer.gd @@ -17,6 +17,9 @@ func initialize_printer(data: PrinterData) -> void: progress_bar.value = 0 _on_select_job_pressed() +func start_job() -> void: + pass + func _on_sell_button_pressed() -> void: PlayerData.give_money.emit(printer_data.printer_price * PlayerData.sell_multiplier) queue_free() @@ -38,12 +41,14 @@ func _on_start_button_pressed() -> void: if select_job.get_item_text(0) == "No jobs accepted": print("No job selected") else: - PlayerData.give_money.emit(selected_job.job_reward) - if PlayerData.jobs.size() == 1: - PlayerData.jobs.clear() - else: - PlayerData.jobs.remove_at(selected_job_index) + start_job() + #PlayerData.give_money.emit(selected_job.job_reward) + #if PlayerData.jobs.size() == 1: + # PlayerData.jobs.clear() + #else: + # PlayerData.jobs.remove_at(selected_job_index) + _on_select_job_pressed() func _on_select_job_item_selected(index: int) -> void: selected_job = select_job.get_item_metadata(index)