public TricoProjectile3(Trico mobile) : base(mobile, ShotType.SS, Parameter.ProjectileTricoSSExplosionRadius, Parameter.ProjectileTricoSSBaseDamage) { Mobile = mobile; rotationExplosionOffset = mobile.Facing == Facing.Left ? -1 : 1; //Initializing Flipbook FlipbookList.Add(new Flipbook( mobile.Crosshair.CannonPosition, new Vector2(40, 17), 66, 36, "Graphics/Tank/Trico/Bullet3", new AnimationInstance() { StartingFrame = 0, EndingFrame = 7, TimePerFrame = 1 / 19f }, DepthParameter.Projectile, angle)); hasExploded = false; explosionTimer = 0; //Physics/Trajectory setups mass = Parameter.ProjectileTricoSSMass; windInfluence = Parameter.ProjectileTricoSSWindInfluence; SpawnTime = 0.5f; }
public static void Shot2(Trico mobile) { float angleModifier = mobile.Facing == Facing.Left ? -1 : 1; mobile.UninitializedProjectileList.Add(new TricoBaseProjectile2(mobile, new Vector2(35, 0), angleModifier)); mobile.UninitializedProjectileList.Add(new TricoBaseProjectile2(mobile, Vector2.Zero, angleModifier)); mobile.UninitializedProjectileList.Add(new TricoBaseProjectile2(mobile, new Vector2(-35, 0), angleModifier)); }
public TricoProjectile2(Trico mobile) : base(mobile, ShotType.S2, Parameter.ProjectileTricoS2ExplosionRadius, Parameter.ProjectileTricoS2BaseDamage) { //Initializing Flipbook FlipbookList.Add(new Flipbook( mobile.Crosshair.CannonPosition, new Vector2(16, 16), 32, 32, "Graphics/Tank/Trico/Bullet2", new List <AnimationInstance>() { new AnimationInstance() { StartingFrame = 0, EndingFrame = 7, TimePerFrame = 1 / 20f } }, DepthParameter.Projectile, angle)); FlipbookList[0].SetTransparency(0); }
public TricoBaseProjectile2(Trico mobile, Vector2 positionOffset, float angleModifier) : base(mobile, ShotType.S2, 0, 0, canCollide: false) { projectile = new TricoProjectile2(mobile); rotationAngle = 0; offset = positionOffset; this.angleModifier = angleModifier; SpawnTime = 0.7f; offsetFactor = 0; projectile.OnFinalizeExecutionAction = OnFinalizeExecutionAction; //Physics/Trajectory setups mass = Parameter.ProjectileTricoS2Mass; windInfluence = Parameter.ProjectileTricoS2WindInfluence; }
public TricoProjectile1(Trico mobile) : base(mobile, ShotType.S1, Parameter.ProjectileTricoS1ExplosionRadius, Parameter.ProjectileTricoS1BaseDamage) { //Initializing Flipbook FlipbookList.Add(new Flipbook( mobile.Crosshair.CannonPosition, new Vector2(16, 16), 32, 32, "Graphics/Tank/Trico/Bullet1", new List <AnimationInstance>() { new AnimationInstance() { StartingFrame = 0, EndingFrame = 7, TimePerFrame = 1 / 20f } }, DepthParameter.Projectile, angle)); //Physics/Trajectory setups mass = Parameter.ProjectileTricoS1Mass; windInfluence = Parameter.ProjectileTricoS1WindInfluence; SpawnTime = 0.7; }
public static Mobile BuildMobile(MobileType mobileType, Player player, Vector2 position, bool isInGame = true) { Mobile mobile = null; switch (mobileType) { case MobileType.Random: mobile = new Random(player, position); break; case MobileType.Armor: mobile = new Armor(player, position); break; case MobileType.Bigfoot: mobile = new Bigfoot(player, position); break; case MobileType.Dragon: mobile = new Dragon(player, position); break; case MobileType.Mage: mobile = new Mage(player, position); break; case MobileType.Ice: mobile = new Ice(player, position); break; case MobileType.Knight: mobile = new Knight(player, position); break; case MobileType.RaonLauncher: mobile = new RaonLauncher(player, position); break; case MobileType.Trico: mobile = new Trico(player, position); break; case MobileType.Turtle: mobile = new Turtle(player, position); break; case MobileType.Lightning: mobile = new Lightning(player, position); break; } if (isInGame) { mobile.HideLobbyExclusiveAvatars(); } return(mobile); }