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_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;
|
||||
}
|
||||
|
||||
int Player::GetFriendNum()
|
||||
{
|
||||
return friend_hash_.size();
|
||||
}
|
||||
|
||||
void Player::InternalUpdateUserInfo()
|
||||
{
|
||||
ss::SS_IM_UpdateUserInfo ss_msg;
|
||||
@ -927,6 +932,14 @@ void Player::ProcessEvent()
|
||||
if (processed_events.size() > 100) {
|
||||
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);
|
||||
}
|
||||
for (long long event_id : processed_events) {
|
||||
@ -936,10 +949,18 @@ void Player::ProcessEvent()
|
||||
|
||||
void Player::OnFriendAgreeEvent(Event& event)
|
||||
{
|
||||
|
||||
if (GetFriendById(event.sender_id)) {
|
||||
return;
|
||||
}
|
||||
if (GetFriendNum() >= MAX_FRIEND_NUM) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
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);
|
||||
|
||||
const std::string AccountId();
|
||||
int GetFriendNum();
|
||||
|
||||
private:
|
||||
void FillFriendList(::google::protobuf::RepeatedPtrField< ::cs::MFUserInfo >* friend_list);
|
||||
|
Loading…
x
Reference in New Issue
Block a user