server-master/srcs/WingsAPI.Game/Entities/IMonsterData.cs
2026-02-10 18:21:30 +01:00

113 lines
No EOL
3.5 KiB
C#

using System;
using System.Collections.Generic;
using WingsAPI.Data.Drops;
using WingsEmu.DTOs.BCards;
using WingsEmu.Game._enum;
using WingsEmu.Game.Skills;
using WingsEmu.Packets.Enums;
using WingsEmu.Packets.Enums.Battle;
namespace WingsEmu.Game.Entities;
public interface IMonsterData
{
short AmountRequired { get; }
byte ArmorLevel { get; }
AttackType AttackType { get; }
byte AttackUpgrade { get; }
byte BasicCastTime { get; }
short BasicCooldown { get; }
byte BasicRange { get; }
short AttackEffect { get; }
short BasicHitChance { get; }
bool CanBeCollected { get; }
bool CanBeDebuffed { get; }
bool CanBeCaught { get; }
bool CanBePushed { get; }
bool CanRegenMp { get; }
bool CanWalk { get; }
int CellSize { get; }
int CleanDamageMin { get; }
int CleanDamageMax { get; }
int CleanHitRate { get; }
int CleanMeleeDefence { get; }
int CleanRangeDefence { get; }
int CleanMagicDefence { get; }
int CleanDodge { get; }
int CleanHp { get; }
int CleanMp { get; }
short BaseCloseDefence { get; }
short BaseConcentrate { get; }
short BaseCriticalChance { get; }
short BaseCriticalRate { get; }
bool DamagedOnlyLastJajamaruSkill { get; }
int BaseDamageMaximum { get; }
int BaseDamageMinimum { get; }
short BaseDarkResistance { get; }
short DeathEffect { get; }
int BaseMaxHp { get; }
int BaseMaxMp { get; }
short DefenceDodge { get; }
byte DefenceUpgrade { get; }
bool DisappearAfterHitting { get; }
bool DisappearAfterSeconds { get; }
bool DisappearAfterSecondsMana { get; }
short DistanceDefence { get; }
short DistanceDefenceDodge { get; }
byte BaseElement { get; }
short BaseElementRate { get; }
short BaseFireResistance { get; }
FactionType? SuggestedFaction { get; }
int GiveDamagePercentage { get; }
int GroupAttack { get; }
bool HasMode { get; }
int RawHostility { get; }
int IconId { get; }
bool IsPercent { get; }
int JobXp { get; }
byte BaseLevel { get; }
short BaseLightResistance { get; }
short MagicDefence { get; }
short MagicMpFactor { get; }
short MeleeHpFactor { get; }
sbyte MinimumAttackRange { get; }
int MonsterVNum { get; }
string Name { get; }
byte NoticeRange { get; }
bool OnDefenseOnlyOnce { get; }
short PermanentEffect { get; }
MonsterRaceType MonsterRaceType { get; }
byte MonsterRaceSubType { get; }
short RangeDodgeFactor { get; }
TimeSpan BaseRespawnTime { get; }
int SpawnMobOrColor { get; }
byte BaseSpeed { get; }
int SpriteSize { get; }
int TakeDamages { get; }
short VNumRequired { get; }
short BaseWaterResistance { get; }
byte WeaponLevel { get; }
byte WinfoValue { get; }
int Xp { get; }
byte MaxTries { get; }
short CollectionCooldown { get; }
byte CollectionDanceTime { get; }
bool TeleportRemoveFromInventory { get; }
short BasicDashSpeed { get; }
bool ModeIsHpTriggered { get; }
byte ModeLimiterType { get; }
short ModeRangeTreshold { get; }
short ModeCModeVnum { get; }
short ModeHpTresholdOrItemVnum { get; }
short MidgardDamage { get; }
bool HasDash { get; }
bool DropToInventory { get; }
int BaseXp { get; }
int BaseJobXp { get; }
public IReadOnlyList<DropDTO> Drops { get; }
public bool CanSeeInvisible { get; }
public IReadOnlyList<BCardDTO> BCards { get; }
public IReadOnlyList<BCardDTO> ModeBCards { get; }
public IReadOnlyList<INpcMonsterSkill> MonsterSkills { get; }
}