Exemple #1
0
        private void MarkRockSmash()
        {
            Frame_Tiny.thershold = 1;
            int idxmax = ReferenceList.Count - 6;

            results = results.TakeWhile(r => r.HitIndex < idxmax).ToList();  // Remove tail data
            foreach (var rt in results)
            {
                int j = rt.HitIndex;
                rt.enctr = (byte)((ReferenceList[j++].rand * 3ul) >> 32);
                rt.sync  = ReferenceList[j++].R2;
                rt.slot  = WildRNG.getSlot(ReferenceList[j++].R100, 4);
                if (IsORAS)
                {
                    rt.flute = WildRNG.getFluteBoost(ReferenceList[j++].R100);
                }
                rt.item = Wild6.getHeldItem(ReferenceList[++j].R100);
            }
        }
Exemple #2
0
        private void MarkEncounter(bool FS = false, bool Fishing = false, bool Check = true)
        {
            Frame_Tiny.thershold = (byte)(!Check ? 0 : EncounterRate);
            byte SlotType = (byte)(FS ? SlotNum + 47 : Fishing ? 3 : 2);
            int  idxmax   = ReferenceList.Count - 6;

            results = results.TakeWhile(r => r.HitIndex < idxmax).ToList();  // Remove tail data
            foreach (var rt in results)
            {
                int j = rt.HitIndex;
                rt.sync = ReferenceList[j++].R2;
                if (Check)
                {
                    rt.enctr = ReferenceList[j++].R100;
                }
                rt.slot = WildRNG.getSlot(ReferenceList[j++].R100, SlotType);
                if (IsORAS)
                {
                    rt.flute = WildRNG.getFluteBoost(ReferenceList[j++].R100);
                }
                rt.item = Wild6.getHeldItem(ReferenceList[++j].R100);
            }
        }