コード例 #1
0
        private void CreateFairy(GameTypes.EnemyDifficulty difficulty)
        {
            var enemyObj_Fairy = new EnemyObj_Fairy(null, null, null, difficulty);

            enemyObj_Fairy.Position  = Position;
            enemyObj_Fairy.DropsItem = false;
            if (m_target.X < enemyObj_Fairy.X)
            {
                enemyObj_Fairy.Orientation = MathHelper.ToRadians(0f);
            }
            else
            {
                enemyObj_Fairy.Orientation = MathHelper.ToRadians(180f);
            }
            enemyObj_Fairy.Level = Level - 7 - 1;
            m_levelScreen.AddEnemyToCurrentRoom(enemyObj_Fairy);
            enemyObj_Fairy.PlayAnimation();
            enemyObj_Fairy.MainFairy        = false;
            enemyObj_Fairy.SavedStartingPos = enemyObj_Fairy.Position;
            enemyObj_Fairy.SaveToFile       = false;
            if (LevelEV.SHOW_ENEMY_RADII)
            {
                enemyObj_Fairy.InitializeDebugRadii();
            }
            enemyObj_Fairy.SpawnRoom       = m_levelScreen.CurrentRoom;
            enemyObj_Fairy.GivesLichHealth = false;
        }
コード例 #2
0
 public EnemyObj_Horse(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                       GameTypes.EnemyDifficulty difficulty)
     : base("EnemyHorseRun_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type             = 10;
     m_fireShieldList = new List <ProjectileObj>();
 }
コード例 #3
0
 public EnemyObj_Fireball(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                          GameTypes.EnemyDifficulty difficulty)
     : base("EnemyGhostIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type         = 8;
     TintablePart = _objectList[0];
 }
コード例 #4
0
 public EnemyObj_BouncySpike(PlayerObj target, PhysicsManager physicsManager,
                             ProceduralLevelScreen levelToAttachTo, GameTypes.EnemyDifficulty difficulty)
     : base("EnemyBouncySpike_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type        = 3;
     NonKillable = true;
 }
コード例 #5
0
 public EnemyObj_SkeletonArcher(PlayerObj target, PhysicsManager physicsManager,
                                ProceduralLevelScreen levelToAttachTo, GameTypes.EnemyDifficulty difficulty)
     : base("EnemySkeletonArcherIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type         = 25;
     TintablePart = _objectList[0];
 }
コード例 #6
0
 public EnemyObj_BallAndChain(PlayerObj target, PhysicsManager physicsManager,
                              ProceduralLevelScreen levelToAttachTo, GameTypes.EnemyDifficulty difficulty)
     : base("EnemyFlailKnight_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     BallAndChain                     = new ProjectileObj("EnemyFlailKnightBall_Sprite");
     BallAndChain.IsWeighted          = false;
     BallAndChain.CollidesWithTerrain = false;
     BallAndChain.IgnoreBoundsCheck   = true;
     BallAndChain.OutlineWidth        = 2;
     BallAndChain2                    = (BallAndChain.Clone() as ProjectileObj);
     m_chain           = new SpriteObj("EnemyFlailKnightLink_Sprite");
     m_chainLinksList  = new List <Vector2>();
     m_chainLinks2List = new List <Vector2>();
     for (var i = 0; i < m_numChainLinks; i++)
     {
         m_chainLinksList.Add(default(Vector2));
     }
     for (var j = 0; j < m_numChainLinks / 2; j++)
     {
         m_chainLinks2List.Add(default(Vector2));
     }
     Type         = 1;
     TintablePart = _objectList[3];
     m_walkSound  = new FrameSoundObj(this, m_target, 1, "KnightWalk1", "KnightWalk2");
     m_walkSound2 = new FrameSoundObj(this, m_target, 6, "KnightWalk1", "KnightWalk2");
 }
コード例 #7
0
 public EnemyObj_Wall(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                      GameTypes.EnemyDifficulty difficulty)
     : base("EnemyGhostIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     CollisionTypeTag = 4;
     Type             = 18;
 }
コード例 #8
0
 public EnemyObj_Wolf(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                      GameTypes.EnemyDifficulty difficulty)
     : base("EnemyWargIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type = 19;
     m_startDelayCounter = m_startDelay;
     m_runFrameSound     = new FrameSoundObj(this, 1, "Wolf_Move01", "Wolf_Move02", "Wolf_Move03");
 }
コード例 #9
0
 public EnemyObj_Mimic(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                       GameTypes.EnemyDifficulty difficulty)
     : base("EnemyMimicIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type         = 33;
     OutlineWidth = 0;
     m_closeSound = new FrameSoundObj(this, m_target, 1, "Chest_Snap");
 }
コード例 #10
0
 public EnemyObj_FireWizard(PlayerObj target, PhysicsManager physicsManager,
                            ProceduralLevelScreen levelToAttachTo, GameTypes.EnemyDifficulty difficulty)
     : base("EnemyWizardIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type = 9;
     PlayAnimation();
     TintablePart = _objectList[0];
 }
