1
This commit is contained in:
parent
605d1f4527
commit
5c2a124cc9
@ -42,3 +42,5 @@ const char* const EVENT_FRIEND_DELETE = "friend.delete";
|
|||||||
|
|
||||||
const int MAX_INSTANCE_ID = 1023;
|
const int MAX_INSTANCE_ID = 1023;
|
||||||
|
|
||||||
|
const int MAX_FRIEND_NUM = 50;
|
||||||
|
const int DAILY_JOIN_FRIEND_TIMES = 100;
|
||||||
|
@ -786,6 +786,11 @@ const std::string Player::AccountId()
|
|||||||
return myself.base_data.account_id;
|
return myself.base_data.account_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int Player::GetFriendNum()
|
||||||
|
{
|
||||||
|
return friend_hash_.size();
|
||||||
|
}
|
||||||
|
|
||||||
void Player::InternalUpdateUserInfo()
|
void Player::InternalUpdateUserInfo()
|
||||||
{
|
{
|
||||||
ss::SS_IM_UpdateUserInfo ss_msg;
|
ss::SS_IM_UpdateUserInfo ss_msg;
|
||||||
@ -927,6 +932,14 @@ void Player::ProcessEvent()
|
|||||||
if (processed_events.size() > 100) {
|
if (processed_events.size() > 100) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
Event& event = pair.second;
|
||||||
|
if (event.event_name == EVENT_FRIEND_AGREE) {
|
||||||
|
OnFriendAgreeEvent(event);
|
||||||
|
DBHelper::Instance()->SetEventStatus(event.idx, AccountId(), 1);
|
||||||
|
} else if (event.event_name == EVENT_FRIEND_DELETE) {
|
||||||
|
OnFriendDeleteEvent(event);
|
||||||
|
DBHelper::Instance()->SetEventStatus(event.idx, AccountId(), 1);
|
||||||
|
}
|
||||||
processed_events.push_back(pair.first);
|
processed_events.push_back(pair.first);
|
||||||
}
|
}
|
||||||
for (long long event_id : processed_events) {
|
for (long long event_id : processed_events) {
|
||||||
@ -936,10 +949,18 @@ void Player::ProcessEvent()
|
|||||||
|
|
||||||
void Player::OnFriendAgreeEvent(Event& event)
|
void Player::OnFriendAgreeEvent(Event& event)
|
||||||
{
|
{
|
||||||
|
if (GetFriendById(event.sender_id)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (GetFriendNum() >= MAX_FRIEND_NUM) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Player::OnFriendDeleteEvent(Event& event)
|
void Player::OnFriendDeleteEvent(Event& event)
|
||||||
{
|
{
|
||||||
|
if (!GetFriendById(event.sender_id)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
RemoveFriend(event.sender_id);
|
||||||
}
|
}
|
||||||
|
@ -101,6 +101,7 @@ class Player
|
|||||||
void Update(long long tick);
|
void Update(long long tick);
|
||||||
|
|
||||||
const std::string AccountId();
|
const std::string AccountId();
|
||||||
|
int GetFriendNum();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void FillFriendList(::google::protobuf::RepeatedPtrField< ::cs::MFUserInfo >* friend_list);
|
void FillFriendList(::google::protobuf::RepeatedPtrField< ::cs::MFUserInfo >* friend_list);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user