/// <summary> /// Simple nine-slice constructor, all corners and sides are mirrored and rotated /// </summary> /// <param name="topLeftCornerName">Top left corner sprite name</param> /// <param name="topSideName">Top side rect sprite name</param> /// <param name="middleName">Middle rect sprite name</param> public NineSlice(FastString topLeftCornerName, FastString topSideName, FastString middleName) { TopLeftCornerID = RB.PackedSpriteID(topLeftCornerName); TopSideID = RB.PackedSpriteID(topSideName); TopRightCornerID = RB.PackedSpriteID(topLeftCornerName); LeftSideID = RB.PackedSpriteID(topSideName); MiddleID = RB.PackedSpriteID(middleName); RightSideID = RB.PackedSpriteID(topSideName); BottomLeftCornerID = RB.PackedSpriteID(topLeftCornerName); BottomSideID = RB.PackedSpriteID(topSideName); BottomRightCornerID = RB.PackedSpriteID(topLeftCornerName); FlagsTopLeftCorner = 0; FlagsTopSide = 0; FlagsTopRightCorner = RB.FLIP_H; FlagsLeftSide = RB.ROT_90_CCW; FlagsRightSide = RB.ROT_90_CW; FlagsBottomLeftCorner = RB.FLIP_V; FlagsBottomSide = RB.FLIP_V; FlagsBottomRightCorner = RB.FLIP_H | RB.FLIP_V; TopLeftCornerRect = Rect2i.zero; TopSideRect = Rect2i.zero; TopRightCornerRect = Rect2i.zero; LeftSideRect = Rect2i.zero; MiddleRect = Rect2i.zero; RightSideRect = Rect2i.zero; BottomLeftCornerRect = Rect2i.zero; BottomSideRect = Rect2i.zero; BottomRightCornerRect = Rect2i.zero; IsRectBased = false; }
/// <summary> /// Constructor /// </summary> /// <param name="topLeftCornerName">Top left corner sprite name</param> /// <param name="topSideName">Top side sprite name</param> /// <param name="topRightCornerName">Top right corner sprite name</param> /// <param name="leftSideName">Left side sprite name</param> /// <param name="middleName">Middle sprite name</param> /// <param name="rightSideName">Right side sprite name</param> /// <param name="bottomLeftCornerName">Bottom left corner sprite name</param> /// <param name="bottomSideName">Bottom side sprite name</param> /// <param name="bottomRightCornerName">Bottom right corner sprite name</param> public NineSlice( FastString topLeftCornerName, FastString topSideName, FastString topRightCornerName, FastString leftSideName, FastString middleName, FastString rightSideName, FastString bottomLeftCornerName, FastString bottomSideName, FastString bottomRightCornerName) { TopLeftCornerID = RB.PackedSpriteID(topLeftCornerName); TopSideID = RB.PackedSpriteID(topSideName); TopRightCornerID = RB.PackedSpriteID(topRightCornerName); LeftSideID = RB.PackedSpriteID(leftSideName); MiddleID = RB.PackedSpriteID(middleName); RightSideID = RB.PackedSpriteID(rightSideName); BottomLeftCornerID = RB.PackedSpriteID(bottomLeftCornerName); BottomSideID = RB.PackedSpriteID(bottomSideName); BottomRightCornerID = RB.PackedSpriteID(bottomRightCornerName); FlagsTopLeftCorner = 0; FlagsTopSide = 0; FlagsTopRightCorner = 0; FlagsLeftSide = 0; FlagsRightSide = 0; FlagsBottomLeftCorner = 0; FlagsBottomSide = 0; FlagsBottomRightCorner = 0; TopLeftCornerRect = Rect2i.zero; TopSideRect = Rect2i.zero; TopRightCornerRect = Rect2i.zero; LeftSideRect = Rect2i.zero; MiddleRect = Rect2i.zero; RightSideRect = Rect2i.zero; BottomLeftCornerRect = Rect2i.zero; BottomSideRect = Rect2i.zero; BottomRightCornerRect = Rect2i.zero; IsRectBased = false; }