Example #1
0
        public override void Render(Rendering.I2DPerformanceRenderer renderer, System.Drawing.Rectangle where)
        {
            foreach (Entity entity in Entities)
            {
                LayeredSprite lp = entity.Sprite as LayeredSprite;
                if (lp != null)
                {
                    foreach (LayeredSpriteLayer layer in from L in lp.Layers where isOk(L.Name) select L)
                    {
                        renderer.DrawSubImage(layer,
                                              lp.FrameBounds[entity.CurrentSpriteFrame],
                                              (int)entity.Bounds.X,
                                              (int)entity.Bounds.Y);
                    }
                }
                else
                {
                    renderer.DrawSubImage(entity.Sprite,
                                          entity.Sprite.FrameBounds[entity.CurrentSpriteFrame],
                                          (int)entity.Bounds.X,
                                          (int)entity.Bounds.Y);
                }

                /*
                 * renderer.DrawImage(entity.Sprite,
                 *                    (int)entity.Bounds.X,
                 *                    (int)entity.Bounds.Y);
                 */
            }
        }
Example #2
0
        private void Apply(GobDelta.Avatar delta)
        {
            var sprites = delta.ResourceIds.Select(x => session.Resources.GetSprite(x, gob));
            var sprite  = new LayeredSprite(sprites);
            var delayed = new Delayed <ISprite>(sprite);

            gob.SetAvatar(delayed);
        }
Example #3
0
    internal void UpdateSize(UnitDefinition unit, LayeredSprite layeredSprite)
    {
        float scale = 1;

        if (GameSettings.Instance.units.scaleUnits && unit.size_info != null)
        {
            float baseSize = 391.0f;
            if (layeredSprite != null && layeredSprite.SpriteCollection != null && layeredSprite.SpriteCollection.standardLength > 0)
            {
                baseSize = layeredSprite.SpriteCollection.standardLength;
            }
            scale = unit.size_info.length_cur / baseSize;
        }
        transform.localScale = new Vector3(scale, scale, scale);
    }
Example #4
0
    internal void UpdateSize(UnitDefinition unit, LayeredSprite layeredSprite)
    {
        float scale = 1;

        if (GameSettings.Instance.units.scaleUnits != GameSettings.UnitScale.Fixed && unit.size_info != null)
        {
            float baseSize = 391.0f;
            if (layeredSprite != null && layeredSprite.SpriteCollection != null && layeredSprite.SpriteCollection.standardLength > 0)
            {
                baseSize = layeredSprite.SpriteCollection.standardLength;
            }
            scale = Mathf.Pow(GetAdjustedUnitSize(unit.size_info.size_cur) * 10000, 1 / 3f) / baseSize;
        }
        transform.localScale = new Vector3(scale, scale, scale);
    }
Example #5
0
 void InitLocal()
 {
     legacySprite  = GetComponentInChildren <MeshRenderer>();
     layeredSprite = GetComponentInChildren <LayeredSprite>();
     localInited   = true;
 }
Example #6
0
 public void AddChild(LayeredSprite child)
 {
     children.Add(child);
 }
Example #7
0
 /// <summary>
 /// Start method will get the layer sprite
 /// </summary>
 protected virtual void Start()
 {
     _layeredSprite = GetComponent<LayeredSprite>();
     _layeredSprite.LoadSprites();
 }