protected override void OnInitialize()
        {
            base.OnInitialize();
            SpriteData spriteData = UIResourceManager.SpriteData;
            TwoDimensionEngineResourceContext resourceContext = UIResourceManager.ResourceContext;
            ResourceDepot uIResourceDepot = UIResourceManager.UIResourceDepot;

            _clanCategory = spriteData.SpriteCategories["ui_clan"];
            _clanCategory.Load(resourceContext, uIResourceDepot);

            this._kingdomCategory = spriteData.SpriteCategories["ui_kingdom"];
            this._kingdomCategory.Load(resourceContext, uIResourceDepot);

            this._spriteCategory = spriteData.SpriteCategories["ui_options"];
            this._spriteCategory.Load(resourceContext, uIResourceDepot);


            _gauntletLayer = new GauntletLayer(1);
            _gauntletLayer.InputRestrictions.SetInputRestrictions();
            _gauntletLayer.Input.RegisterHotKeyCategory(HotKeyManager.GetCategory("GenericCampaignPanelsGameKeyCategory"));

            _gauntletLayer.IsFocusLayer = true;
            ScreenManager.TrySetFocus(_gauntletLayer);
            AddLayer(_gauntletLayer);
            _dataSource = new WangVM(CloseWangScreen, OpenPartyAsManage, OpenBannerEditorWithPlayerClan);
            _gauntletLayer.LoadMovie("WangScreen", _dataSource);
            //   Game.Current.EventManager.TriggerEvent(new TutorialContextChangedEvent(TutorialContexts.ClanScreen));
        }
Example #2
0
        private void Initialize()
        {
            this._depot = new ResourceDepot(BasePath.Name);
            this._depot = new ResourceDepot(BasePath.Name);
            this._depot.AddLocation("Modules/BannerBuff/ModuleData/");
            this._depot.CollectResources();
            var files = this._depot.GetFiles("", ".xml");

            if (files.Length > 0)
            {
                foreach (var path in files)
                {
                    if (Path.GetFileNameWithoutExtension(path) == "BannerBuffs")
                    {
                        XmlSerializer ser  = new XmlSerializer(typeof(List <Buff>));
                        var           list = ser.Deserialize(File.OpenRead(path)) as List <Buff>;
                        if (list != null)
                        {
                            foreach (var item in list)
                            {
                                this._registeredbuffs.Add(item.stringID, item);
                            }
                        }
                    }
                }
            }
        }
        protected override void OnActivate()
        {
            base.OnActivate();
            SpriteData spriteData = UIResourceManager.SpriteData;
            TwoDimensionEngineResourceContext resourceContext = UIResourceManager.ResourceContext;
            ResourceDepot uIResourceDepot = UIResourceManager.UIResourceDepot;

            this._characterdeveloper = spriteData.SpriteCategories["ui_characterdeveloper"];
            this._characterdeveloper.Load(resourceContext, uIResourceDepot);

            //this._clanCategory = spriteData.SpriteCategories["ui_encyclopedia"];
            //this._clanCategory.Load(resourceContext, uIResourceDepot);

            this._clanCategory = spriteData.SpriteCategories["ui_clan"];
            this._clanCategory.Load(resourceContext, uIResourceDepot);

            this._gauntletLayer = new GauntletLayer(1, "GauntletLayer");
            this._gauntletLayer.InputRestrictions.SetInputRestrictions(true, InputUsageMask.All);
            this._gauntletLayer.Input.RegisterHotKeyCategory(HotKeyManager.GetCategory("GenericCampaignPanelsGameKeyCategory"));
            this._gauntletLayer.IsFocusLayer = true;
            ScreenManager.TrySetFocus(this._gauntletLayer);
            base.AddLayer(this._gauntletLayer);

            this._dataSource = new HereAdminDashBoardVM(this._heroAdminState.EditHero, OnCloseHereAdminDashBoard);

            this._gauntletLayer.LoadMovie("HeroAdminDashBoard", this._dataSource);
        }
