public static void Postfix(GadgetDirector __instance)
 {
     if (SRSingleton <SceneContext> .Instance.GameModeConfig.GetModeSettings().blueprintsEnabled)
     {
         foreach (var v in GadgetRegistry.customBlueprintLocks)
         {
             __instance.blueprintLocks[v.Key] = v.Value(__instance);
         }
     }
 }
        internal static void InjectLocks(GadgetDirector dir)
        {
            if (!SceneContext.Instance.GameModeConfig.GetModeSettings().blueprintsEnabled)
            {
                return;
            }

            foreach (Gadget.Id id in BLUEPRINT_LOCKS.Keys)
            {
                dir.blueprintLocks.Add(id, new GadgetDirector.BlueprintLocker(dir, id, BLUEPRINT_LOCKS[id].Item1, BLUEPRINT_LOCKS[id].Item2));
            }
        }
Пример #3
0
        private static void BuilderPatternDemo()
        {
            AbstractWidget abstractWidget = new SmallWidget(FinishColor.PlatedPlatinum);
            WagBuilder     wagBuilder     = new WidgetBuilder(abstractWidget);
            WagDirector    wagDirector    = new WidgetDirector();
            IWag           widget         = wagDirector.Build(wagBuilder);

            Console.WriteLine(widget);

            AbstractGadget abstractGadget = new SmallGadget(FinishColor.PlainBlack);
            WagBuilder     builder        = new GadgetBuilder(abstractGadget);
            WagDirector    director       = new GadgetDirector();
            IWag           gadget         = director.Build(builder);

            Console.WriteLine(gadget);
        }
        public override bool Execute(string[] args)
        {
            new UnlockAllCommand().Execute(args);

            GadgetsModel gadgets = SceneContext.Instance.GameModel.GetGadgetsModel();

            foreach (Gadget.Id value in EnumUtils.GetAll <Gadget.Id>())
            {
                try
                {
                    if (gadgets.gadgets.ContainsKey(value))
                    {
                        gadgets.gadgets[value] = GameContext.Instance.LookupDirector.GetGadgetDefinition(value).buyCountLimit == 0 ? 99 : GameContext.Instance.LookupDirector.GetGadgetDefinition(value).buyCountLimit;
                    }
                    else
                    {
                        gadgets.gadgets.Add(value, GameContext.Instance.LookupDirector.GetGadgetDefinition(value).buyCountLimit == 0 ? 99 : GameContext.Instance.LookupDirector.GetGadgetDefinition(value).buyCountLimit);
                    }
                }
                catch { continue; }
            }

            PlayerModel model = SceneContext.Instance.GameModel.GetPlayerModel();

            model.currency   = 1000000;
            model.keys       = 99;
            model.maxEnergy  = 99999;
            model.currEnergy = 99999;
            model.maxHealth  = 99999;
            model.currHealth = 99999;

            foreach (Identifiable.Id value in EnumUtils.GetAll <Identifiable.Id>())
            {
                if (GadgetDirector.IsRefineryResource(value))
                {
                    SceneContext.Instance.GadgetDirector.AddToRefinery(value, 999, true);
                }
            }

            return(true);
        }
 // Methods
 protected virtual GadgetDirector.BlueprintLocker CreateBlueprintLocker(GadgetDirector dir) => null;