gamelog ok
This commit is contained in:
parent
2667ad8bf2
commit
e3f4d806ed
@ -4,9 +4,12 @@
|
||||
#include "framework/cpp/tglog.h"
|
||||
#include <a8/mutable_xobject.h>
|
||||
#include "player.h"
|
||||
#include "guild.h"
|
||||
|
||||
#include "app.h"
|
||||
|
||||
#include "cs_proto.pb.h"
|
||||
|
||||
const char* const FRIEND_LOGIN_EVENT = "friend_login";
|
||||
const char* const FRIEND_LOGOUT_EVENT = "friend_logout";
|
||||
const char* const FRIEND_APPLY_EVENT = "friend_apply";
|
||||
@ -197,3 +200,43 @@ void GameLog::FriendDelete(Player* hum, const std::string& account_id)
|
||||
delete prop;
|
||||
prop = nullptr;
|
||||
}
|
||||
|
||||
void GameLog::GuildCreate(Player* hum, long long guild_id, const std::string& guild_name)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void GameLog::GuildApply(Guild* guild, const cs::MFBaseUserData& base_data)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void GameLog::GuildRefuse(Guild* guild, GuildMember* sender, long long db_idx, const std::string& account_id)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void GameLog::GuildAgree(Guild* guild, GuildMember* sender, long long db_idx, const std::string& account_id)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void GameLog::GuildKick(Guild* guild, GuildMember* sender, const std::string& account_id)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void GameLog::GuildQuit(Guild* guild, GuildMember* sender)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void GameLog::GuildSetJob(Guild* guild, GuildMember* sender, int old_job)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void GameLog::GuildAgreeInvite(Guild* guild, GuildMember* sender)
|
||||
{
|
||||
|
||||
}
|
||||
|
@ -1,6 +1,13 @@
|
||||
#pragma once
|
||||
|
||||
namespace cs
|
||||
{
|
||||
class MFBaseUserData;
|
||||
}
|
||||
|
||||
class Player;
|
||||
class Guild;
|
||||
struct GuildMember;
|
||||
class GameLog : public a8::Singleton<GameLog>
|
||||
{
|
||||
private:
|
||||
@ -19,6 +26,13 @@ class GameLog : public a8::Singleton<GameLog>
|
||||
void FriendAgree(Player* hum, long long db_idx, const std::string& account_id);
|
||||
void FriendDelete(Player* hum, const std::string& account_id);
|
||||
|
||||
private:
|
||||
void GuildCreate(Player* hum, long long guild_id, const std::string& guild_name);
|
||||
void GuildApply(Guild* guild, const cs::MFBaseUserData& base_data);
|
||||
void GuildRefuse(Guild* guild, GuildMember* sender, long long db_idx, const std::string& account_id);
|
||||
void GuildAgree(Guild* guild, GuildMember* sender, long long db_idx, const std::string& account_id);
|
||||
void GuildKick(Guild* guild, GuildMember* sender, const std::string& account_id);
|
||||
void GuildQuit(Guild* guild, GuildMember* sender);
|
||||
void GuildSetJob(Guild* guild, GuildMember* sender, int old_job);
|
||||
void GuildAgreeInvite(Guild* guild, GuildMember* sender);
|
||||
|
||||
};
|
||||
|
@ -13,6 +13,7 @@
|
||||
#include "dbhelper.h"
|
||||
#include "synchelper.h"
|
||||
#include "player.h"
|
||||
#include "gamelog.h"
|
||||
|
||||
#include "framework/cpp/httpclientpool.h"
|
||||
|
||||
@ -265,6 +266,7 @@ void Guild::_CMGuildJoin(f8::MsgHdr& hdr, const cs::CMGuildJoin& msg)
|
||||
SyncHelper::Instance()->SyncGuildMemberUpdateOnlyOnline(this, member, kGuildUpdateReasonJoin);
|
||||
} else {
|
||||
DBHelper::Instance()->AddGuildApply(this, forward_msg->context().user_info());
|
||||
GameLog::Instance()->GuildApply(this, forward_msg->context().user_info().base_data());
|
||||
}
|
||||
}
|
||||
|
||||
@ -383,6 +385,16 @@ void Guild::_CMGuildRefuse(f8::MsgHdr& hdr, const cs::CMGuildRefuse& msg)
|
||||
ss::SS_IM_ForwardGuildCMMsg *forward_msg = (ss::SS_IM_ForwardGuildCMMsg*)hdr.user_data;
|
||||
|
||||
cs::SMGuildRefuse respmsg;
|
||||
GuildMember* sender = GetMember(forward_msg->context().user_info().base_data().account_id());
|
||||
if (!sender) {
|
||||
SendErrorMsg(hdr.socket_handle, forward_msg->context(), "服务器内部错误");
|
||||
respmsg.set_errcode(2);
|
||||
respmsg.set_errmsg("服务器内部错误");
|
||||
GuildMgr::Instance()->ForwardGuildSMMsg(hdr.socket_handle,
|
||||
forward_msg->context(),
|
||||
respmsg);
|
||||
return;
|
||||
}
|
||||
GuildMgr::Instance()->ForwardGuildSMMsg(hdr.socket_handle,
|
||||
forward_msg->context(),
|
||||
respmsg);
|
||||
@ -394,6 +406,10 @@ void Guild::_CMGuildRefuse(f8::MsgHdr& hdr, const cs::CMGuildRefuse& msg)
|
||||
kGuildApplyReject
|
||||
);
|
||||
ClearApplyByIdx(msg.apply().idx());
|
||||
GameLog::Instance()->GuildRefuse(this,
|
||||
sender,
|
||||
msg.apply().idx(),
|
||||
msg.apply().base_data().account_id());
|
||||
}
|
||||
|
||||
void Guild::_CMGuildKick(f8::MsgHdr& hdr, const cs::CMGuildKick& msg)
|
||||
@ -458,6 +474,11 @@ void Guild::_CMGuildKick(f8::MsgHdr& hdr, const cs::CMGuildKick& msg)
|
||||
RemoveMember(sender->account_id,
|
||||
member->account_id,
|
||||
kGuildKick);
|
||||
GameLog::Instance()->GuildKick(
|
||||
this,
|
||||
sender,
|
||||
msg.account_id()
|
||||
);
|
||||
}
|
||||
|
||||
void Guild::_CMGuildQuit(f8::MsgHdr& hdr, const cs::CMGuildQuit& msg)
|
||||
@ -470,6 +491,7 @@ void Guild::_CMGuildQuit(f8::MsgHdr& hdr, const cs::CMGuildQuit& msg)
|
||||
respmsg);
|
||||
GuildMember* sender = GetMember(forward_msg->context().user_info().base_data().account_id());
|
||||
if (sender) {
|
||||
GameLog::Instance()->GuildQuit(this, sender);
|
||||
std::string src_account_id = sender->account_id;
|
||||
int src_job = GetMemberJob(sender->account_id);
|
||||
RemoveMember(sender->account_id,
|
||||
@ -514,6 +536,7 @@ void Guild::_CMGuildQuit(f8::MsgHdr& hdr, const cs::CMGuildQuit& msg)
|
||||
|
||||
void Guild::_CMGuildDismiss(f8::MsgHdr& hdr, const cs::CMGuildDismiss& msg)
|
||||
{
|
||||
#if 0
|
||||
ss::SS_IM_ForwardGuildCMMsg *forward_msg = (ss::SS_IM_ForwardGuildCMMsg*)hdr.user_data;
|
||||
|
||||
cs::SMGuildDismiss respmsg;
|
||||
@ -539,6 +562,7 @@ void Guild::_CMGuildDismiss(f8::MsgHdr& hdr, const cs::CMGuildDismiss& msg)
|
||||
}
|
||||
guild_status_ = kGuildDismissed;
|
||||
SaveToDB();
|
||||
#endif
|
||||
}
|
||||
|
||||
void Guild::_CMGuildChange(f8::MsgHdr& hdr, const cs::CMGuildChange& msg)
|
||||
@ -924,6 +948,9 @@ void Guild::_CMGuildMemberSetJob(f8::MsgHdr& hdr, const cs::CMGuildMemberSetJob&
|
||||
}
|
||||
break;
|
||||
}
|
||||
GameLog::Instance()->GuildSetJob(this,
|
||||
sender,
|
||||
src_job);
|
||||
}
|
||||
{
|
||||
auto p = respmsg.add_chged_members();
|
||||
@ -977,6 +1004,7 @@ void Guild::_CMGuildAgreeInvite(f8::MsgHdr& hdr, const cs::CMGuildAgreeInvite& m
|
||||
kGuildApplyAgree
|
||||
);
|
||||
ClearApplyBySenderId(forward_msg->context().user_info().base_data().account_id());
|
||||
GameLog::Instance()->GuildAgreeInvite(this, member);
|
||||
}
|
||||
|
||||
int Guild::GetMemberJob(const std::string& account_id)
|
||||
@ -1517,4 +1545,10 @@ void Guild::GuildAgreeCb(int socket_handle, const ss::MFIMMsgConext& context, co
|
||||
|
||||
});
|
||||
}
|
||||
GameLog::Instance()->GuildAgree(
|
||||
this,
|
||||
sender,
|
||||
msg.apply().idx(),
|
||||
msg.apply().base_data().account_id()
|
||||
);
|
||||
}
|
||||
|
@ -700,7 +700,8 @@ void Player::_CMGuildCreate(f8::MsgHdr& hdr, const cs::CMGuildCreate& msg)
|
||||
f8::HttpClientPool::Instance()->HttpGet
|
||||
(
|
||||
a8::XParams()
|
||||
.SetSender(msg_context),
|
||||
.SetSender(msg_context)
|
||||
.SetParam1(msg.guild_name()),
|
||||
[] (a8::XParams& param, a8::XObject& data)
|
||||
{
|
||||
MsgContext* msg_context = (MsgContext*)param.sender.GetUserData();
|
||||
@ -709,6 +710,9 @@ void Player::_CMGuildCreate(f8::MsgHdr& hdr, const cs::CMGuildCreate& msg)
|
||||
if (hum && hum->AccountId() == msg_context->account_id) {
|
||||
if (data.At("errcode")->AsXValue().GetInt() == 0) {
|
||||
DBHelper::Instance()->ConfirmGuild(hum, msg_context->guild_id);
|
||||
GameLog::Instance()->GuildCreate(hum,
|
||||
msg_context->guild_id,
|
||||
param.param1);
|
||||
} else {
|
||||
hum->ShowErrorMsg(data.At("errmsg")->AsXValue().GetString());
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user