49 lines
1.2 KiB
C#
49 lines
1.2 KiB
C#
using ServerCommon;
|
|
using ServerCore; using ServerBase;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace GameServer;
|
|
|
|
public class Friend : EntityBase
|
|
{
|
|
public Friend(EntityBase parent)
|
|
: base(EntityType.Friend, parent)
|
|
{
|
|
addEntityAttributes();
|
|
}
|
|
|
|
public override async Task<Result> onInit()
|
|
{
|
|
addEntityAttributes();
|
|
return await base.onInit();
|
|
}
|
|
|
|
private void addEntityAttributes()
|
|
{
|
|
var owner = getRootParent() as Player ;
|
|
NullReferenceCheckHelper.throwIfNull(owner, () => $"owner is null !!!");
|
|
|
|
var direct_parent = getDirectParent();
|
|
NullReferenceCheckHelper.throwIfNull(direct_parent, () => $"direct_parent is null !!! - {owner.toBasicString()}");
|
|
|
|
addEntityAttribute(new FriendAttribute(this, owner.getUserGuid(), direct_parent));
|
|
addEntityAction(new FriendAction(this));
|
|
}
|
|
|
|
|
|
public override string toBasicString()
|
|
{
|
|
return $"{this.getTypeName()} - {getRootParent().toBasicString()}";
|
|
}
|
|
|
|
public override string toSummaryString()
|
|
{
|
|
return $"{this.getTypeName()} - {getRootParent().toBasicString()}";
|
|
}
|
|
|
|
}
|