Example #1
0
        public override void Trigger()
        {
            base.Trigger();

            mCurrentTime    = 0.0f;
            mShieldCollider = new CircleCollision(aaAffectedShip.mXPos, aaAffectedShip.mYPos, 35.0f, null, null, aaAffectedShip.mTeam, true);
            aaAffectedShip.aaGameWorld.CollisionShapes_Circle.Add(mShieldCollider);
            mShield = new DisplayObject(aaAffectedShip.aaGameWorld.aaDisplay, mShieldKit.ASSET_NAME, aaAffectedShip.mXPos, aaAffectedShip.mYPos, (int)mShieldKit.ORIGIN.X, (int)mShieldKit.ORIGIN.Y, 0.1f, mShieldKit.SRC_RECTX, mShieldKit.SRC_RECTY, mShieldKit.SRC_RECTWIDTH, mShieldKit.SRC_RECTHEIGHT);
        }
Example #2
0
        public bool isCollidingCircle(CircleCollision pCircle)
        {
            mDistance = (float)Math.Sqrt(Math.Pow((mXPos - pCircle.mXPos), 2) + Math.Pow((mYPos - pCircle.mYPos), 2));

            if (mDistance <= mRadius + pCircle.mRadius)
                return true;

            return false;
        }
Example #3
0
        public Pickup(Display pDisplay, GameWorld pGameWorld, string pAssetFile, Vector2 pPosition, Vector2 pOrigin, float pDepth, Rectangle pSrcRect, float pRotation = 0)
        {
            mDisplay       = pDisplay;
            mGameWorld     = pGameWorld;
            mPickupDisplay = new DisplayObject(pDisplay, pAssetFile, pPosition.X, pPosition.Y, (int)pOrigin.X, (int)pOrigin.Y, pDepth, pSrcRect.X, pSrcRect.Y, pSrcRect.Width, pSrcRect.Height, pRotation, false);

            mCollisionCircle              = new CircleCollision(pPosition.X, pPosition.Y, mPickupRadius);
            mCollisionCircle.mIsPickup    = true;
            mCollisionCircle.mPickupOwner = this;
            mGameWorld.CollisionShapes_Circle.Add(mCollisionCircle);
        }
Example #4
0
        public bool isCollidingCircle(CircleCollision pCircle)
        {
            mDistance = (float)Math.Sqrt(Math.Pow((mXPos - pCircle.mXPos), 2) + Math.Pow((mYPos - pCircle.mYPos), 2));

            if (mDistance <= mRadius + pCircle.mRadius)
            {
                return(true);
            }

            return(false);
        }
