Ejemplo n.º 1
0
    public SpriteDto(SpriteRenderer spriteRenderer)
    {
        SetTransform(spriteRenderer.transform);
        SpriteAssetPath   = AssetDatabase.GetAssetPath(spriteRenderer.sprite);
        MaterialAssetPath = AssetDatabase.GetAssetPath(spriteRenderer.sharedMaterial);
        Color             = new Vector4Dto(spriteRenderer.color);
        OrderInLayer      = spriteRenderer.sortingOrder;
        DrawMode          = spriteRenderer.drawMode;
        Size     = new Vector2Dto(spriteRenderer.size);
        TileMode = spriteRenderer.tileMode;

        var collider = spriteRenderer.GetComponent <Collider2D>();

        if (collider != null)
        {
            Collider2DType = collider.GetType();
        }

        var objectWithMaterial = spriteRenderer.GetComponent <ObjectWithMaterial>();

        if (objectWithMaterial != null)
        {
            PiekaMaterialAsset = AssetDatabase.GetAssetPath(objectWithMaterial.PiekaMaterial);
        }
    }
Ejemplo n.º 2
0
        internal Bounds Internal_GetSpriteBounds(SpriteDrawMode mode)
        {
            Bounds result;

            this.Internal_GetSpriteBounds_Injected(mode, out result);
            return(result);
        }
Ejemplo n.º 3
0
        bool updateAllPrevs(SpriteRenderer SR, bool spriteChanged)
        {
            prevSprite   = SR.sprite;
            prevFlipX    = SR.flipX;
            prevFlipY    = SR.flipY;
            prevDrawMode = SR.drawMode;
            prevSize     = SR.size;

            return(spriteChanged);
        }
 public SpriteRendererProperties(SpriteRenderer renderer)
 {
     adaptiveModeThreshold = renderer.adaptiveModeThreshold;
     color           = renderer.color;
     drawMode        = renderer.drawMode;
     flipX           = renderer.flipX;
     flipY           = renderer.flipY;
     maskInteraction = renderer.maskInteraction;
     size            = renderer.size;
     tileMode        = renderer.tileMode;
 }
        private static TileMode Translate(SpriteDrawMode mode)
        {
            switch (mode)
            {
            case SpriteDrawMode.Sliced: return(TileMode.Stretch);

            case SpriteDrawMode.Tiled:  return(TileMode.Tile);

            default: throw new System.ArgumentOutOfRangeException(nameof(mode));
            }
        }
Ejemplo n.º 6
0
 public override void Deserialize(BinaryReader binaryReader)
 {
     base.Deserialize(binaryReader);
     m_Sprite          = SerializerKun.DesirializeObject <SpriteKun>(binaryReader);
     m_Color           = SerializerKun.DesirializeObject <ColorKun>(binaryReader);
     m_FlipX           = binaryReader.ReadBoolean();
     m_FlipY           = binaryReader.ReadBoolean();
     m_DrawMode        = (SpriteDrawMode)binaryReader.ReadInt32();
     m_MaskInteraction = (SpriteMaskInteraction)binaryReader.ReadInt32();
     m_SpriteSortPoint = (SpriteSortPoint)binaryReader.ReadInt32();
 }
Ejemplo n.º 7
0
        public void Draw(SpriteBatch spriteBatch, SpriteDrawMode drawMode, Rectangle destRect, Color color)
        {
            switch (drawMode)
            {
            case SpriteDrawMode.Stretch:
                spriteBatch.Draw(Texture, destRect, Texture.Bounds, color);
                break;

            case SpriteDrawMode.Panel:
                spriteBatch.DrawSliced(Texture, destRect, Texture.Bounds, color);
                break;
            }
        }
        private static DrawMode Translate(SpriteDrawMode drawMode, SpriteTileMode tileMode)
        {
            switch (drawMode)
            {
            case SpriteDrawMode.Sliced:
                return(DrawMode.Stretch);

            case SpriteDrawMode.Tiled:
                return(tileMode == SpriteTileMode.Continuous ? DrawMode.ContinuousTiling : DrawMode.AdaptiveTiling);

            default:
                throw new System.ArgumentOutOfRangeException(nameof(drawMode));
            }
        }
Ejemplo n.º 9
0
    public void Set(SpriteRenderer spriteRenderer)
    {
        sprite = spriteRenderer.sprite;

        flipX = spriteRenderer.flipX;
        flipY = spriteRenderer.flipY;

        tileMode = spriteRenderer.tileMode;
        drawMode = spriteRenderer.drawMode;

        size = spriteRenderer.size;

        material = spriteRenderer.sharedMaterial;

        color = spriteRenderer.color;
    }
Ejemplo n.º 10
0
    public GameDisk(int diskLevel, Sprite disk,
                    //Vector2 leftStump, Vector2 middleStump, Vector2 rightStump,
                    SpriteDrawMode sprDrawMode)
    {
        //Assign diskLevel
        this.diskLevel = diskLevel;

        gameObject = new GameObject("Disk");

        spriteRenderer          = gameObject.AddComponent <SpriteRenderer>();
        spriteRenderer.drawMode = sprDrawMode;
        spriteRenderer.sprite   = disk;

        //Change Disk Size
        spriteRenderer.size += Vector2.right * (diskLevel - 1) * diskScale;
    }
        protected override void ReadFromImpl(object obj)
        {
            base.ReadFromImpl(obj);
            SpriteRenderer uo = (SpriteRenderer)obj;

            sprite   = ToID(uo.sprite);
            drawMode = uo.drawMode;
            size     = uo.size;
            adaptiveModeThreshold = uo.adaptiveModeThreshold;
            tileMode        = uo.tileMode;
            color           = uo.color;
            maskInteraction = uo.maskInteraction;
            flipX           = uo.flipX;
            flipY           = uo.flipY;
            spriteSortPoint = uo.spriteSortPoint;
        }
