Пример #1
0
 public override List <ActionPanel> OnMenuSelect(Squad ActiveSquad, ActionPanelHolder ListActionMenuChoice)
 {
     return(new List <ActionPanel>()
     {
         new ActionPanelSpellSelection(Map, this), new ActionPanelChannelExternalMana(ListActionMenuChoice, this)
     });
 }
Пример #2
0
 public ActionPanelBattleAttackAnimationPhase(ActionPanelHolder ListActionMenuChoice, SorcererStreetMap Map, string AttackAnimationPath, bool LeftSideAttackRightSide)
     : base("Battle Attack Animation Phase", ListActionMenuChoice, false)
 {
     this.Map = Map;
     this.AttackAnimationPath     = AttackAnimationPath;
     this.LeftSideAttackRightSide = LeftSideAttackRightSide;
 }
        public override List <ActionPanel> OnMenuSelect(Squad ActiveSquad, ActionPanelHolder ListActionMenuChoice)
        {
            int NumberOfTransformingUnitsInSquad = 0;

            for (int U = Map.ActiveSquad.UnitsAliveInSquad - 1; U >= 0; --U)
            {
                UnitTransforming ActiveUnit = (UnitTransforming)Map.ActiveSquad[U];
                if (ActiveUnit != null)
                {
                    if (!ActiveUnit.PermanentTransformation)
                    {
                        ++NumberOfTransformingUnitsInSquad;
                    }
                }
            }

            if (NumberOfTransformingUnitsInSquad >= 1)
            {
                return(new List <ActionPanel>()
                {
                    new ActionPanelTransform(Map, ActiveSquad)
                });
            }

            return(new List <ActionPanel>());
        }
Пример #4
0
 public ActionPanelSpellEditor(ActionPanelHolder ListActionMenuChoice, MagicSpell ActiveSpell, ProjectileContext GlobalProjectileContext, SharedProjectileParams SharedParams)
     : base(ActiveSpell.Name, ListActionMenuChoice, true)
 {
     this.ActiveSpell             = ActiveSpell;
     this.GlobalProjectileContext = GlobalProjectileContext;
     this.SharedParams            = SharedParams;
 }
Пример #5
0
 public override List <ActionPanel> OnMenuSelect(Squad ActiveSquad, ActionPanelHolder ListActionMenuChoice)
 {
     return(new List <ActionPanel>()
     {
         new ActionPanelBuild(Map, this)
     });
 }
 public ActionPanelBattleLandModifierPhase(ActionPanelHolder ListActionMenuChoice, SorcererStreetMap Map, SorcererStreetUnit PlayerUnit)
     : base(PanelName, ListActionMenuChoice, null, false)
 {
     this.Map           = Map;
     this.PlayerUnit    = PlayerUnit;
     this.ActiveTerrain = Map.GetTerrain(PlayerUnit);
 }
Пример #7
0
        public ActionPanelBattleStartPhase(SorcererStreetMap Map, Player ActivePlayer, CreatureCard Invader)
        {
            this.Map          = Map;
            this.ActivePlayer = ActivePlayer;
            this.Invader      = Invader;

            ListActionMenuChoice = new ActionPanelHolder();
        }
Пример #8
0
        public ActionPanelBattleStartPhase(SorcererStreetMap Map, int ActivePlayerIndex, CreatureCard Invader)
        {
            this.Map = Map;
            this.ActivePlayerIndex = ActivePlayerIndex;
            ActivePlayer           = Map.ListPlayer[ActivePlayerIndex];
            this.Invader           = Invader;

            ListActionMenuChoice = new ActionPanelHolder();
        }
