XML:PSpc: Difference between revisions
m (copy-edit) |
m (oops, forgot WPge) |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{XML_File_Header | type=PSpc | {{XML_File_Header | prev=PNTA | type=PSpc | next=PSpL | name=Part Specification}} | ||
==General information== | ==General information== | ||
* The XML on this page is compatible with OniSplit '''v0.9.61.0'''. | * The XML on this page is compatible with OniSplit '''v0.9.61.0'''. | ||
* This resource uses the concept of the [[wp:9-slice scaling|nine-slice GUI]] to construct [[IGPG]]s (in-game pages), which are used by [[XML:DPge| | * This resource uses the concept of the [[wp:9-slice scaling|nine-slice GUI]] to construct [[IGPG]]s (in-game pages), which are used by [[XML:DPge|DPge]], [[XML:HPge|HPge]], [[XML:IPge|IPge]], [[XML:OPge|OPge]], [[XML:WPge|WPge]] and [[XML:TxtC|TxtC]]. | ||
* You could attempt to simulate image alignment by using the image you want displayed as a corner, then supplying a transparent texture for the other components. | * You could attempt to simulate image alignment by using the image you want displayed as a corner, then supplying a transparent texture for the other components. | ||
* Please note that animated TXMPs doesn't work in a PSpc. | * Please note that animated TXMPs doesn't work in a PSpc. | ||
Line 22: | Line 22: | ||
|} | |} | ||
There are 9 <PSpcPoint> tags under <TopLeft> and nine <PSpcPoint>s under <RightBottom>. | There are 9 <PSpcPoint> tags under <TopLeft> and nine <PSpcPoint>s under <RightBottom>. The ''n''th <PSpcPoint> tag under <TopLeft> and the ''n''th <PSpcPoint> under <RightBottom> belong together; the entries under <TopLeft> and <RightBottom> comprise pairs of points which define a single tile out of nine (this is a bit confusing, but the XML simply reflects how Oni stores them). The order of the tiles is top to bottom, left to right. | ||
<?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> |
Latest revision as of 14:12, 6 December 2023
PSpc : Part Specification | ||
---|---|---|
XML
PNTA << Other file types >> PSpL |
General information
- The XML on this page is compatible with OniSplit v0.9.61.0.
- This resource uses the concept of the nine-slice GUI to construct IGPGs (in-game pages), which are used by DPge, HPge, IPge, OPge, WPge and TxtC.
- You could attempt to simulate image alignment by using the image you want displayed as a corner, then supplying a transparent texture for the other components.
- Please note that animated TXMPs doesn't work in a PSpc.
XML structure
1 | 4 | 7 |
2 | 5 | 8 |
3 | 6 | 9 |
There are 9 <PSpcPoint> tags under <TopLeft> and nine <PSpcPoint>s under <RightBottom>. The nth <PSpcPoint> tag under <TopLeft> and the nth <PSpcPoint> under <RightBottom> belong together; the entries under <TopLeft> and <RightBottom> comprise pairs of points which define a single tile out of nine (this is a bit confusing, but the XML simply reflects how Oni stores them). The order of the tiles is top to bottom, left to right.
<?xml version="1.0" encoding="utf-8"?> <Oni> <PSpc id="0"> <TopLeft> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> [...] </TopLeft> <RightBottom> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> [...] </RightBottom> <Texture>TXMP...</Texture> </PSpc> </Oni>
Example
TXMPh_19 is the only image appearing in TxtClevel_19a, but a PSpc divides it into 3 parts in order to stretch it across the top of the page. Each part is framed by the pixel coordinates in the XML below. As always with nine-slice tiling, the corners do not stretch, and the border tiles and the center tile do. Note that only parts 1, 4, and 7 are used in the following PSpc.
Coordinates of 1: {0, 0} to {64, 32} |
<?xml version="1.0" encoding="utf-8"?> <Oni> <PSpc id="0"> <LeftTop> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>64</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>65</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> </LeftTop> <RightBottom> <PSpcPoint> <X>64</X> <Y>32</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>64</X> <Y>32</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>128</X> <Y>32</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> <PSpcPoint> <X>0</X> <Y>0</Y> </PSpcPoint> </RightBottom> <Texture>TXMPh_19</Texture> </PSpc> </Oni>