아이템 메니저 저장방식 변경 완료

This commit is contained in:
김판돌 2024-03-02 21:32:28 +09:00
parent 80ba7b83f5
commit 8a31f5ee02
10 changed files with 89 additions and 14 deletions

View File

@ -166,9 +166,33 @@ namespace Server.Git
/// </summary>
public void DataSet()
{
int index = sheets.FindIndex(n => n.name == Statics.equipmentExcel.sheetName);
int index = -1;
index = sheets.FindIndex(n => n.name == Statics.equipmentExcel.sheetName);
if(index != 0)
{
Statics.equipmentExcel.init(sheets[index]);
}
index = sheets.FindIndex(n => n.name == Statics.randomRewardExcel.sheetName);
if (index != 0)
{
Statics.randomRewardExcel.init(sheets[index]);
}
index = sheets.FindIndex(n => n.name == Statics.rewardExcel.sheetName);
if (index != 0)
{
Statics.rewardExcel.init(sheets[index]);
}
index = sheets.FindIndex(n => n.name == Statics.shopItemExcel.sheetName);
if (index != 0)
{
Statics.shopItemExcel.init(sheets[index]);
}
index = sheets.FindIndex(n => n.name == Statics.consumableItemExcel.sheetName);
if (index != 0)
{
Statics.consumableItemExcel.init(sheets[index]);
}
}
}
}

View File

@ -117,16 +117,23 @@ namespace Server.Manager
List<EtcItem> _etcItem;
public List<EtcItem> etcItem { get { return _etcItem; } }
public List<EtcItem> addEtcItem;
User user;
public ItemBox(User user)
{
this.user = user;
_deckUnitInfo = Statics.deckUnitInfoSQL.SelectUid(user.id);
_equipment = Statics.equipmentrSQL.SelectUid(user.id);
addDeckUnitInfo = new List<DeckUnitInfo>();
addEquipment = new List<Equipment>();
addConsumableItem = new List<ConsumableItem>();
addEtcItem = new List<EtcItem>();
}
public void SaveSQL()
{
Statics.userSQL.Update(user);
Statics.userSQL.SaveChanges();
if (addDeckUnitInfo.Count != 0)
{
Statics.deckUnitInfoSQL.Insert(addDeckUnitInfo);
@ -139,6 +146,30 @@ namespace Server.Manager
Statics.equipmentrSQL.SaveChanges();
addEquipment.Clear();
}
if (addConsumableItem.Count != 0)
{
for (int n = 0; n < addConsumableItem.Count; n++)
{
if (addConsumableItem[n].id == 0)
Statics.consumableItemSQL.Insert(addConsumableItem[n]);
else
Statics.consumableItemSQL.Update(_deckUnitInfo[_deckUnitInfo.FindIndex(item => item.id == addConsumableItem[n].id)]);
}
Statics.consumableItemSQL.SaveChanges();
addConsumableItem.Clear();
}
if (addEtcItem.Count != 0)
{
for (int n = 0; n < addEtcItem.Count; n++)
{
if (addEtcItem[n].id == 0)
Statics.etcItemSQL.Insert(addEtcItem[n]);
else
Statics.etcItemSQL.Update(_deckUnitInfo[_deckUnitInfo.FindIndex(item => item.id == addEtcItem[n].id)]);
}
Statics.etcItemSQL.SaveChanges();
addEtcItem.Clear();
}
}
public bool Add(DeckUnitInfo item)
@ -187,6 +218,7 @@ namespace Server.Manager
else
{
_consumableItem[index].count += item.count;
item.id = _consumableItem[index].id;
}
if (addIndex == -1)
{
@ -212,6 +244,7 @@ namespace Server.Manager
else
{
_consumableItem[index].count += item.count;
item.id = _consumableItem[index].id;
}
if (addIndex == -1)
{
@ -236,6 +269,7 @@ namespace Server.Manager
else
{
_etcItem[index].count += item.count;
item.id = _etcItem[index].id;
}
if (addIndex == -1)
{
@ -261,6 +295,7 @@ namespace Server.Manager
else
{
_etcItem[index].count += item.count;
item.id = _etcItem[index].id;
}
if (addIndex == -1)
{

View File

@ -43,7 +43,7 @@ namespace Server.SQL
consumableItemData.index = item.Key;
consumableItemData.name = (string)item.Value["name"];
consumableItemData.item_type = (eItemType)item.Value["item_type"];
consumableItemData.reward = (string)item.Value["reward"];
consumableItemData.reward = item.Value["reward"].ToString();
this.consumableItemData.Add(item.Key, consumableItemData);
}
}

View File

@ -35,7 +35,7 @@ namespace Server.SQL
RandomRewardData randomRewardData = new RandomRewardData();
randomRewardData.index = item.Key;
randomRewardData.group = (int)item.Value["group"];
randomRewardData.reward = (long)item.Value["reward"];
randomRewardData.reward = (int)item.Value["reward"];
randomRewardData.prob = (int)item.Value["prob"];
this.randomRewardData.Add(item.Key, randomRewardData);
}

View File

@ -46,7 +46,8 @@ namespace Server.SQL
RewardData rewardData = new RewardData();
rewardData.index = item.Key;
rewardData.reward_item_type = (eRewardItemType)item.Value["reward_item_type"];
rewardData.return_item = (long)item.Value["return_item"];
rewardData.return_item = (int)item.Value["return_item"];
rewardData.return_count = (int)item.Value["return_count"];
this.rewardData.Add(item.Key, rewardData);
}
}

