Пример #1
0
        private Projectile Create(string animName, int width, int height, float density)
        {
            SpinelessEntitySettings ses = new SpinelessEntitySettings();
            ses.ActivateByDefault       = false;
            ses.ClipFile                = "projectiles";
            ses.EntityClass             = "Spineless.Entities.Projectile, Spineless";
            ses.DefaultAnimName         = animName;
            ses.Physics                 = new SpinelessPhysicsSettings();
            ses.Physics.Width           = ConvertUnits.ToSimUnits(width);
            ses.Physics.Height          = ConvertUnits.ToSimUnits(height);
            ses.Physics.Density         = density;
            ses.Physics.Offset          = new Vector2(0, -(ses.Physics.Height / 2));
            ses.Position                = PROJECTILE_START_POS;
            ses.Physics.Category        = SpinelessCollisionCategories.AllProjectiles;
            ses.Physics.CollidesWith    = SpinelessCollisionCategories.Terrain | SpinelessCollisionCategories.Enemy;

            Projectile p    = (Projectile)ses.CreateEntity();
            p.Initialize(lvl);

            p.Deactivated   += new Action<Entity>(OnProjectileDeactivated);
            p.Physics.Bodies[0].FixtureList[0].CollidesWith = (Category)(SpinelessCollisionCategories.Terrain | SpinelessCollisionCategories.Enemy);
            p.Physics.Bodies[0].FixtureList[0].CollisionCategories = (Category)SpinelessCollisionCategories.SplashProjectile;
            p.Physics.Bodies[0].FixtureList[0].OnCollision = OnProjectileCollision;
            p.Physics.Bodies[0].FixtureList[0].UserData = p;

            return p;
        }
Пример #2
0
 public static Princess CreatePrincess(
     Vector2 position,
     Vector2 sizePhysicsCoords,
     Vector2 offsetPhysicsCoords)
 {
     SpinelessEntitySettings princessClipSettings = new SpinelessEntitySettings();
     princessClipSettings.EntityClass = "Spineless.Entities.Princess, Spineless";
     princessClipSettings.ClipFile = "princess";
     princessClipSettings.DefaultAnimName = "idle";
     princessClipSettings.Position = position;
     princessClipSettings.Physics = new SpinelessPhysicsSettings();
     princessClipSettings.Physics.Width = sizePhysicsCoords.X;
     princessClipSettings.Physics.Height = sizePhysicsCoords.Y;
     princessClipSettings.Physics.Offset = offsetPhysicsCoords;
     return (Princess)princessClipSettings.CreateEntity();
 }
Пример #3
0
        public static Princess CreatePrincess(
            Vector2 position,
            Vector2 sizePhysicsCoords,
            Vector2 offsetPhysicsCoords)
        {
            SpinelessEntitySettings princessClipSettings = new SpinelessEntitySettings();

            princessClipSettings.EntityClass     = "Spineless.Entities.Princess, Spineless";
            princessClipSettings.ClipFile        = "princess";
            princessClipSettings.DefaultAnimName = "idle";
            princessClipSettings.Position        = position;
            princessClipSettings.Physics         = new SpinelessPhysicsSettings();
            princessClipSettings.Physics.Width   = sizePhysicsCoords.X;
            princessClipSettings.Physics.Height  = sizePhysicsCoords.Y;
            princessClipSettings.Physics.Offset  = offsetPhysicsCoords;
            return((Princess)princessClipSettings.CreateEntity());
        }
Пример #4
0
        internal static PrincessVehicle CreateDefaultEntity(
            Vector2 position,
            Vector2 sizePhysicsCoords,
            Vector2 offsetPhysicsCoords)
        {
            SpinelessEntitySettings settings = new SpinelessEntitySettings();

            settings.EntityClass      = "Spineless.Entities.PrincessVehicle,Spineless";
            settings.ClipFile         = "siegeTower";
            settings.DefaultAnimName  = "rig";
            settings.Position         = position;
            settings.Physics          = new SpinelessPhysicsSettings();
            settings.Physics.Width    = sizePhysicsCoords.X;
            settings.Physics.Height   = sizePhysicsCoords.Y;
            settings.Physics.Offset   = offsetPhysicsCoords;
            settings.Physics.Category = SpinelessCollisionCategories.Siege;
            return((PrincessVehicle)settings.CreateEntity());
        }
Пример #5
0
 public override void ApplySettings(EntitySettings settings)
 {
     base.ApplySettings(settings);
     this.Settings = CastSettings <SpinelessEntitySettings>(settings);
 }
Пример #6
0
 internal static PrincessVehicle CreateDefaultEntity(
     Vector2 position,
     Vector2 sizePhysicsCoords,
     Vector2 offsetPhysicsCoords)
 {
     SpinelessEntitySettings settings = new SpinelessEntitySettings();
     settings.EntityClass = "Spineless.Entities.PrincessVehicle,Spineless";
     settings.ClipFile = "siegeTower";
     settings.DefaultAnimName = "rig";
     settings.Position = position;
     settings.Physics = new SpinelessPhysicsSettings();
     settings.Physics.Width = sizePhysicsCoords.X;
     settings.Physics.Height = sizePhysicsCoords.Y;
     settings.Physics.Offset = offsetPhysicsCoords;
     settings.Physics.Category = SpinelessCollisionCategories.Siege;
     return (PrincessVehicle)settings.CreateEntity();
 }
Пример #7
0
 public override void ApplySettings(EntitySettings settings)
 {
     base.ApplySettings(settings);
     this.Settings = CastSettings<SpinelessEntitySettings>(settings);
 }