Example #4
0
        public void CreateLayout()
        {
            SpriteData spriteData = UIResourceManager.SpriteData;
            TwoDimensionEngineResourceContext resourceContext = UIResourceManager.ResourceContext;
            ResourceDepot uiResourceDepot = UIResourceManager.UIResourceDepot;

            this._spriteCategory = spriteData.SpriteCategories["ui_crafting"];
            this._spriteCategory.Load((ITwoDimensionResourceContext)resourceContext, uiResourceDepot);

            this._gauntletLayer = new GauntletLayer(1, "GauntletLayer");
            this._gauntletLayer.InputRestrictions.SetInputRestrictions(true, InputUsageMask.All);
            this._gauntletLayer.Input.RegisterHotKeyCategory(HotKeyManager.GetCategory("GenericCampaignPanelsGameKeyCategory"));
            this._gauntletLayer.IsFocusLayer = true;
            //ScreenManager.TrySetFocus((ScreenLayer) this._gauntletLayer);
            MissionScreen.AddLayer((ScreenLayer)this._gauntletLayer);
            this._gauntletLayer.LoadMovie("ScrollGrid", new GameEntityVM());


            //this._testGlobalLayer = new testGlobalLayer();
            //this._testGlobalLayer.Initialize(); // screen where
            //MissionScreen.AddLayer(this._testGlobalLayer.Layer);
            //MissionScreen
            // ScreenManager.AddGlobalLayer(this._testGlobalLayer, true);
            //ScreenManager.TrySetFocus(this._testGlobalLayer.Layer);
        }
Example #5
0
        private static void Postfix(OptionsGauntletScreen __instance)
        {
            __instance.RemoveLayer(__instance.Layers.FirstOrDefault());

            SpriteData spriteData = UIResourceManager.SpriteData;
            TwoDimensionEngineResourceContext resourceContext = UIResourceManager.ResourceContext;
            ResourceDepot uiresourceDepot = UIResourceManager.UIResourceDepot;

            var _spriteCategory = spriteData.SpriteCategories["ui_options"];

            _spriteCategory.Load(resourceContext, uiresourceDepot);
            OptionsWithModsViewModel _dataSource = new OptionsWithModsViewModel(true, false, (requestedHotKeyToChange) =>
            {
                Set(__instance, "_currentGameKey", requestedHotKeyToChange);
                ((KeybindingPopup)Get(__instance, "_keybindingPopup")).OnToggle(true);
            }, null);
            GauntletLayer _gauntletLayer = new GauntletLayer(4000, "GauntletLayer");
            GauntletMovie _gauntletMovie = _gauntletLayer.LoadMovie("Options", _dataSource);

            _gauntletLayer.Input.RegisterHotKeyCategory(HotKeyManager.GetCategory("GenericPanelGameKeyCategory"));
            _gauntletLayer.InputRestrictions.SetInputRestrictions(true, InputUsageMask.All);
            _gauntletLayer.IsFocusLayer = true;
            KeybindingPopup _keybindingPopup = new KeybindingPopup(new Action <Key>((key) =>
            {
                GameKeyOptionVM _currentGameKey       = Get(__instance, "_currentGameKey") as GameKeyOptionVM;
                KeybindingPopup _keybindingPopupinner = Get(__instance, "_keybindingPopup") as KeybindingPopup;
                if (_dataSource.GameKeyOptionGroups.Groups.First((GameKeyGroupVM g) => g.GameKeys.Contains(_currentGameKey)).GameKeys.Any((GameKeyOptionVM k) => k.CurrentKey.InputKey == key.InputKey))
                {
                    InformationManager.AddQuickInformation(new TextObject("{=n4UUrd1p}Already in use", null), 0, null, "");
                    return;
                }
                if (_gauntletLayer.Input.IsHotKeyReleased("Exit"))
                {
                    _keybindingPopupinner.OnToggle(false);
                    return;
                }
                GameKeyOptionVM currentGameKey = _currentGameKey;
                if (currentGameKey != null)
                {
                    currentGameKey.Set(key.InputKey);
                }
                _currentGameKey = null;
                _keybindingPopupinner.OnToggle(false);
            }), __instance);

            __instance.AddLayer(_gauntletLayer);
            ScreenManager.TrySetFocus(_gauntletLayer);

            Set(__instance, "_spriteCategory", _spriteCategory);
            Set(__instance, "_dataSource", _dataSource);
            Set(__instance, "_gauntletLayer", _gauntletLayer);
            Set(__instance, "_gauntletMovie", _gauntletMovie);
            Set(__instance, "_keybindingPopup", _keybindingPopup);
        }
        public static void Postfix(ref BodyGeneratorView __instance)
        {
            SpriteData spriteData = UIResourceManager.SpriteData;
            TwoDimensionEngineResourceContext resourceContext = UIResourceManager.ResourceContext;
            ResourceDepot uIResourceDepot = UIResourceManager.UIResourceDepot;

            clanCategory = spriteData.SpriteCategories["ui_clan"];
            clanCategory.Load(resourceContext, uIResourceDepot);

            FacGenRecordVM facGenRecord = new FacGenRecordVM(__instance, GlobalDataProvider.Instance.FacGenRecordData());
            GauntletMovie  movie        = __instance.GauntletLayer.LoadMovie("FacGenRecord", facGenRecord);
            //movie.BrushFactory.LoadBrushFile("FacGenRecord");
        }