コード例 #11
0
 public EnemyObj_SwordKnight(PlayerObj target, PhysicsManager physicsManager,
                             ProceduralLevelScreen levelToAttachTo, GameTypes.EnemyDifficulty difficulty)
     : base("EnemySwordKnightIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type         = 16;
     m_walkSound  = new FrameSoundObj(this, m_target, 1, "KnightWalk1", "KnightWalk2");
     m_walkSound2 = new FrameSoundObj(this, m_target, 6, "KnightWalk1", "KnightWalk2");
 }
コード例 #12
0
 public EnemyObj_Knight(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                        GameTypes.EnemyDifficulty difficulty)
     : base("EnemySpearKnightIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     TintablePart = _objectList[1];
     Type         = 12;
     m_walkSound  = new FrameSoundObj(this, m_target, 1, "KnightWalk1", "KnightWalk2");
     m_walkSound2 = new FrameSoundObj(this, m_target, 6, "KnightWalk1", "KnightWalk2");
 }
コード例 #13
0
 public EnemyObj_HomingTurret(PlayerObj target, PhysicsManager physicsManager,
                              ProceduralLevelScreen levelToAttachTo, GameTypes.EnemyDifficulty difficulty)
     : base("EnemyHomingTurret_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     StopAnimation();
     ForceDraw = true;
     Type      = 28;
     PlayAnimationOnRestart = false;
 }
コード例 #14
0
 public EnemyObj_Fairy(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                       GameTypes.EnemyDifficulty difficulty)
     : base("EnemyFairyGhostIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     PlayAnimation();
     MainFairy    = true;
     TintablePart = _objectList[0];
     Type         = 7;
 }
コード例 #15
0
 public EnemyObj_SpikeTrap(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                           GameTypes.EnemyDifficulty difficulty)
     : base("EnemySpikeTrap_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type = 21;
     StopAnimation();
     PlayAnimationOnRestart = false;
     NonKillable            = true;
 }
コード例 #16
0
 public EnemyObj_Blob(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                      GameTypes.EnemyDifficulty difficulty)
     : base("EnemyBlobIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     MainBlob     = true;
     TintablePart = _objectList[0];
     PlayAnimation();
     m_invincibleCounter = 0.5f;
     Type = 2;
 }
コード例 #17
0
 public EnemyObj_Eyeball(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                         GameTypes.EnemyDifficulty difficulty)
     : base("EnemyEyeballIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     m_pupil = new SpriteObj("EnemyEyeballPupil_Sprite");
     AddChild(m_pupil);
     m_squishSound = new FrameSoundObj(this, m_target, 2, "Eyeball_Prefire");
     Type          = 6;
     DisableCollisionBoxRotations = false;
 }
コード例 #18
0
        public EnemyObj_Portrait(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                                 GameTypes.EnemyDifficulty difficulty)
            : base("EnemyPortrait_Character", target, physicsManager, levelToAttachTo, difficulty)
        {
            Type = 32;
            var spriteName = "FramePicture" + CDGMath.RandomInt(1, 16) + "_Sprite";

            GetChildAt(0).ChangeSprite(spriteName);
            GetChildAt(0);
            DisableCollisionBoxRotations = false;
        }
コード例 #19
0
 public EnemyObj_Turret(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                        GameTypes.EnemyDifficulty difficulty)
     : base("EnemyTurretFire_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     IsCollidable = false;
     ForceDraw    = true;
     Type         = 17;
     StopAnimation();
     PlayAnimationOnRestart = false;
     NonKillable            = true;
 }
コード例 #20
0
 public EnemyObj_Zombie(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                        GameTypes.EnemyDifficulty difficulty)
     : base("EnemyZombieLower_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     GoToFrame(TotalFrames);
     Lowered   = true;
     ForceDraw = true;
     StopAnimation();
     Type = 20;
     PlayAnimationOnRestart = false;
 }
コード例 #21
0
 public EnemyObj_Ninja(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                       GameTypes.EnemyDifficulty difficulty)
     : base("EnemyNinjaIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type    = 13;
     m_smoke = new SpriteObj("NinjaSmoke_Sprite");
     m_smoke.AnimationDelay = 0.05f;
     m_log              = new SpriteObj("Log_Sprite");
     m_smoke.Visible    = false;
     m_smoke.Scale      = new Vector2(5f, 5f);
     m_log.Visible      = false;
     m_log.OutlineWidth = 2;
 }
コード例 #22
0
 public EnemyObj_Platform(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                          GameTypes.EnemyDifficulty difficulty)
     : base("EnemyPlatform_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     CollisionTypeTag = 1;
     Type             = 27;
     CollidesBottom   = false;
     CollidesLeft     = false;
     CollidesRight    = false;
     StopAnimation();
     PlayAnimationOnRestart       = false;
     NonKillable                  = true;
     DisableCollisionBoxRotations = false;
 }
