public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.VersusMatchResults");
     var method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.VersusMatchResults::.ctor(TowerFall.Session,TowerFall.VersusRoundResults)");
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeMethod(i));
 }
 public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.TeamSelectOverlay");
     var method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.TeamSelectOverlay::.ctor(TowerFall.CustomMapButton)");
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
 }
Example #3
0
 public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "Monocle.MInput");
     var method = type.Methods.Single(m => m.FullName == "System.Void Monocle.MInput::UpdateJoysticks()");
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
 }
Example #4
0
 public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.MenuButtons");
     var method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.MenuButtons::Update()");
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
 }
Example #5
0
 public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.PlayerInput");
     var method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.PlayerInput::AssignInputs()");
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     instructions.ForEach(i => ChangeThreesToSevens(i));
 }
Example #6
0
 public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.AwardInfo");
     var method = type.Methods.Single(m => m.FullName == "Monocle.Sprite`1<System.Int32> TowerFall.AwardInfo::GetSprite(System.Boolean)");
     var instructions = method.Body.Instructions.ToList();
     var proc = method.Body.GetILProcessor();
     instructions.ForEach(i => GetMethod(i, proc, baseModule));
 }
Example #7
0
 public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.Session");
     var method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.Session::.ctor(TowerFall.MatchSettings)");
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.Session::EndRound()");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
 }
 public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.VersusRoundResults");
     var method = type.Methods.Single(m => m.FullName == "System.Collections.IEnumerator TowerFall.VersusRoundResults::Sequence(System.Collections.Generic.List`1<TowerFall.EventLog>)");
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeThreesToSevens(i));
     var subType = type.NestedTypes.Single(st => st.FullName.Contains("TowerFall.VersusRoundResults/<Sequence>"));
     method = subType.Methods.Single(m => m.FullName.Contains("::MoveNext()"));
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeThreeToSeven(i));
 }
 public static void CleanModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.VersusPlayerMatchResults");
     var method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.VersusPlayerMatchResults::.ctor(TowerFall.Session,TowerFall.VersusMatchResults,System.Int32,Microsoft.Xna.Framework.Vector2,Microsoft.Xna.Framework.Vector2,System.Collections.Generic.List`1<TowerFall.AwardInfo>)");
     var firstInstruction = method.Body.Instructions.First();
     var secondInstruction = method.Body.Instructions[1];
     var lastInstruction = method.Body.Instructions.Last();
     method.Body.Instructions.Clear();
     method.Body.Instructions.Add(firstInstruction);
     method.Body.Instructions.Add(secondInstruction);
     method.Body.Instructions.Add(lastInstruction);
 }
 public static void CleanModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.VersusMatchResults");
     var method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.VersusMatchResults::.ctor(TowerFall.Session,TowerFall.VersusRoundResults)");
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => GetMethod(i));
     var firstInstruction = method.Body.Instructions.First();
     var secondInstruction = method.Body.Instructions[1];
     var lastInstruction = method.Body.Instructions.Last();
     method.Body.Instructions.Clear();
     method.Body.Instructions.Add(firstInstruction);
     method.Body.Instructions.Add(secondInstruction);
     method.Body.Instructions.Add(lastInstruction);
 }
 public static void CleanModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.VariantPerPlayer");
     var method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.VariantPerPlayer::.ctor(TowerFall.VariantToggle,Microsoft.Xna.Framework.Vector2)");
     var firstInstruction = method.Body.Instructions.First();
     var secondInstruction = method.Body.Instructions[1];
     var thirdInstruction = method.Body.Instructions[2];
     var lastInstruction = method.Body.Instructions.Last();
     method.Body.Instructions.Clear();
     method.Body.Instructions.Add(firstInstruction);
     method.Body.Instructions.Add(secondInstruction);
     method.Body.Instructions.Add(thirdInstruction);
     method.Body.Instructions.Add(lastInstruction);
 }
Example #12
0
 public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.TFCommands");
     Mono.Cecil.MethodDefinition method;
     try {
         method = type.Methods.Single(m => m.FullName.Contains("System.Void TowerFall.TFCommands::<Init>b__4(System.String[])"));
     }
     catch (System.InvalidOperationException)
     {
         var subType = type.NestedTypes.Single(st => st.FullName == "TowerFall.TFCommands/<>c");
         method = subType.Methods.Single(m => m.FullName.Contains("System.Void TowerFall.TFCommands/<>c::<Init>b__0_4(System.String[])"));
     }
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
 }
Example #13
0
 public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.RoundLogic");
     var method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.RoundLogic::.ctor(TowerFall.Session,System.Boolean)");
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.RoundLogic::FinalKillTeams(TowerFall.PlayerCorpse,TowerFall.Allegiance)");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Int32 TowerFall.RoundLogic::SpawnPlayersFFA()");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.RoundLogic::SpawnPlayersTeams()");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
 }
Example #14
0
 public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.TFGame");
     var method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.TFGame::.cctor()");
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Boolean TowerFall.TFGame::CharacterTaken(System.Int32)");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.TFGame::Initialize()");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.TFGame::Load()");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Int32 TowerFall.TFGame::get_FirstPlayer()");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
 }
Example #15
0
 public static void PatchModule(ModuleDefinition baseModule)
 {
     var type = baseModule.AllNestedTypes().Single(t => t.FullName == "TowerFall.Variant");
     var method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.Variant::.ctor(Monocle.Subtexture,System.String,System.String,TowerFall.Pickups[],System.Boolean,System.String,System.Nullable`1<TowerFall.UnlockData/Unlocks>,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Int32)");
     var instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.Variant::Clean(System.Int32)");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Boolean TowerFall.Variant::get_AllTrue()");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Int32 TowerFall.Variant::get_Players()");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Void TowerFall.Variant::set_Value(System.Boolean)");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
     method = type.Methods.Single(m => m.FullName == "System.Boolean TowerFall.Variant::get_Value()");
     instructions = method.Body.Instructions.ToList();
     instructions.ForEach(i => ChangeFoursToEights(i));
 }