Пример #9
0
        private string EndCardText;//Card on the far right used to close the pannel.

        public ActionPanelCardSelectionPhase(ActionPanelHolder ListActionMenuChoice, SorcererStreetMap Map, Player ActivePlayer, string CardType, string EndCardText = "")
            : base("Card Selection", ListActionMenuChoice, false)
        {
            this.Map          = Map;
            this.ActivePlayer = ActivePlayer;
            this.CardType     = CardType;
            this.EndCardText  = EndCardText;

            MaxAnimationScale = 1.1f;
        }
        public ActionPanelCardSelectionPhase(string Name, ActionPanelHolder ListActionMenuChoice, SorcererStreetMap Map, int ActivePlayerIndex, string CardType, string EndCardText = "")
            : base(Name, ListActionMenuChoice, null, false)
        {
            this.Map = Map;
            this.ActivePlayerIndex = ActivePlayerIndex;
            this.CardType          = CardType;
            this.EndCardText       = EndCardText;

            ActivePlayer      = Map.ListPlayer[ActivePlayerIndex];
            MaxAnimationScale = 1.1f;
        }
        public override List <ActionPanel> OnMenuMovement(Squad ActiveSquad, ActionPanelHolder ListActionMenuChoice)
        {
            if (Boosts.PostMovementModifier.Transform)
            {
                return(new List <ActionPanel>()
                {
                    new ActionPanelTransform(Map, ActiveSquad)
                });
            }

            return(null);
        }
Пример #12
0
        public MagicEditor(MagicSpell ActiveMagicSpell, ProjectileContext GlobalProjectileContext, ProjectileParams.SharedProjectileParams SharedParams)
        {
            this.ActiveMagicSpell        = ActiveMagicSpell;
            this.GlobalProjectileContext = GlobalProjectileContext;
            this.SharedParams            = SharedParams;
            ZoomLevel = 1f;

            SelectionRadius      = 10;
            MagicElementSelected = null;

            ListMagicElement = new List <MagicElement>();
            ListMagicElement.AddRange(ActiveMagicSpell.ListMagicCore);
            ListActionMenuChoice = new ActionPanelHolder();
        }
Пример #13
0
        /// <summary>
        /// Create a sample
        /// </summary>
        protected BattleMap()
            : base()
        {
            RequireFocus     = true;
            MapSize          = new Point(10, 10);
            TileSize         = new Point(32, 32);
            ActiveLayerIndex = 0;
            ShowAllLayers    = true;

            IsFrozen      = false;
            OnlinePlayers = new OnlineConfiguration();

            GameTurn             = 0;
            ListTileSet          = new List <Texture2D>();
            ListBackgrounds      = new List <AnimationBackground>();
            ListBackgroundsPath  = new List <string>();
            ListForegrounds      = new List <AnimationBackground>();
            ListForegroundsPath  = new List <string>();
            ListActionMenuChoice = new ActionPanelHolder();
            ListMAPAttackTarget  = new Stack <Tuple <int, int> >();

            VictoryCondition   = "";
            LossCondition      = "";
            SkillPoint         = "";
            sndBattleThemeName = "";

            DicMapVariables   = new Dictionary <string, double>();
            MovementAnimation = new MovementAnimations();
            AttackPicker      = new AttacksMenu();

            ListMapScript     = new List <MapScript>();
            ListMapEvent      = new List <MapEvent>();
            DicCutsceneScript = new Dictionary <string, CutsceneScript>();
            DicRequirement    = new Dictionary <string, BaseSkillRequirement>();
            DicEffect         = new Dictionary <string, BaseEffect>();
            ListSubMap        = new List <BattleMap>();

            GlobalBattleContext = new BattleContext();

            #region Screen shaking

            ShakeCounter        = 0;
            ShakeRadiusMax      = 3;
            ShakeOffsetX        = 0;
            ShakeOffsetY        = 0;
            ShakeAngle          = RandomHelper.Next(360);
            ShakeAngleVariation = new Vector2(1, 0);

            #endregion
        }
Пример #14
0
        public Vehicule(GraphicsDevice g, Matrix Projection, List <AITunnel> ListAITunnel, List <Object3D> ListCollisionBox)
            : base(g, Projection)
        {
            ListActionMenuChoice      = new ActionPanelHolder();
            Acceleration              = 100f;
            Friction                  = 1f;
            LateralFriction           = 0.07f;
            RotationMaxSpeedPerSecond = MathHelper.ToRadians(35);
            MaxSpeed                  = 200f;
            BrakePower                = 100f;
            ArrayAntiGravPropulsor    = new AntiGravPropulsor[0];

            this.ListAITunnel     = ListAITunnel;
            this.ListCollisionBox = ListCollisionBox;
        }