コード例 #23
0
 public EnemyObj_Energon(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                         GameTypes.EnemyDifficulty difficulty)
     : base("EnemyEnergonIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type     = 23;
     m_shield = new SpriteObj("EnergonSwordShield_Sprite");
     m_shield.AnimationDelay = 0.1f;
     m_shield.PlayAnimation();
     m_shield.Opacity = 0.5f;
     m_shield.Scale   = new Vector2(1.2f, 1.2f);
     m_projectilePool = new DS2DPool <EnergonProjectileObj>();
     for (var i = 0; i < (int)m_poolSize; i++)
     {
         var energonProjectileObj = new EnergonProjectileObj("EnergonSwordProjectile_Sprite",
                                                             this);
         energonProjectileObj.Visible             = false;
         energonProjectileObj.CollidesWithTerrain = false;
         energonProjectileObj.PlayAnimation();
         energonProjectileObj.AnimationDelay = 0.05f;
         m_projectilePool.AddToPool(energonProjectileObj);
     }
 }
コード例 #24
0
 public EnemyObj_Starburst(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                           GameTypes.EnemyDifficulty difficulty)
     : base("EnemyStarburstIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type = 31;
 }
コード例 #25
0
 public EnemyObj_Chicken(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo, GameTypes.EnemyDifficulty difficulty)
     : base("EnemyChickenRun_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     this.Type = 26;
 }
コード例 #26
0
 public EnemyObj_LastBoss(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo, GameTypes.EnemyDifficulty difficulty) : base("PlayerIdle_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
 }
コード例 #27
0
 public EnemyTemplate(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                      GameTypes.EnemyDifficulty difficulty)
     : base("EnemySpriteNameGoesHere", target, physicsManager, levelToAttachTo, difficulty)
 {
 }
コード例 #28
0
 public EnemyObj_Dummy(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo,
                       GameTypes.EnemyDifficulty difficulty)
     : base("Dummy_Character", target, physicsManager, levelToAttachTo, difficulty)
 {
     Type = 30;
 }
コード例 #29
0
        public static EnemyObj BuildEnemy(int enemyType, PlayerObj player, PhysicsManager physicsManager,
                                          ProceduralLevelScreen levelToAttachTo, GameTypes.EnemyDifficulty difficulty, bool doNotInitialize = false)
        {
            EnemyObj enemyObj = null;

            switch (enemyType)
            {
            case 1:
                enemyObj = new EnemyObj_BallAndChain(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 2:
                enemyObj = new EnemyObj_Blob(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 3:
                enemyObj = new EnemyObj_BouncySpike(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 4:
                enemyObj = new EnemyObj_Eagle(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 5:
                enemyObj = new EnemyObj_EarthWizard(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 6:
                enemyObj = new EnemyObj_Eyeball(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 7:
                enemyObj = new EnemyObj_Fairy(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 8:
                enemyObj = new EnemyObj_Fireball(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 9:
                enemyObj = new EnemyObj_FireWizard(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 10:
                enemyObj = new EnemyObj_Horse(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 11:
                enemyObj = new EnemyObj_IceWizard(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 12:
                enemyObj = new EnemyObj_Knight(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 13:
                enemyObj = new EnemyObj_Ninja(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 14:
                enemyObj = new EnemyObj_ShieldKnight(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 15:
                enemyObj = new EnemyObj_Skeleton(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 16:
                enemyObj = new EnemyObj_SwordKnight(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 17:
                enemyObj = new EnemyObj_Turret(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 18:
                enemyObj = new EnemyObj_Wall(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 19:
                enemyObj = new EnemyObj_Wolf(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 20:
                enemyObj = new EnemyObj_Zombie(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 21:
                enemyObj = new EnemyObj_SpikeTrap(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 22:
                enemyObj = new EnemyObj_Plant(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 23:
                enemyObj = new EnemyObj_Energon(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 24:
                enemyObj = new EnemyObj_Spark(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 25:
                enemyObj = new EnemyObj_SkeletonArcher(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 26:
                enemyObj = new EnemyObj_Chicken(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 27:
                enemyObj = new EnemyObj_Platform(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 28:
                enemyObj = new EnemyObj_HomingTurret(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 29:
                enemyObj = new EnemyObj_LastBoss(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 30:
                enemyObj = new EnemyObj_Dummy(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 31:
                enemyObj = new EnemyObj_Starburst(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 32:
                enemyObj = new EnemyObj_Portrait(player, physicsManager, levelToAttachTo, difficulty);
                break;

            case 33:
                enemyObj = new EnemyObj_Mimic(player, physicsManager, levelToAttachTo, difficulty);
                break;
            }
            if (player == null && !doNotInitialize)
            {
                enemyObj.Initialize();
            }
            return(enemyObj);
        }
コード例 #30
0
ファイル: EnemyObj.cs プロジェクト: Azarem/RogueLauncher
 public EnemyObj(string spriteName, PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo, GameTypes.EnemyDifficulty difficulty)
     : base(spriteName, physicsManager, levelToAttachTo)
 {
 }