diff --git a/test/sock.cpp b/test/sock.cpp index 84be2e8..fa508dd 100644 --- a/test/sock.cpp +++ b/test/sock.cpp @@ -9,6 +9,23 @@ #include "rapidjson/istreamwrapper.h" #include "STL.h" + + +//构造 抽奖 类型容器 +struct Dargonresult +{ + int ItemIndex; + int ItemNum; + int ItemGrade; +}; +struct DargonMap +{ + int Op; + int LuckyValue; + Dargonresult Result[10]; +}; +static std::mapDargon_STL; + void sock::Pack_抽奖(int idx, int code, void* p3, void* p4) { DWORD Size; @@ -20,8 +37,26 @@ void sock::Pack_ rapidjson::Document Dom; Dom.Parse(Buffer); - StringArr_STL["DragonBox"][0] = Dom["op"].GetString(); - std::cout << 666 << std::endl; + //构造res包 结构体 + Dargonresult Res_Buffer[10]; + for (int i = 0; i < 10; ++i) + { + Res_Buffer[i].ItemIndex = Dom["result"][i]["item"].GetInt(); + Res_Buffer[i].ItemNum = Dom["result"][i]["num"].GetInt(); + Res_Buffer[i].ItemGrade = Dom["result"][i]["grade"].GetInt(); + } + //构造龙盒总 结构体 + DargonMap M_Buffer; + M_Buffer.Op = Dom["op"].GetInt(); + M_Buffer.LuckyValue = Dom["luckyvalue"].GetInt(); + for (int b = 0; b < 10; ++b) + { + M_Buffer.Result[b] = Res_Buffer[b]; + } + //构造 龙盒 map + Dargon_STL["dargonmap"] = M_Buffer; + + } void sock::R_Register_Pack()