Example #5
0
        public Ship(GameWorld pGameWorld, string pType, uint pTeam, float pXPos, float pYPos, ShipKit pKit, bool pBoss = false, float pRotation = 0, float pXVel = 0, float pYVel = 0, float pMass = 0.001f)
            : base(pGameWorld, pType, pXPos, pYPos, pRotation, pXVel, pYVel)
        {
            mType = pType;
            mMass = pMass;
            mXForce = 0;
            mYForce = 0;

            mTeam = pTeam;

            aTurnPower = 5;
            mKit = pKit;

            aThrustPower = mKit.THRUST_POWER;
            aMaxThrust = mKit.THRUST_MAX;
            aTurnPower = mKit.TURN_POWER;
            aHull = mKit.HULL;
            mDead = false;
            mBoss = pBoss;

            BulletSpam = new Ability_BulletSpam(this);
            Cloak = new Ability_Cloak(this);
            FireBullet = new Ability_FireBullet(this);
            FireMultipleBullets = new Ability_FireMultipleBullets(this);
            BulletStar = new Ability_BulletStar(this);
            FireMine = new Ability_FireMine(this);
            FireMissile = new Ability_FireMissile(this);
            FireMultipleMissles = new Ability_FireMultipleMissles(this);
            ImmediateAboutFace = new Ability_ImmediateAboutFace(this);
            ImproveHandling = new Ability_ImproveHandling(this);
            MissileFlurry = new Ability_MissileFlurry(this);
            PathLaser = new Ability_PathLaser(this);
            SlowShip = new Ability_SlowShip(this);
            SuicideBomb = new Ability_SuicideBomb(this);
            ThrustShip = new Ability_ThrustShip(this);
            TurnLeft = new Ability_TurnLeft(this);
            TurnRight = new Ability_TurnRight(this);
            ChargeLaser = new Ability_ChargeLaser(this);
            Shield = new Ability_SuperShield(this);
            DeployBombGrunts = new Ability_DeployBombGrunts(this);
            SpawnSatellite = new Ability_SpawnSatellite(this);
            QuickFix = new Ability_QuickFix(this);
            OverchargeEngines = new Ability_OverchargeEngines(this);
            TankShield = new Ability_TankShield(this);
            DualWield = new Ability_DualWield(this);
            WaveBlast = new Ability_WaveBlast(this);
            WarpDrive = new Ability_WarpDrive(this);
            FullShield = new Ability_FullShield(this);
            RearGuns = new Ability_RearGuns(this);
            AntiBullets = new Ability_ShootAntiBullets(this);
            RapidFire = new Ability_RapidFire(this);

            if (pType == "Player_Agility")
            {
                Ability1 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility1[0]);
                Ability2 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility2[0]);
                Ability3 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility3[0]);
                Ability4 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility4[0]);
            }
            else if (pType == "Player_Tank")
            {
                Ability1 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility1[1]);
                Ability2 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility2[1]);
                Ability3 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility3[1]);
                Ability4 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility4[1]);
            }
            else if (pType == "Player_Commando")
            {
                Ability1 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility1[2]);
                Ability2 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility2[2]);
                Ability3 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility3[2]);
                Ability4 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility4[2]);
            }

            mAllAbilities = new List<Ability>();

            mAllAbilities.Add(BulletSpam);
            mAllAbilities.Add(Cloak);
            mAllAbilities.Add(FireBullet);
            mAllAbilities.Add(FireMultipleBullets);
            mAllAbilities.Add(BulletStar);
            mAllAbilities.Add(FireMine);
            mAllAbilities.Add(FireMissile);
            mAllAbilities.Add(FireMultipleMissles);
            mAllAbilities.Add(ImmediateAboutFace);
            mAllAbilities.Add(ImproveHandling);
            mAllAbilities.Add(MissileFlurry);
            mAllAbilities.Add(PathLaser);
            mAllAbilities.Add(SlowShip);
            mAllAbilities.Add(SuicideBomb);
            mAllAbilities.Add(ThrustShip);
            mAllAbilities.Add(TurnLeft);
            mAllAbilities.Add(TurnRight);
            mAllAbilities.Add(ChargeLaser);
            mAllAbilities.Add(Shield);
            mAllAbilities.Add(DeployBombGrunts);
            mAllAbilities.Add(SpawnSatellite);
            mAllAbilities.Add(QuickFix);
            mAllAbilities.Add(DualWield);
            mAllAbilities.Add(OverchargeEngines);
            mAllAbilities.Add(TankShield);
            mAllAbilities.Add(WaveBlast);
            mAllAbilities.Add(WarpDrive);
            mAllAbilities.Add(FullShield);
            mAllAbilities.Add(RearGuns);
            mAllAbilities.Add(AntiBullets);
            mAllAbilities.Add(RapidFire);

            mActiveBehaviors = new List<Behavior>();
            mActiveBuffs = new List<Buff>();

            mBehaviorsToRemove = new List<Behavior>();
            mBuffsToRemove = new List<Buff>();

            mBuffsToTrigger = new List<Buff>();

            mCircleCollision = new CircleCollision(mXPos, mYPos, mKit.COLLISION_SIZE, null, this);
            aaGameWorld.CollisionShapes_Circle.Add(mCircleCollision);
        }
Example #6
0
        public Pickup(Display pDisplay, GameWorld pGameWorld, string pAssetFile, Vector2 pPosition, Vector2 pOrigin, float pDepth, Rectangle pSrcRect, float pRotation = 0)
        {
            mDisplay = pDisplay;
            mGameWorld = pGameWorld;
            mPickupDisplay = new DisplayObject(pDisplay, pAssetFile, pPosition.X, pPosition.Y, (int)pOrigin.X, (int)pOrigin.Y, pDepth, pSrcRect.X, pSrcRect.Y, pSrcRect.Width, pSrcRect.Height, pRotation, false);

            mCollisionCircle = new CircleCollision(pPosition.X, pPosition.Y, mPickupRadius);
            mCollisionCircle.mIsPickup = true;
            mCollisionCircle.mPickupOwner = this;
            mGameWorld.CollisionShapes_Circle.Add(mCollisionCircle);
        }
Example #7
0
        public override void Trigger()
        {
            base.Trigger();

            mCurrentTime = 0.0f;
            mShieldCollider = new CircleCollision(aaAffectedShip.mXPos, aaAffectedShip.mYPos, 25.0f, null, null, aaAffectedShip.mTeam, false);
            aaAffectedShip.aaGameWorld.CollisionShapes_Circle.Add(mShieldCollider);
            mShield = new DisplayObject(aaAffectedShip.aaGameWorld.aaDisplay, mShieldKit.ASSET_NAME, aaAffectedShip.mXPos, aaAffectedShip.mYPos, (int)mShieldKit.ORIGIN.X, (int)mShieldKit.ORIGIN.Y, 0.1f, mShieldKit.SRC_RECTX, mShieldKit.SRC_RECTY, mShieldKit.SRC_RECTWIDTH, mShieldKit.SRC_RECTHEIGHT);
        }
