Files
caliverse_server/GameServer/Contents/Shop/MyShopProduct.cs
2025-05-01 07:20:41 +09:00

46 lines
1.2 KiB
C#

using Google.Protobuf;
using Google.Protobuf.WellKnownTypes;
using ServerCore;
using ServerBase;
using ServerCommon;
using ServerCommon.BusinessLogDomain;
using MetaAssets;
namespace GameServer;
public class MyShopProduct : EntityBase
{
public MyShopProduct(Player parent) : base(EntityType.MyShopProductMeter, parent)
{
onInit().GetAwaiter().GetResult();
}
public sealed override async Task<Result> onInit()
{
var owner = getRootParent() as Player;
ArgumentNullException.ThrowIfNull(owner);
var direct_parent = getDirectParent();
NullReferenceCheckHelper.throwIfNull(direct_parent, () => $"direct_parent is null !!!");
addEntityAttribute(new ShopProductTradingMeterAttribute(this, owner.getUserGuid(), direct_parent));
addEntityAction(new ShopProductTradingMeterAction(this));
addEntityAction(new PurchaseShopProductAction(this));
return await base.onInit();
}
public override string toBasicString()
{
return $"{this.getTypeName()} - {getRootParent().toBasicString()}";
}
public override string toSummaryString()
{
return $"{this.getTypeName()} - {getRootParent().toBasicString()}";
}
}