Пример #15
0
        public override List <ActionPanel> OnMenuSelect(int ActivePlayerIndex, ActionPanelHolder ListActionMenuChoice)
        {
            List <ActionPanel> DicActionPanel = new List <ActionPanel>();

            for (int U = UnitsAliveInSquad - 1; U >= 0; --U)
            {
                foreach (ActionPanel OptionalPanel in ArrayUnit[U].OnMenuSelect(ActivePlayerIndex, this, ListActionMenuChoice))
                {
                    if (OptionalPanel != null && !DicActionPanel.Contains(OptionalPanel))
                    {
                        DicActionPanel.Add(OptionalPanel);
                    }
                }
            }

            return(DicActionPanel);
        }
Пример #16
0
        public override List <ActionPanel> OnMenuSelect(Squad ActiveSquad, ActionPanelHolder ListActionMenuChoice)
        {
            VisualNovel NewVisualNovel = new VisualNovel(ListVisualNovel[ActiveVisualNovelIndex]);

            NewVisualNovel.ListGameScreen = Map.ListGameScreen;
            NewVisualNovel.Load();

            if (ActiveVisualNovelIndex + 1 < ListVisualNovel.Count)
            {
                ++ActiveVisualNovelIndex;
            }

            return(new List <ActionPanel>()
            {
                new ActionPanelVisualNovel(ListActionMenuChoice, NewVisualNovel)
            });
        }
        public override List <ActionPanel> OnMenuSelect(Squad ActiveSquad, ActionPanelHolder ListActionMenuChoice)
        {
            if (!Combined)
            {
                int RemainingUnitsToFind = ArrayCombiningUnitName.Length;
                ListFoundCombiningUnit = new List <Squad>(ArrayCombiningUnitName.Length);

                if (ActiveSquad.UnitsAliveInSquad == 1)
                {
                    foreach (Squad OtherSquad in Map.ListPlayer[Map.ActivePlayerIndex].ListSquad)
                    {
                        if (ActiveSquad.UnitsAliveInSquad == 1)
                        {
                            foreach (string LeaderName in ArrayCombiningUnitName)
                            {
                                if (LeaderName.Contains(OtherSquad.CurrentLeader.FullName))
                                {
                                    ListFoundCombiningUnit.Add(OtherSquad);
                                }
                            }
                        }
                    }

                    if (ListFoundCombiningUnit.Count == ArrayCombiningUnitName.Length)
                    {
                        return(new List <ActionPanel>()
                        {
                            new ActionPanelCombine(Map, this)
                        });
                    }
                }
            }
            else
            {
                return(new List <ActionPanel>()
                {
                    new ActionPanelSplit(Map, this)
                });
            }

            return(new List <ActionPanel>());
        }
Пример #18
0
        public SorcererStreetMap()
        {
            RequireDrawFocus     = false;
            ListActionMenuChoice = new ActionPanelHolder();
            Pathfinder           = new MovementAlgorithmSorcererStreet(this);
            ListPlayer           = new List <Player>();
            GlobalSorcererStreetBattleContext = new SorcererStreetBattleContext();
            ListLayer         = new List <MapLayer>();
            ListTilesetPreset = new List <Terrain.TilesetPreset>();

            CursorPosition        = new Vector3(0, 0, 0);
            CursorPositionVisible = CursorPosition;
            ListTerrainType       = new List <string>();

            ListTerrainType.Add("Not Assigned");
            ListTerrainType.Add("Morph");
            ListTerrainType.Add("Multi-Element");
            ListTerrainType.Add(TerrainSorcererStreet.FireElement);
            ListTerrainType.Add(TerrainSorcererStreet.WaterElement);
            ListTerrainType.Add(TerrainSorcererStreet.EarthElement);
            ListTerrainType.Add(TerrainSorcererStreet.AirElement);
            ListTerrainType.Add(TerrainSorcererStreet.EastGate);
            ListTerrainType.Add(TerrainSorcererStreet.WestGate);
            ListTerrainType.Add(TerrainSorcererStreet.SouthGate);
            ListTerrainType.Add(TerrainSorcererStreet.NorthGate);
            ListTerrainType.Add("Warp");
            ListTerrainType.Add("Bridge");
            ListTerrainType.Add("Fortune Teller");
            ListTerrainType.Add("Spell Circle");
            ListTerrainType.Add("Path Switch");
            ListTerrainType.Add("Card Shop");
            ListTerrainType.Add("Magic Trap");
            ListTerrainType.Add("Siege Tower");
            ListTerrainType.Add("Gem Store");

            ListTileSet         = new List <Texture2D>();
            this.CameraPosition = Vector3.Zero;

            this.ListPlayer = new List <Player>();
        }
