示例#1
0
 public static void LoadDebugFunctions(string[] args)
 {
     Commands.AddGroup("hinit", HInit);
     Commands.AddGroup("hdiff", HDiff);
     Commands.AddGroup("listPickups", ListPickups);
     Commands.AddGroup("listCameras", ListCameras);
     Commands.AddGroup("exit", (x) => Application.Quit());
     Commands.AddGroup("printByName", PrintByName);
     Commands.AddGroup("printLabels", PrintLabels);
     Commands.AddGroup("listOutlines", ListOutlines);
 }
示例#2
0
        /// <summary>
        /// Load ETGItemCards hooks initialize classes
        /// </summary>
        public override void Start()
        {
            //Command to load the debug functions used for development.
            //Debug function are undocumented, use at your own risk
            Commands.AddGroup("loadDebugFunctions", DebugFunctions.LoadDebugFunctions);

            //command to set desired format for item cards
            Commands.AddGroup("SetCardFormat", SetCardFormat);

            //Create a hook for the GameUIRoot class for running this mods update loop
            MethodBase gameUIUpdate     = typeof(TimeInvariantMonoBehaviour).GetMethod("Update", (BindingFlags)(-1));
            MethodInfo gameUIUpdateHook = typeof(PickupTracker).GetMethod("UpdateHook", (BindingFlags)(-1));

            new Hook(gameUIUpdate, gameUIUpdateHook);

            //Track intantiation and deletion of the objects that are needed for tracking
            TypeTracker.TrackType(typeof(PickupObject));
            TypeTracker.TrackType(typeof(ShopItemController));
            TypeTracker.TrackType(typeof(RewardPedestal));

            //Log that the mod loaded, for players
            Log("Item Cards Loaded");
        }