ICharacterData.cs 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using System.Collections.Generic;
  2. using System.IO;
  3. using System.Linq;
  4. namespace OpenVIII
  5. {
  6. public interface IJunctionTo
  7. {
  8. void AutoATK();
  9. void AutoDEF();
  10. void AutoMAG();
  11. void RemoveAll();
  12. void RemoveMagic();
  13. void JunctionSpell(Kernel_bin.Stat stat, byte spell);
  14. }
  15. public interface ICharacterData : IDamageable, IJunctionTo, IUnlockable
  16. {
  17. bool CanPhoenixPinion { get; }
  18. Kernel_bin.Character_Stats CharacterStats { get; }
  19. Module_battle_debug.CharacterInstanceInformation CII { get; }
  20. sbyte CurrentCrisisLevel { get; }
  21. uint Experience { get; set; }
  22. ushort ExperienceToNextLevel { get; }
  23. Characters ID { get; }
  24. bool SwitchLocked { get; }
  25. List<Kernel_bin.Abilities> UnlockedGFAbilities { get; }
  26. void BattleStart(Module_battle_debug.CharacterInstanceInformation cii);
  27. int CriticalHP(Characters value);
  28. ushort CurrentHP(Characters c);
  29. sbyte GenerateCrisisLevel();
  30. ushort MaxHP(Characters c);
  31. float PercentFullHP(Characters c);
  32. IOrderedEnumerable<Kernel_bin.Magic_Data> SortedMagic(Kernel_bin.Stat Stat);
  33. string ToString();
  34. bool Unlocked(List<Kernel_bin.Abilities> unlocked, Kernel_bin.Stat stat);
  35. bool Unlocked(Kernel_bin.Stat stat);
  36. ushort TotalStat(Kernel_bin.Stat s, Characters c = Characters.Blank);
  37. }
  38. public interface IUnlockable
  39. {
  40. bool Available { get; }
  41. }
  42. }