tiles.xml 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. <?xml version='1.0' encoding='utf-8'?>
  2. <!--
  3. Copyright (c) 2003-onwards Shaven Puppy Ltd
  4. All rights reserved.
  5. Redistribution and use in source and binary forms, with or without
  6. modification, are permitted provided that the following conditions are
  7. met:
  8. * Redistributions of source code must retain the above copyright
  9. notice, this list of conditions and the following disclaimer.
  10. * Redistributions in binary form must reproduce the above copyright
  11. notice, this list of conditions and the following disclaimer in the
  12. documentation and/or other materials provided with the distribution.
  13. * Neither the name of 'Shaven Puppy' nor the names of its contributors
  14. may be used to endorse or promote products derived from this software
  15. without specific prior written permission.
  16. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  17. "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  18. TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  19. PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
  20. CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
  21. EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
  22. PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
  23. PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
  24. LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
  25. NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  26. SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  27. -->
  28. <!-- Describes the tiles -->
  29. <resources>
  30. <include resource="tags.xml" />
  31. <!-- Declare the tags -->
  32. <map tag="empty" class="worm.tiles.EmptyTile" />
  33. <map tag="floor" class="worm.tiles.FloorTile" />
  34. <map tag="wall" class="worm.tiles.WallTile" />
  35. <map tag="toxic" class="worm.tiles.FloorTile" />
  36. <map tag="space" class="worm.tiles.SpaceTile" />
  37. <map tag="detail" class="worm.tiles.Detail" />
  38. <map tag="obstacle" class="worm.tiles.Obstacle" />
  39. <map tag="ruin" class="worm.tiles.Ruin" />
  40. <map tag="spawnpoint" class="worm.tiles.SpawnPoint" />
  41. <map tag="basepoint" class="worm.tiles.BasePoint" />
  42. <map tag="exclude" class="worm.tiles.Exclude" />
  43. <map tag="totalexclude" class="worm.tiles.TotalExclude" />
  44. <map tag="crystal" class="worm.tiles.Crystal" />
  45. <!--
  46. First specify the tile images as GL textures. I tweaked build.xml so the pack-images command finds images
  47. in the resources/tiles subdir as well as just /resources
  48. -->
  49. <texture name="tiles.floor.texture" url="classpath:tiles.floor.jgimage" dst="GL_RGB" target="GL_TEXTURE_2D" min="GL_LINEAR" mag="GL_LINEAR" wrap="GL_FALSE" />
  50. <texture name="tiles.road.texture" url="classpath:tiles.road.01.jgimage" dst="GL_RGBA" target="GL_TEXTURE_2D" min="GL_LINEAR" mag="GL_LINEAR" wrap="GL_FALSE" />
  51. <texture name="tiles.road.mars.top.texture" url="classpath:tiles.road.mars.top.01.jgimage" dst="GL_RGBA" target="GL_TEXTURE_2D" min="GL_LINEAR" mag="GL_LINEAR" wrap="GL_FALSE" />
  52. <texture name="tiles.road.mars.back.texture" url="classpath:tiles.road.mars.back.01.jgimage" dst="GL_RGBA" target="GL_TEXTURE_2D" min="GL_LINEAR" mag="GL_LINEAR" wrap="GL_FALSE" />
  53. <texture name="tiles.road.titan.glow.texture" url="classpath:tiles.road.titan.glow.01.jgimage" dst="GL_RGBA" target="GL_TEXTURE_2D" min="GL_LINEAR" mag="GL_LINEAR" wrap="GL_FALSE" />
  54. <texture name="tiles.road.titan.back.texture" url="classpath:tiles.road.titan.back.01.jgimage" dst="GL_RGBA" target="GL_TEXTURE_2D" min="GL_LINEAR" mag="GL_LINEAR" wrap="GL_FALSE" />
  55. <texture name="tiles-transition.texture" url="classpath:tiles-transition.jgimage" dst="GL_RGB" target="GL_TEXTURE_2D" min="GL_LINEAR" mag="GL_LINEAR" wrap="GL_FALSE" />
  56. <!-- <texture name="stencils-earth.texture" url="classpath:stencils-earth.jgimage" dst="GL_RGBA" target="GL_TEXTURE_2D" min="GL_LINEAR" mag="GL_LINEAR" wrap="GL_FALSE" />-->
  57. <!--
  58. Then get SPGL to automatically carve up the images into grids with coordinate names. Each grid square
  59. gets a unique name eg. tileset0.5.6 meaning 6th column 7th row. This is just a convenience really as
  60. each tile then needs to be defined with an animation or a spriteimage anyway, so you could do it the
  61. usual way and have all the tiles individually in the sprites directory and packed as normal if you want.
  62. -->
  63. <imagebank
  64. name="tiles.floor"
  65. texture="tiles.floor.texture"
  66. defaultstyle="opaque.style"
  67. tilesacross="16"
  68. tilesdown="16"
  69. tilewidth="16"
  70. tileheight="16"
  71. hotspotx="0"
  72. hotspoty="0"
  73. grid="true"
  74. />
  75. <imagebank
  76. name="tiles.road"
  77. texture="tiles.road.texture"
  78. defaultstyle="transparent.style"
  79. tilesacross="16"
  80. tilesdown="16"
  81. tilewidth="16"
  82. tileheight="16"
  83. hotspotx="0"
  84. hotspoty="4"
  85. grid="true"
  86. />
  87. <imagebank
  88. name="tiles.road.mars.top"
  89. texture="tiles.road.mars.top.texture"
  90. defaultstyle="transparent.style"
  91. tilesacross="10"
  92. tilesdown="5"
  93. tilewidth="48"
  94. tileheight="48"
  95. hotspotx="8"
  96. hotspoty="15"
  97. grid="true"
  98. />
  99. <imagebank
  100. name="tiles.road.mars.back"
  101. texture="tiles.road.mars.back.texture"
  102. defaultstyle="transparent.style"
  103. tilesacross="10"
  104. tilesdown="5"
  105. tilewidth="48"
  106. tileheight="48"
  107. hotspotx="8"
  108. hotspoty="15"
  109. grid="true"
  110. />
  111. <imagebank
  112. name="tiles.road.titan.glow"
  113. texture="tiles.road.titan.glow.texture"
  114. defaultstyle="transparent.style"
  115. tilesacross="10"
  116. tilesdown="5"
  117. tilewidth="48"
  118. tileheight="48"
  119. hotspotx="8"
  120. hotspoty="15"
  121. grid="true"
  122. />
  123. <imagebank
  124. name="tiles.road.titan.back"
  125. texture="tiles.road.titan.back.texture"
  126. defaultstyle="transparent.style"
  127. tilesacross="10"
  128. tilesdown="5"
  129. tilewidth="48"
  130. tileheight="48"
  131. hotspotx="8"
  132. hotspoty="15"
  133. grid="true"
  134. />
  135. <imagebank
  136. name="tiles-transition"
  137. texture="tiles-transition.texture"
  138. defaultstyle="opaque.style"
  139. tilesacross="16"
  140. tilesdown="16"
  141. tilewidth="16"
  142. tileheight="16"
  143. hotspotx="0"
  144. hotspoty="0"
  145. grid="true"
  146. />
  147. <!-- <imagebank
  148. name="stencils-earth"
  149. texture="stencils-earth.texture"
  150. defaultstyle="transparent.style"
  151. tilesacross="16"
  152. tilesdown="16"
  153. tilewidth="16"
  154. tileheight="16"
  155. hotspotx="0"
  156. hotspoty="0"
  157. grid="true"
  158. />
  159. -->
  160. <!--
  161. Now for the tile definitions themselves. Because they have an index number the order is no longer important
  162. but if any map is designed and uses that index number it's stuck forever. Tile 0 is the empty tile - don't use it!
  163. -->
  164. <empty i="0" layer="0"/>
  165. <wall i="1" layer="0" image="spriteimage.fog" spriteLayer="8"/>
  166. <!-- The exclude tiles: used to prevent gidrahs walking over it. Lives on the buildings & obstacles layerr -->
  167. <exclude i="2" layer="2"/>
  168. <totalexclude i="3" layer="2"/>
  169. <!-- Get all the common tiles -->
  170. <include resource="tiles-common.xml"/>
  171. <include resource="tiles-transition.xml"/>
  172. <!-- Then the tiles for each of the worlds -->
  173. <include resource="tiles-earth.xml"/>
  174. <include resource="tiles-moon.xml"/>
  175. <include resource="tiles-mars.xml"/>
  176. <include resource="tiles-saturn.xml"/>
  177. <include resource="tiles-titan.xml"/>
  178. </resources>