Skip to content

Commit

Permalink
feat: trade shop inventory implement
Browse files Browse the repository at this point in the history
  • Loading branch information
kth1888 committed May 22, 2024
1 parent b378a10 commit 41677cd
Show file tree
Hide file tree
Showing 15 changed files with 518 additions and 2 deletions.
7 changes: 7 additions & 0 deletions frontend/Savor-22b/gql/query.gd
Original file line number Diff line number Diff line change
Expand Up @@ -75,3 +75,10 @@ var uninstall_kitchen_equipment_query = GQLQuery.new("createAction_UninstallKitc
"publicKey": "publicKey",
"spaceNumber": "spaceNumber"
});

var register_trade_good_query = GQLQuery.new("createAction_RegisterTradeGoodAction").set_args({
"publicKey": "publicKey",
"price": "price",
"foodStateId": "foodStateId",
"itemStateIds": "itemStateIds"
});
12 changes: 12 additions & 0 deletions frontend/Savor-22b/gql/query_executor.gd
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,18 @@ var uninstall_kitchen_equipment_query_executor = SvrGqlClient.query(
gql_query.uninstall_kitchen_equipment_query
);


var register_trade_good_query_executor = SvrGqlClient.query(
'RegisterTradeGood',
{
"publicKey": "String!",
"price": "Int!",
"foodStateId": "Int!",
"itemStateIds": "Int!"
},
gql_query.uninstall_kitchen_equipment_query
);

