Exemplo n.º 1
0
        public ISpriteInstance AddSprite(Sprite sprite)
        {
            Contract.Requires(sprite != null && sprite.SpriteSheet == SpriteSheet);

            var instance = new SpriteInstance(this, sprite);

            instance.Size = new Vector2(sprite.Size.X, sprite.Size.Y);

            lock (m_instances)
            {
                m_instances.Add(instance);
            }

            return instance;
        }
Exemplo n.º 2
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="colSprites">用于冲突检测的精灵</param>
 public SpriteColMethod ( Sprite[] colSprites )
 {
     this.colSprites = colSprites;
 }
Exemplo n.º 3
0
        public Sprite AddSprite(string name, Box2i coordinates)
        {
            var tw = (float)Texture.Size.X;
            var th = (float)Texture.Size.Y;

            var sprite = new Sprite(
                this,
                name,
                coordinates.Size,
                new Box2(
                    coordinates.Position.X / tw,
                    coordinates.Position.Y / th,
                    coordinates.Size.X / tw,
                    coordinates.Size.Y / th
            ));

            m_sprites.Add(sprite.Name, sprite);
            return sprite;
        }
Exemplo n.º 4
0
 public NonInertiasColUpdater( Vector2 pos, Vector2 vel, float azi, float angVel, Sprite[] collideSprites )
     : base(pos, vel, azi, angVel )
 {
     this.collideSprites = collideSprites;
     colMethod = new SpriteColMethod( collideSprites );
 }
Exemplo n.º 5
0
 public NonInertiasColUpdater( Sprite[] collideSprites )
     : base()
 {
     this.collideSprites = collideSprites;
     colMethod = new SpriteColMethod( collideSprites );
 }
Exemplo n.º 6
0
 public SpriteInstance(SpriteRenderer renderer, Sprite sprite)
 {
     m_renderer = renderer;
     m_sprite = sprite;
 }