Exemple #1
0
        private void HandleMainMenuResponse(int responseID)
        {
            NWPlayer       oPC      = GetPC();
            Model          model    = GetDialogCustomData <Model>();
            DialogResponse response = GetResponseByID("MainPage", responseID);

            int flagID = _structure.GetTerritoryFlagID(model.Flag);

            if (responseID == 1)
            {
                _structure.CreateConstructionSite(GetPC(), model.TargetLocation);
                EndConversation();
                return;
            }

            NWPlaceable structure = (NWPlaceable)response.CustomData[string.Empty];

            if (structure != null)
            {
                int structureID = _structure.GetPlaceableStructureID(structure);
                model.ActiveStructure = structure;
                PCTerritoryFlagsStructure structureEntity = _structure.GetPCStructureByID(structureID);
                model.IsActiveStructureBuilding = structureEntity.StructureBlueprint.IsBuilding;

                SetResponseVisible("ManipulateStructurePage", 1, _structure.PlayerHasPermission(oPC, StructurePermission.CanRotateStructures, flagID));
                SetResponseVisible("ManipulateStructurePage", 2, _structure.PlayerHasPermission(oPC, StructurePermission.CanMoveStructures, flagID));
                SetResponseVisible("ManipulateStructurePage", 3, _structure.PlayerHasPermission(oPC, StructurePermission.CanRazeStructures, flagID));

                ChangePage("ManipulateStructurePage");
            }
        }