func stage_action(params, query_executor, mutation_executor):
query_executor.graphql_response.connect(
func(data):
Expand Down
1 change: 0 additions & 1 deletion frontend/Savor-22b/scenes/house/cook/cook_book.tscn
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
[gd_scene load_steps=7 format=3 uid="uid://bb0hth2o7k30q"]

[ext_resource type="Script" path="res://scenes/house/cook/cook_book.gd" id="1_q1ejr"]
[ext_resource type="Script" path="res://scenes/house/recipe_book/recipe_book.gd" id="1_2wc5e"]

[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_tvose"]
bg_color = Color(0.94902, 0.694118, 0.0784314, 1)
Expand Down
2 changes: 1 addition & 1 deletion frontend/Savor-22b/scenes/house/food.gd
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,4 @@ func _update_info():

func set_info(info: Dictionary):
self.info = info


52 changes: 52 additions & 0 deletions frontend/Savor-22b/scenes/market/market.gd
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
extends Control

const TradeInventoryScn = preload("res://scenes/market/trade_inventory.tscn")
const SellListScn = preload("res://scenes/market/sell_list.tscn")

@onready var inventory_container = $VBoxContainer/MarginContainer/SubMenuHBoxContainer/InventoryMarginContainer
@onready var sell_list_container = $VBoxContainer/MarginContainer/SubMenuHBoxContainer/SellListMarginContainer

var query_executor = QueryExecutor.new()
var register_trade_good_query_executor
var stage_tx_mutation_executor

func _ready():
register_trade_good_query_executor = query_executor.register_trade_good_query_executor
stage_tx_mutation_executor = query_executor.stage_tx_mutation_executor
add_child(register_trade_good_query_executor)
add_child(stage_tx_mutation_executor)


load_initial_scene()

test_register()


func load_initial_scene():
load_inventory()
load_sell_list()

func load_inventory():
var inventory = TradeInventoryScn.instantiate()
inventory_container.add_child(inventory)

func load_sell_list():
var sell_list = SellListScn.instantiate()
sell_list_container.add_child(sell_list)


func test_register():
query_executor.stage_action(
{
"publicKey": GlobalSigner.signer.GetPublicKey(),
"price": 10,
"foodStateId": "8ef2aa23-3595-4036-9ee9-7802d4663891",
"itemStateIds": []
},
register_trade_good_query_executor,
stage_tx_mutation_executor
)


func _on_village_button_down():
get_tree().change_scene_to_file("res://scenes/village/village_view.tscn")
99 changes: 99 additions & 0 deletions frontend/Savor-22b/scenes/market/market.tscn
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
[gd_scene load_steps=3 format=3 uid="uid://5hl0imlbiaaj"]

[ext_resource type="Script" path="res://scenes/market/market.gd" id="1_ibysf"]
[ext_resource type="PackedScene" uid="uid://co4t4p5pawylr" path="res://scenes/common/prefabs/asset.tscn" id="2_mauxh"]

[node name="Market" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_ibysf")

[node name="Background" type="ColorRect" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2

[node name="Title" type="Label" parent="Background"]
offset_right = 40.0
offset_bottom = 23.0
theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 60
text = " 무역 화면"

[node name="VBoxContainer" type="VBoxContainer" parent="."]
custom_minimum_size = Vector2(1920, 1080)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_right = 4.0
grow_horizontal = 2
grow_vertical = 2

[node name="MarginContainer2" type="MarginContainer" parent="VBoxContainer"]
layout_mode = 2
theme_override_constants/margin_left = 50
theme_override_constants/margin_top = 20
theme_override_constants/margin_right = 50
theme_override_constants/margin_bottom = 20

[node name="TopMenuHBoxContainer" type="HBoxContainer" parent="VBoxContainer/MarginContainer2"]
layout_mode = 2
theme_override_constants/separation = 50
alignment = 2

[node name="AssetPanel" type="Panel" parent="VBoxContainer/MarginContainer2/TopMenuHBoxContainer"]
custom_minimum_size = Vector2(600, 2.08165e-12)
layout_mode = 2

[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer/MarginContainer2/TopMenuHBoxContainer/AssetPanel"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/margin_left = 50
theme_override_constants/margin_right = 50

[node name="Asset" parent="VBoxContainer/MarginContainer2/TopMenuHBoxContainer/AssetPanel/MarginContainer" instance=ExtResource("2_mauxh")]
layout_mode = 2

[node name="VillageButton" type="Button" parent="VBoxContainer/MarginContainer2/TopMenuHBoxContainer"]
custom_minimum_size = Vector2(200, 2.08165e-12)
layout_mode = 2
size_flags_vertical = 0
theme_override_font_sizes/font_size = 50
text = " 마을로 "

[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer"]
custom_minimum_size = Vector2(1920, 950)
layout_mode = 2

[node name="SubMenuHBoxContainer" type="HBoxContainer" parent="VBoxContainer/MarginContainer"]
layout_mode = 2

[node name="InventoryMarginContainer" type="MarginContainer" parent="VBoxContainer/MarginContainer/SubMenuHBoxContainer"]
custom_minimum_size = Vector2(700, 2.08165e-12)
layout_mode = 2
theme_override_constants/margin_left = 10
theme_override_constants/margin_top = 50
theme_override_constants/margin_right = 10
theme_override_constants/margin_bottom = 50

[node name="SellListMarginContainer" type="MarginContainer" parent="VBoxContainer/MarginContainer/SubMenuHBoxContainer"]
custom_minimum_size = Vector2(1220, 2.08165e-12)
layout_mode = 2
theme_override_constants/margin_left = 50
theme_override_constants/margin_top = 50
theme_override_constants/margin_right = 50
theme_override_constants/margin_bottom = 50

[connection signal="button_down" from="VBoxContainer/MarginContainer2/TopMenuHBoxContainer/VillageButton" to="." method="_on_village_button_down"]
27 changes: 27 additions & 0 deletions frontend/Savor-22b/scenes/market/my_item.gd
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
extends Control

#@onready var food_name = $M/V/Name
#@onready var food_description = $M/V/Desc

@onready var item_button = $ItemSelectButton

var info
var desc_format_string = "%s
%s : %s
%s : %s"

func _ready():
_update_info()

func _update_info():
if item_button == null:
return
item_button.text = desc_format_string % [info.name, "등급", info.grade, "stateId", info.stateId]


func set_info(info: Dictionary):
self.info = info


func _on_item_select_button_down():
print(info)
37 changes: 37 additions & 0 deletions frontend/Savor-22b/scenes/market/my_item.tscn
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
[gd_scene load_steps=3 format=3 uid="uid://c7yghm5bsqwif"]

[ext_resource type="Script" path="res://scenes/market/my_item.gd" id="1_5wh4n"]

[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_21if1"]
bg_color = Color(0, 0, 0, 1)
corner_radius_top_left = 30
corner_radius_top_right = 30
corner_radius_bottom_right = 30
corner_radius_bottom_left = 30

[node name="MyItem" type="Control"]
custom_minimum_size = Vector2(310, 200)
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_right = -1610.0
offset_bottom = -880.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_5wh4n")

[node name="ItemSelectButton" type="Button" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_font_sizes/font_size = 40
theme_override_styles/normal = SubResource("StyleBoxFlat_21if1")
text = "아이템 정보"
text_overrun_behavior = 1

[connection signal="button_down" from="ItemSelectButton" to="." method="_on_item_select_button_down"]
72 changes: 72 additions & 0 deletions frontend/Savor-22b/scenes/market/posted_item.tscn
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
[gd_scene load_steps=3 format=3 uid="uid://crw3yutudcodf"]

[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_3bs65"]
bg_color = Color(0, 0, 0, 1)
corner_radius_top_left = 40
corner_radius_top_right = 40
corner_radius_bottom_right = 40
corner_radius_bottom_left = 40

[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_lobix"]
bg_color = Color(0, 0, 0, 1)
border_width_left = 3
border_width_top = 3
border_width_right = 3
border_width_bottom = 3
border_color = Color(1, 1, 1, 1)
corner_radius_top_left = 15
corner_radius_top_right = 15
corner_radius_bottom_right = 15
corner_radius_bottom_left = 15

[node name="PostedItem" type="Control"]
custom_minimum_size = Vector2(380, 410)
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_right = -1540.0
offset_bottom = -670.0
grow_horizontal = 2
grow_vertical = 2

[node name="BackgroundPanel" type="Panel" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_3bs65")

[node name="MarginContainer" type="MarginContainer" parent="BackgroundPanel"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/margin_left = 25
theme_override_constants/margin_top = 30
theme_override_constants/margin_right = 25
theme_override_constants/margin_bottom = 30

[node name="VBoxContainer" type="VBoxContainer" parent="BackgroundPanel/MarginContainer"]
layout_mode = 2

[node name="DescriptionLabel" type="Label" parent="BackgroundPanel/MarginContainer/VBoxContainer"]
custom_minimum_size = Vector2(2.08165e-12, 280)
layout_mode = 2
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_font_sizes/font_size = 40
text = "품목명 : 참치
게시자 : 맛도리 해적단
게시 마을 : 외로운 섬"

[node name="BuyButton" type="Button" parent="BackgroundPanel/MarginContainer/VBoxContainer"]
layout_mode = 2
size_flags_horizontal = 8
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_font_sizes/font_size = 40
theme_override_styles/normal = SubResource("StyleBoxFlat_lobix")
text = " 구매 "
Loading

0 comments on commit 41677cd

Please sign in to comment.