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); */ } }
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); }
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); }
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); }
void InitLocal() { legacySprite = GetComponentInChildren <MeshRenderer>(); layeredSprite = GetComponentInChildren <LayeredSprite>(); localInited = true; }
public void AddChild(LayeredSprite child) { children.Add(child); }
/// <summary> /// Start method will get the layer sprite /// </summary> protected virtual void Start() { _layeredSprite = GetComponent<LayeredSprite>(); _layeredSprite.LoadSprites(); }