View File

@ -43,7 +43,7 @@ namespace Server.SQL
shopItemData.index = item.Key;
shopItemData.buy_type = (eBuyType)item.Value["buy_type"];
shopItemData.buy = (int)item.Value["buy"];
shopItemData.reward = (long)item.Value["reward"];
shopItemData.reward = (int)item.Value["reward"];
this.shopItemData.Add(item.Key, shopItemData);
}
}

View File

@ -1,8 +1,6 @@
using Server.System;
using Newtonsoft.Json;
using Server.SQL;
using LibGit2Sharp;
using System.Collections.Generic;
using Server.Manager;
namespace Server.Service
@ -20,7 +18,7 @@ namespace Server.Service
public override string Process()
{
User user = Statics.userSQL.SelectUuid(req.uuid);
ShopItemData shopItemData = Statics.shopItemExcel.getShopItemData(req.index);
ShopItemData shopItemData = Statics.shopItemExcel.getShopItemData(req.shopItemIndex);
//획득 가능한 아이템인지 확인
switch (shopItemData.buy_type)
@ -49,7 +47,7 @@ namespace Server.Service
item.addReward(shopItemData.reward);
SaveSQL(item);
return makeResp();
return makeResp(user, item);
}
public override Protocol ProtocolValue() => Protocol.BuyShopItem;
@ -60,9 +58,16 @@ namespace Server.Service
return req;
}
private string makeResp()
private string makeResp(User user, ItemManager itemManager)
{
BuyShopItemResp resp = new BuyShopItemResp();
resp.status = 200;
resp.gold = user.gold;
resp.cash = user.free_cash + user.pay_cash;
resp.deck_unit = itemManager.box.addDeckUnitInfo;
resp.equipment = itemManager.box.addEquipment;
resp.consumableItem = itemManager.box.addConsumableItem;
resp.etcItem = itemManager.box.addEtcItem;
return resp.ToJson();
}
@ -72,10 +77,10 @@ namespace Server.Service
public class BuyShopItemReq : Req
{
public string uuid;
public long index;
public long shopItemIndex;
public override bool IsReceivedAllField()
{
if (uuid == "" || index == 0)
if (uuid == "" || shopItemIndex == 0)
return false;
return true;
}
@ -83,5 +88,11 @@ namespace Server.Service
public class BuyShopItemResp : Resp
{
public long gold;
public long cash;
public List<DeckUnitInfo> deck_unit;
public List<Equipment> equipment;
public List<ConsumableItem> consumableItem;
public List<EtcItem> etcItem;
}
}

View File

@ -72,6 +72,7 @@ namespace Server.Service
deckInfo[deckindex].deck_unit8_id = req.deck_unit[8];
Statics.deckInfoSQL.Update(deckInfo[deckindex]);
SaveSQL();
return makeResp(deckInfo[deckindex]);
}
@ -85,8 +86,8 @@ namespace Server.Service
private string makeResp(DeckInfo changeDeck)
{
SaveSQL();
DeckChangeResp resp = new DeckChangeResp();
resp.status = 200;
resp.deck_info = changeDeck;
return resp.ToJson();
}

View File

@ -50,7 +50,6 @@ namespace Server.Service
user.nickname = newNickname;
SaveSQL();
return makeResp(user);
}
@ -64,6 +63,7 @@ namespace Server.Service
private string makeResp(User user)
{
SaveSQL();
NicknameChangeResp resp = new NicknameChangeResp();
resp.status = 200;
resp.nickname = user.nickname;

View File

@ -25,11 +25,14 @@ namespace Server.System
public static EquipmentrSQL equipmentrSQL = new EquipmentrSQL();
public static UserSQL userSQL = new UserSQL();
public static DynamicDataSQL dynamicDataSQL = new DynamicDataSQL();
public static ConsumableItemSQL consumableItemSQL = new ConsumableItemSQL();
public static EtcItemSQL etcItemSQL = new EtcItemSQL();
//DATA
public static EquipmentDataExcel equipmentExcel = new EquipmentDataExcel();
public static RandomRewardDataExcel randomRewardExcel = new RandomRewardDataExcel();
public static RewardDataExcel rewardExcel = new RewardDataExcel();
public static ShopItemDataExcel shopItemExcel = new ShopItemDataExcel();
public static ConsumableItemDataExcel consumableItemExcel = new ConsumableItemDataExcel();
}
}