コード例 #1
0
ファイル: Missile.cs プロジェクト: beelandc/SpaceInvaders
        public override void VisitBombRoot(BombRoot br)
        {
            // BombRoot vs Missile
            GameObject pGameObj = Iterator.GetChildGameObject(br);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #2
0
ファイル: AlienSquid.cs プロジェクト: wangjo22/Final
        public override void VisitMissileGroup(MissileGroup m)
        {
            //  Debug.WriteLine("\t\tCollide : {0} <-> {1}", m.name, this.name);
            GameObject pGameObj = Iterator.GetChildGameObject(m);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #3
0
ファイル: Missile.cs プロジェクト: beelandc/SpaceInvaders
        public override void VisitFlyingSaucerRoot(FlyingSaucerRoot fsr)
        {
            // FlyingSaucerRoot vs Missile
            GameObject pGameObj = Iterator.GetChildGameObject(fsr);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #4
0
        public override void VisitShieldBrick(ShieldBrick sb)
        {
            // ShieldBrick vs Missile
            GameObject pGameObj = Iterator.GetChildGameObject(this);

            CollisionPair.Collide(sb, pGameObj);
        }
コード例 #5
0
        public static void ResetAlienPoints(float offY = 0.0f)
        {
            GameObject pGroup = GameObjectManager.Find(GameObject.Name.AlienGroup);

            GameObject pColumn = Iterator.GetChildGameObject(pGroup);
            float      offset  = Constant.ALIEN_OFFSET_X;
            int        i       = 0;

            while (pColumn != null)
            {
                GameObject pAlien = Iterator.GetChildGameObject(pColumn);

                pAlien.x = 100.0f + offset * i;
                pAlien.y = Constant.WINDOW_HEIGHT - 200.0f - offY;

                pAlien   = (GameObject)pAlien.pNext;
                pAlien.x = 100.0f + offset * i;
                pAlien.y = Constant.WINDOW_HEIGHT - 240.0f - offY;

                pAlien   = (GameObject)pAlien.pNext;
                pAlien.x = 100.0f + offset * i;
                pAlien.y = Constant.WINDOW_HEIGHT - 280.0f - offY;

                pAlien   = (GameObject)pAlien.pNext;
                pAlien.x = 100.0f + offset * i;
                pAlien.y = Constant.WINDOW_HEIGHT - 320.0f - offY;

                pAlien   = (GameObject)pAlien.pNext;
                pAlien.x = 100.0f + offset * i;
                pAlien.y = Constant.WINDOW_HEIGHT - 360.0f - offY;

                i++;
                pColumn = (GameObject)pColumn.pNext;
            }
        }
コード例 #6
0
ファイル: AlienSquid.cs プロジェクト: wangjo22/Final
        public override void VisitPlayerGroup(PlayerGroup pPG)
        {
            //   Debug.WriteLine("\t\tCollide : {0} <-> {1}", pPG.name, this.name);
            GameObject pGameObj = Iterator.GetChildGameObject(pPG);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #7
0
        public override void VisitAlienGridColumn(AlienGridColumn agc)
        {
            //Debug.WriteLine("         collide:  {0} <-> {1}", agc.GetName(), this.name);

            // AlienGridColumn vs ShieldBrick
            GameObject pGameObj = Iterator.GetChildGameObject(agc);

            CollisionPair.Collide(this, pGameObj);
        }
コード例 #8
0
        public override void VisitBombRoot(BombRoot br)
        {
            //Debug.WriteLine("collide: {0} with {1}", br, this);

            // BombRoot vs BottomWall
            // go down a level in Missile Group.
            GameObject pGameObj = Iterator.GetChildGameObject(br);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #9
0
        public override void VisitMissileGroup(MissileGroup mg)
        {
            // Debug.WriteLine("collide: {0} with {1}", a, this);

            // MissileGroup vs TopWall
            // go down a level in Missile Group.
            GameObject pGameObj = Iterator.GetChildGameObject(mg);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #10
0
ファイル: RightBumper.cs プロジェクト: beelandc/SpaceInvaders
        public override void VisitCoreCannonGroup(CoreCannonGroup ccg)
        {
            // Debug.WriteLine("collide: {0} with {1}", a, this);

            // CoreCannonGroup vs RightBumper
            // go down a level in CoreCannonGroup
            GameObject pGameObj = Iterator.GetChildGameObject(ccg);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #11
0
ファイル: WallGroup.cs プロジェクト: beelandc/SpaceInvaders
        public override void VisitFlyingSaucerRoot(FlyingSaucerRoot fsr)
        {
            // Debug.WriteLine("collide: {0} with {1}", a, this);

            // BombRoot vs WallGroup
            // go down a level in Wall Group.
            GameObject pGameObj = Iterator.GetChildGameObject(this);

            CollisionPair.Collide(fsr, pGameObj);
        }
コード例 #12
0
ファイル: WallGroup.cs プロジェクト: beelandc/SpaceInvaders
        public override void VisitCoreCannonGroup(CoreCannonGroup ccg)
        {
            // Debug.WriteLine("collide: {0} with {1}", a, this);

            // CoreCannonGroup vs WallGroup
            // go down a level in Wall Group.
            GameObject pGameObj = Iterator.GetChildGameObject(this);

            CollisionPair.Collide(ccg, pGameObj);
        }
コード例 #13
0
ファイル: WallGroup.cs プロジェクト: beelandc/SpaceInvaders
        public override void VisitAlienGrid(AlienGrid a)
        {
            // Debug.WriteLine("collide: {0} with {1}", a, this);

            // AlienGrid vs WallGroup
            // go down a level in Wall Group.
            GameObject pGameObj = Iterator.GetChildGameObject(this);

            CollisionPair.Collide(a, pGameObj);
        }
コード例 #14
0
ファイル: AlienGrid.cs プロジェクト: beelandc/SpaceInvaders
        public override void VisitMissileGroup(MissileGroup m)
        {
            // AlienGrid vs MissileGroup
            Debug.WriteLine("         collide:  {0} <-> {1}", m.GetName(), this.name);

            // MissileGroup vs Columns
            GameObject pGameObj = Iterator.GetChildGameObject(this);

            CollisionPair.Collide(m, pGameObj);
        }
コード例 #15
0
ファイル: Wall.cs プロジェクト: beelandc/SpaceInvaders
        public override void VisitFlyingSaucerRoot(FlyingSaucerRoot fsr)
        {
            // Debug.WriteLine("collide: {0} with {1}", a, this);

            // FlyingSaucerRoot vs Wall
            // go down a level in Flying Saucer composite.
            GameObject pGameObj = Iterator.GetChildGameObject(fsr);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #16
0
ファイル: Missile.cs プロジェクト: beelandc/SpaceInvaders
        public override void VisitAlienGrid(AlienGrid ag)
        {
            // AlienGrid vs Missile
            //Debug.WriteLine("         collide:  {0} <-> {1}", ag.GetName(), this.name);

            // AlienGridColumn vs Missile
            GameObject pGameObj = Iterator.GetChildGameObject(ag);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #17
0
ファイル: CoreCannon.cs プロジェクト: beelandc/SpaceInvaders
        public override void VisitBombRoot(BombRoot br)
        {
            // Debug.WriteLine("collide: {0} with {1}", a, this);

            // BombRoot vs CoreCannon
            // go down a level in BombRoot composite
            GameObject pGameObj = Iterator.GetChildGameObject(br);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #18
0
        public override void VisitAlienGrid(AlienGrid ag)
        {
            //Debug.WriteLine("collide: {0} with {1}", ag, this);

            // AlienGrid vs Shield Brick
            // go down a level in AlienGrid composite.
            GameObject pGameObj = Iterator.GetChildGameObject(ag);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #19
0
        public override void VisitBombRoot(BombRoot br)
        {
            //Debug.WriteLine("collide: {0} with {1}", br, this);

            // BombRoot vs Shield Brick
            // go down a level in Bomb composite.
            GameObject pGameObj = Iterator.GetChildGameObject(br);

            CollisionPair.Collide(this, pGameObj);
        }
コード例 #20
0
        public override void VisitMissileGroup(MissileGroup mg)
        {
            //Debug.WriteLine("collide: {0} with {1}", mg, this);

            // MissileGroup vs ShieldBrick
            // go down a level in Missile Group.
            GameObject pGameObj = Iterator.GetChildGameObject(mg);

            CollisionPair.Collide(this, pGameObj);
        }
コード例 #21
0
ファイル: RemoveUFOObserver.cs プロジェクト: wangjo22/Final
        public override bool IsValidCollision()
        {
            bool isValid = false;

            this.isMissileHit = false;

            if (this.pSubject.pObjA is UFOGroup && this.pSubject.pObjB is WallRight)
            {
                isValid = true;
            }
            else if (this.pSubject.pObjA is UFOGroup && this.pSubject.pObjB is WallLeft)
            {
                isValid = true;
            }
            else if (this.pSubject.pObjA is UFOGroup && this.pSubject.pObjB is MissileGroup)
            {
                ScoreManager.AddScoreToPlayer1(200);
                this.isMissileHit = true;
                isValid           = true;
            }
            this.pUFO = Iterator.GetChildGameObject(this.pSubject.pObjA);
            return(isValid);
        }
コード例 #22
0
        public override void VisitMissileGroup(MissileGroup m)
        {
            GameObject pGameObj = Iterator.GetChildGameObject(this);

            CollisionPair.Collide(m, pGameObj);
        }
コード例 #23
0
        public override void VisitBomb(Bomb b)
        {
            GameObject pGameObj = Iterator.GetChildGameObject(this);

            CollisionPair.Collide(b, pGameObj);
        }
コード例 #24
0
        public override void VisitBombGroup(BombGroup bg)
        {
            GameObject pGameObj = Iterator.GetChildGameObject(bg);

            CollisionPair.Collide(this, pGameObj);
        }
コード例 #25
0
        public override void VisitAlienColumn(AlienColumn ac)
        {
            GameObject pGameObj = Iterator.GetChildGameObject(this);

            CollisionPair.Collide(this, ac);
        }
コード例 #26
0
        public override void VisitAlienGroup(AlienGroup ag)
        {
            GameObject pGameObj = Iterator.GetChildGameObject(ag);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #27
0
        public override void VisitPlayerGroup(PlayerGroup pPG)
        {
            GameObject pGameObj = Iterator.GetChildGameObject(this);

            CollisionPair.Collide(pPG, pGameObj);
        }
コード例 #28
0
ファイル: AlienColumn.cs プロジェクト: wangjo22/Final
        public override void VisitShieldColumn(ShieldColumn sc)
        {
            GameObject pGameObj = Iterator.GetChildGameObject(sc);

            CollisionPair.Collide(pGameObj, this);
        }
コード例 #29
0
        public override void VisitWallGroup(WallGroup wg)
        {
            GameObject pGameObj = Iterator.GetChildGameObject(this);

            CollisionPair.Collide(wg, pGameObj);
        }
コード例 #30
0
ファイル: AlienColumn.cs プロジェクト: wangjo22/Final
        public override void VisitShieldGroup(ShieldGroup sg)
        {
            GameObject pGameObj = Iterator.GetChildGameObject(sg);

            CollisionPair.Collide(pGameObj, this);
        }