示例#1
0
        internal static void GetLoadoutTrainerUpdater(Control.ControlCollection controls, int loadOutOffset)
        {
            LoadOut.LoudoutUIData UIData = new LoadOut.LoudoutUIData(GetWeaponData(), GetByteNames(@"H4L_Ability.csv"), GetByteNames(@"H4L_Mods.csv"), GetByteNames(@"H4L_Grenade.csv"));


            LoadoutAdressSetter trainerUpdater = new LoadoutAdressSetter(new AdressGetter(ModuleType.halo4, 0));



            var t = new TrainerUpdater <LoadoutData>(trainerUpdater, new LoadOut(UIData), controls);
        }
示例#2
0
        internal static TrainerUpdater <byte> GetTrainerUpdater <T>(string fileName, Control.ControlCollection Controls, long Taddress = 0)
        {
            string file = GetFile(fileName);


            bool isTree   = false;
            bool isColour = false;

            long       address    = 0;
            ModuleType moduleType = ModuleType.baseModule;



            using (var reader = new StreamReader(file))
            {
                int l = 0;
                while (!reader.EndOfStream)
                {
                    l++;

                    string   line   = reader.ReadLine();
                    string[] values = line.Split(',');

                    if (l == 3)
                    {
                        if (Taddress == 0)
                        {
                            address = Convert.ToInt32(values[1], 16);
                        }
                        else
                        {
                            address = Taddress;
                        }
                    }

                    if (l == 2)
                    {
                        moduleType = ModFromString(values[1]);
                    }

                    if (l > 5 && values[0].Contains(':'))
                    {
                        isTree = true;
                    }
                    if (l > 5 && values[0].Contains('#'))
                    {
                        isColour = true;
                    }
                }
            }

            ITrainerUI <byte> ui;

            if (isColour)
            {
                ui = GetTrainerColourButtonsFromFile(file);
            }
            else if (isTree)
            {
                ui = GetTrainerButtonArrayFromFile(file);
            }
            else
            {
                ui = GetTrainerEnumFromFile(file);
            }



            var t = new TrainerUpdater <byte>(new ByteAdressSetter(new AdressGetter(moduleType, (int)address)), ui, Controls);

            return(t);
        }