/// <summary> /// /// </summary> /// <param name="display"></param> /// <param name="pt"></param> /// <param name="heightCutDiff"></param> public override void Draw(DrawContext display, Point pt, int heightCutDiff) { PThreeDimStructure o = owner; int zdiff = o.type.Size.z - (this.Location.z - o.baseLocation.z); if (heightCutDiff < 0 || zdiff < heightCutDiff) { // draw in a normal mode sprite.Draw(display.Surface, pt); } else { // drawing in the height cut mode if (this.Location.z == o.baseLocation.z) { ResourceUtil.EmptyChip.DrawShape(display.Surface, pt, o.heightCutColor); } } }
private void setSprite() { PThreeDimStructure o = owner; sprite = o.type.GetSprite(Location - o.baseLocation); }
internal VoxelImpl(PThreeDimStructure _owner, WorldLocator wloc) : base(_owner, wloc) { setSprite(); }