package org.skfiy.typhon.spi.playerevent;
import org.skfiy.typhon.domain.Friend;
import org.skfiy.typhon.domain.Incident;
import org.skfiy.typhon.domain.Player;
import org.skfiy.typhon.session.SessionUtils;
import org.skfiy.typhon.spi.IPlayerEvent;
import org.skfiy.typhon.spi.IncidentConstants;
import org.skfiy.typhon.spi.role.PlayerEventBean;
import com.alibaba.fastjson.JSONObject;
public class UpdateFriendInformationEvent implements IPlayerEvent<PlayerEventBean> {
@Override
public String getEventName() {
return IncidentConstants.EVENT_UPDATE_FRIENDS;
}
@Override
public boolean isDeletable() {
return true;
};
@Override
public void invoke(PlayerEventBean bean) {
Player player=SessionUtils.getPlayer();
Incident incident = bean.getIncident();
Friend befriend = JSONObject.parseObject(incident.getData(), Friend.class);
for (Friend friend : player.getNormal().getFriends()) {
if (friend.getRid() == befriend.getRid()) {
if (friend.getAvatar() != befriend.getAvatar()) {
friend.setAvatar(befriend.getAvatar());
}
if (friend.getAvatarBorder() != befriend.getAvatarBorder()) {
friend.setAvatarBorder(befriend.getAvatarBorder());
}
if (friend.getLevel() != befriend.getLevel()) {
friend.setLevel(befriend.getLevel());
}
if (!friend.getName().equals(befriend.getName())) {
friend.setName(befriend.getName());
}
if (friend.getPowerGuessSum() != befriend.getPowerGuessSum()) {
friend.setPowerGuessSum(befriend.getPowerGuessSum());
}
if (friend.getSocietyName() != befriend.getSocietyName()) {
friend.setSocietyName(befriend.getSocietyName());
}
}
}
}
}