public FrilledLizardVenom(Actor owner, Vector3 direction) : base(new InanimateModel("box"), new Box(owner.Position, 0.5f, 0.5f, 0.5f, 0.5f), owner, direction, 60.0f, new Vector3(0.5f)) { CheckHits = false; }
public MindControlProjectile(Actor owner, Vector3 direction) : base(new InanimateModel("box"), new Box(owner.Position, 0.05f, 0.05f, 0.05f, 0.25f), owner, direction, 40.0f, new Vector3(0.2f)) { Active = false; }
public FrogTongue(Actor owner, Vector3 direction) : base(new InanimateModel("box"), new Box(owner.Position, 0.5f, 0.5f, 0.5f, 0.5f), owner, direction, 60.0f, new Vector3(0.5f)) { mTongueGraphic = new InanimateModel("box"); CheckHits = false; Entity.IsAffectedByGravity = false; Entity.CollisionInformation.CollisionRules.Group = Projectile.SensorProjectileGroup; }
public Projectile(Renderable renderable, Entity entity, Actor owner, Vector3 direction, float speed, Vector3 scale) : base(renderable, entity) { if (direction.Length() != 0.0f) { direction.Normalize(); } mOwner = owner; mProjectileImpulse = new Vector3(direction.X * speed, direction.Y * speed, direction.Z * speed); mSpeed = speed; Entity.Position = owner.Position; XNAOrientationMatrix = Matrix.CreateLookAt(owner.Position, direction, owner.Up); Scale = scale; CollisionRules.AddRule(Entity, owner.Entity, CollisionRule.NoBroadPhase); Entity.CollisionInformation.CollisionRules.Group = ProjectileGroup; Entity.PositionUpdateMode = BEPUphysics.PositionUpdating.PositionUpdateMode.Continuous; Entity.ApplyLinearImpulse(ref mProjectileImpulse); }