Skip to content

Commit

Permalink
优化-规范化命名
Browse files Browse the repository at this point in the history
  • Loading branch information
NingLeixueR committed Jul 1, 2024
1 parent 2595b7c commit 14612c5
Show file tree
Hide file tree
Showing 17 changed files with 1,623 additions and 54 deletions.
11 changes: 11 additions & 0 deletions bin/proto/net.proto
Original file line number Diff line number Diff line change
Expand Up @@ -579,4 +579,15 @@ message PROBUFF_NET_FAMIL_LIST_RESPONSE
{
optional int64 m_familid = 1;
repeated pbdb.db_family m_family = 2;
}

message PROBUFF_NET_CHANGE_FAMILNAME
{
optional int64 m_familid = 1;
optional string m_name = 2; // 修改军团名称
}

message PROBUFF_NET_CHANGE_FAMILNAME_RESPONSE
{
optional int32 m_stat = 1; // 状态
}
53 changes: 53 additions & 0 deletions public/cpp/actor/actor_logic/game/actor_role_cmd.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,59 @@ namespace ngl
role->handle_forward<ACTOR_MAIL>(lmessage);
}
);

handle_cmd::push("/create_family", [](actor_role* role, const char* aparm)
{
auto pro = std::make_shared<pbnet::PROBUFF_NET_CREATE_FAMIL>();
pro->set_m_name(aparm);
message<pbnet::PROBUFF_NET_CREATE_FAMIL> lmessage(1, nullptr, pro);
role->handle_forward<ACTOR_FAMILY>(lmessage);
}
);

handle_cmd::push("/family", [](actor_role* role, const char* aparm)
{
auto pro = std::make_shared<pbnet::PROBUFF_NET_FAMIL_LIST>();
if(aparm != std::string(""))
pro->set_m_familid(tools::lexical_cast<int64_t>(aparm));
else
pro->set_m_familid(-1);
message<pbnet::PROBUFF_NET_FAMIL_LIST> lmessage(1, nullptr, pro);
role->handle_forward<ACTOR_FAMILY>(lmessage);
}
);

handle_cmd::push("/join_family", [](actor_role* role, const char* aparm)
{
auto pro = std::make_shared<pbnet::PROBUFF_NET_JOIN_FAMIL>();
pro->set_m_familid(tools::lexical_cast<int64_t>(aparm));
message<pbnet::PROBUFF_NET_JOIN_FAMIL> lmessage(1, nullptr, pro);
role->handle_forward<ACTOR_FAMILY>(lmessage);
}
);

handle_cmd::push("/leave_family", [](actor_role* role, const char* aparm)
{
auto pro = std::make_shared<pbnet::PROBUFF_NET_LEAVE_FAMIL>();
pro->set_m_familid(tools::lexical_cast<int64_t>(aparm));
message<pbnet::PROBUFF_NET_LEAVE_FAMIL> lmessage(1, nullptr, pro);
role->handle_forward<ACTOR_FAMILY>(lmessage);
}
);

handle_cmd::push("/change_familyname", [](actor_role* role, const char* aparm)
{
auto pro = std::make_shared<pbnet::PROBUFF_NET_CHANGE_FAMILNAME>();
int64_t lfamilylid = 0;
std::string lfamilylname;
if (tools::splite(aparm, "*", lfamilylid, lfamilylname) == false)
return;
pro->set_m_familid(lfamilylid);
pro->set_m_name(lfamilylname);
message<pbnet::PROBUFF_NET_CHANGE_FAMILNAME> lmessage(1, nullptr, pro);
role->handle_forward<ACTOR_FAMILY>(lmessage);
}
);
}

std::string& lkey = lvec[0];
Expand Down
61 changes: 61 additions & 0 deletions public/cpp/actor/actor_logic/robot/actor_robot.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -204,21 +204,82 @@ namespace ngl

bool actor_robot::handle(message<pbnet::PROBUFF_NET_CREATE_FAMIL_RESPONSE>& adata)
{
auto lstream = log_error();
(*lstream) <<
std::format(
"创建军团{}!err={}",
adata.get_data()->m_stat() == 0 ? "成功" : "失败",
adata.get_data()->m_stat()
);
lstream->print("");
return true;
}

bool actor_robot::handle(message<pbnet::PROBUFF_NET_JOIN_FAMIL_RESPONSE>& adata)
{
auto lstream = log_error();
(*lstream) <<
std::format(
"加入军团{}!err={}",
adata.get_data()->m_stat() == 0 ? "成功" : "失败",
adata.get_data()->m_stat()
);
lstream->print("");
return true;
}