Ejemplo n.º 12
0
 internal void SetDrawMode(SpriteDrawMode drawMode)
 {
     if (drawMode != (SpriteDrawMode)m_DrawMode.intValue)
     {
         foreach (var target in serializedObject.targetObjects)
         {
             var sr = (SpriteRenderer)target;
             var t  = sr.transform;
             Undo.RecordObjects(new UnityEngine.Object[] { sr, t }, Styles.drawModeChange.text);
             sr.drawMode = drawMode;
             foreach (var editor in ActiveEditorTracker.sharedTracker.activeEditors)
             {
                 if (editor.target == t)
                 {
                     editor.serializedObject.SetIsDifferentCacheDirty();
                 }
             }
         }
         serializedObject.SetIsDifferentCacheDirty();
     }
 }
Ejemplo n.º 13
0
        private T CreatePart <T>(string name, int offset, SpriteDrawMode mode) where T : Building.Part, new()
        {
            var gameObject = new GameObject(name);

            gameObject.hideFlags            = _advancedEditingPreference.Value ? HideFlags.None : HideFlags.NotEditable;
            gameObject.transform.parent     = _building.transform;
            gameObject.transform.position   = _building.transform.position;
            gameObject.transform.localScale = Vector2.one;

            var renderer = gameObject.AddComponent <SpriteRenderer>();

            renderer.drawMode        = mode;
            renderer.sortingOrder    = offset;
            renderer.spriteSortPoint = SpriteSortPoint.Pivot;

            return(new T
            {
                GameObject = gameObject,
                OrderOffset = offset,
                Renderer = renderer,
                Bounds = new Rect(_building.transform.position, Vector2.one)
            });
        }
Ejemplo n.º 14
0
        public override void OnInspectorGUI()
        {
            serializedObject.Update();

            EditorGUILayout.PropertyField(m_Sprite, Styles.spriteLabel);
            EditorGUILayout.PropertyField(m_Color, Styles.colorLabel, true);

            FlipToggles();

            using (new EditorGUI.DisabledGroupScope(IsTextureless()))
            {
                var showMixedValue = EditorGUI.showMixedValue;
                if (m_DrawMode.hasMultipleDifferentValues)
                {
                    EditorGUI.showMixedValue = true;
                }
                SpriteDrawMode drawMode = (SpriteDrawMode)m_DrawMode.intValue;
                drawMode = (SpriteDrawMode)EditorGUILayout.EnumPopup(Styles.drawModeLabel, drawMode);
                SetDrawMode(drawMode);
                EditorGUI.showMixedValue = showMixedValue;

                m_ShowDrawMode.target = ShouldShowDrawMode();
                if (EditorGUILayout.BeginFadeGroup(m_ShowDrawMode.faded))
                {
                    string notFullRectWarning = GetSpriteNotFullRectWarning();
                    if (notFullRectWarning != null)
                    {
                        EditorGUILayout.HelpBox(notFullRectWarning, MessageType.Warning);
                    }

                    EditorGUI.indentLevel++;
                    EditorGUILayout.BeginHorizontal();
                    EditorGUILayout.PrefixLabel(Styles.sizeLabel);
                    EditorGUI.showMixedValue = m_Size.hasMultipleDifferentValues;
                    FloatFieldLabelAbove(Styles.widthLabel, m_Size.FindPropertyRelative("x"));
                    FloatFieldLabelAbove(Styles.heightLabel, m_Size.FindPropertyRelative("y"));
                    EditorGUI.showMixedValue = false;
                    EditorGUILayout.EndHorizontal();


                    m_ShowTileMode.target = ShouldShowTileMode();
                    if (EditorGUILayout.BeginFadeGroup(m_ShowTileMode.faded))
                    {
                        EditorGUILayout.PropertyField(m_SpriteTileMode, Styles.fullTileLabel);

                        m_ShowAdaptiveThreshold.target = ShouldShowAdaptiveThreshold();
                        if (EditorGUILayout.BeginFadeGroup(m_ShowAdaptiveThreshold.faded))
                        {
                            EditorGUI.indentLevel++;
                            EditorGUILayout.Slider(m_AdaptiveModeThreshold, 0.0f, 1.0f, Styles.fullTileThresholdLabel);
                            EditorGUI.indentLevel--;
                        }
                        EditorGUILayout.EndFadeGroup();
                    }
                    EditorGUILayout.EndFadeGroup();

                    EditorGUI.indentLevel--;
                }
                EditorGUILayout.EndFadeGroup();
            }

            EditorGUILayout.PropertyField(m_MaskInteraction, Styles.maskInteractionLabel);
            EditorGUILayout.PropertyField(m_SpriteSortPoint, Styles.spriteSortPointLabel);
            EditorGUILayout.PropertyField(m_Material.GetArrayElementAtIndex(0), Styles.materialLabel, true);

            ShowMaterialError();

            Other2DSettingsGUI();

            serializedObject.ApplyModifiedProperties();
        }
Ejemplo n.º 15
0
 private extern void Internal_GetSpriteBounds_Injected(SpriteDrawMode mode, out Bounds ret);
 internal extern Bounds Internal_GetSpriteBounds(SpriteDrawMode mode);
Ejemplo n.º 17
0
 public Image(ImageProps imageProps) : base(imageProps)
 {
     SpriteDrawMode = imageProps.DrawMode;
     Texture        = imageProps.texture;
 }
Ejemplo n.º 18
0
        /// <summary>
        /// Sets the default values
        /// </summary>
        protected override void DefaultValues()
        {
            base.DefaultValues();

            this.DrawMode = SpriteDrawMode.Simple;
        }