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); }
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; }
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); }
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); }
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); }
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); }
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); }