using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using ServerCore; using ServerBase; using ServerCommon; namespace GameServer; public class Room : EntityBase { public Room(Player parent) : base(EntityType.Room, parent) { onInit().GetAwaiter().GetResult(); } public sealed override async Task onInit() { var parent = getDirectParent(); NullReferenceCheckHelper.throwIfNull(parent, () => $"parent is null !!!"); addEntityAttribute(new RoomAttribute(this, parent)); addEntityAction(new RoomContentAction(this)); return await base.onInit(); } public override string toBasicString() { return $"{this.getTypeName()} - {getRootParent().toBasicString()}"; } public override string toSummaryString() { return $"{this.getTypeName()} - {getRootParent().toBasicString()}"; } }