Kernel_bin.Slot.cs 726 B

12345678910111213141516171819202122232425
  1. using System.IO;
  2. namespace OpenVIII
  3. {
  4. public partial class Kernel_bin
  5. {
  6. /// <summary>
  7. /// Slot Magic Data
  8. /// </summary>
  9. /// <see cref="https://github.com/alexfilth/doomtrain/wiki/Selphie-limit-break-sets"/>
  10. public struct Slot
  11. {
  12. private byte _count;
  13. private byte _magicID;
  14. public Magic_Data Magic_Data => _magicID<MagicData.Count ? MagicData[_magicID]:null;
  15. public byte Casts { get => checked((byte)(Memory.Random.Next(_count)+1));}
  16. public void Read(BinaryReader br, int i = 0)
  17. {
  18. _magicID = br.ReadByte();
  19. _count = br.ReadByte();
  20. }
  21. }
  22. }
  23. }