-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[무역 상점] 인벤토리 및 판매목록 구현 #190
Conversation
signal query_received | ||
|
||
const TradeInventoryScn = preload("res://scenes/market/trade_inventory.tscn") | ||
const SellListScn = preload("res://scenes/market/sell_list.tscn") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
변수명이랑 신 이름이 좀 이상한데 백엔드랑 용어 통일 할까요
add_child(register_trade_good_query_executor) | ||
add_child(stage_tx_mutation_executor) | ||
add_child(trade_inventory_state_executor) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
띄어쓰기를 전체적으로 다 한칸씩만 하도록 해놨습니다. 파일 전체적으로 통일해주세요
그리고 리베이스 필요합니다 |
그리고 무역은 마을에서 활동을 했어야 사용할 수 있으니 부엌, 농장쪽에 진입 버튼을 두는게 맞아보입니다 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
수정하신거 확인 했습니다. 고생 하셨어요.
일단 말씀 드린 것 자체는 수정이 대부분 된 것 같은데,
다시 보니 더 눈에 보이는 것들이 있네요.
- 이제 보니 페이지 제목이 '무역 화면' 이네요. 최소한 무역 상점이나 다른 이름을 보여주어야 하지 않을까요. 기본적인 부분이라고 생각해서 조금 아쉽습니다.
- 마찬가지로 버튼 배치나, 복잡한 UI 개선은 뒤로 하더라도 '무역으로' 라는 버튼은 말이 좀 이상합니다.
- 그리고 내 판매 목록 UI와 일반 판매 목록 UI가 같은건 잘못됐습니다. 말씀 드린것처럼 기능에 대해 최소한으로는 고민해보고 만드시는 게 중요합니다. 일단 적어도 내가 판매할 아이템 목록에 구매 버튼이 뜨는 건 어색할 것 같습니다.
- 지금 내 판매목록 UI가 API만 붙이면 사용 가능한 화면이라 보이지 않습니다. 정말 필수적으로 필요한 기능이라고 보여지는 게 없습니다.
기본적으로 1.내가 올린 판매 물품을 확인하고, 2. 등록을 취소하는 기능은 되어야 하지 않을까요. - 그리고 인벤토리에서 StateId가 필요한 이유가 있을까요? 같은 등급, 같은 아이템이라면 묶어서 보여주거나 하는 게 더 용이해 보입니다.
- 인벤토리는 탭 기능이 나중에 추가 될 예정이 아니라면.. 탭이 아닌데 탭 UI일 필요가 없어 보입니다.
수정 고생하셨습니다. 잘 수정 하셨습니다.
|
확인되기 전에 resolved는 누르지 말아주세요 |
수정 고생하셨습니다. 제가 말씀 드린 내용들은 잘 수정 된 것 같네요. |
@@ -0,0 +1,3 @@ | |||
[gd_resource type="ButtonGroup" format=3 uid="uid://di66p0jb8cdpk"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sell_list 파일 이름에 아직 있습니다
if(good["sellerAddress"] != my_address): | ||
add_lists(good, false) | ||
|
||
func _on_my_sell_list_button_down(): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sell_list
trade_goods_scene.set_info(good) | ||
list_container.add_child(trade_goods_scene) | ||
|
||
func _on_whole_sell_list_button_down(): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sell_list
[gd_scene load_steps=7 format=3 uid="uid://bu43d13qwmtcr"] | ||
|
||
[ext_resource type="Script" path="res://scenes/market/trade_inventory.gd" id="1_2sbin"] | ||
[ext_resource type="ButtonGroup" uid="uid://di66p0jb8cdpk" path="res://scenes/market/sell_list_button_group.tres" id="2_68j2i"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sell_list
theme_override_constants/v_separation = 50 | ||
columns = 2 | ||
|
||
[connection signal="button_down" from="MarginContainer/VBoxContainer/HBoxContainer/WholeSellListButton" to="." method="_on_whole_sell_list_button_down"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sell_list
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 = " 가격 수정 " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
패딩 이렇게 공백으로주지 마시고 실제 스타일 테마 오버라이드 하셔서 패딩 또는 마진 값 설정해주세요
@@ -0,0 +1,24 @@ | |||
extends Control | |||
|
|||
@onready var item_name_label = $Background/MarginContainer/VBoxContainer/NameLabel |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
필수 수정사항은 아닙니다만 노드들 이름에 굳이 VBox, Margin 이런 기능적인 이름들 다 제거해주시면 좋겠습니다
trade_inventory_container.add_child(trade_inventory) | ||
trade_inventory.set_list(inventory_state) | ||
|
||
func props_only_query_action(query_executor): # query with no args |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
아직 이름이 명확하지 않습니다. 또 따로 함수로 존재할 필요가 없어보입니다.
인자로 받는 query_executor가 특정한 query_executor만 사용 가능해보이고 이벤트 리스너를 등록하는 것이기 때문에 해당 함수에서 진행할 이유 또한 없습니다. 결국 해주는건 run
을 실행해주는건데 이걸 따로 해주는 함수가 필요하진 않아보입니다.
if $Background == null: | ||
return | ||
|
||
item_name_label.text = info[0]["name"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이부분은 파악해보질 못했는데 0 인덱스로 접근해도 괜찮은건가요? 또 변수명으로 보아 정보를 받아오는 것 같은데 왜 Array인가요?
func _ready(): | ||
pass | ||
|
||
func set_list(data: Array): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이부분까지는 크게 상관 없는데 항상 네이밍은 더 명확하게 해주세요
set_list 보단 지금 goods에 데이터를 set 해주시니까 set_goods가 더 맞아보입니다 또 load까지 진행하니 set_goods_and_load가 될텐데 set_goods만 두고 load는 따로 호출해주는게 맞겠습니다
TL;DR
무역 상점 화면에 내 아이템과 상대방과 내가 올린 물품을 볼 수 있습니다.
좌측에는 내 아이템이 보이고, 우측에는 상대방이 올린 물품을 기본적으로 보여줍니다.
탭을 변경 시 내가 올린 아이템만 볼 수 있습니다.
현재는 타인이 올린 아이템이 없어서 자신이 올린 아이템을 보여주는 예시입니다.