Пример #19
0
        public WorldMap(string GameMode)
            : base()
        {
            RequireDrawFocus = false;

            ListActionMenuChoice = new ActionPanelHolder();
            CursorPosition       = new Vector3(9, 13, 0);
            ListTerrainType      = new List <string>();
            ListTerrainType.Add("Air");
            ListTerrainType.Add("Land");
            ListTerrainType.Add("Sea");
            ListTerrainType.Add("Space");

            ListTileSet         = new List <Texture2D>();
            ListTileSetPath     = new List <string>();
            ListTilesetPreset   = new List <Terrain.TilesetPreset>();
            ListZone            = new List <MapZoneInfo>();
            ListConsumable      = new List <MapConsumable>();
            ListLayer           = new List <MapLayer>();
            this.CameraPosition = Vector3.Zero;

            this.ListPlayer = new List <Player>();
        }
Пример #20
0
 public BattleMapActionPanel(string Name, ActionPanelHolder ListActionMenuChoice, bool CanCancel)
     : base(Name, ListActionMenuChoice, CanCancel)
 {
 }
Пример #21
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="ActiveSquad">Can be null if not using a Squad</param>
 /// <param name="ListActionMenuChoice">Action Panel Holder</param>
 public virtual List <ActionPanel> OnMenuSelect(int ActivePlayerIndex, Squad ActiveSquad, ActionPanelHolder ListActionMenuChoice)
 {
     return(new List <ActionPanel>());
 }
Пример #22
0
 public ActionPanelBattleCreatureModifierPhase(ActionPanelHolder ListActionMenuChoice, SorcererStreetMap Map)
     : base("Battle Creature Modifier Phase", ListActionMenuChoice, false)
 {
     this.Map = Map;
 }
Пример #23
0
 public override List <ActionPanel> OnMenuMovement(Squad ActiveSquad, ActionPanelHolder ListActionMenuChoice)
 {
     return(null);
 }
 public virtual List <ActionPanel> OnMenuSelect(ActionPanelHolder ListActionMenuChoice)
 {
     return(null);
 }
 public ActionPanelVisualNovel(ActionPanelHolder ListActionMenuChoice, VisualNovel ActiveVisualNovel)
     : base("Visual Novel", ListActionMenuChoice, false)
 {
     this.ActiveVisualNovel = ActiveVisualNovel;
     ActiveVisualNovel.OnVisualNovelEnded += OnVisualNovelEnded;
 }
Пример #26
0
 public ActionPanelBattleAttackPhase(ActionPanelHolder ListActionMenuChoice, SorcererStreetMap Map)
     : base("Battle Attack Phase", ListActionMenuChoice, false)
 {
     this.Map = Map;
 }
Пример #27
0
 public ActionPanelBattleEnchantModifierPhase(ActionPanelHolder ListActionMenuChoice, SorcererStreetMap Map)
     : base(PanelName, ListActionMenuChoice, null, false)
 {
     this.Map = Map;
 }
Пример #28
0
 public BattleMapActionPanel(string Name, ActionPanelHolder ListActionMenuChoice, PlayerInput ActiveInputManager, bool CanCancel)
     : base(Name, ListActionMenuChoice, CanCancel)
 {
     this.ActiveInputManager = ActiveInputManager;
 }
 public ActionPanelBattleItemSelectionPhase(ActionPanelHolder ListActionMenuChoice, SorcererStreetMap Map, int ActivePlayerIndex)
     : base(PanelName, ListActionMenuChoice, Map, ActivePlayerIndex, "Item", "End")
 {
 }
Пример #30
0
 public virtual List <ActionPanel> OnMenuSelect(int ActivePlayerIndex, ActionPanelHolder ListActionMenuChoice)
 {
     return(null);
 }