public virtual void Destroy()
        {
            // Generated Destroy
            SpriteManager.RemovePositionedObject(this);
            if (Used)
            {
                EnemyBulletFactory.MakeUnused(this, false);
            }

            if (Collision != null)
            {
                ShapeManager.RemoveOneWay(Collision);
            }
            if (SpriteInstance != null)
            {
                SpriteManager.RemoveSpriteOneWay(SpriteInstance);
            }


            CustomDestroy();
        }
Exemple #2
0
// Generated AddToManagers
        public override void AddToManagers()
        {
            BulletFactory.Initialize(BulletList, ContentManagerName);
            EnemyBulletFactory.Initialize(EnemyBulletList, ContentManagerName);
            TiledMap.AddToManagers();
            TileCollisionShapes.AddToManagers();
            PlayerInstance.AddToManagers(mLayer);
            EntityCollisionShapes.AddToManagers();
            EnemyCollisionGround.AddToManagers();
            TextManager.AddText(TheEndText); if (TheEndText.Font != null)
            {
                TheEndText.SetPixelPerfectScale(SpriteManager.Camera);
            }
            if (TheEndText.Font != null)
            {
                TheEndText.SetPixelPerfectScale(mLayer);
            }
            base.AddToManagers();
            AddToManagersBottomUp();
            CustomInitialize();
        }
Exemple #3
0
    private void CreateEnemyShipSpawner()
    {
        var enemyShipSpawnerGameObject = Game.Create <GameObject>();

        var enemyShipSpawnerTransform = enemyShipSpawnerGameObject.AddComponent <Transform>();

        enemyShipSpawnerTransform.Position  = new Vector2(0, 0);
        enemyShipSpawnerTransform.Scale     = new Vector2(10, 10);
        enemyShipSpawnerTransform.Direction = new Vector2(0, 1);

        var enemyShipSpawnerComponent = enemyShipSpawnerGameObject.AddComponent <CooldownSpawner <EnemyShip> >();

        enemyShipSpawnerComponent.Cooldown = 200;

        var enemyShipFactory         = new EnemyShipFactory();
        var enemyPlayerBulletFactory = new EnemyBulletFactory();

        enemyPlayerBulletFactory.Spawned.AddListener((x) => unityEnemyBulletFactory.OnSpawn(game, x));
        enemyShipFactory.BulletFactory = enemyPlayerBulletFactory;
        enemyShipFactory.Spawned.AddListener((x) => unityEnemyShipFactory.OnSpawn(game, x));

        enemyShipSpawnerComponent.Factory = enemyShipFactory;
    }
Exemple #4
0
        public override void Destroy()
        {
            // Generated Destroy
            BulletFactory.Destroy();
            EnemyBulletFactory.Destroy();
            if (mStartLevel != null)
            {
                mStartLevel.Destroy();
                mStartLevel = null;
            }
            if (mLevel2 != null)
            {
                mLevel2.Destroy();
                mLevel2 = null;
            }
            if (mLevel3 != null)
            {
                mLevel3.Destroy();
                mLevel3 = null;
            }
            if (mLevel4 != null)
            {
                mLevel4.Destroy();
                mLevel4 = null;
            }
            if (mEndLevel != null)
            {
                mEndLevel.Destroy();
                mEndLevel = null;
            }

            BulletList.MakeOneWay();
            NextLevelEntityList.MakeOneWay();
            SignEntityList.MakeOneWay();
            ActionEntityList.MakeOneWay();
            EnemyBulletList.MakeOneWay();
            EnemyCornerList.MakeOneWay();
            GroundEnemyList.MakeOneWay();
            if (TiledMap != null)
            {
                TiledMap.Destroy();
            }
            if (TileCollisionShapes != null)
            {
                TileCollisionShapes.RemoveFromManagers(ContentManagerName != "Global");
            }
            for (int i = BulletList.Count - 1; i > -1; i--)
            {
                BulletList[i].Destroy();
            }
            for (int i = NextLevelEntityList.Count - 1; i > -1; i--)
            {
                NextLevelEntityList[i].Destroy();
            }
            if (PlayerInstance != null)
            {
                PlayerInstance.Destroy();
                PlayerInstance.Detach();
            }
            for (int i = SignEntityList.Count - 1; i > -1; i--)
            {
                SignEntityList[i].Destroy();
            }
            for (int i = ActionEntityList.Count - 1; i > -1; i--)
            {
                ActionEntityList[i].Destroy();
            }
            for (int i = EnemyBulletList.Count - 1; i > -1; i--)
            {
                EnemyBulletList[i].Destroy();
            }
            for (int i = EnemyCornerList.Count - 1; i > -1; i--)
            {
                EnemyCornerList[i].Destroy();
            }
            for (int i = GroundEnemyList.Count - 1; i > -1; i--)
            {
                GroundEnemyList[i].Destroy();
            }
            if (EntityCollisionShapes != null)
            {
                EntityCollisionShapes.RemoveFromManagers(ContentManagerName != "Global");
            }
            if (EnemyCollisionGround != null)
            {
                EnemyCollisionGround.RemoveFromManagers(ContentManagerName != "Global");
            }
            if (TheEndText != null)
            {
                TextManager.RemoveText(TheEndText);
            }
            BulletList.MakeTwoWay();
            NextLevelEntityList.MakeTwoWay();
            SignEntityList.MakeTwoWay();
            ActionEntityList.MakeTwoWay();
            EnemyBulletList.MakeTwoWay();
            EnemyCornerList.MakeTwoWay();
            GroundEnemyList.MakeTwoWay();

            base.Destroy();

            CustomDestroy();
        }