From 0fe0af2130ac6173d90f7bfc16b20afe391345d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=AF=BC=EC=84=9C?= Date: Wed, 28 Feb 2024 15:13:13 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9E=98=EB=AA=BB=EB=90=9C=20=EB=8D=B0?= =?UTF-8?q?=EC=9D=B4=ED=84=B0=20=EC=97=85=EB=8D=B0=EC=9D=B4=ED=8A=B8=20?= =?UTF-8?q?=EB=B0=8F=20=EB=A6=AC=EC=9B=8C=EB=93=9C=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Server/SQL/RewardData.cs | 2 +- Server/Service/BuyShopItem.cs | 22 ++++++++++++++++------ 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/Server/SQL/RewardData.cs b/Server/SQL/RewardData.cs index 7c144a8..921b669 100644 --- a/Server/SQL/RewardData.cs +++ b/Server/SQL/RewardData.cs @@ -44,7 +44,7 @@ namespace Server.SQL { RewardData rewardData = new RewardData(); rewardData.index = item.Key; - rewardData.reward_item_type = (eBuyType)item.Value["part"]; + rewardData.reward_item_type = (eRewardItemType)item.Value["reward_item_type"]; rewardData.return_item = (long)item.Value["return_item"]; this.rewardData.Add(item.Key, rewardData); } diff --git a/Server/Service/BuyShopItem.cs b/Server/Service/BuyShopItem.cs index a392963..52c6f4b 100644 --- a/Server/Service/BuyShopItem.cs +++ b/Server/Service/BuyShopItem.cs @@ -2,6 +2,7 @@ using Newtonsoft.Json; using Server.SQL; using LibGit2Sharp; +using System.Collections.Generic; namespace Server.Service { @@ -24,7 +25,7 @@ namespace Server.Service switch (shopItemData.buy_type) { case eBuyType.gold: - if(user.gold < shopItemData.buy) + if (user.gold < shopItemData.buy) { throw new RuntimeException("Not gold", Error.nogold); } @@ -42,8 +43,11 @@ namespace Server.Service throw new RuntimeException("Not case", Error.nodata); } + DeckUnitInfo deckUnitInfo = null; + Equipment equipment = null; + //아이템 획득 처리 - if(shopItemData.reward == 0) + if (shopItemData.reward == 0) { //따로 처리가 필요함. } @@ -62,16 +66,22 @@ namespace Server.Service user.pay_cash += rewardData.return_item; break; case eRewardItemType.character: - + deckUnitInfo = new DeckUnitInfo(); + deckUnitInfo.user_id = user.id; + deckUnitInfo.unit_id = rewardData.return_item; break; case eRewardItemType.equipment: - + equipment = new Equipment(); + equipment.user_id = user.id; + equipment.equip_unit = 0; + equipment.rand_stats = (new Random()).Next(5); + equipment.equipment_data_id = rewardData.return_item; break; case eRewardItemType.consumable: - + //소모품 만들고 넣기 break; case eRewardItemType.etc: - + //기타아이탬 만들고 넣기 break; default: throw new RuntimeException("Not case", Error.nodata);