//
// Npc.cs
//
// Copyright (c) František Boháček. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
using NosSmooth.Data.Abstractions.Infos;
using NosSmooth.Game.Data.Info;
using NosSmooth.Packets.Enums;
namespace NosSmooth.Game.Data.Entities;
///
/// Represents nostale npc entity.
///
public class Npc : ILivingEntity
{
///
/// Gets or sets the monster info.
///
public IMonsterInfo? NpcInfo { get; set; }
///
/// Gets the VNum of the npc.
///
public int VNum { get; internal set; }
///
public long Id { get; set; }
///
public string? Name { get; set; }
///
public bool IsSitting { get; set; }
///
public bool CantMove { get; set; }
///
public bool CantAttack { get; set; }
///
public Position? Position { get; set; }
///
public EntityType Type => EntityType.Npc;
///
public int? Speed { get; set; }
///
public bool? IsInvisible { get; set; }
///
public ushort? Level { get; set; }
///
public byte? Direction { get; set; }
///
public Health? Hp { get; set; }
///
public Health? Mp { get; set; }
///
public FactionType? Faction { get; set; }
///
public short Size { get; set; }
///
public IReadOnlyList? EffectsVNums { get; set; }
}