//================================================================================
// UIDATA_SKILL.
//================================================================================

class UIDATA_SKILL extends UIDataManager
	Native;

native static function ItemID GetFirstID ();

native static function ItemID GetNextID ();

native static function int GetDataCount ();

native static function string GetIconName (ItemID Id, int Level, int SubLevel);

native static function string GetIconPanel (ItemID Id, int Level, int SubLevel);

native static function string GetIconPanel2 (ItemID Id, int Level, int SubLevel);

native static function string GetName (ItemID Id, int Level, int SubLevel);

native static function string GetDescription (ItemID Id, int Level, int SubLevel);

native static function string GetEnchantName (ItemID Id, int Level, int SubLevel);

native static function int GetEnchantSkillLevel (ItemID Id, int Level, int SubLevel);

native static function string GetEnchantIcon (ItemID Id, int Level, int SubLevel);

native static function string GetOperateType (ItemID Id, int Level, int SubLevel);

// Export UUIDATA_SKILL::execGetIconType(FFrame&, void* const)
native static function int GetIconType(ItemID Id, int Level, int SubLevel);

// Export UUIDATA_SKILL::execGetGroupType(FFrame&, void* const)
native static function int GetGroupType(ItemID Id, int Level, int SubLevel);

native static function bool IsAlchemySkill (ItemID Id, int Level);

native static function int GetHpConsume (ItemID Id, int Level, int SubLevel);

native static function int GetMpConsume (ItemID Id, int Level, int SubLevel);

native static function int GetCastRange (ItemID Id, int Level, int SubLevel);

native static function int GetUltimateSkillLevel (ItemID Id, int Level, int SubLevel);

native static function int SkillIsNewOrUp (ItemID Id);

native static function bool IsAvailableClass (ItemID Id, int Level, int SubLevel, int Class);

native static function GetCurrentSkillList (out array<ItemID> IDs);

native static function bool IsToppingSkill (ItemID Id, int Level, int SubLevel);

native static function bool GetToppingSkillExtraInfo (ItemID Id, int Level, int SubLevel, out ToppingSkillExtraInfo Info);

native static function bool GetFirstDefaultToppingSkillExtraInfo (out ToppingSkillExtraInfo Info);

native static function bool GetNextDefaultToppingSkillExtraInfo (out ToppingSkillExtraInfo Info);

native static function EAutomaticUseSkillType GetAutomaticUseSkillType (ItemID Id);

native static function bool GetMSCondItem(int a_ID, int a_Level, int a_Sublevel, out int o_ItemClassID, out int o_ItemCount);

native static function bool GetMSCondEquipType(int a_ID, int a_Level, int a_Sublevel, out ESkillConditionEquipType o_EquipType);

native static function bool GetMSCondWeapons(int a_ID, int a_Level, int a_Sublevel, out array<AttackType> o_ArrWeapons);