Example #8
0
        public Ship(GameWorld pGameWorld, string pType, uint pTeam, float pXPos, float pYPos, ShipKit pKit, bool pBoss = false, float pRotation = 0, float pXVel = 0, float pYVel = 0, float pMass = 0.001f) : base(pGameWorld, pType, pXPos, pYPos, pRotation, pXVel, pYVel)
        {
            mType   = pType;
            mMass   = pMass;
            mXForce = 0;
            mYForce = 0;

            mTeam = pTeam;

            aTurnPower = 5;
            mKit       = pKit;

            aThrustPower = mKit.THRUST_POWER;
            aMaxThrust   = mKit.THRUST_MAX;
            aTurnPower   = mKit.TURN_POWER;
            aHull        = mKit.HULL;
            mDead        = false;
            mBoss        = pBoss;

            BulletSpam          = new Ability_BulletSpam(this);
            Cloak               = new Ability_Cloak(this);
            FireBullet          = new Ability_FireBullet(this);
            FireMultipleBullets = new Ability_FireMultipleBullets(this);
            BulletStar          = new Ability_BulletStar(this);
            FireMine            = new Ability_FireMine(this);
            FireMissile         = new Ability_FireMissile(this);
            FireMultipleMissles = new Ability_FireMultipleMissles(this);
            ImmediateAboutFace  = new Ability_ImmediateAboutFace(this);
            ImproveHandling     = new Ability_ImproveHandling(this);
            MissileFlurry       = new Ability_MissileFlurry(this);
            PathLaser           = new Ability_PathLaser(this);
            SlowShip            = new Ability_SlowShip(this);
            SuicideBomb         = new Ability_SuicideBomb(this);
            ThrustShip          = new Ability_ThrustShip(this);
            TurnLeft            = new Ability_TurnLeft(this);
            TurnRight           = new Ability_TurnRight(this);
            ChargeLaser         = new Ability_ChargeLaser(this);
            Shield              = new Ability_SuperShield(this);
            DeployBombGrunts    = new Ability_DeployBombGrunts(this);
            SpawnSatellite      = new Ability_SpawnSatellite(this);
            QuickFix            = new Ability_QuickFix(this);
            OverchargeEngines   = new Ability_OverchargeEngines(this);
            TankShield          = new Ability_TankShield(this);
            DualWield           = new Ability_DualWield(this);
            WaveBlast           = new Ability_WaveBlast(this);
            WarpDrive           = new Ability_WarpDrive(this);
            FullShield          = new Ability_FullShield(this);
            RearGuns            = new Ability_RearGuns(this);
            AntiBullets         = new Ability_ShootAntiBullets(this);
            RapidFire           = new Ability_RapidFire(this);

            if (pType == "Player_Agility")
            {
                Ability1 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility1[0]);
                Ability2 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility2[0]);
                Ability3 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility3[0]);
                Ability4 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility4[0]);
            }
            else if (pType == "Player_Tank")
            {
                Ability1 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility1[1]);
                Ability2 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility2[1]);
                Ability3 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility3[1]);
                Ability4 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility4[1]);
            }
            else if (pType == "Player_Commando")
            {
                Ability1 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility1[2]);
                Ability2 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility2[2]);
                Ability3 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility3[2]);
                Ability4 = GetAbility((aaGameWorld.aaDisplay.aaGame.mShipMenu as State_Menu_Ship).Abilitydata.mAbility4[2]);
            }

            mAllAbilities = new List <Ability>();

            mAllAbilities.Add(BulletSpam);
            mAllAbilities.Add(Cloak);
            mAllAbilities.Add(FireBullet);
            mAllAbilities.Add(FireMultipleBullets);
            mAllAbilities.Add(BulletStar);
            mAllAbilities.Add(FireMine);
            mAllAbilities.Add(FireMissile);
            mAllAbilities.Add(FireMultipleMissles);
            mAllAbilities.Add(ImmediateAboutFace);
            mAllAbilities.Add(ImproveHandling);
            mAllAbilities.Add(MissileFlurry);
            mAllAbilities.Add(PathLaser);
            mAllAbilities.Add(SlowShip);
            mAllAbilities.Add(SuicideBomb);
            mAllAbilities.Add(ThrustShip);
            mAllAbilities.Add(TurnLeft);
            mAllAbilities.Add(TurnRight);
            mAllAbilities.Add(ChargeLaser);
            mAllAbilities.Add(Shield);
            mAllAbilities.Add(DeployBombGrunts);
            mAllAbilities.Add(SpawnSatellite);
            mAllAbilities.Add(QuickFix);
            mAllAbilities.Add(DualWield);
            mAllAbilities.Add(OverchargeEngines);
            mAllAbilities.Add(TankShield);
            mAllAbilities.Add(WaveBlast);
            mAllAbilities.Add(WarpDrive);
            mAllAbilities.Add(FullShield);
            mAllAbilities.Add(RearGuns);
            mAllAbilities.Add(AntiBullets);
            mAllAbilities.Add(RapidFire);

            mActiveBehaviors = new List <Behavior>();
            mActiveBuffs     = new List <Buff>();

            mBehaviorsToRemove = new List <Behavior>();
            mBuffsToRemove     = new List <Buff>();

            mBuffsToTrigger = new List <Buff>();

            mCircleCollision = new CircleCollision(mXPos, mYPos, mKit.COLLISION_SIZE, null, this);
            aaGameWorld.CollisionShapes_Circle.Add(mCircleCollision);
        }