Example #7
0
	// The harvesting deligate to give to the unit on path completion
	void PathComplete(GameObject navTarget)
	{
		if(navTarget!= null)
		{
			Debug.Log("Nav Target not null");
			
			if(navTarget.GetComponent("ResourceDeposit"))
			{
				// Take resources from the resource deposit
				resourceStore = targetResource.TakeResource(10);
				
				// Check if we can still use the current depot (not null and not full)
				if(targetDepot == null || targetDepot.AtCapacity())
				{
					Debug.Log("Target depot is null or full, searching for a new one... ");
					
					// Find a new depot
					ResourceDepot[] depotList = GameObject.FindObjectsOfType(typeof(ResourceDepot)) as ResourceDepot[];
					ResourceDepot closestDepot = depotList[0];
					float closestDistance = Vector3.Distance(transform.position, closestDepot.transform.position);
					foreach(ResourceDepot depot in depotList)
					{
						// Check if the next depot is full and closer than the last depot
						if(!depot.AtCapacity() && (closestDistance > Vector3.Distance(transform.position, depot.transform.position)))
						{
							closestDepot = depot;
						}
					}
					
					// Assign the new depot
					targetDepot = closestDepot;
				}
				
				// Head back to the depot
				unitComponent.SetNavTarget(targetDepot.gameObject);
				
				//Debug.Log("Pathing back to depot");
			}
			else if(navTarget.GetComponent("ResourceDepot"))
			{
				// Drop off the load
				resourceStore = ((ResourceDepot)targetDepot.GetComponent("ResourceDepot")).DropOff(resourceStore);
				
				// Head back to the resource 
				unitComponent.SetNavTarget(targetResource.gameObject);
				
				//Debug.Log("Pathing back to resource");
			}
		}
	}
Example #8
0
        protected override void CreateLayout()
        {
            base.CreateLayout();
            SpriteData spriteData = UIResourceManager.SpriteData;
            TwoDimensionEngineResourceContext resourceContext = UIResourceManager.ResourceContext;
            ResourceDepot uIResourceDepot = UIResourceManager.UIResourceDepot;

            spriteData.SpriteCategories["ui_encyclopedia"].Load(resourceContext, uIResourceDepot);
            _setMapCameraPosition = base.MapScreen.SetMapCameraPosition;
            _homeDatasource       = new EncyclopediaHomeVM(new EncyclopediaPageArgs(null, null));
            _navigatorDatasource  = new EncyclopediaNavigatorVM(ExecuteLink, CloseEncyclopedia);
            _game = Game.Current;
            Game game = _game;

            game.AfterTick = (Action <float>)Delegate.Combine(game.AfterTick, new Action <float>(OnTick));
        }
Example #9
0
        protected override void OnInitialize()
        {
            base.OnInitialize();
            SpriteData spriteData = UIResourceManager.SpriteData;
            TwoDimensionEngineResourceContext resourceContext = UIResourceManager.ResourceContext;
            ResourceDepot uiresourceDepot = UIResourceManager.UIResourceDepot;

            spriteData.SpriteCategories["ui_encyclopedia"].Load(resourceContext, uiresourceDepot);
            gauntletLayer = new GauntletLayer(1);
            gauntletLayer.InputRestrictions.SetInputRestrictions(true, InputUsageMask.All);
            gauntletLayer.Input.RegisterHotKeyCategory(HotKeyManager.GetCategory("GenericCampaignPanelsGameKeyCategory"));
            gauntletLayer.IsFocusLayer = true;
            ScreenManager.TrySetFocus(gauntletLayer);
            AddLayer(gauntletLayer);
            vm    = new ModSettingsScreenVM();
            movie = gauntletLayer.LoadMovie("ModOptionsScreen", vm);
        }