bool actor_robot::handle(message<pbnet::PROBUFF_NET_LEAVE_FAMIL_RESPONSE>& adata)
{
auto lstream = log_error();
(*lstream) <<
std::format(
"离开军团{}!err={}",
adata.get_data()->m_stat() == 0 ? "成功" : "失败",
adata.get_data()->m_stat()
);
lstream->print("");
return true;
}

bool actor_robot::handle(message<pbnet::PROBUFF_NET_FAMIL_LIST_RESPONSE>& adata)
{
pbnet::PROBUFF_NET_FAMIL_LIST_RESPONSE* lpdata = adata.get_data();
auto lstream = log_error();
(*lstream) << "##############famil list start##############" << std::endl;
for (const auto& item : lpdata->m_family())
{
std::strstream lstrstream;
for (const auto& [_roleid, _familyer] : item.m_member())
{
lstrstream << _roleid << "*";
}

(*lstream) << std::format(
"id:{} name:{} lv:{} exp:{} createutc:{} leader:{} m_member:[{}]",
item.m_id(),
item.m_name(),
item.m_lv(),
item.m_exp(),
item.m_createutc(),
item.m_leader(),
lstrstream.str()
) << std::endl;
}
(*lstream) << "##############famil list finish##############" << std::endl;
lstream->print("");
return true;
}

bool actor_robot::handle(message<pbnet::PROBUFF_NET_CHANGE_FAMILNAME_RESPONSE>& adata)
{
auto lstream = log_error();
(*lstream) <<
std::format(
"修改军团名称{}!err={}",
adata.get_data()->m_stat() == 0 ? "成功" : "失败",
adata.get_data()->m_stat()
);
lstream->print("");
return true;
}

Expand Down
1 change: 1 addition & 0 deletions public/cpp/actor/actor_logic/robot/actor_robot.h
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ namespace ngl
bool handle(message<pbnet::PROBUFF_NET_JOIN_FAMIL_RESPONSE>& adata);
bool handle(message<pbnet::PROBUFF_NET_LEAVE_FAMIL_RESPONSE>& adata);
bool handle(message<pbnet::PROBUFF_NET_FAMIL_LIST_RESPONSE>& adata);
bool handle(message<pbnet::PROBUFF_NET_CHANGE_FAMILNAME_RESPONSE>& adata);
};

class actor_manage_robot : public actor
Expand Down
2 changes: 2 additions & 0 deletions public/cpp/actor/nactor_auto.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -240,6 +240,7 @@ namespace ngl
, pbnet::PROBUFF_NET_JOIN_FAMIL
, pbnet::PROBUFF_NET_LEAVE_FAMIL
, pbnet::PROBUFF_NET_FAMIL_LIST
, pbnet::PROBUFF_NET_CHANGE_FAMILNAME
>();
}

Expand All @@ -263,6 +264,7 @@ namespace ngl
, pbnet::PROBUFF_NET_JOIN_FAMIL_RESPONSE
, pbnet::PROBUFF_NET_LEAVE_FAMIL_RESPONSE
, pbnet::PROBUFF_NET_FAMIL_LIST_RESPONSE
, pbnet::PROBUFF_NET_CHANGE_FAMILNAME_RESPONSE
>();
}
}//namespace ngl
12 changes: 11 additions & 1 deletion public/cpp/logic/public/public/family/actor_family.h
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ namespace ngl
return true;
}

// # ¼ÓÈë¾üÍÅ
// # À뿪¾üÍÅ
bool handle(message<mforward<pbnet::PROBUFF_NET_LEAVE_FAMIL>>& adata)
{
i64_actorid lroleid = adata.get_data()->identifier();
Expand All @@ -90,6 +90,16 @@ namespace ngl
m_family.sync_family(adata.get_data()->identifier(), adata.get_data()->data()->m_familid());
return true;
}
// # Ð޸ľüÍÅÃû³Æ
bool handle(message<mforward<pbnet::PROBUFF_NET_CHANGE_FAMILNAME>>& adata)
{
m_family.change_familyname(
adata.get_data()->identifier(),
adata.get_data()->data()->m_familid(),
adata.get_data()->data()->m_name()
);
return true;
}

using handle_cmd = cmd<actor_mail, std::string, int, ngl::json_read&>;
// ## GM²Ù×÷mail
Expand Down
5 changes: 5 additions & 0 deletions public/cpp/logic/public/public/family/family.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,11 @@ namespace ngl
{
return;
}
if (aroleid != -1)
{
if (lpconstfamily->m_leader() != aroleid)
return;
}
pbdb::db_family* lpfamily = get_family(afamilyid);
if (lpfamily == nullptr)
{
Expand Down
Loading

0 comments on commit 14612c5

Please sign in to comment.