Example #10
0
        public static SpriteData CreateNewFromModule(string name, ResourceDepot resourceDepot)
        {
            var spriteData = new SpriteData(name);

            try
            {
                spriteData.Load(resourceDepot);
                foreach (var spriteCategory in spriteData.SpriteCategories)
                {
                    spriteCategory.Value.LoadFromModules(resourceDepot);
                }
            }
            catch (Exception ex)
            {
                CommunityPatchSubModule.Error(ex, "[Aragas.MercenaryContract]: Error while trying to initialize custom textures!");
            }

            return(spriteData);
        }
Example #11
0
        public void ShowInterface(ScreenBase screenBase, Clan clan)
        {
            this._screenBase = screenBase;

            SpriteData spriteData = UIResourceManager.SpriteData;
            TwoDimensionEngineResourceContext resourceContext = UIResourceManager.ResourceContext;
            ResourceDepot resourceDepot = UIResourceManager.UIResourceDepot;

            spriteData.SpriteCategories["ui_encyclopedia"].Load(resourceContext, resourceDepot);
            spriteData.SpriteCategories["ui_kingdom"].Load(resourceContext, resourceDepot);

            _layer = new GauntletLayer(211);
            _layer.InputRestrictions.SetInputRestrictions(true, InputUsageMask.All);
            _layer.Input.RegisterHotKeyCategory(HotKeyManager.GetCategory("GenericCampaignPanelsGameKeyCategory"));
            _layer.IsFocusLayer = true;
            ScreenManager.TrySetFocus(_layer);
            screenBase.AddLayer(_layer);
            _vm    = new DonateGoldVM(clan, this.OnFinalize);
            _movie = _layer.LoadMovie("DonateGold", _vm);
        }
Example #12
0
        public XMLParse()
        {
            this._dictionary = new Dictionary <string, Dictionary <string, List <PrefabVM> > >();
            this._depot      = new ResourceDepot(BasePath.Name);
            this._depot.AddLocation("Modules/Native/Prefabs");
            this._depot.CollectResources();



            //Loop
            var files = this._depot.GetFiles("", ".xml");

            foreach (var xmlFile in files)
            {
                // XML Names
                var file_name        = new Regex("\\w*\\.xml").Match(xmlFile).Value;
                var category_name    = new Regex("^[a-z]*").Match(file_name).Value;
                var subcategory_name = new Regex("(?<=_)[a-z]*").Match(file_name).Value;



                //Check if Exists
                if (!_dictionary.ContainsKey(category_name))
                {
                    _dictionary.Add(category_name, new Dictionary <string, List <PrefabVM> >());
                }

                if (!_dictionary[category_name].ContainsKey(subcategory_name))
                {
                    _dictionary[category_name].Add(subcategory_name, new List <PrefabVM>());
                }


                //Add to Dictionary
                GetNames(xmlFile, _dictionary[category_name][subcategory_name]);
            }

            _complete = true;
        }
Example #13
0
        public static void LoadFromModules(this SpriteCategory spriteCategory, ResourceDepot resourceDepot)
        {
            if (!spriteCategory.IsLoaded)
            {
                IsLoadedProperty.SetValue(spriteCategory, true);

                for (var i = 1; i <= spriteCategory.SpriteSheetCount; i++)
                {
                    try
                    {
                        var filePath = resourceDepot.GetFilePath($"SpriteSheets\\{spriteCategory.Name}\\{spriteCategory.Name}_{i}.png");
                        var fileInfo = new FileInfo(filePath);
                        spriteCategory.SpriteSheets.Add(
                            new Texture(
                                new EngineTexture(
                                    TaleWorlds.Engine.Texture.CreateTextureFromPath(fileInfo.Directory.FullName, fileInfo.Name))));
                    }
                    catch (Exception ex)
                    {
                        CommunityPatchSubModule.Error(ex, "[Aragas.MercenaryContract]: Error while trying to load custom textures!");
                    }
                }
            }
        }
Example #14
0
	void TargetSet(GameObject targetObject)
	{
		if(targetObject.GetComponent("ResourceDeposit"))
		{
			targetResource = targetObject.GetComponent("ResourceDeposit") as ResourceDeposit;
		}
		else if(targetObject.GetComponent("ResourceDepot"))
		{
			targetDepot = targetObject.GetComponent("ResourceDepot") as ResourceDepot;
		}
	}
Example #15
0
 public TaleWorlds.TwoDimension.Texture LoadTexture(ResourceDepot resourceDepot, string name)
 {
     return(texture);
 }