Did some stuff
|
@ -1,18 +1,33 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="31">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="3" columns="3">
|
||||
<image source="../spritesheets/platformSet.png" width="192" height="64"/>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="38">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="4" columns="4">
|
||||
<image source="../spritesheets/platformSet.png" width="256" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="4" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player_red.png" width="64" height="64"/>
|
||||
<tileset firstgid="5" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player/player_red.png" width="64" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="6" name="enemies" tilewidth="1" tileheight="1" tilecount="0" columns="0"/>
|
||||
<tileset firstgid="6" name="enemies" tilewidth="64" tileheight="64" tilecount="3" columns="0">
|
||||
<tile id="0">
|
||||
<image width="64" height="64" source="../textures/enemies/blueAlive.png"/>
|
||||
</tile>
|
||||
<tile id="1">
|
||||
<image width="64" height="64" source="../textures/enemies/greenAlive.png"/>
|
||||
</tile>
|
||||
<tile id="2">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
<image width="64" height="64" source="../textures/enemies/redAlive.png"/>
|
||||
</tile>
|
||||
</tileset>
|
||||
<layer name="PLATFORM" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFxAImJDyUABMDfrczY8HEAHL1kQIoDXNCbqK2mxmRMK3SC7XDnREHHowAl1tp4V58dlGK6e0uWgEAX2sAgg==
|
||||
eJxjYBgFwx2wIGEmAniwAWS3kwKYkfBAA1LdTg4gNx5ZcGBscsQARjyYkDpK3YtNLSmAVLcQq45SgMvPgwEDALPDAS4=
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="PLAYER">
|
||||
<object id="24" gid="4" x="0" y="320" width="64" height="64"/>
|
||||
<object id="24" gid="5" x="0" y="320" width="64" height="64"/>
|
||||
</objectgroup>
|
||||
<objectgroup name="BOUNDARY">
|
||||
<object id="23" x="0" y="-192">
|
||||
|
@ -29,9 +44,11 @@
|
|||
<polyline points="0,0 0,640 128,640 128,0 0,0"/>
|
||||
</object>
|
||||
</objectgroup>
|
||||
<layer name="SPIKES" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFo2AUjIJRMApIBwAGQAAB
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="ENEMIES">
|
||||
<object id="37" gid="7" x="1792" y="128" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
</objectgroup>
|
||||
</map>
|
||||
|
|
|
@ -1,18 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="31">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="3" columns="3">
|
||||
<image source="../spritesheets/platformSet.png" width="192" height="64"/>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="44">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="4" columns="4">
|
||||
<image source="../spritesheets/platformSet.png" width="256" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="4" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player_red.png" width="64" height="64"/>
|
||||
<tileset firstgid="5" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player/player_red.png" width="64" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="6" name="enemies" tilewidth="64" tileheight="64" tilecount="3" columns="0">
|
||||
<tile id="0">
|
||||
<image width="64" height="64" source="../textures/enemies/blueAlive.png"/>
|
||||
</tile>
|
||||
<tile id="1">
|
||||
<image width="64" height="64" source="../textures/enemies/greenAlive.png"/>
|
||||
</tile>
|
||||
<tile id="2">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
<image width="64" height="64" source="../textures/enemies/redAlive.png"/>
|
||||
</tile>
|
||||
</tileset>
|
||||
<layer name="PLATFORM" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFo2AUDARgIoAHC2AmgKkB0P2Oyy5GApge4YnL7pEIALMwAF8=
|
||||
eJxjYBgFo2AU4AKMBDATHkwI4NNLjH56AWYCmBoA3e+47GJBw9SMD2IBrrQwEgEAB58AgQ==
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="PLAYER">
|
||||
<object id="24" gid="4" x="0" y="320" width="64" height="64"/>
|
||||
<object id="24" gid="5" x="0" y="320" width="64" height="64"/>
|
||||
</objectgroup>
|
||||
<objectgroup name="BOUNDARY">
|
||||
<object id="23" x="0" y="-192">
|
||||
|
@ -29,4 +43,56 @@
|
|||
<polyline points="0,0 0,640 128,640 128,0 0,0"/>
|
||||
</object>
|
||||
</objectgroup>
|
||||
<objectgroup name="ENEMIES">
|
||||
<object id="31" gid="6" x="1024" y="320" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="32" gid="6" x="1152" y="320" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="33" gid="6" x="1280" y="320" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="34" gid="6" x="1408" y="320" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="35" gid="6" x="2880" y="320" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="36" gid="6" x="3008" y="320" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="38" gid="7" x="1600" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="41" gid="7" x="1728" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="42" gid="7" x="768" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="43" gid="7" x="576" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
</objectgroup>
|
||||
</map>
|
||||
|
|
|
@ -1,18 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="30">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="3" columns="3">
|
||||
<image source="../spritesheets/platformSet.png" width="192" height="64"/>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="36">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="4" columns="4">
|
||||
<image source="../spritesheets/platformSet.png" width="256" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="4" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player_red.png" width="64" height="64"/>
|
||||
<tileset firstgid="5" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player/player_red.png" width="64" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="6" name="enemies" tilewidth="64" tileheight="64" tilecount="3" columns="0">
|
||||
<tile id="0">
|
||||
<image width="64" height="64" source="../textures/enemies/blueAlive.png"/>
|
||||
</tile>
|
||||
<tile id="1">
|
||||
<image width="64" height="64" source="../textures/enemies/greenAlive.png"/>
|
||||
</tile>
|
||||
<tile id="2">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
<image width="64" height="64" source="../textures/enemies/redAlive.png"/>
|
||||
</tile>
|
||||
</tileset>
|
||||
<layer name="PLATFORM" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFo2AUDBbAhIZBgBENEwPQ9WDDIMCMBWNzB8wtxNhFCSDWTkoBNj9TyyxKzRtKAACkFABW
|
||||
eJxjYBgFo2AUDBbAhIZBgBENEwPQ9bBgwSDAjAUz4FBPLKYEYPP/YAe4wnAkAAAVcwCH
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="PLAYER">
|
||||
<object id="22" gid="4" x="0" y="256" width="64" height="64"/>
|
||||
<object id="22" gid="5" x="0" y="256" width="64" height="64"/>
|
||||
</objectgroup>
|
||||
<objectgroup name="BOUNDARY">
|
||||
<object id="21" x="0" y="-277.333">
|
||||
|
@ -29,9 +43,16 @@
|
|||
<polyline points="0,0 128,0 128,512 0,512 0,0"/>
|
||||
</object>
|
||||
</objectgroup>
|
||||
<layer name="SPIKES" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFo2AUjIJRMApIBwAGQAAB
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="ENEMIES">
|
||||
<object id="30" gid="6" x="960" y="320" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="31" gid="8" x="1472" y="320" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
</objectgroup>
|
||||
</map>
|
||||
|
|
|
@ -1,18 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="31">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="3" columns="3">
|
||||
<image source="../spritesheets/platformSet.png" width="192" height="64"/>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="46">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="4" columns="4">
|
||||
<image source="../spritesheets/platformSet.png" width="256" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="4" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player_red.png" width="64" height="64"/>
|
||||
<tileset firstgid="5" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player/player_red.png" width="64" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="6" name="enemies" tilewidth="64" tileheight="64" tilecount="3" columns="0">
|
||||
<tile id="0">
|
||||
<image width="64" height="64" source="../textures/enemies/blueAlive.png"/>
|
||||
</tile>
|
||||
<tile id="1">
|
||||
<image width="64" height="64" source="../textures/enemies/greenAlive.png"/>
|
||||
</tile>
|
||||
<tile id="2">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
<image width="64" height="64" source="../textures/enemies/redAlive.png"/>
|
||||
</tile>
|
||||
</tileset>
|
||||
<layer name="PLATFORM" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFQwEwo2EQYELDuNQxomFcerGpI9ZedIBuFiMOdaNg4AB6POKKy4EG5KYhbGkQV/rHlX9w5SFyzRluAACcKwCU
|
||||
eJxjYBgFgx0wY8EgwISGsakFAUY0jEsvNnXE2osOWLDgUTC4AHo84orLgQboaZIcfYTSP648gA/jMwdXnh1uAADZqwCd
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="PLAYER">
|
||||
<object id="24" gid="4" x="0" y="64" width="64" height="64"/>
|
||||
<object id="24" gid="5" x="0" y="64" width="64" height="64"/>
|
||||
</objectgroup>
|
||||
<objectgroup name="BOUNDARY">
|
||||
<object id="23" x="0" y="-192">
|
||||
|
@ -29,9 +43,41 @@
|
|||
<polyline points="0,0 0,640 128,640 128,0 0,0"/>
|
||||
</object>
|
||||
</objectgroup>
|
||||
<layer name="SPIKES" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFo2AUjIJRMApIBwAGQAAB
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="ENEMIES">
|
||||
<object id="39" gid="8" x="1664" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="40" gid="8" x="1728" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="41" gid="8" x="1792" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="42" gid="8" x="1856" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="43" gid="8" x="1920" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="44" gid="8" x="1984" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="45" gid="8" x="2048" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
</objectgroup>
|
||||
</map>
|
||||
|
|
|
@ -1,21 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="47">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="3" columns="3">
|
||||
<image source="../spritesheets/platformSet.png" width="192" height="64"/>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="51">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="4" columns="4">
|
||||
<image source="../spritesheets/platformSet.png" width="256" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="4" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player_red.png" width="64" height="64"/>
|
||||
<tileset firstgid="5" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player/player_red.png" width="64" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="5" name="Spikes" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/spikes.png" width="64" height="64"/>
|
||||
<tileset firstgid="6" name="enemies" tilewidth="64" tileheight="64" tilecount="3" columns="0">
|
||||
<tile id="0">
|
||||
<image width="64" height="64" source="../textures/enemies/blueAlive.png"/>
|
||||
</tile>
|
||||
<tile id="1">
|
||||
<image width="64" height="64" source="../textures/enemies/greenAlive.png"/>
|
||||
</tile>
|
||||
<tile id="2">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
<image width="64" height="64" source="../textures/enemies/redAlive.png"/>
|
||||
</tile>
|
||||
</tileset>
|
||||
<layer name="PLATFORM" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFo2AU0AIwIWEQYMSCQYAZCyZkHhMONbgANnvRAbHuIBUQYzcleskNE1oAWoXhYAUAsHwAUw==
|
||||
eJxjYBgFo2AU0AIwIWEQYMSCQYAZCyZkHhMONbgACxrGBoh1B6kAm5+pqZfcMKEFoFUYDlYAAMxUAF8=
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="PLAYER">
|
||||
<object id="22" gid="4" x="0" y="256" width="64" height="64"/>
|
||||
<object id="22" gid="5" x="0" y="256" width="64" height="64"/>
|
||||
</objectgroup>
|
||||
<objectgroup name="BOUNDARY">
|
||||
<object id="21" x="0" y="-277.333">
|
||||
|
@ -32,9 +43,26 @@
|
|||
<polyline points="0,0 128,0 128,512 0,512 0,0"/>
|
||||
</object>
|
||||
</objectgroup>
|
||||
<layer name="SPIKES" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFo2BoAFYSxUfB0AOjcTm0AAAyAAAQ
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="ENEMIES">
|
||||
<object id="47" gid="7" x="1024" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="48" gid="7" x="2304" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="49" gid="6" x="1728" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="50" gid="6" x="768" y="320" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
</objectgroup>
|
||||
</map>
|
||||
|
|
|
@ -1,18 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="30">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="3" columns="3">
|
||||
<image source="../spritesheets/platformSet.png" width="192" height="64"/>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="35">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="4" columns="4">
|
||||
<image source="../spritesheets/platformSet.png" width="256" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="4" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player_red.png" width="64" height="64"/>
|
||||
<tileset firstgid="5" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player/player_red.png" width="64" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="6" name="enemies" tilewidth="64" tileheight="64" tilecount="3" columns="0">
|
||||
<tile id="0">
|
||||
<image width="64" height="64" source="../textures/enemies/blueAlive.png"/>
|
||||
</tile>
|
||||
<tile id="1">
|
||||
<image width="64" height="64" source="../textures/enemies/greenAlive.png"/>
|
||||
</tile>
|
||||
<tile id="2">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
<image width="64" height="64" source="../textures/enemies/redAlive.png"/>
|
||||
</tile>
|
||||
</tileset>
|
||||
<layer name="PLATFORM" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFQxkwQTE6YEbDIMCIhpH1I5tDrF5KALr5QwngCvPBBNDjkBrxh08/rrjEpR5XGKKnRXoAQm5BB6T6dTgDAE5DAG8=
|
||||
eJxjYBgFQxkwQTE6YEbDIMCIhpH1I5tDrF5KALr5QwngCvPBBNDjkAUNkwPwxT+uuMSlHlcYoqdFegBCbkEHpPp1OAMAahsAew==
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="PLAYER">
|
||||
<object id="22" gid="4" x="0" y="256" width="64" height="64"/>
|
||||
<object id="22" gid="5" x="0" y="256" width="64" height="64"/>
|
||||
</objectgroup>
|
||||
<objectgroup name="BOUNDARY">
|
||||
<object id="21" x="0" y="-277.333">
|
||||
|
@ -29,9 +43,31 @@
|
|||
<polyline points="0,0 128,0 128,512 0,512 0,0"/>
|
||||
</object>
|
||||
</objectgroup>
|
||||
<layer name="SPIKES" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFo2AUjIJRMApIBwAGQAAB
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="ENEMIES">
|
||||
<object id="30" gid="6" x="1216" y="128" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="31" gid="6" x="2112" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="32" gid="6" x="2176" y="128" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="33" gid="6" x="3008" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="34" gid="6" x="3072" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
</objectgroup>
|
||||
</map>
|
||||
|
|
|
@ -1,21 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="31">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="3" columns="3">
|
||||
<image source="../spritesheets/platformSet.png" width="192" height="64"/>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="40">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="4" columns="4">
|
||||
<image source="../spritesheets/platformSet.png" width="256" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="4" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player_red.png" width="64" height="64"/>
|
||||
<tileset firstgid="5" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player/player_red.png" width="64" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="5" name="spikes" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/spikes.png" width="64" height="64"/>
|
||||
<tileset firstgid="6" name="enemies" tilewidth="64" tileheight="64" tilecount="3" columns="0">
|
||||
<tile id="0">
|
||||
<image width="64" height="64" source="../textures/enemies/blueAlive.png"/>
|
||||
</tile>
|
||||
<tile id="1">
|
||||
<image width="64" height="64" source="../textures/enemies/greenAlive.png"/>
|
||||
</tile>
|
||||
<tile id="2">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
<image width="64" height="64" source="../textures/enemies/redAlive.png"/>
|
||||
</tile>
|
||||
</tileset>
|
||||
<layer name="PLATFORM" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFQx0wIeGhBBiRMCF5fOpIBdQKK2YkTAlgYsAeh8jmEgoHZHcw4jETl72kAmYG6vmfFECL9DAKyAcA3mgAUA==
|
||||
eJxjYBgFgwkwomEmIvQwIeGhBJD9SUgenzpSAbXCihkJUwKYGLDHIbK5hMIB2R2wdEMoXVCSbpgZqOd/UgALGh4FAwsADNcAYg==
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="PLAYER">
|
||||
<object id="24" gid="4" x="0" y="320" width="64" height="64"/>
|
||||
<object id="24" gid="5" x="0" y="320" width="64" height="64"/>
|
||||
</objectgroup>
|
||||
<objectgroup name="BOUNDARY">
|
||||
<object id="23" x="0" y="-192">
|
||||
|
@ -32,9 +43,51 @@
|
|||
<polyline points="0,0 0,640 128,640 128,0 0,0"/>
|
||||
</object>
|
||||
</objectgroup>
|
||||
<layer name="SPIKES" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFwxmwQvFIB8SGwWhYjYJRQDwAAFKUABU=
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="ENEMIES">
|
||||
<object id="31" gid="7" x="896" y="128" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="32" gid="7" x="1664" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="33" gid="7" x="2496" y="192" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="34" gid="7" x="3008" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="35" gid="7" x="3072" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="36" gid="8" x="128" y="128" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="37" gid="8" x="1216" y="192" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="38" gid="6" x="1408" y="320" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="39" gid="6" x="2688" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="BLUE"/>
|
||||
</properties>
|
||||
</object>
|
||||
</objectgroup>
|
||||
</map>
|
||||
|
|
|
@ -1,21 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="31">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="3" columns="3">
|
||||
<image source="../spritesheets/platformSet.png" width="192" height="64"/>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="36">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="4" columns="4">
|
||||
<image source="../spritesheets/platformSet.png" width="256" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="4" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player_red.png" width="64" height="64"/>
|
||||
<tileset firstgid="5" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player/player_red.png" width="64" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="5" name="spikes" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/spikes.png" width="64" height="64"/>
|
||||
<tileset firstgid="6" name="enemies" tilewidth="64" tileheight="64" tilecount="3" columns="0">
|
||||
<tile id="0">
|
||||
<image width="64" height="64" source="../textures/enemies/blueAlive.png"/>
|
||||
</tile>
|
||||
<tile id="1">
|
||||
<image width="64" height="64" source="../textures/enemies/greenAlive.png"/>
|
||||
</tile>
|
||||
<tile id="2">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
<image width="64" height="64" source="../textures/enemies/redAlive.png"/>
|
||||
</tile>
|
||||
</tileset>
|
||||
<layer name="PLATFORM" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFlAJmKKYGYETC2OxAt4cJCRNSj24uLr3DHSCHAylhOtBgsLqLWEBttzNiwcj2wOzClg/Q3UNqvhsFEAAAL3cAZA==
|
||||
eJxjYBh+gBGK6QWYoZgagAUJY7MD3R4mJExIPXq44NI73AFyOJASpgMNBqu7iAXUdjsjFoxsD8wubPkA3T3oZsAArnw3CiAAAGRXAG8=
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="PLAYER">
|
||||
<object id="24" gid="4" x="0" y="64" width="64" height="64"/>
|
||||
<object id="24" gid="5" x="0" y="64" width="64" height="64"/>
|
||||
</objectgroup>
|
||||
<objectgroup name="BOUNDARY">
|
||||
<object id="23" x="0" y="-192">
|
||||
|
@ -32,9 +43,31 @@
|
|||
<polyline points="0,0 0,640 128,640 128,0 0,0"/>
|
||||
</object>
|
||||
</objectgroup>
|
||||
<layer name="SPIKES" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBj+gJUG6kk1cxQMLBiNr1EwCqgPAGTIABU=
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="ENEMIES">
|
||||
<object id="31" gid="8" x="320" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="32" gid="8" x="1472" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="33" gid="8" x="2560" y="192" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="34" gid="7" x="832" y="128" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="35" gid="7" x="2304" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
</objectgroup>
|
||||
</map>
|
||||
|
|
|
@ -1,21 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="31">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="3" columns="3">
|
||||
<image source="../spritesheets/platformSet.png" width="192" height="64"/>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="50" height="8" tilewidth="64" tileheight="64" nextobjectid="33">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="4" columns="4">
|
||||
<image source="../spritesheets/platformSet.png" width="256" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="4" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player_red.png" width="64" height="64"/>
|
||||
<tileset firstgid="5" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player/player_red.png" width="64" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="5" name="spikes" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/spikes.png" width="64" height="64"/>
|
||||
<tileset firstgid="6" name="enemies" tilewidth="64" tileheight="64" tilecount="3" columns="0">
|
||||
<tile id="0">
|
||||
<image width="64" height="64" source="../textures/enemies/blueAlive.png"/>
|
||||
</tile>
|
||||
<tile id="1">
|
||||
<image width="64" height="64" source="../textures/enemies/greenAlive.png"/>
|
||||
</tile>
|
||||
<tile id="2">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
<image width="64" height="64" source="../textures/enemies/redAlive.png"/>
|
||||
</tile>
|
||||
</tileset>
|
||||
<layer name="PLATFORM" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFgwEwAzHjQDuCQsCExGZEwuiAGYoHIyAUB0wMqP4kxjxkM4n1NyVhRIr78JlBql9BAFeckwIGMn1QGnbU8P9AAHLiGgQAlYAAOA==
|
||||
eJxjYBgFgwEwAzHjQDuCQsCExGZBwuiAGYoHIyAUB0wMqP4kxjxkM4n1NyVhRIr78JlBql9BAN2/5ICBTB+Uhh01/D8QgJy4BgEAuIQAQQ==
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="PLAYER">
|
||||
<object id="24" gid="4" x="0" y="128" width="64" height="64"/>
|
||||
<object id="24" gid="5" x="0" y="128" width="64" height="64"/>
|
||||
</objectgroup>
|
||||
<objectgroup name="BOUNDARY">
|
||||
<object id="23" x="0" y="-192">
|
||||
|
@ -32,9 +43,16 @@
|
|||
<polyline points="0,0 0,640 128,640 128,0 0,0"/>
|
||||
</object>
|
||||
</objectgroup>
|
||||
<layer name="SPIKES" width="50" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFo2AUUBOw0lnfKBhYMJLjDQAnTAAQ
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="ENEMIES">
|
||||
<object id="31" gid="8" x="1088" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="32" gid="8" x="2560" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
</object>
|
||||
</objectgroup>
|
||||
</map>
|
||||
|
|
|
@ -1,18 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="75" height="8" tilewidth="64" tileheight="64" nextobjectid="38">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="3" columns="3">
|
||||
<image source="../spritesheets/platformSet.png" width="192" height="64"/>
|
||||
<map version="1.0" orientation="orthogonal" renderorder="right-down" width="75" height="8" tilewidth="64" tileheight="64" nextobjectid="41">
|
||||
<tileset firstgid="1" name="platformSet" tilewidth="64" tileheight="64" tilecount="4" columns="4">
|
||||
<image source="../spritesheets/platformSet.png" width="256" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="4" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player_red.png" width="64" height="64"/>
|
||||
<tileset firstgid="5" name="player" tilewidth="64" tileheight="64" tilecount="1" columns="1">
|
||||
<image source="../textures/player/player_red.png" width="64" height="64"/>
|
||||
</tileset>
|
||||
<tileset firstgid="6" name="enemies" tilewidth="64" tileheight="64" tilecount="3" columns="0">
|
||||
<tile id="0">
|
||||
<image width="64" height="64" source="../textures/enemies/blueAlive.png"/>
|
||||
</tile>
|
||||
<tile id="1">
|
||||
<image width="64" height="64" source="../textures/enemies/greenAlive.png"/>
|
||||
</tile>
|
||||
<tile id="2">
|
||||
<properties>
|
||||
<property name="Colour" value="RED"/>
|
||||
</properties>
|
||||
<image width="64" height="64" source="../textures/enemies/redAlive.png"/>
|
||||
</tile>
|
||||
</tileset>
|
||||
<layer name="PLATFORM" width="75" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJxjYBgFQw0wIuFRgBswDbQDiASMDJTFKaVpgVA4DUQ4MpFoL7p6ZihGlqcU0Cu/IfsFVzgwYxEDgcFQNlBqN3p+QPYPMwNm3OIzY6ABEwP2OCTGD/gAJXpHAf0AADOTAFA=
|
||||
eJztlEsKACAIRE27/5kjaCGVZQhZ4IPZ9FPHCiD4jcQUyKB3Akpyp1Osd2Hnk4ePeBi3X09NfN7KrffGa5F8oMlY5YW/wRo7CaoQjL1dneENwryHmhpWWPYG9yh5mwBc
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="PLAYER">
|
||||
<object id="24" gid="4" x="64" y="128" width="64" height="64"/>
|
||||
<object id="24" gid="5" x="64" y="128" width="64" height="64"/>
|
||||
</objectgroup>
|
||||
<objectgroup name="BOUNDARY">
|
||||
<object id="23" x="0" y="-256">
|
||||
|
@ -29,9 +43,21 @@
|
|||
<polyline points="0,0 0,640 128,640 128,0 0,0"/>
|
||||
</object>
|
||||
</objectgroup>
|
||||
<layer name="SPIKES" width="75" height="8">
|
||||
<data encoding="base64" compression="zlib">
|
||||
eJztwTEBAAAAwqD1T20JT6AAAHgaCWAAAQ==
|
||||
</data>
|
||||
</layer>
|
||||
<objectgroup name="ENEMIES">
|
||||
<object id="38" gid="7" x="3648" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="39" gid="7" x="896" y="256" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
<object id="40" gid="7" x="1536" y="384" width="64" height="64">
|
||||
<properties>
|
||||
<property name="Colour" value="GREEN"/>
|
||||
</properties>
|
||||
</object>
|
||||
</objectgroup>
|
||||
</map>
|
||||
|
|
Before Width: | Height: | Size: 72 KiB |
|
@ -14,8 +14,8 @@
|
|||
height="1052.3622047"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.1 "
|
||||
sodipodi:docname="idea.svg">
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="characters.svg">
|
||||
<defs
|
||||
id="defs4">
|
||||
<clipPath
|
||||
|
@ -159,14 +159,6 @@
|
|||
id="rect4172-0-7"
|
||||
style="fill:#000000;stroke:none" />
|
||||
</clipPath>
|
||||
<filter
|
||||
id="filter3189"
|
||||
inkscape:collect="always">
|
||||
<feGaussianBlur
|
||||
id="feGaussianBlur3191"
|
||||
stdDeviation="0.33912313"
|
||||
inkscape:collect="always" />
|
||||
</filter>
|
||||
<linearGradient
|
||||
gradientTransform="translate(-8.521,14.512328)"
|
||||
spreadMethod="reflect"
|
||||
|
@ -258,6 +250,18 @@
|
|||
offset="1"
|
||||
style="stop-color:#c1c1bf;stop-opacity:1;" />
|
||||
</linearGradient>
|
||||
<clipPath
|
||||
id="clipPath4170-3"
|
||||
clipPathUnits="userSpaceOnUse">
|
||||
<rect
|
||||
ry="0.31982046"
|
||||
y="208.92468"
|
||||
x="129.70312"
|
||||
height="3.203125"
|
||||
width="8.84375"
|
||||
id="rect4172-2"
|
||||
style="fill:#000000;stroke:none" />
|
||||
</clipPath>
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
|
@ -266,17 +270,17 @@
|
|||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.35"
|
||||
inkscape:cx="1201.0205"
|
||||
inkscape:cy="273.87733"
|
||||
inkscape:zoom="5.6"
|
||||
inkscape:cx="109.27385"
|
||||
inkscape:cy="739.3418"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1-9"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1017"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="0" />
|
||||
inkscape:window-maximized="1" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
|
@ -324,7 +328,7 @@
|
|||
sodipodi:cy="232.00504"
|
||||
sodipodi:rx="21.383928"
|
||||
sodipodi:ry="9.9107141"
|
||||
d="m 214.46428,232.00504 c 0,5.47353 -9.57391,9.91071 -21.38393,9.91071 -11.81001,0 -21.38393,-4.43718 -21.38393,-9.91071 0,-5.47354 9.57392,-9.91072 21.38393,-9.91072 11.81002,0 21.38393,4.43718 21.38393,9.91072 z"
|
||||
d="m 214.46428,232.00504 a 21.383928,9.9107141 0 0 1 -21.38393,9.91071 21.383928,9.9107141 0 0 1 -21.38393,-9.91071 21.383928,9.9107141 0 0 1 21.38393,-9.91072 21.383928,9.9107141 0 0 1 21.38393,9.91072 z"
|
||||
transform="matrix(1,0,0,0.78340873,-14.625,37.087193)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
|
@ -334,7 +338,7 @@
|
|||
sodipodi:cy="232.00504"
|
||||
sodipodi:rx="21.383928"
|
||||
sodipodi:ry="9.9107141"
|
||||
d="m 214.46428,232.00504 c 0,5.47353 -9.57391,9.91071 -21.38393,9.91071 -11.81001,0 -21.38393,-4.43718 -21.38393,-9.91071 0,-5.47354 9.57392,-9.91072 21.38393,-9.91072 11.81002,0 21.38393,4.43718 21.38393,9.91072 z"
|
||||
d="m 214.46428,232.00504 a 21.383928,9.9107141 0 0 1 -21.38393,9.91071 21.383928,9.9107141 0 0 1 -21.38393,-9.91071 21.383928,9.9107141 0 0 1 21.38393,-9.91072 21.383928,9.9107141 0 0 1 21.38393,9.91072 z"
|
||||
transform="matrix(0.86809823,0,0,0.86809823,10.911303,19.14903)"
|
||||
clip-path="url(#clipPath3977)" />
|
||||
<path
|
||||
|
@ -345,14 +349,14 @@
|
|||
sodipodi:cy="232.00504"
|
||||
sodipodi:rx="21.383928"
|
||||
sodipodi:ry="9.9107141"
|
||||
d="m 214.46428,232.00504 c 0,5.47353 -9.57391,9.91071 -21.38393,9.91071 -11.81001,0 -21.38393,-4.43718 -21.38393,-9.91071 0,-5.47354 9.57392,-9.91072 21.38393,-9.91072 11.81002,0 21.38393,4.43718 21.38393,9.91072 z"
|
||||
d="m 214.46428,232.00504 a 21.383928,9.9107141 0 0 1 -21.38393,9.91071 21.383928,9.9107141 0 0 1 -21.38393,-9.91071 21.383928,9.9107141 0 0 1 21.38393,-9.91072 21.383928,9.9107141 0 0 1 21.38393,9.91072 z"
|
||||
transform="matrix(-0.86809823,0,0,0.86809823,345.27504,19.116759)"
|
||||
clip-path="url(#clipPath3977-5)" />
|
||||
</g>
|
||||
<path
|
||||
transform="matrix(-17.585296,-3.3945801,3.3945801,-17.585296,1634.3865,3944.7643)"
|
||||
inkscape:transform-center-y="10.592726"
|
||||
inkscape:transform-center-x="-1.8619497"
|
||||
transform="matrix(-3.8442808,-0.85670271,0.7420813,-4.438066,330.64019,1211.3031)"
|
||||
inkscape:transform-center-y="2.6733794"
|
||||
inkscape:transform-center-x="-0.40704458"
|
||||
d="m 124.01786,192.18361 -7.89194,1.52638 -5.26786,-6.07142 2.62408,-7.59782 7.89194,-1.52638 5.26786,6.07143 z"
|
||||
inkscape:randomized="0"
|
||||
inkscape:rounded="0"
|
||||
|
@ -365,285 +369,219 @@
|
|||
sodipodi:cx="118.75"
|
||||
sodipodi:sides="6"
|
||||
id="path4011"
|
||||
style="fill:#ff6600;stroke:none"
|
||||
style="fill:#66ff00;stroke:#112b00;stroke-width:0.23378634;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
sodipodi:type="star" />
|
||||
<g
|
||||
transform="matrix(23.500656,0,0,24.584189,-3102.7107,-4728.5519)"
|
||||
transform="matrix(5.137424,0,0,6.2044025,-704.92567,-977.61376)"
|
||||
id="g4147">
|
||||
<path
|
||||
<circle
|
||||
transform="matrix(0.30305853,0,0,0.30305853,105.83797,163.47987)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-2-7-9"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#e6e6e6;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-55-3"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
transform="matrix(0.27047159,0,0,0.27047159,109.71451,167.68492)" />
|
||||
<path
|
||||
transform="matrix(0.27047159,0,0,0.27047159,109.71451,167.68492)"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
transform="matrix(0.25128273,0,0,0.25128273,112.01609,170.01292)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3018-5-2-8"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#000000;stroke:none"
|
||||
id="path3788-2-9"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(0.41807974,0,0,0.41807974,92.144069,147.81969)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
transform="matrix(0.41807974,0,0,0.41807974,92.144069,147.81969)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
<circle
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3788-6-8-2"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(0.17814697,0,0,0.17814697,121.40185,178.82351)" />
|
||||
transform="matrix(0.17814697,0,0,0.17814697,121.40185,178.82351)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(20.250054,0,0,20.250054,-2644.1803,-3840.5238)"
|
||||
transform="matrix(4.4268174,0,0,5.1105808,-604.6874,-753.49883)"
|
||||
id="g4159">
|
||||
<path
|
||||
<circle
|
||||
transform="matrix(-0.46501306,0,0,0.46501306,194.42325,141.26142)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-2-7-9-0"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#e6e6e6;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-55-3-6"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
transform="matrix(-0.41501165,0,0,0.41501165,188.47508,147.71366)" />
|
||||
<path
|
||||
transform="matrix(-0.41501165,0,0,0.41501165,188.47508,147.71366)"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
transform="matrix(-0.38556825,0,0,0.38556825,184.94353,151.28573)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3018-5-2-8-1"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#000000;stroke:none"
|
||||
id="path3788-2-9-0"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(-0.64150162,0,0,0.64150162,215.43518,117.23244)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
transform="matrix(-0.64150162,0,0,0.64150162,215.43518,117.23244)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
<circle
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3788-6-8-2-2"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(-0.27334874,0,0,0.27334874,171.27641,164.8047)" />
|
||||
transform="matrix(-0.27334874,0,0,0.27334874,171.27641,164.8047)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
</g>
|
||||
<path
|
||||
sodipodi:nodetypes="csssccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect4075-4"
|
||||
d="m 92.05131,159.65385 65.70757,-13.08721 c 0.99024,-0.2025 1.78808,0.87481 1.75366,1.88123 l -0.4212,11.83312 c -0.0203,1.00642 -0.8748,1.79011 -1.88122,1.75366 -21.57137,-0.77761 -43.43476,-1.54913 -65.150508,-2.37636 z"
|
||||
d="m -6.5261349,256.04077 14.364179,-3.30287 c 0.216474,-0.0511 0.390888,0.22078 0.383363,0.47478 l -0.09207,2.98636 c -0.0044,0.254 -0.191238,0.45178 -0.411249,0.44258 -4.715667,-0.19624 -9.495172,-0.39095 -14.242401,-0.59973 z"
|
||||
style="fill:#000000;stroke:none" />
|
||||
<path
|
||||
sodipodi:nodetypes="csssccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect4075-4-9"
|
||||
d="m 283.88311,186.55826 -47.00585,-6.43768 c -0.70672,-0.10124 -1.22715,0.6966 -1.1583,1.40534 l 0.80392,8.34626 c 0.0608,0.70876 0.69662,1.22715 1.40536,1.15832 15.21468,-1.47218 30.6357,-2.95489 45.95042,-4.46777 z"
|
||||
d="m 35.40977,262.83073 -10.27584,-1.62469 c -0.154495,-0.0256 -0.268265,0.17579 -0.253213,0.35466 l 0.175743,2.10638 c 0.01329,0.17888 0.152286,0.3097 0.307222,0.29233 3.326046,-0.37154 6.6972,-0.74574 10.045115,-1.12755 z"
|
||||
style="fill:#000000;stroke:none" />
|
||||
<path
|
||||
<ellipse
|
||||
clip-path="url(#clipPath4170)"
|
||||
transform="matrix(20.250054,0,0,20.250054,-2519.8324,-3931.0162)"
|
||||
d="m 137.75,209.35437 c 0,1.40229 -1.72091,2.53906 -3.84375,2.53906 -2.12284,0 -3.84375,-1.13677 -3.84375,-2.53906 0,-1.40229 1.72091,-2.53906 3.84375,-2.53906 2.12284,0 3.84375,1.13677 3.84375,2.53906 z"
|
||||
sodipodi:ry="2.5390625"
|
||||
sodipodi:rx="3.84375"
|
||||
sodipodi:cy="209.35437"
|
||||
sodipodi:cx="133.90625"
|
||||
transform="matrix(2.789511,0,0,4.1973149,-358.4804,-584.81864)"
|
||||
id="path4166"
|
||||
style="fill:#000000;stroke:none"
|
||||
sodipodi:type="arc" />
|
||||
<rect
|
||||
cx="133.90625"
|
||||
cy="209.35437"
|
||||
rx="3.84375"
|
||||
ry="2.5390625" />
|
||||
<path
|
||||
transform="matrix(-3.157934,-6.3311481,3.157934,-6.3311481,778.12717,1902.2095)"
|
||||
style="fill:#00ccff;stroke:#00222b;stroke-width:0.15606134;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
clip-path="url(#clipPath4178)"
|
||||
transform="matrix(-8.2439344,-14.318951,8.2439344,-14.318951,2214.2289,3884.446)"
|
||||
ry="0"
|
||||
y="16.259079"
|
||||
x="232.20393"
|
||||
height="10"
|
||||
width="10"
|
||||
d="m 242.20393,16.259079 0,10 -10,0 c 10,-10 0,0 10,-10 z"
|
||||
id="rect4174"
|
||||
style="fill:#00ccff;stroke:none" />
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
<g
|
||||
transform="matrix(13.124961,0,0,13.730107,-1400.9808,-2661.6072)"
|
||||
transform="matrix(5.0276675,0,0,6.0707898,-606.72057,-992.13874)"
|
||||
id="g4147-6">
|
||||
<path
|
||||
<circle
|
||||
transform="matrix(0.30305853,0,0,0.30305853,105.83797,163.47987)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-2-7-9-5"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#e6e6e6;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-55-3-2"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
transform="matrix(0.27047159,0,0,0.27047159,109.71451,167.68492)" />
|
||||
<path
|
||||
transform="matrix(0.27047159,0,0,0.27047159,109.71451,167.68492)"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
transform="matrix(0.25128273,0,0,0.25128273,112.01609,170.01292)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3018-5-2-8-8"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#000000;stroke:none"
|
||||
id="path3788-2-9-08"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(0.41807974,0,0,0.41807974,92.144069,147.81969)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
transform="matrix(0.41807974,0,0,0.41807974,92.144069,147.81969)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
<circle
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3788-6-8-2-1"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(0.17814697,0,0,0.17814697,121.40185,178.82351)" />
|
||||
transform="matrix(0.17814697,0,0,0.17814697,121.40185,178.82351)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
</g>
|
||||
<g
|
||||
id="g4159-5"
|
||||
transform="matrix(11.309521,0,0,11.309521,-1144.8947,-2165.6494)">
|
||||
<path
|
||||
transform="matrix(4.3322423,0,0,5.0005238,-508.62383,-772.85015)">
|
||||
<circle
|
||||
transform="matrix(-0.46501306,0,0,0.46501306,194.42325,141.26142)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-2-7-9-0-7"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#e6e6e6;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-55-3-6-3"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
transform="matrix(-0.41501165,0,0,0.41501165,188.47508,147.71366)" />
|
||||
<path
|
||||
transform="matrix(-0.41501165,0,0,0.41501165,188.47508,147.71366)"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
transform="matrix(-0.38556825,0,0,0.38556825,184.94353,151.28573)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3018-5-2-8-1-9"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#000000;stroke:none"
|
||||
id="path3788-2-9-0-6"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(-0.64150162,0,0,0.64150162,215.43518,117.23244)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
transform="matrix(-0.64150162,0,0,0.64150162,215.43518,117.23244)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
<circle
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3788-6-8-2-2-4"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(-0.27334874,0,0,0.27334874,171.27641,164.8047)" />
|
||||
transform="matrix(-0.27334874,0,0,0.27334874,171.27641,164.8047)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
</g>
|
||||
<path
|
||||
<ellipse
|
||||
clip-path="url(#clipPath4170-6)"
|
||||
transform="matrix(8.608631,0,0,-12.332668,-710.35358,2754.3186)"
|
||||
d="m 137.75,209.35437 c 0,1.40229 -1.72091,2.53906 -3.84375,2.53906 -2.12284,0 -3.84375,-1.13677 -3.84375,-2.53906 0,-1.40229 1.72091,-2.53906 3.84375,-2.53906 2.12284,0 3.84375,1.13677 3.84375,2.53906 z"
|
||||
sodipodi:ry="2.5390625"
|
||||
sodipodi:rx="3.84375"
|
||||
sodipodi:cy="209.35437"
|
||||
sodipodi:cx="133.90625"
|
||||
transform="matrix(-2.2510463,0,0,4.0093007,400.47818,-588.76991)"
|
||||
id="path4166-4"
|
||||
style="fill:#000000;stroke:none"
|
||||
sodipodi:type="arc" />
|
||||
cx="133.90625"
|
||||
cy="209.35437"
|
||||
rx="3.84375"
|
||||
ry="2.5390625" />
|
||||
<rect
|
||||
y="61.603447"
|
||||
x="394.12189"
|
||||
height="5.8170743"
|
||||
width="26.848032"
|
||||
y="211.93343"
|
||||
x="80.914207"
|
||||
height="2.5720294"
|
||||
width="10.284449"
|
||||
id="rect4257"
|
||||
style="fill:#00ccff;stroke:#000000;stroke-width:0.20250054;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
style="fill:#00222b;stroke:#000000;stroke-width:0.08333858;stroke-miterlimit:4;stroke-dasharray:none;fill-opacity:1" />
|
||||
<rect
|
||||
transform="matrix(0.95556344,0.29478553,-0.29478553,0.95556344,0,0)"
|
||||
y="-67.75972"
|
||||
x="474.07956"
|
||||
height="5.8170743"
|
||||
width="26.848032"
|
||||
transform="matrix(0.9420582,0.33544948,-0.25820329,0.96609061,0,0)"
|
||||
y="168.50963"
|
||||
x="164.14525"
|
||||
height="2.5440025"
|
||||
width="10.431885"
|
||||
id="rect4257-5"
|
||||
style="fill:#00ccff;stroke:#000000;stroke-width:0.20250054;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
style="fill:#00222b;stroke:#000000;stroke-width:0.08347526;stroke-miterlimit:4;stroke-dasharray:none;fill-opacity:1" />
|
||||
<path
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -654,7 +592,7 @@
|
|||
transform="matrix(7.1220743,0,0,7.4504482,-527.95838,-311.84618)" />
|
||||
<path
|
||||
transform="matrix(6.3562598,0,0,6.6493247,-436.85714,-208.46843)"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -663,7 +601,7 @@
|
|||
style="fill:#e6e6e6;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -683,7 +621,7 @@
|
|||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
d="m 122.76786,130.77736 a 1.8080357,1.8080357 0 0 1 -1.80804,1.80803 1.8080357,1.8080357 0 0 1 -1.80803,-1.80803 1.8080357,1.8080357 0 0 1 1.80803,-1.80804 1.8080357,1.8080357 0 0 1 1.80804,1.80804 z"
|
||||
transform="matrix(9.8251482,0,0,10.278151,-825.26236,-702.7441)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
|
@ -693,11 +631,11 @@
|
|||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
d="m 122.76786,130.77736 a 1.8080357,1.8080357 0 0 1 -1.80804,1.80803 1.8080357,1.8080357 0 0 1 -1.80803,-1.80803 1.8080357,1.8080357 0 0 1 1.80803,-1.80804 1.8080357,1.8080357 0 0 1 1.80804,1.80804 z"
|
||||
transform="matrix(4.1865707,0,0,4.3795988,-137.68532,59.459699)" />
|
||||
</g>
|
||||
<path
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -708,7 +646,7 @@
|
|||
transform="matrix(-9.4165396,0,0,9.4165396,1380.3915,-582.28672)" />
|
||||
<path
|
||||
transform="matrix(-8.4040083,0,0,8.4040083,1259.9407,-451.62851)"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -717,7 +655,7 @@
|
|||
style="fill:#e6e6e6;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -737,7 +675,7 @@
|
|||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
d="m 122.76786,130.77736 a 1.8080357,1.8080357 0 0 1 -1.80804,1.80803 1.8080357,1.8080357 0 0 1 -1.80803,-1.80803 1.8080357,1.8080357 0 0 1 1.80803,-1.80804 1.8080357,1.8080357 0 0 1 1.80804,1.80804 z"
|
||||
transform="matrix(-12.990442,0,0,12.990442,1820.8959,-1076.53)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
|
@ -747,135 +685,93 @@
|
|||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
d="m 122.76786,130.77736 a 1.8080357,1.8080357 0 0 1 -1.80804,1.80803 1.8080357,1.8080357 0 0 1 -1.80803,-1.80803 1.8080357,1.8080357 0 0 1 1.80803,-1.80804 1.8080357,1.8080357 0 0 1 1.80804,1.80804 z"
|
||||
transform="matrix(-5.5353267,0,0,5.5353267,926.6785,-113.1891)" />
|
||||
</g>
|
||||
<path
|
||||
transform="matrix(0.71134021,0,0,0.71134021,310.12364,-149.10594)"
|
||||
d="m 404,659.86218 c 0,80.35743 -65.14257,145.5 -145.5,145.5 -80.35743,0 -145.5,-65.14257 -145.5,-145.5 0,-80.35743 65.14257,-145.5 145.5,-145.5 80.35743,0 145.5,65.14257 145.5,145.5 z"
|
||||
sodipodi:ry="145.5"
|
||||
sodipodi:rx="145.5"
|
||||
sodipodi:cy="659.86218"
|
||||
sodipodi:cx="258.5"
|
||||
<circle
|
||||
id="path4360"
|
||||
style="fill:#ff2a2a;stroke:none"
|
||||
sodipodi:type="arc" />
|
||||
style="fill:#ff0000;stroke:#2b0000;stroke-width:0.98461539"
|
||||
cx="96.017334"
|
||||
cy="307.32953"
|
||||
r="31.507692" />
|
||||
<g
|
||||
transform="matrix(13.73813,0,0,14.371547,-1425.9117,-2630.7619)"
|
||||
transform="matrix(4.182191,0,0,4.3750175,-488.44788,-591.03319)"
|
||||
id="g4147-6-4">
|
||||
<path
|
||||
<circle
|
||||
transform="matrix(0.30305853,0,0,0.30305853,105.83797,163.47987)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-2-7-9-5-6"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#e6e6e6;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-55-3-2-6"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
transform="matrix(0.27047159,0,0,0.27047159,109.71451,167.68492)" />
|
||||
<path
|
||||
transform="matrix(0.27047159,0,0,0.27047159,109.71451,167.68492)"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
transform="matrix(0.25128273,0,0,0.25128273,112.01609,170.01292)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3018-5-2-8-8-8"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#000000;stroke:none"
|
||||
id="path3788-2-9-08-6"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(0.41807974,0,0,0.41807974,92.144069,147.81969)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
transform="matrix(0.41807974,0,0,0.41807974,92.144069,147.81969)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
<circle
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3788-6-8-2-1-8"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(0.17814697,0,0,0.17814697,121.40185,178.82351)" />
|
||||
transform="matrix(0.17814697,0,0,0.17814697,121.40185,178.82351)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
</g>
|
||||
<g
|
||||
id="g4159-5-8"
|
||||
transform="matrix(11.837876,0,0,11.837876,-1157.8618,-2111.6341)">
|
||||
<path
|
||||
transform="matrix(3.6037116,0,0,3.6037118,-406.84755,-432.99917)">
|
||||
<circle
|
||||
transform="matrix(-0.46501306,0,0,0.46501306,194.42325,141.26142)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-2-7-9-0-7-9"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#e6e6e6;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="path3018-55-3-6-3-6"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
transform="matrix(-0.41501165,0,0,0.41501165,188.47508,147.71366)" />
|
||||
<path
|
||||
transform="matrix(-0.41501165,0,0,0.41501165,188.47508,147.71366)"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
transform="matrix(-0.38556825,0,0,0.38556825,184.94353,151.28573)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3018-5-2-8-1-9-1"
|
||||
sodipodi:cx="123.03571"
|
||||
sodipodi:cy="128.29968"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:ry="6.6071429"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
cx="123.03571"
|
||||
cy="128.29968"
|
||||
r="6.6071429" />
|
||||
<circle
|
||||
style="fill:#000000;stroke:none"
|
||||
id="path3788-2-9-0-6-2"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(-0.64150162,0,0,0.64150162,215.43518,117.23244)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
transform="matrix(-0.64150162,0,0,0.64150162,215.43518,117.23244)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
<circle
|
||||
style="fill:#ffffff;stroke:none"
|
||||
id="path3788-6-8-2-2-4-4"
|
||||
sodipodi:cx="120.95982"
|
||||
sodipodi:cy="130.77736"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:ry="1.8080357"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
transform="matrix(-0.27334874,0,0,0.27334874,171.27641,164.8047)" />
|
||||
transform="matrix(-0.27334874,0,0,0.27334874,171.27641,164.8047)"
|
||||
cx="120.95982"
|
||||
cy="130.77736"
|
||||
r="1.8080357" />
|
||||
</g>
|
||||
<rect
|
||||
ry="4.2680411"
|
||||
y="311.36224"
|
||||
x="462.81958"
|
||||
height="8.5360823"
|
||||
width="79.829895"
|
||||
id="rect4413"
|
||||
style="fill:#000000;stroke:none" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccccccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
|
@ -889,7 +785,7 @@
|
|||
id="g4147-4"
|
||||
transform="matrix(17.319976,0,0,18.11854,-1831.3003,-3033.7643)">
|
||||
<path
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -900,7 +796,7 @@
|
|||
transform="matrix(0.30305853,0,0,0.30305853,105.83797,163.47987)" />
|
||||
<path
|
||||
transform="matrix(0.27047159,0,0,0.27047159,109.71451,167.68492)"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -909,7 +805,7 @@
|
|||
style="fill:#e6e6e6;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -920,7 +816,7 @@
|
|||
transform="matrix(0.25128273,0,0,0.25128273,112.01609,170.01292)" />
|
||||
<path
|
||||
transform="matrix(0.41807974,0,0,0.41807974,91.552267,147.91628)"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
d="m 122.76786,130.77736 a 1.8080357,1.8080357 0 0 1 -1.80804,1.80803 1.8080357,1.8080357 0 0 1 -1.80803,-1.80803 1.8080357,1.8080357 0 0 1 1.80803,-1.80804 1.8080357,1.8080357 0 0 1 1.80804,1.80804 z"
|
||||
sodipodi:ry="1.8080357"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:cy="130.77736"
|
||||
|
@ -930,7 +826,7 @@
|
|||
sodipodi:type="arc" />
|
||||
<path
|
||||
transform="matrix(0.17814697,0,0,0.17814697,120.81004,178.9201)"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
d="m 122.76786,130.77736 a 1.8080357,1.8080357 0 0 1 -1.80804,1.80803 1.8080357,1.8080357 0 0 1 -1.80803,-1.80803 1.8080357,1.8080357 0 0 1 1.80803,-1.80804 1.8080357,1.8080357 0 0 1 1.80804,1.80804 z"
|
||||
sodipodi:ry="1.8080357"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:cy="130.77736"
|
||||
|
@ -983,7 +879,7 @@
|
|||
<path
|
||||
clip-path="url(#clipPath4170-7)"
|
||||
transform="matrix(4.7147245,0,0,4.7147245,-37.354545,-356.31207)"
|
||||
d="m 137.75,209.35437 c 0,1.40229 -1.72091,2.53906 -3.84375,2.53906 -2.12284,0 -3.84375,-1.13677 -3.84375,-2.53906 0,-1.40229 1.72091,-2.53906 3.84375,-2.53906 2.12284,0 3.84375,1.13677 3.84375,2.53906 z"
|
||||
d="m 137.75,209.35437 a 3.84375,2.5390625 0 0 1 -3.84375,2.53906 3.84375,2.5390625 0 0 1 -3.84375,-2.53906 3.84375,2.5390625 0 0 1 3.84375,-2.53906 3.84375,2.5390625 0 0 1 3.84375,2.53906 z"
|
||||
sodipodi:ry="2.5390625"
|
||||
sodipodi:rx="3.84375"
|
||||
sodipodi:cy="209.35437"
|
||||
|
@ -1029,7 +925,7 @@
|
|||
id="g4159-9"
|
||||
transform="matrix(14.924284,0,0,14.924284,-1493.3635,-2379.2879)">
|
||||
<path
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -1040,7 +936,7 @@
|
|||
transform="matrix(-0.46501306,0,0,0.46501306,194.42325,141.26142)" />
|
||||
<path
|
||||
transform="matrix(-0.41501165,0,0,0.41501165,188.47508,147.71366)"
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -1049,7 +945,7 @@
|
|||
style="fill:#e6e6e6;stroke:#000000;stroke-width:0.1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
d="m 129.64286,128.29968 c 0,3.64903 -2.95812,6.60715 -6.60715,6.60715 -3.64902,0 -6.60714,-2.95812 -6.60714,-6.60715 0,-3.64902 2.95812,-6.60714 6.60714,-6.60714 3.64903,0 6.60715,2.95812 6.60715,6.60714 z"
|
||||
d="m 129.64286,128.29968 a 6.6071429,6.6071429 0 0 1 -6.60715,6.60715 6.6071429,6.6071429 0 0 1 -6.60714,-6.60715 6.6071429,6.6071429 0 0 1 6.60714,-6.60714 6.6071429,6.6071429 0 0 1 6.60715,6.60714 z"
|
||||
sodipodi:ry="6.6071429"
|
||||
sodipodi:rx="6.6071429"
|
||||
sodipodi:cy="128.29968"
|
||||
|
@ -1060,7 +956,7 @@
|
|||
transform="matrix(-0.38556825,0,0,0.38556825,184.94353,151.28573)" />
|
||||
<path
|
||||
transform="matrix(-0.64150162,0,0,0.64150162,213.89407,117.3497)"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
d="m 122.76786,130.77736 a 1.8080357,1.8080357 0 0 1 -1.80804,1.80803 1.8080357,1.8080357 0 0 1 -1.80803,-1.80803 1.8080357,1.8080357 0 0 1 1.80803,-1.80804 1.8080357,1.8080357 0 0 1 1.80804,1.80804 z"
|
||||
sodipodi:ry="1.8080357"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:cy="130.77736"
|
||||
|
@ -1070,7 +966,7 @@
|
|||
sodipodi:type="arc" />
|
||||
<path
|
||||
transform="matrix(-0.27334874,0,0,0.27334874,169.7353,164.92196)"
|
||||
d="m 122.76786,130.77736 c 0,0.99855 -0.80949,1.80803 -1.80804,1.80803 -0.99855,0 -1.80803,-0.80948 -1.80803,-1.80803 0,-0.99855 0.80948,-1.80804 1.80803,-1.80804 0.99855,0 1.80804,0.80949 1.80804,1.80804 z"
|
||||
d="m 122.76786,130.77736 a 1.8080357,1.8080357 0 0 1 -1.80804,1.80803 1.8080357,1.8080357 0 0 1 -1.80803,-1.80803 1.8080357,1.8080357 0 0 1 1.80803,-1.80804 1.8080357,1.8080357 0 0 1 1.80804,1.80804 z"
|
||||
sodipodi:ry="1.8080357"
|
||||
sodipodi:rx="1.8080357"
|
||||
sodipodi:cy="130.77736"
|
||||
|
@ -1123,7 +1019,7 @@
|
|||
<path
|
||||
clip-path="url(#clipPath4170-6-1)"
|
||||
transform="matrix(15.856018,0,0,-20.031916,-1836.0494,4932.0646)"
|
||||
d="m 137.75,209.35437 a 3.84375,2.5390625 0 1 1 -7.6875,0 3.84375,2.5390625 0 1 1 7.6875,0 z"
|
||||
d="m 137.75,209.35437 a 3.84375,2.5390625 0 0 1 -3.84375,2.53906 3.84375,2.5390625 0 0 1 -3.84375,-2.53906 3.84375,2.5390625 0 0 1 3.84375,-2.53906 3.84375,2.5390625 0 0 1 3.84375,2.53906 z"
|
||||
sodipodi:ry="2.5390625"
|
||||
sodipodi:rx="3.84375"
|
||||
sodipodi:cy="209.35437"
|
||||
|
@ -1131,6 +1027,15 @@
|
|||
id="path4166-4-4"
|
||||
style="fill:#000000;stroke:none"
|
||||
sodipodi:type="arc" />
|
||||
<ellipse
|
||||
clip-path="url(#clipPath4170-3)"
|
||||
transform="matrix(4.4619849,0,0,7.2048337,-499.24568,-1200.7586)"
|
||||
id="path4166-8"
|
||||
style="fill:#000000;stroke:none"
|
||||
cx="133.90625"
|
||||
cy="209.35437"
|
||||
rx="3.84375"
|
||||
ry="2.5390625" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 40 KiB |
|
@ -9,13 +9,16 @@
|
|||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="256"
|
||||
width="320"
|
||||
height="64"
|
||||
viewBox="0 0 256 63.999999"
|
||||
viewBox="0 0 320 63.999999"
|
||||
id="svg3336"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="drawing.svg">
|
||||
sodipodi:docname="drawing.svg"
|
||||
inkscape:export-filename="C:\Users\Ash\Documents\GitHub\libGDXGroupProject\core\assets\spritesheets\drawing.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
<defs
|
||||
id="defs3338" />
|
||||
<sodipodi:namedview
|
||||
|
@ -25,9 +28,9 @@
|
|||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="4.8751698"
|
||||
inkscape:cx="99.91327"
|
||||
inkscape:cy="34.380608"
|
||||
inkscape:zoom="2.8284271"
|
||||
inkscape:cx="178.30528"
|
||||
inkscape:cy="42.385779"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
|
@ -36,7 +39,8 @@
|
|||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
units="px" />
|
||||
units="px"
|
||||
showguides="false" />
|
||||
<metadata
|
||||
id="metadata3341">
|
||||
<rdf:RDF>
|
||||
|
@ -158,5 +162,27 @@
|
|||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
</g>
|
||||
<rect
|
||||
y="988.36218"
|
||||
x="256"
|
||||
height="64"
|
||||
width="64"
|
||||
id="rect3466"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none"
|
||||
ry="2.3579066" />
|
||||
<rect
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:none"
|
||||
id="rect3468"
|
||||
width="59.755768"
|
||||
height="59.755768"
|
||||
x="-317.8779"
|
||||
y="-1050.2401"
|
||||
transform="scale(-1,-1)" />
|
||||
<path
|
||||
style="fill:#cccccc;fill-opacity:1;stroke:none"
|
||||
d="m 317.87788,1050.2401 -59.75577,0 c 59.75577,-59.75579 0,0 59.75577,-59.75579 z"
|
||||
id="path3470"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
</g>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 5.6 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 3 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 280 KiB After Width: | Height: | Size: 280 KiB |
Before Width: | Height: | Size: 137 KiB After Width: | Height: | Size: 137 KiB |
Before Width: | Height: | Size: 193 KiB After Width: | Height: | Size: 193 KiB |
Before Width: | Height: | Size: 395 KiB After Width: | Height: | Size: 395 KiB |
Before Width: | Height: | Size: 454 KiB After Width: | Height: | Size: 454 KiB |
Before Width: | Height: | Size: 223 KiB After Width: | Height: | Size: 223 KiB |
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 91 KiB After Width: | Height: | Size: 91 KiB |
Before Width: | Height: | Size: 67 KiB |
BIN
core/assets/textures/enemies/blueAlive.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
BIN
core/assets/textures/enemies/blueDead.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
core/assets/textures/enemies/greenAlive.png
Normal file
After Width: | Height: | Size: 3.9 KiB |
BIN
core/assets/textures/enemies/greenDead.png
Normal file
After Width: | Height: | Size: 3 KiB |
BIN
core/assets/textures/enemies/redAlive.png
Normal file
After Width: | Height: | Size: 3 KiB |
BIN
core/assets/textures/enemies/redDead.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 67 KiB |
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 61 KiB |
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 81 KiB |
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 67 KiB |
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 942 KiB |
BIN
core/assets/textures/player/player_blue.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
core/assets/textures/player/player_green.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
core/assets/textures/player/player_red.png
Normal file
After Width: | Height: | Size: 3.3 KiB |
BIN
core/assets/textures/player/player_yellow.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 5.7 KiB |
Before Width: | Height: | Size: 6.4 KiB |
Before Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 6.7 KiB |
|
@ -12,7 +12,6 @@ public abstract class Base {
|
|||
|
||||
// Physics definitions
|
||||
protected Body body;
|
||||
protected String bodyType;
|
||||
|
||||
// Position and Size
|
||||
protected Vector2 pos;
|
||||
|
@ -24,16 +23,14 @@ public abstract class Base {
|
|||
RED,
|
||||
GREEN,
|
||||
BLUE,
|
||||
YELLOW,
|
||||
NONE,
|
||||
WHITE
|
||||
}
|
||||
|
||||
public Base(World world, Vector2 pos, Vector2 size, String bodyType, Colours curColour)
|
||||
public Base(World world, Vector2 pos, Vector2 size, Colours curColour)
|
||||
{
|
||||
this.world = world;
|
||||
this.pos = pos;
|
||||
this.size = size;
|
||||
this.bodyType = bodyType;
|
||||
this.curColour = curColour;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,53 +0,0 @@
|
|||
package com.game.actor;
|
||||
|
||||
import com.badlogic.gdx.graphics.g2d.Animation;
|
||||
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
|
||||
import com.badlogic.gdx.graphics.g2d.TextureRegion;
|
||||
import com.badlogic.gdx.math.Vector2;
|
||||
import com.badlogic.gdx.physics.box2d.Body;
|
||||
|
||||
import static com.game.misc.Vars.PPM;
|
||||
|
||||
/**
|
||||
* Created by Ash on 09/02/2016.
|
||||
*/
|
||||
public class Box2DSprite {
|
||||
|
||||
protected Body body;
|
||||
protected Animation animation;
|
||||
|
||||
protected float width, height;
|
||||
protected Vector2 pos;
|
||||
|
||||
protected TextureRegion currentFrame;
|
||||
|
||||
public Box2DSprite(Body body)
|
||||
{
|
||||
this.body = body;
|
||||
//setAnimation();
|
||||
}
|
||||
|
||||
public void update(float dt)
|
||||
{
|
||||
pos = body.getPosition();
|
||||
currentFrame = animation.getKeyFrame(dt, true);
|
||||
}
|
||||
|
||||
public void render(SpriteBatch sb)
|
||||
{
|
||||
sb.begin();
|
||||
sb.draw(currentFrame,
|
||||
(pos.x * PPM) - width / 2,
|
||||
(pos.y * PPM) - height / 2
|
||||
);
|
||||
sb.end();
|
||||
|
||||
}
|
||||
|
||||
/*public void setAnimation(TextureRegion[] reg, float delay)
|
||||
{
|
||||
setAnimation(reg, delay);
|
||||
}*/
|
||||
|
||||
|
||||
}
|
93
core/src/com/game/Actor/Enemy.java
Normal file
|
@ -0,0 +1,93 @@
|
|||
package com.game.actor;
|
||||
|
||||
import com.badlogic.gdx.graphics.Texture;
|
||||
import com.badlogic.gdx.graphics.g2d.Sprite;
|
||||
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
|
||||
import com.badlogic.gdx.math.Vector2;
|
||||
import com.badlogic.gdx.physics.box2d.*;
|
||||
import com.badlogic.gdx.utils.Array;
|
||||
import com.game.App;
|
||||
import com.game.misc.utils.Box2dUtils;
|
||||
import com.game.misc.Vars;
|
||||
|
||||
import static com.game.misc.Vars.PPM;
|
||||
|
||||
/**
|
||||
* Created by Ash on 22/02/2016.
|
||||
*/
|
||||
public class Enemy extends Base {
|
||||
|
||||
private Sprite sprite;
|
||||
private boolean isAlive;
|
||||
|
||||
public Enemy(World world, Vector2 pos, Vector2 size, Colours curColour, short categoryBits, short maskBits) {
|
||||
super(world, pos, size, curColour);
|
||||
|
||||
body = Box2dUtils.makeBody(world,
|
||||
BodyDef.BodyType.StaticBody,
|
||||
pos
|
||||
);
|
||||
Box2dUtils.makePolygon(body, size, "ENEMY", true, categoryBits, maskBits);
|
||||
/*Box2dUtils.makeChain(body,
|
||||
new Vector2[]{
|
||||
new Vector2((-size.x / 2 + 5) / PPM, (size.y / 2 + 5) / PPM),
|
||||
new Vector2((size.x / 2 - 5) / PPM, (size.y / 2 + 5) / PPM)
|
||||
},
|
||||
"ENEMY",
|
||||
true,
|
||||
Vars.BIT_ALL,
|
||||
Vars.BIT_PLAYER
|
||||
);*/
|
||||
|
||||
isAlive = true;
|
||||
|
||||
sprite = new Sprite(App.assets.get("textures/enemies/redAlive.png", Texture.class));
|
||||
sprite.setPosition(pos.x - size.x / 2, pos.y - size.y / 2);
|
||||
setCurColour(curColour);
|
||||
}
|
||||
|
||||
public void render(SpriteBatch sb)
|
||||
{
|
||||
sprite.draw(sb);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCurColour(Colours curColour)
|
||||
{
|
||||
super.setCurColour(curColour);
|
||||
Filter filter = body.getFixtureList().first().getFilterData();
|
||||
short bits = filter.maskBits;
|
||||
|
||||
switch (curColour)
|
||||
{
|
||||
case RED:
|
||||
bits &= ~Vars.BIT_GREEN;
|
||||
bits &= ~Vars.BIT_BLUE;
|
||||
bits |= Vars.BIT_RED;
|
||||
if(isAlive) { sprite.setTexture(App.assets.get("textures/enemies/redAlive.png", Texture.class)); }
|
||||
else { sprite.setTexture(App.assets.get("textures/enemies/redDead.png", Texture.class)); }
|
||||
break;
|
||||
case GREEN:
|
||||
bits &= ~Vars.BIT_RED;
|
||||
bits &= ~Vars.BIT_BLUE;
|
||||
bits |= Vars.BIT_GREEN;
|
||||
if(isAlive) { sprite.setTexture(App.assets.get("textures/enemies/greenAlive.png", Texture.class)); }
|
||||
else { sprite.setTexture(App.assets.get("textures/enemies/greenDead.png", Texture.class)); }
|
||||
break;
|
||||
case BLUE:
|
||||
bits &= ~Vars.BIT_RED;
|
||||
bits &= ~Vars.BIT_GREEN;
|
||||
bits |= Vars.BIT_BLUE;
|
||||
if(isAlive) { sprite.setTexture(App.assets.get("textures/enemies/blueAlive.png", Texture.class)); }
|
||||
else { sprite.setTexture(App.assets.get("textures/enemies/blueDead.png", Texture.class)); }
|
||||
break;
|
||||
}
|
||||
|
||||
filter.maskBits = bits;
|
||||
body.getFixtureList().first().setFilterData(filter);
|
||||
}
|
||||
|
||||
public void setAlive(boolean isAlive) { this.isAlive = isAlive; }
|
||||
|
||||
public Array<Fixture> getFixtures() { return body.getFixtureList(); }
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
package com.game.actor.object;
|
||||
|
||||
import com.badlogic.gdx.graphics.Texture;
|
||||
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
|
||||
import com.badlogic.gdx.math.Vector2;
|
||||
import com.game.misc.Vars;
|
||||
|
||||
/**
|
||||
* Created by Ash on 09/02/2016.
|
||||
*/
|
||||
public class Background {
|
||||
|
||||
private Vector2 pos;
|
||||
|
||||
private Texture texture;
|
||||
|
||||
public Background(String path)
|
||||
{
|
||||
loadTexture(path);
|
||||
}
|
||||
|
||||
public void update(float dt, Vector2 pos)
|
||||
{
|
||||
this.pos = pos;
|
||||
}
|
||||
|
||||
public void render(SpriteBatch sb)
|
||||
{
|
||||
sb.draw(texture, pos.x, pos.y, Vars.SCREEN_WIDTH, Vars.SCREEN_HEIGHT);
|
||||
}
|
||||
|
||||
private void loadTexture(String path)
|
||||
{
|
||||
this.texture = new Texture(path);
|
||||
}
|
||||
}
|
|
@ -1,6 +1,5 @@
|
|||
package com.game.actor;
|
||||
|
||||
import com.badlogic.gdx.Gdx;
|
||||
import com.badlogic.gdx.audio.Sound;
|
||||
import com.badlogic.gdx.graphics.Texture;
|
||||
import com.badlogic.gdx.graphics.g2d.Sprite;
|
||||
|
@ -9,7 +8,7 @@ import com.badlogic.gdx.math.MathUtils;
|
|||
import com.badlogic.gdx.math.Vector2;
|
||||
import com.badlogic.gdx.physics.box2d.*;
|
||||
import com.game.App;
|
||||
import com.game.misc.Box2dUtils;
|
||||
import com.game.misc.utils.Box2dUtils;
|
||||
import com.game.misc.Vars;
|
||||
|
||||
import static com.game.misc.Vars.PPM;
|
||||
|
@ -36,19 +35,20 @@ public class Player extends Base {
|
|||
private Sound colourchangeSound;
|
||||
|
||||
public Player(World world, Vector2 pos, Vector2 size, Colours curColour) {
|
||||
super(world, pos, size, "", curColour);
|
||||
super(world, pos, size, curColour);
|
||||
curAction = Action.IDLE;
|
||||
|
||||
body = Box2dUtils.makeBody(world,
|
||||
BodyDef.BodyType.DynamicBody,
|
||||
pos
|
||||
);
|
||||
Box2dUtils.makeCircle(body, size.x, "PLAYER", false, Vars.BIT_PLAYER, (short)(Vars.BIT_RED | Vars.BIT_PRISMATIC));
|
||||
Box2dUtils.makeCircle(body, size.x, "PLAYER", false, Vars.BIT_PLAYER, (short)(Vars.BIT_RED | Vars.BIT_ALL));
|
||||
|
||||
jumpSound = App.assets.get("sounds/jumping.mp3", Sound.class);
|
||||
colourchangeSound = App.assets.get("sounds/colourchange.mp3", Sound.class);
|
||||
|
||||
sprite = new Sprite(App.assets.get("textures/player_red.png", Texture.class));
|
||||
sprite = new Sprite(App.assets.get("textures/player/player_red.png", Texture.class));
|
||||
sprite.setPosition((pos.x * PPM) - size.x / 2, (pos.y * PPM) - size.y / 2);
|
||||
}
|
||||
|
||||
public void update(float dt)
|
||||
|
@ -100,30 +100,20 @@ public class Player extends Base {
|
|||
case RED:
|
||||
bits &= ~Vars.BIT_GREEN;
|
||||
bits &= ~Vars.BIT_BLUE;
|
||||
bits &= ~Vars.BIT_YELLOW;
|
||||
bits |= Vars.BIT_RED;
|
||||
sprite.setTexture(App.assets.get("textures/player_red.png", Texture.class));
|
||||
sprite.setTexture(App.assets.get("textures/player/player_red.png", Texture.class));
|
||||
break;
|
||||
case GREEN:
|
||||
bits &= ~Vars.BIT_RED;
|
||||
bits &= ~Vars.BIT_BLUE;
|
||||
bits &= ~Vars.BIT_YELLOW;
|
||||
bits |= Vars.BIT_GREEN;
|
||||
sprite.setTexture(App.assets.get("textures/player_green.png", Texture.class));
|
||||
sprite.setTexture(App.assets.get("textures/player/player_green.png", Texture.class));
|
||||
break;
|
||||
case BLUE:
|
||||
bits &= ~Vars.BIT_RED;
|
||||
bits &= ~Vars.BIT_GREEN;
|
||||
bits &= ~Vars.BIT_YELLOW;
|
||||
bits |= Vars.BIT_BLUE;
|
||||
sprite.setTexture(App.assets.get("textures/player_blue.png", Texture.class));
|
||||
break;
|
||||
case YELLOW:
|
||||
bits &= ~Vars.BIT_RED;
|
||||
bits &= ~Vars.BIT_GREEN;
|
||||
bits &= ~Vars.BIT_BLUE;
|
||||
bits |= Vars.BIT_YELLOW;
|
||||
sprite.setTexture(App.assets.get("textures/player_yellow.png", Texture.class));
|
||||
sprite.setTexture(App.assets.get("textures/player/player_blue.png", Texture.class));
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,42 +0,0 @@
|
|||
package com.game.actor;
|
||||
|
||||
import com.badlogic.gdx.math.Vector2;
|
||||
import com.badlogic.gdx.physics.box2d.BodyDef;
|
||||
import com.badlogic.gdx.physics.box2d.World;
|
||||
import com.game.misc.Box2dUtils;
|
||||
import com.game.misc.Vars;
|
||||
|
||||
import static com.game.misc.Vars.PPM;
|
||||
|
||||
/**
|
||||
* Created by Elliot on 22/02/2016.
|
||||
*/
|
||||
|
||||
public class Spike extends Base {
|
||||
|
||||
public Spike(World world, Vector2 pos, Vector2 size, Colours curColour, short categoryBits) {
|
||||
super(world, pos, size, "STATIC", curColour);
|
||||
|
||||
body = Box2dUtils.makeBody(world,
|
||||
BodyDef.BodyType.StaticBody,
|
||||
pos
|
||||
);
|
||||
|
||||
short maskBits = 0;
|
||||
Box2dUtils.makePolygon(body, size, "", false, categoryBits, maskBits);
|
||||
Box2dUtils.makeChain(body,
|
||||
new Vector2[]{
|
||||
new Vector2((-size.x / 2 + 5) / PPM, (size.y / 2 + 5) / PPM),
|
||||
new Vector2((size.x / 2 - 5) / PPM, (size.y / 2 + 5) / PPM)
|
||||
},
|
||||
"SPIKES",
|
||||
true,
|
||||
<<<<<<< HEAD
|
||||
Vars.BIT_PRISMATIC,
|
||||
Vars.BIT_PLAYER
|
||||
=======
|
||||
Vars.BIT_MISC, maskBits
|
||||
>>>>>>> origin/master
|
||||
);
|
||||
}
|
||||
}
|
|
@ -1,8 +1,9 @@
|
|||
package com.game.actor;
|
||||
package com.game.actor.object;
|
||||
|
||||
import com.badlogic.gdx.math.Vector2;
|
||||
import com.badlogic.gdx.physics.box2d.*;
|
||||
import com.game.misc.Box2dUtils;
|
||||
import com.game.actor.Base;
|
||||
import com.game.misc.utils.Box2dUtils;
|
||||
import com.game.misc.Vars;
|
||||
|
||||
import static com.game.misc.Vars.PPM;
|
||||
|
@ -13,7 +14,7 @@ import static com.game.misc.Vars.PPM;
|
|||
public class Platform extends Base {
|
||||
|
||||
public Platform(World world, Vector2 pos, Vector2 size, Colours curColour, short categoryBits, short maskBits) {
|
||||
super(world, pos, size, "STATIC", curColour);
|
||||
super(world, pos, size, curColour);
|
||||
|
||||
body = Box2dUtils.makeBody(world,
|
||||
BodyDef.BodyType.StaticBody,
|
||||
|
@ -27,7 +28,7 @@ public class Platform extends Base {
|
|||
},
|
||||
"PLATFORM",
|
||||
true,
|
||||
Vars.BIT_PRISMATIC,
|
||||
Vars.BIT_ALL,
|
||||
Vars.BIT_PLAYER
|
||||
);
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
package com.game.misc;
|
||||
|
||||
import com.badlogic.gdx.math.Vector2;
|
||||
import com.game.actor.object.Background;
|
||||
|
||||
/**
|
||||
* Created by Ash on 09/02/2016.
|
||||
*/
|
||||
public class ParralaxBackground {
|
||||
private Background back;
|
||||
private Background middle;
|
||||
private Background front;
|
||||
|
||||
public ParralaxBackground(String back, String middle, String front)
|
||||
{
|
||||
this.back = new Background(back);
|
||||
createBackground(middle);
|
||||
createBackground(front);
|
||||
}
|
||||
|
||||
public void update(float dt)
|
||||
{
|
||||
Vector2 movementAmount = new Vector2(.1f, 0);
|
||||
|
||||
back.update(dt, movementAmount);
|
||||
|
||||
middle.update(dt, movementAmount);
|
||||
|
||||
front.update(dt, movementAmount);
|
||||
}
|
||||
|
||||
private void createBackground(String path)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
|
@ -23,9 +23,8 @@ public class Vars {
|
|||
|
||||
// Filter bits
|
||||
public static final short BIT_PLAYER = 1;
|
||||
public static final short BIT_PRISMATIC = 1;
|
||||
public static final short BIT_ALL = 1;
|
||||
public static final short BIT_RED = 2;
|
||||
public static final short BIT_GREEN = 4;
|
||||
public static final short BIT_BLUE = 8;
|
||||
public static final short BIT_YELLOW = 16;
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
package com.game.misc;
|
||||
package com.game.misc.utils;
|
||||
|
||||
import com.badlogic.gdx.math.Vector2;
|
||||
import com.badlogic.gdx.physics.box2d.*;
|
|
@ -1,4 +1,4 @@
|
|||
package com.game.misc;
|
||||
package com.game.misc.utils;
|
||||
|
||||
import com.badlogic.gdx.graphics.Camera;
|
||||
import com.badlogic.gdx.math.Vector2;
|
||||
|
@ -13,7 +13,8 @@ public class CameraUtils {
|
|||
{
|
||||
Vector3 pos = cam.position;
|
||||
pos.x = cam.position.x + (tarX - cam.position.x) * .2f;
|
||||
pos.y = cam.position.y + (tarY - cam.position.y) * .2f;;
|
||||
pos.y = cam.position.y + (tarY - cam.position.y) * .2f;
|
||||
|
||||
cam.position.set(pos);
|
||||
cam.update();
|
||||
}
|
||||
|
@ -21,24 +22,12 @@ public class CameraUtils {
|
|||
public static void setBoundary(Camera cam, Vector2 start, Vector2 size)
|
||||
{
|
||||
Vector3 pos = cam.position;
|
||||
if(pos.x < start.x)
|
||||
{
|
||||
pos.x = start.x;
|
||||
}
|
||||
if(pos.y < start.y)
|
||||
{
|
||||
pos.y = start.y;
|
||||
}
|
||||
if(pos.x < start.x) { pos.x = start.x; }
|
||||
if(pos.x > start.x + size.x) { pos.x = start.x + size.x; }
|
||||
|
||||
if(pos.x > start.x + size.x)
|
||||
{
|
||||
pos.x = start.x + size.x;
|
||||
}
|
||||
if(pos.y < start.y) { pos.y = start.y; }
|
||||
if(pos.y > start.y + size.y) { pos.y = start.y + size.y; }
|
||||
|
||||
if(pos.y > start.y + size.y)
|
||||
{
|
||||
pos.y = start.y + size.y;
|
||||
}
|
||||
cam.position.set(pos);
|
||||
cam.update();
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
package com.game.misc;
|
||||
package com.game.misc.utils;
|
||||
|
||||
import com.badlogic.gdx.math.Vector2;
|
||||
import com.badlogic.gdx.scenes.scene2d.ui.Skin;
|
|
@ -1,4 +1,4 @@
|
|||
package com.game.misc;
|
||||
package com.game.misc.utils;
|
||||
|
||||
import com.badlogic.gdx.graphics.Texture;
|
||||
import com.badlogic.gdx.math.Vector2;
|
|
@ -1,467 +0,0 @@
|
|||
package com.game.screens;
|
||||
import com.badlogic.gdx.Gdx;
|
||||
import com.badlogic.gdx.Input;
|
||||
import com.badlogic.gdx.audio.Sound;
|
||||
import com.badlogic.gdx.graphics.OrthographicCamera;
|
||||
import com.badlogic.gdx.graphics.Texture;
|
||||
import com.badlogic.gdx.graphics.g2d.BitmapFont;
|
||||
import com.badlogic.gdx.maps.MapLayer;
|
||||
import com.badlogic.gdx.maps.MapProperties;
|
||||
import com.badlogic.gdx.maps.objects.PolylineMapObject;
|
||||
import com.badlogic.gdx.maps.objects.TextureMapObject;
|
||||
import com.badlogic.gdx.maps.tiled.TiledMap;
|
||||
import com.badlogic.gdx.maps.tiled.TiledMapTileLayer;
|
||||
import com.badlogic.gdx.maps.tiled.TmxMapLoader;
|
||||
import com.badlogic.gdx.maps.tiled.renderers.OrthogonalTiledMapRenderer;
|
||||
import com.badlogic.gdx.math.Polyline;
|
||||
import com.badlogic.gdx.math.Vector2;
|
||||
import com.badlogic.gdx.physics.box2d.*;
|
||||
import com.badlogic.gdx.scenes.scene2d.ui.Image;
|
||||
import com.badlogic.gdx.scenes.scene2d.ui.Skin;
|
||||
import com.badlogic.gdx.scenes.scene2d.ui.TextButton;
|
||||
import com.badlogic.gdx.scenes.scene2d.ui.Window;
|
||||
import com.badlogic.gdx.scenes.scene2d.utils.ClickListener;
|
||||
import com.game.App;
|
||||
import com.game.managers.ScreenManager;
|
||||
import com.game.misc.Box2dUtils;
|
||||
import com.game.misc.Vars;
|
||||
import com.game.screens.AbstractScreen;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import static com.game.misc.Vars.PPM;
|
||||
|
||||
/**
|
||||
* Created by Elliot on 16/02/2016.
|
||||
*/
|
||||
public class EndlessMode extends AbstractScreen {
|
||||
|
||||
private Skin skin;
|
||||
|
||||
// TODO, remove
|
||||
public boolean isDebug = false;
|
||||
|
||||
// Physics related
|
||||
private World world;
|
||||
private Box2DDebugRenderer b2dr; // TODO, remove
|
||||
private OrthographicCamera b2dCam; // TODO, remove
|
||||
|
||||
// TileMap and Map Renderer
|
||||
private TiledMap tile1;
|
||||
private TiledMap tile2;
|
||||
private TiledMap tileMap;
|
||||
private OrthogonalTiledMapRenderer tmr;
|
||||
private float mapWidth, mapHeight;
|
||||
private Vector2 tileSize;
|
||||
|
||||
// All Actors in level
|
||||
private com.game.actor.Player player;
|
||||
private ArrayList<com.game.actor.Platform> platforms = new ArrayList<com.game.actor.Platform>();
|
||||
|
||||
// Intro window
|
||||
private boolean hasPlayedOnce = false;
|
||||
private boolean isIntro;
|
||||
private Window introWindow;
|
||||
private Image introBackground;
|
||||
private TextButton butProceed;
|
||||
|
||||
// Pause window
|
||||
private boolean isPaused;
|
||||
private Window pauseWindow;
|
||||
private Image pauseBackground;
|
||||
private Image pauseGlow;
|
||||
private TextButton butContinue, butReset, butExit;
|
||||
private Vector2 buttonSize;
|
||||
|
||||
// Endgame window
|
||||
private boolean isEnd;
|
||||
private boolean isSuccess;
|
||||
private Window endgameWindow;
|
||||
private TextButton butNext;
|
||||
private Image failureBackground, successBackground;
|
||||
|
||||
private int levelNumber;
|
||||
|
||||
private Sound jumpSound = Gdx.audio.newSound(Gdx.files.internal("sounds/jumping.mp3"));
|
||||
private Sound colourchangeSound = Gdx.audio.newSound(Gdx.files.internal("sounds/colourchange.mp3"));
|
||||
|
||||
public EndlessMode(App app) {
|
||||
super(app);
|
||||
|
||||
skin = new Skin();
|
||||
world = new World(new Vector2(0, com.game.misc.Vars.GRAVITY.y), true);
|
||||
world.setContactListener(cl);
|
||||
|
||||
b2dr = new Box2DDebugRenderer(); // TODO, remove
|
||||
|
||||
b2dCam = new OrthographicCamera();
|
||||
b2dCam.setToOrtho(false, com.game.misc.Vars.SCREEN_WIDTH / PPM, com.game.misc.Vars.SCREEN_HEIGHT / PPM);
|
||||
|
||||
isIntro = true;
|
||||
isPaused = false;
|
||||
|
||||
buttonSize = new Vector2(50, 50);
|
||||
|
||||
isEnd = false;
|
||||
isSuccess = false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void show() {
|
||||
super.show();
|
||||
|
||||
skin.add("default-font", app.assets.get("badaboom60.ttf", BitmapFont.class));
|
||||
skin.load(Gdx.files.internal("spritesheets/uiskin.json"));
|
||||
|
||||
initLevel();
|
||||
initIntroWindow();
|
||||
initPauseWindow();
|
||||
initEndgameWindow(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(float dt) {
|
||||
if (!isPaused && !isEnd && !isIntro) {
|
||||
world.step(dt, 6, 2);
|
||||
|
||||
com.game.misc.CameraUtils.lerpToTarget(cam, player.getPos().scl(PPM).x, 0);
|
||||
com.game.misc.CameraUtils.lerpToTarget(b2dCam, player.getPos().x, player.getPos().y);
|
||||
b2dCam.zoom = 5f;
|
||||
|
||||
Vector2 start = new Vector2(cam.viewportWidth / 2, cam.viewportHeight / 2);
|
||||
com.game.misc.CameraUtils.setBoundary(cam, start, new Vector2(mapWidth * tileSize.x - start.x * 2, mapHeight * tileSize.y - start.y * 2));
|
||||
|
||||
player.update(dt);
|
||||
}
|
||||
|
||||
if (pauseWindow.isVisible() != isPaused) {
|
||||
pauseWindow.setVisible(isPaused);
|
||||
pauseGlow.setVisible(isPaused);
|
||||
}
|
||||
|
||||
if (endgameWindow.isVisible() != isEnd) {
|
||||
initEndgameWindow(isSuccess);
|
||||
|
||||
endgameWindow.setVisible(isEnd);
|
||||
endgameWindow.setVisible(isEnd);
|
||||
}
|
||||
|
||||
stage.act(dt);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(float dt) {
|
||||
super.render(dt);
|
||||
|
||||
app.sb.setProjectionMatrix(cam.combined);
|
||||
|
||||
if (!isDebug) {
|
||||
app.sb.begin();
|
||||
app.sb.draw(app.assets.get("textures/position0.png", Texture.class), cam.position.x - cam.viewportWidth / 2, cam.position.y - cam.viewportHeight / 2);
|
||||
app.sb.draw(app.assets.get("textures/position1.png", Texture.class), cam.position.x - cam.viewportWidth / 2, cam.position.y - (cam.viewportHeight / 2) + 75);
|
||||
app.sb.draw(app.assets.get("textures/position2.png", Texture.class), cam.position.x - cam.viewportWidth / 2, cam.position.y - (cam.viewportHeight / 2) - 150);
|
||||
player.render(app.sb);
|
||||
app.sb.end();
|
||||
|
||||
tmr.setView(cam);
|
||||
tmr.render();
|
||||
} else {
|
||||
b2dr.render(world, b2dCam.combined);
|
||||
}
|
||||
|
||||
stage.draw();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleInput() {
|
||||
if (Gdx.input.isKeyPressed(Input.Keys.SPACE)) {
|
||||
jumpSound.play();
|
||||
player.jump();
|
||||
}
|
||||
|
||||
if (Gdx.input.isKeyJustPressed(Input.Keys.ESCAPE)) {
|
||||
isPaused = !isPaused;
|
||||
System.out.println("isPaused: " + isPaused);
|
||||
}
|
||||
|
||||
if (Gdx.input.isKeyJustPressed(Input.Keys.NUM_1)) {
|
||||
if (!isPaused) {
|
||||
colourchangeSound.play();
|
||||
player.setCurColour(com.game.actor.Base.Colours.RED);
|
||||
}
|
||||
}
|
||||
|
||||
if (Gdx.input.isKeyJustPressed(Input.Keys.NUM_2)) {
|
||||
if (!isPaused) {
|
||||
colourchangeSound.play();
|
||||
player.setCurColour(com.game.actor.Base.Colours.GREEN);
|
||||
}
|
||||
}
|
||||
|
||||
if (Gdx.input.isKeyJustPressed(Input.Keys.NUM_3)) {
|
||||
if (!isPaused) {
|
||||
colourchangeSound.play();
|
||||
player.setCurColour(com.game.actor.Base.Colours.BLUE);
|
||||
}
|
||||
}
|
||||
if (Gdx.input.isKeyJustPressed(Input.Keys.NUM_4)) {
|
||||
if (!isPaused) {
|
||||
player.setCurColour(com.game.actor.Base.Colours.YELLOW);
|
||||
}
|
||||
}
|
||||
|
||||
if (Gdx.input.isKeyJustPressed(Input.Keys.V)) {
|
||||
isDebug = !isDebug;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dispose() {
|
||||
super.dispose();
|
||||
world.dispose();
|
||||
b2dr.dispose();
|
||||
tileMap.dispose();
|
||||
tmr.dispose();
|
||||
}
|
||||
|
||||
private void initLevel() {
|
||||
tileMap = new TmxMapLoader().load("endlessblocks/endless1.tmx");
|
||||
MapProperties mapProp = tileMap.getProperties();
|
||||
mapWidth = mapProp.get("width", Integer.class);
|
||||
mapHeight = mapProp.get("height", Integer.class);
|
||||
tileSize = new Vector2(mapProp.get("tilewidth", Integer.class), mapProp.get("tileheight", Integer.class));
|
||||
|
||||
|
||||
TiledMapTileLayer platformLayer = (TiledMapTileLayer) tileMap.getLayers().get("PLATFORM");
|
||||
|
||||
MapLayer boundaryLayer = tileMap.getLayers().get("BOUNDARY");
|
||||
PolylineMapObject polylineObj = (PolylineMapObject) boundaryLayer.getObjects().get(0);
|
||||
initBoundary(polylineObj, "BOUNDARY", false);
|
||||
|
||||
tmr = new OrthogonalTiledMapRenderer(tileMap);
|
||||
|
||||
boundaryLayer = tileMap.getLayers().get("FAILBOUNDARY");
|
||||
polylineObj = (PolylineMapObject) boundaryLayer.getObjects().get(0);
|
||||
initBoundary(polylineObj, "FAILBOUNDARY", true);
|
||||
|
||||
MapLayer playerLayer = tileMap.getLayers().get("PLAYER");
|
||||
TextureMapObject playerObj = (TextureMapObject) playerLayer.getObjects().get(0);
|
||||
player = new com.game.actor.Player(world, new Vector2(playerObj.getX(), playerObj.getY()), new Vector2(60, 60), com.game.actor.Base.Colours.NONE);
|
||||
|
||||
for (int row = 0; row < platformLayer.getHeight(); row++) {
|
||||
for (int col = 0; col < platformLayer.getWidth(); col++) {
|
||||
TiledMapTileLayer.Cell cell = platformLayer.getCell(col, row);
|
||||
|
||||
if (cell == null) {
|
||||
continue;
|
||||
}
|
||||
if (cell.getTile() == null) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (cell.getTile().getId() == 1) {
|
||||
platforms.add(new com.game.actor.Platform(world, new Vector2((col + 0.5f) * tileSize.x, (row + 0.5f) * tileSize.y), new Vector2(tileSize.x, tileSize.y), com.game.actor.Base.Colours.RED, com.game.misc.Vars.BIT_RED, com.game.misc.Vars.BIT_PLAYER));
|
||||
} else if (cell.getTile().getId() == 2) {
|
||||
platforms.add(new com.game.actor.Platform(world, new Vector2((col + 0.5f) * tileSize.x, (row + 0.5f) * tileSize.y), new Vector2(tileSize.x, tileSize.y), com.game.actor.Base.Colours.GREEN, com.game.misc.Vars.BIT_GREEN, com.game.misc.Vars.BIT_PLAYER));
|
||||
} else if (cell.getTile().getId() == 3) {
|
||||
platforms.add(new com.game.actor.Platform(world, new Vector2((col + 0.5f) * tileSize.x, (row + 0.5f) * tileSize.y), new Vector2(tileSize.x, tileSize.y), com.game.actor.Base.Colours.BLUE, com.game.misc.Vars.BIT_BLUE, com.game.misc.Vars.BIT_PLAYER));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void initBoundary(PolylineMapObject polylineObj, String userData, boolean isSensor)
|
||||
{
|
||||
Polyline r = polylineObj.getPolyline();
|
||||
BodyDef bd = new BodyDef();
|
||||
bd.type = BodyDef.BodyType.StaticBody;
|
||||
|
||||
Body body = world.createBody(bd);
|
||||
|
||||
float[] v = r.getTransformedVertices();
|
||||
Vector2[] finalV = new Vector2[v.length / 2];
|
||||
|
||||
for(int i = 0; i < v.length / 2; ++i)
|
||||
{
|
||||
finalV[i] = new Vector2();
|
||||
finalV[i].x = v[i * 2] / PPM;
|
||||
finalV[i].y = v[i * 2 + 1] / PPM;
|
||||
}
|
||||
|
||||
Box2dUtils.makeChain(body, finalV, userData, isSensor, Vars.BIT_PRISMATIC, Vars.BIT_PLAYER);
|
||||
}
|
||||
|
||||
private void initIntroWindow() {
|
||||
isPaused = true;
|
||||
introWindow = new Window("Level " + levelNumber, skin);
|
||||
introWindow.getTitleLabel().setPosition(350, 500);
|
||||
introBackground = new Image(app.assets.get("textures/level1Intro.png", Texture.class));
|
||||
introWindow.setBackground(introBackground.getDrawable());
|
||||
introWindow.setSize(700, 500);
|
||||
introWindow.setPosition(280, 50);
|
||||
introWindow.setVisible(true);
|
||||
|
||||
butProceed = new TextButton("PROCEED", skin, "default");
|
||||
butProceed.setPosition((introWindow.getWidth() / 4) * 3, buttonSize.y + 360);
|
||||
butProceed.setSize(buttonSize.x, buttonSize.y);
|
||||
butProceed.addListener(new ClickListener() {
|
||||
@Override
|
||||
public void clicked(com.badlogic.gdx.scenes.scene2d.InputEvent event, float x, float y) {
|
||||
introWindow.setVisible(false);
|
||||
isIntro = false;
|
||||
isPaused = false;
|
||||
}
|
||||
});
|
||||
|
||||
introWindow.addActor(butProceed);
|
||||
|
||||
|
||||
if (!hasPlayedOnce) {
|
||||
stage.addActor(introWindow);
|
||||
hasPlayedOnce = true;
|
||||
}
|
||||
}
|
||||
|
||||
private void initPauseWindow() {
|
||||
pauseWindow = new Window("Paused", skin);
|
||||
pauseWindow.getTitleLabel().setPosition(350, 500);
|
||||
pauseBackground = new Image(app.assets.get("textures/pauseBackground.png", Texture.class));
|
||||
pauseWindow.setBackground(pauseBackground.getDrawable());
|
||||
pauseWindow.setSize(700, 500);
|
||||
pauseWindow.setPosition(280, 50);
|
||||
pauseWindow.setVisible(false);
|
||||
|
||||
butContinue = new TextButton("Continue", skin, "default");
|
||||
butContinue.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 240);
|
||||
butContinue.setSize(buttonSize.x, buttonSize.y);
|
||||
butContinue.addListener(new ClickListener() {
|
||||
@Override
|
||||
public void clicked(com.badlogic.gdx.scenes.scene2d.InputEvent event, float x, float y) {
|
||||
isPaused = false;
|
||||
}
|
||||
});
|
||||
|
||||
butReset = new TextButton("Reset", skin, "default");
|
||||
butReset.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 140);
|
||||
butReset.setSize(buttonSize.x, buttonSize.y);
|
||||
butReset.addListener(new ClickListener() {
|
||||
@Override
|
||||
public void clicked(com.badlogic.gdx.scenes.scene2d.InputEvent event, float x, float y) {
|
||||
app.sm.setPlayScreen(levelNumber);
|
||||
}
|
||||
});
|
||||
|
||||
butExit = new TextButton("Exit", skin, "default");
|
||||
butExit.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 40);
|
||||
butExit.setSize(buttonSize.x, buttonSize.y);
|
||||
butExit.addListener(new ClickListener() {
|
||||
@Override
|
||||
public void clicked(com.badlogic.gdx.scenes.scene2d.InputEvent event, float x, float y) {
|
||||
app.sm.setScreen(ScreenManager.Screen.MENU);
|
||||
}
|
||||
});
|
||||
|
||||
pauseGlow = new Image(app.assets.get("textures/pauseGlow.png", Texture.class));
|
||||
pauseGlow.setVisible(false);
|
||||
|
||||
pauseWindow.addActor(butContinue);
|
||||
pauseWindow.addActor(butReset);
|
||||
pauseWindow.addActor(butExit);
|
||||
|
||||
stage.addActor(pauseGlow);
|
||||
stage.addActor(pauseWindow);
|
||||
}
|
||||
|
||||
private void initEndgameWindow(boolean success) {
|
||||
isPaused = true;
|
||||
if (success) {
|
||||
endgameWindow = new Window("Success", skin);
|
||||
successBackground = new Image(app.assets.get("textures/successBackground.png", Texture.class));
|
||||
endgameWindow.setBackground(successBackground.getDrawable());
|
||||
|
||||
butNext = new TextButton("Next", skin, "default");
|
||||
butNext.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 240);
|
||||
butNext.setSize(buttonSize.x, buttonSize.y);
|
||||
butNext.addListener(new ClickListener() {
|
||||
@Override
|
||||
public void clicked(com.badlogic.gdx.scenes.scene2d.InputEvent event, float x, float y) {
|
||||
app.sm.setPlayScreen(levelNumber + 1);
|
||||
}
|
||||
});
|
||||
endgameWindow.addActor(butNext);
|
||||
} else {
|
||||
endgameWindow = new Window("Failure", skin);
|
||||
failureBackground = new Image(app.assets.get("textures/failureBackground.png", Texture.class));
|
||||
endgameWindow.setBackground(failureBackground.getDrawable());
|
||||
}
|
||||
endgameWindow.getTitleLabel().setPosition(350, 500);
|
||||
endgameWindow.setSize(700, 500);
|
||||
endgameWindow.setPosition(280, 50);
|
||||
endgameWindow.setVisible(false);
|
||||
|
||||
endgameWindow.addActor(butReset);
|
||||
endgameWindow.addActor(butExit);
|
||||
|
||||
stage.addActor(pauseGlow);
|
||||
stage.addActor(endgameWindow);
|
||||
}
|
||||
|
||||
// Accessors
|
||||
|
||||
// Mutators
|
||||
|
||||
// Contact Listener
|
||||
ContactListener cl = new ContactListener() {
|
||||
@Override
|
||||
public void beginContact(Contact contact) {
|
||||
Fixture fa = contact.getFixtureA();
|
||||
Fixture fb = contact.getFixtureB();
|
||||
|
||||
if (fa == null || fb == null) {
|
||||
return;
|
||||
}
|
||||
if (fa.getUserData() == null || fb.getUserData() == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (fa.getUserData().equals("PLAYER") && fb.getUserData().equals("PLATFORM") ||
|
||||
fb.getUserData().equals("PLAYER") && fa.getUserData().equals("PLATFORM")) {
|
||||
if (player.getCurAction() != com.game.actor.Player.Action.IDLE) {
|
||||
player.setAction(com.game.actor.Player.Action.IDLE);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (fa.getUserData().equals("PLAYER") && fb.getUserData().equals("PASSBOUNDARY") ||
|
||||
fb.getUserData().equals("PLAYER") && fa.getUserData().equals("PASSBOUNDARY")) {
|
||||
isEnd = true;
|
||||
isSuccess = true;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (fa.getUserData().equals("PLAYER") && fb.getUserData().equals("FAILBOUNDARY") ||
|
||||
fb.getUserData().equals("PLAYER") && fa.getUserData().equals("FAILBOUNDARY")) {
|
||||
isEnd = true;
|
||||
isSuccess = false;
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void endContact(Contact contact) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void preSolve(Contact contact, Manifold oldManifold) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void postSolve(Contact contact, ContactImpulse impulse) {
|
||||
|
||||
}
|
||||
};
|
||||
}
|
|
@ -50,7 +50,7 @@ public class Leaderboard extends AbstractScreen {
|
|||
super.render(dt);
|
||||
|
||||
app.sb.begin();
|
||||
app.sb.draw(app.assets.get("textures/leaderboardBackground.jpg", Texture.class), 0, 0);
|
||||
app.sb.draw(app.assets.get("textures/backgrounds/leaderboardBackground.jpg", Texture.class), 0, 0);
|
||||
app.sb.end();
|
||||
|
||||
stage.draw();
|
||||
|
|
|
@ -54,7 +54,7 @@ public class LevelSelect extends AbstractScreen {
|
|||
super.render(dt);
|
||||
|
||||
app.sb.begin();
|
||||
app.sb.draw(app.assets.get("textures/levelSelectBackground.jpg", Texture.class), 0, 0);
|
||||
app.sb.draw(app.assets.get("textures/backgrounds/levelSelectBackground.jpg", Texture.class), 0, 0);
|
||||
app.sb.end();
|
||||
|
||||
stage.draw();
|
||||
|
@ -106,7 +106,7 @@ public class LevelSelect extends AbstractScreen {
|
|||
butEndless.addListener(new ClickListener() {
|
||||
@Override
|
||||
public void clicked (com.badlogic.gdx.scenes.scene2d.InputEvent event, float x, float y) {
|
||||
app.sm.setScreen(ScreenManager.Screen.ENDLESSMODE);
|
||||
//app.sm.setScreen(ScreenManager.Screen.ENDLESSMODE); TODO, finish this ;)
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -39,10 +39,10 @@ public class Loading extends AbstractScreen {
|
|||
|
||||
loadFont("fonts/badaboom.TTF", 60, Color.BLACK);
|
||||
|
||||
app.assets.load("textures/player_red.png", Texture.class);
|
||||
app.assets.load("textures/player/player_red.png", Texture.class);
|
||||
app.assets.finishLoading(); // make sure player texture and font is loaded
|
||||
|
||||
logo = app.assets.get("textures/player_red.png", Texture.class);
|
||||
logo = app.assets.get("textures/player/player_red.png", Texture.class);
|
||||
loadingRect = new Rectangle(stage.getWidth() / 6f, (stage.getHeight() / 2f - 25), 0, 25);
|
||||
|
||||
assetsToLoad();
|
||||
|
@ -97,25 +97,30 @@ public class Loading extends AbstractScreen {
|
|||
loadFont("fonts/badaboom.TTF", 45, Color.BLACK);
|
||||
|
||||
// Textures
|
||||
app.assets.load("textures/badlogic.jpg", Texture.class);
|
||||
app.assets.load("textures/menuBackground.jpg", Texture.class);
|
||||
app.assets.load("textures/leaderboardBackground.jpg", Texture.class);
|
||||
app.assets.load("textures/levelSelectBackground.jpg", Texture.class);
|
||||
app.assets.load("textures/pauseBackground.png", Texture.class);
|
||||
app.assets.load("textures/failureBackground.png", Texture.class);
|
||||
app.assets.load("textures/successBackground.png", Texture.class);
|
||||
app.assets.load("textures/pauseGlow.png", Texture.class);
|
||||
app.assets.load("textures/position0.png", Texture.class);
|
||||
app.assets.load("textures/position1.png", Texture.class);
|
||||
app.assets.load("textures/position2.png", Texture.class);
|
||||
app.assets.load("textures/Spikes.png", Texture.class);
|
||||
app.assets.load("textures/backgrounds/menuBackground.jpg", Texture.class);
|
||||
app.assets.load("textures/backgrounds/leaderboardBackground.jpg", Texture.class);
|
||||
app.assets.load("textures/backgrounds/levelSelectBackground.jpg", Texture.class);
|
||||
app.assets.load("textures/backgrounds/pauseBackground.png", Texture.class);
|
||||
app.assets.load("textures/backgrounds/failureBackground.png", Texture.class);
|
||||
app.assets.load("textures/backgrounds/successBackground.png", Texture.class);
|
||||
app.assets.load("textures/backgrounds/position0.png", Texture.class);
|
||||
app.assets.load("textures/backgrounds/position1.png", Texture.class);
|
||||
app.assets.load("textures/backgrounds/position2.png", Texture.class);
|
||||
|
||||
for(int i = 1; i <= 10; i++)
|
||||
{
|
||||
app.assets.load("textures/level" + i + "Intro.png", Texture.class);
|
||||
app.assets.load("textures/intros/level" + i + "Intro.png", Texture.class);
|
||||
}
|
||||
app.assets.load("textures/player_green.png", Texture.class);
|
||||
app.assets.load("textures/player_blue.png", Texture.class);
|
||||
app.assets.load("textures/player_yellow.png", Texture.class);
|
||||
app.assets.load("textures/player/player_green.png", Texture.class);
|
||||
app.assets.load("textures/player/player_blue.png", Texture.class);
|
||||
app.assets.load("textures/player/player_yellow.png", Texture.class);
|
||||
|
||||
app.assets.load("textures/enemies/redAlive.png", Texture.class);
|
||||
app.assets.load("textures/enemies/redDead.png", Texture.class);
|
||||
app.assets.load("textures/enemies/greenAlive.png", Texture.class);
|
||||
app.assets.load("textures/enemies/greenDead.png", Texture.class);
|
||||
app.assets.load("textures/enemies/blueAlive.png", Texture.class);
|
||||
app.assets.load("textures/enemies/blueDead.png", Texture.class);
|
||||
|
||||
// Spritesheets
|
||||
app.assets.load("spritesheets/platformSet.png", Texture.class);
|
||||
|
|
|
@ -61,7 +61,7 @@ public class Menu extends AbstractScreen {
|
|||
super.render(dt);
|
||||
|
||||
app.sb.begin();
|
||||
app.sb.draw(app.assets.get("textures/menuBackground.jpg", Texture.class), 0, 0);
|
||||
app.sb.draw(app.assets.get("textures/backgrounds/menuBackground.jpg", Texture.class), 0, 0);
|
||||
app.sb.end();
|
||||
|
||||
stage.draw();
|
||||
|
|
|
@ -2,12 +2,12 @@ package com.game.screens;
|
|||
|
||||
import com.badlogic.gdx.Gdx;
|
||||
import com.badlogic.gdx.Input;
|
||||
import com.badlogic.gdx.audio.Sound;
|
||||
import com.badlogic.gdx.graphics.OrthographicCamera;
|
||||
import com.badlogic.gdx.graphics.Texture;
|
||||
import com.badlogic.gdx.graphics.g2d.BitmapFont;
|
||||
import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
|
||||
import com.badlogic.gdx.maps.MapLayer;
|
||||
import com.badlogic.gdx.maps.MapObjects;
|
||||
import com.badlogic.gdx.maps.MapProperties;
|
||||
import com.badlogic.gdx.maps.objects.PolylineMapObject;
|
||||
import com.badlogic.gdx.maps.objects.TextureMapObject;
|
||||
|
@ -20,20 +20,26 @@ import com.badlogic.gdx.math.Polyline;
|
|||
import com.badlogic.gdx.math.Rectangle;
|
||||
import com.badlogic.gdx.math.Vector2;
|
||||
import com.badlogic.gdx.physics.box2d.*;
|
||||
import com.badlogic.gdx.scenes.scene2d.ui.Image;
|
||||
import com.badlogic.gdx.scenes.scene2d.ui.Skin;
|
||||
import com.badlogic.gdx.scenes.scene2d.utils.ClickListener;
|
||||
import com.game.actor.Base;
|
||||
import com.game.actor.Platform;
|
||||
import com.game.actor.Enemy;
|
||||
import com.game.actor.object.Platform;
|
||||
import com.game.actor.Player;
|
||||
import com.game.App;
|
||||
import com.game.actor.Spike;
|
||||
import com.game.managers.ScreenManager;
|
||||
import com.game.misc.*;
|
||||
import com.game.misc.myWindow;
|
||||
import com.game.misc.utils.myButton;
|
||||
import com.game.misc.utils.myWindow;
|
||||
import com.game.misc.utils.Box2dUtils;
|
||||
import com.game.misc.utils.CameraUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
|
||||
import static com.game.misc.Vars.BIT_ALL;
|
||||
import static com.game.misc.Vars.BIT_PLAYER;
|
||||
import static com.game.misc.Vars.PPM;
|
||||
|
||||
/**
|
||||
|
@ -41,30 +47,6 @@ import static com.game.misc.Vars.PPM;
|
|||
*/
|
||||
public class Play extends AbstractScreen {
|
||||
|
||||
private Skin skin;
|
||||
|
||||
// TODO, remove
|
||||
public boolean isDebug = false;
|
||||
|
||||
// Physics related
|
||||
private World world;
|
||||
private Box2DDebugRenderer b2dr; // TODO, remove
|
||||
private OrthographicCamera b2dCam; // TODO, remove
|
||||
|
||||
// TileMap and Map Renderer
|
||||
private TiledMap tileMap;
|
||||
private OrthogonalTiledMapRenderer tmr;
|
||||
private float mapWidth, mapHeight;
|
||||
private Vector2 tileSize;
|
||||
|
||||
// All Actors in level
|
||||
private Player player;
|
||||
private ArrayList<Platform> platforms = new ArrayList<Platform>();
|
||||
private ArrayList<Spike> spikes = new ArrayList<Spike>();
|
||||
|
||||
// Windows
|
||||
private HashMap<GameState, myWindow> windows = new HashMap<GameState, myWindow>();
|
||||
|
||||
private GameState curGameState;
|
||||
public enum GameState
|
||||
{
|
||||
|
@ -75,26 +57,44 @@ public class Play extends AbstractScreen {
|
|||
FAILURE,
|
||||
}
|
||||
|
||||
// Progress bar
|
||||
|
||||
// Physics related
|
||||
private World world;
|
||||
public boolean isDebug = false;
|
||||
private Box2DDebugRenderer b2dr; // TODO, remove
|
||||
private OrthographicCamera b2dCam; // TODO, remove
|
||||
|
||||
// TileMap and Map Renderer
|
||||
private TiledMap tileMap;
|
||||
private OrthogonalTiledMapRenderer tmr;
|
||||
private float mapWidth, mapHeight;
|
||||
private Vector2 tileSize;
|
||||
private int levelNumber;
|
||||
|
||||
// All Actors in level
|
||||
private Player player;
|
||||
private ArrayList<Platform> platforms = new ArrayList<Platform>();
|
||||
private ArrayList<Enemy> enemies = new ArrayList<Enemy>();
|
||||
|
||||
// Windows
|
||||
private Skin skin;
|
||||
private HashMap<GameState, myWindow> windows = new HashMap<GameState, myWindow>();
|
||||
|
||||
// HUD
|
||||
private Rectangle progressRect;
|
||||
private Texture progressTexture;
|
||||
private float percent;
|
||||
private float progressX;
|
||||
|
||||
private int levelNumber;
|
||||
private Image uiRedImage, uiGreenImage, uiBlueImage;
|
||||
|
||||
public Play(App app, int levelNumber) {
|
||||
super(app);
|
||||
|
||||
skin = new Skin();
|
||||
|
||||
this.levelNumber = levelNumber;
|
||||
|
||||
skin = new Skin();
|
||||
world = new World(new Vector2(0, Vars.GRAVITY.y), true);
|
||||
world.setContactListener(cl);
|
||||
|
||||
b2dr = new Box2DDebugRenderer(); // TODO, remove
|
||||
|
||||
b2dCam = new OrthographicCamera();
|
||||
b2dCam.setToOrtho(false, Vars.SCREEN_WIDTH / PPM, Vars.SCREEN_HEIGHT / PPM);
|
||||
}
|
||||
|
@ -108,12 +108,21 @@ public class Play extends AbstractScreen {
|
|||
skin.load(Gdx.files.internal("spritesheets/uiskin.json"));
|
||||
|
||||
progressRect = new Rectangle(stage.getWidth() - 550, (stage.getHeight() - 50), 0, 25);
|
||||
progressTexture = app.assets.get("textures/player_red.png", Texture.class);
|
||||
progressTexture = app.assets.get("textures/player/player_red.png", Texture.class);
|
||||
progressX = progressRect.x;
|
||||
|
||||
uiRedImage = new Image(app.assets.get("textures/player/player_red.png", Texture.class));
|
||||
uiRedImage.setPosition(84, (stage.getHeight() - 70));
|
||||
uiGreenImage = new Image(app.assets.get("textures/player/player_green.png", Texture.class));
|
||||
uiGreenImage.setPosition(148, (stage.getHeight() - 70));
|
||||
uiBlueImage = new Image(app.assets.get("textures/player/player_blue.png", Texture.class));
|
||||
uiBlueImage.setPosition(212, (stage.getHeight() - 70));
|
||||
uiRedImage.setSize(64, 64);
|
||||
uiGreenImage.setSize(32, 32);
|
||||
uiBlueImage.setSize(32, 32);
|
||||
|
||||
initLevel();
|
||||
System.out.println("Finished initLevel");
|
||||
initWindows();
|
||||
System.out.println("Finished initWindows");
|
||||
setCurGameState(GameState.INTRO);
|
||||
}
|
||||
|
||||
|
@ -122,11 +131,10 @@ public class Play extends AbstractScreen {
|
|||
|
||||
if(curGameState == GameState.PLAYING)
|
||||
{
|
||||
world.step(dt, 6, 2);
|
||||
world.step(Vars.STEP, 6, 2);
|
||||
|
||||
CameraUtils.lerpToTarget(cam, player.getPos().scl(PPM).x, 0);
|
||||
CameraUtils.lerpToTarget(b2dCam, player.getPos().x, player.getPos().y);
|
||||
b2dCam.zoom = 5f;
|
||||
|
||||
Vector2 start = new Vector2(cam.viewportWidth / 2, cam.viewportHeight / 2);
|
||||
CameraUtils.setBoundary(cam, start, new Vector2(mapWidth * tileSize.x - start.x * 2, mapHeight * tileSize.y - start.y * 2));
|
||||
|
@ -149,10 +157,15 @@ public class Play extends AbstractScreen {
|
|||
if(!isDebug)
|
||||
{
|
||||
app.sb.begin();
|
||||
app.sb.draw(app.assets.get("textures/position0.png", Texture.class), (cam.position.x - cam.viewportWidth / 2), cam.position.y - cam.viewportHeight / 2);
|
||||
app.sb.draw(app.assets.get("textures/position1.png", Texture.class), (cam.position.x - cam.viewportWidth / 2) * .1f, cam.position.y - (cam.viewportHeight / 2) + 75);
|
||||
app.sb.draw(app.assets.get("textures/position2.png", Texture.class), (cam.position.x - cam.viewportWidth / 2) * .01f, cam.position.y - (cam.viewportHeight / 2) - 150);
|
||||
app.sb.draw(app.assets.get("textures/backgrounds/position0.png", Texture.class), (cam.position.x - cam.viewportWidth / 2), cam.position.y - cam.viewportHeight / 2);
|
||||
app.sb.draw(app.assets.get("textures/backgrounds/position1.png", Texture.class), (cam.position.x - cam.viewportWidth / 2), cam.position.y - (cam.viewportHeight / 2) + 75);
|
||||
app.sb.draw(app.assets.get("textures/backgrounds/position2.png", Texture.class), (cam.position.x - cam.viewportWidth / 2), cam.position.y - (cam.viewportHeight / 2) - 150);
|
||||
player.render(app.sb);
|
||||
|
||||
for(Enemy e : enemies)
|
||||
{
|
||||
e.render(app.sb);
|
||||
}
|
||||
app.sb.end();
|
||||
|
||||
tmr.setView(cam);
|
||||
|
@ -169,7 +182,9 @@ public class Play extends AbstractScreen {
|
|||
app.sr.end();
|
||||
|
||||
app.sb.begin();
|
||||
app.sb.draw(app.assets.get("spritesheets/platformSet.png", Texture.class), 100, (stage.getHeight() - 50));
|
||||
uiRedImage.draw(app.sb, 1f);
|
||||
uiGreenImage.draw(app.sb, 1f);
|
||||
uiBlueImage.draw(app.sb, 1f);
|
||||
app.sb.draw(progressTexture, progressX, progressRect.y, 30, 30);
|
||||
app.sb.end();
|
||||
}
|
||||
|
@ -191,28 +206,9 @@ public class Play extends AbstractScreen {
|
|||
player.jump();
|
||||
}
|
||||
|
||||
if(Gdx.input.isKeyJustPressed(Input.Keys.NUM_1))
|
||||
{
|
||||
player.setCurColour(Base.Colours.RED);
|
||||
progressTexture = app.assets.get("textures/player_red.png", Texture.class);
|
||||
}
|
||||
|
||||
if(Gdx.input.isKeyJustPressed(Input.Keys.NUM_2))
|
||||
{
|
||||
player.setCurColour(Base.Colours.GREEN);
|
||||
progressTexture = app.assets.get("textures/player_green.png", Texture.class);
|
||||
}
|
||||
|
||||
if(Gdx.input.isKeyJustPressed(Input.Keys.NUM_3)) {
|
||||
player.setCurColour(Base.Colours.BLUE);
|
||||
progressTexture = app.assets.get("textures/player_blue.png", Texture.class);
|
||||
}
|
||||
|
||||
if(Gdx.input.isKeyJustPressed(Input.Keys.NUM_4))
|
||||
{
|
||||
player.setCurColour(Base.Colours.YELLOW);
|
||||
progressTexture = app.assets.get("textures/player_yellow.png", Texture.class);
|
||||
}
|
||||
if(Gdx.input.isKeyJustPressed(Input.Keys.NUM_1)) { changeColour(Base.Colours.RED); }
|
||||
if(Gdx.input.isKeyJustPressed(Input.Keys.NUM_2)) { changeColour(Base.Colours.GREEN); }
|
||||
if(Gdx.input.isKeyJustPressed(Input.Keys.NUM_3)) { changeColour(Base.Colours.BLUE); }
|
||||
}
|
||||
|
||||
if(Gdx.input.isKeyJustPressed(Input.Keys.ESCAPE))
|
||||
|
@ -238,6 +234,32 @@ public class Play extends AbstractScreen {
|
|||
tmr.dispose();
|
||||
}
|
||||
|
||||
private void changeColour(Base.Colours curColour)
|
||||
{
|
||||
player.setCurColour(curColour);
|
||||
switch(curColour)
|
||||
{
|
||||
case RED:
|
||||
progressTexture = app.assets.get("textures/player/player_red.png", Texture.class);
|
||||
uiRedImage.setSize(64, 64);
|
||||
uiGreenImage.setSize(32, 32);
|
||||
uiBlueImage.setSize(32, 32);
|
||||
break;
|
||||
case GREEN:
|
||||
progressTexture = app.assets.get("textures/player/player_green.png", Texture.class);
|
||||
uiGreenImage.setSize(64, 64);
|
||||
uiRedImage.setSize(32, 32);
|
||||
uiBlueImage.setSize(32, 32);
|
||||
break;
|
||||
case BLUE:
|
||||
progressTexture = app.assets.get("textures/player/player_blue.png", Texture.class);
|
||||
uiBlueImage.setSize(64, 64);
|
||||
uiGreenImage.setSize(32, 32);
|
||||
uiRedImage.setSize(32, 32);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void initLevel()
|
||||
{
|
||||
tileMap = new TmxMapLoader().load("levels/level" + levelNumber + ".tmx");
|
||||
|
@ -250,7 +272,6 @@ public class Play extends AbstractScreen {
|
|||
|
||||
|
||||
TiledMapTileLayer platformLayer = (TiledMapTileLayer)tileMap.getLayers().get("PLATFORM");
|
||||
TiledMapTileLayer spikeLayer = (TiledMapTileLayer)tileMap.getLayers().get("SPIKES");
|
||||
|
||||
MapLayer boundaryLayer = tileMap.getLayers().get("BOUNDARY");
|
||||
PolylineMapObject polylineObj = (PolylineMapObject)boundaryLayer.getObjects().get(0);
|
||||
|
@ -266,7 +287,20 @@ public class Play extends AbstractScreen {
|
|||
|
||||
MapLayer playerLayer = tileMap.getLayers().get("PLAYER");
|
||||
TextureMapObject playerObj = (TextureMapObject)playerLayer.getObjects().get(0);
|
||||
player = new Player(world, new Vector2(playerObj.getX(), playerObj.getY()), new Vector2(60, 60), Base.Colours.NONE);
|
||||
player = new Player(world, new Vector2(playerObj.getX(), playerObj.getY()), new Vector2(60, 60), Base.Colours.WHITE);
|
||||
|
||||
MapLayer enemyLayer = tileMap.getLayers().get("ENEMIES");
|
||||
MapObjects enemyObjs = enemyLayer.getObjects();
|
||||
|
||||
for(int i = 0; i < enemyObjs.getCount(); i++)
|
||||
{
|
||||
TextureMapObject tmo = (TextureMapObject)enemyObjs.get(i);
|
||||
MapProperties mp = tmo.getProperties();
|
||||
|
||||
if(mp.get("Colour").equals("RED")) { enemies.add(new Enemy(world, new Vector2(tmo.getX(), tmo.getY()), new Vector2(64, 64), Base.Colours.RED, BIT_ALL, BIT_PLAYER)); }
|
||||
else if(mp.get("Colour").equals("GREEN")) { enemies.add(new Enemy(world, new Vector2(tmo.getX(), tmo.getY()), new Vector2(64, 64), Base.Colours.GREEN, BIT_ALL, BIT_PLAYER)); }
|
||||
else if(mp.get("Colour").equals("BLUE")) { enemies.add(new Enemy(world, new Vector2(tmo.getX() + 32, tmo.getY() + 32), new Vector2(64, 64), Base.Colours.GREEN, BIT_ALL, BIT_PLAYER)); }
|
||||
}
|
||||
|
||||
for(int row = 0; row < platformLayer.getHeight(); row++)
|
||||
{
|
||||
|
@ -280,21 +314,9 @@ public class Play extends AbstractScreen {
|
|||
if(cell.getTile().getId() == 1) { platforms.add(new Platform(world, new Vector2((col + 0.5f) * tileSize.x, (row + 0.5f) * tileSize.y), new Vector2(tileSize.x, tileSize.y), Base.Colours.RED, Vars.BIT_RED, Vars.BIT_PLAYER)); }
|
||||
else if(cell.getTile().getId() == 2) { platforms.add(new Platform(world, new Vector2((col + 0.5f) * tileSize.x, (row + 0.5f) * tileSize.y), new Vector2(tileSize.x, tileSize.y), Base.Colours.GREEN, Vars.BIT_GREEN, Vars.BIT_PLAYER)); }
|
||||
else if(cell.getTile().getId() == 3) { platforms.add(new Platform(world, new Vector2((col + 0.5f) * tileSize.x, (row + 0.5f) * tileSize.y), new Vector2(tileSize.x, tileSize.y), Base.Colours.BLUE, Vars.BIT_BLUE, Vars.BIT_PLAYER)); }
|
||||
else if(cell.getTile().getId() == 4) { platforms.add(new Platform(world, new Vector2((col + 0.5f) * tileSize.x, (row + 0.5f) * tileSize.y), new Vector2(tileSize.x, tileSize.y), Base.Colours.WHITE, Vars.BIT_ALL, Vars.BIT_PLAYER)); }
|
||||
}
|
||||
}
|
||||
|
||||
/*for(int row = 0; row < spikeLayer.getHeight(); row++)
|
||||
{
|
||||
for(int col = 0; col < spikeLayer.getWidth(); col++)
|
||||
{
|
||||
TiledMapTileLayer.Cell cell = spikeLayer.getCell(col, row);
|
||||
|
||||
if(cell == null) { continue; }
|
||||
if(cell.getTile() == null) { continue; }
|
||||
|
||||
if(cell.getTile().getId() == 0) { spikes.add(new Spike(world, new Vector2((col + 0.5f) * tileSize.x, (row + 0.5f) * tileSize.y), new Vector2(tileSize.x, tileSize.y), Base.Colours.RED, Vars.BIT_RED)); }
|
||||
}
|
||||
}*/
|
||||
}
|
||||
|
||||
private void initBoundary(PolylineMapObject polylineObj, String userData, boolean isSensor)
|
||||
|
@ -315,7 +337,7 @@ public class Play extends AbstractScreen {
|
|||
finalV[i].y = v[i * 2 + 1] / PPM;
|
||||
}
|
||||
|
||||
Box2dUtils.makeChain(body, finalV, userData, isSensor, Vars.BIT_PRISMATIC, Vars.BIT_PLAYER);
|
||||
Box2dUtils.makeChain(body, finalV, userData, isSensor, Vars.BIT_ALL, Vars.BIT_PLAYER);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -323,33 +345,18 @@ public class Play extends AbstractScreen {
|
|||
*/
|
||||
private void initWindows()
|
||||
{
|
||||
<<<<<<< HEAD
|
||||
Vector2 winPos = new Vector2(280, 50);
|
||||
Vector2 winSize = new Vector2(700, 500);
|
||||
|
||||
windows.put(GameState.PLAYING, new myWindow("", new Vector2(0, 0), new Vector2(0, 0), skin, app.assets.get("textures/player_red.png", Texture.class)));
|
||||
windows.put(GameState.INTRO, new myWindow("Level " + levelNumber, winPos, winSize, skin, app.assets.get("textures/level" + levelNumber + "Intro.png", Texture.class)));
|
||||
windows.put(GameState.PAUSED, new myWindow("", winPos, winSize, skin, app.assets.get("textures/pauseBackground.png", Texture.class)));
|
||||
windows.put(GameState.SUCCESS, new myWindow("", winPos, winSize, skin, app.assets.get("textures/successBackground.png", Texture.class)));
|
||||
windows.put(GameState.FAILURE, new myWindow("", winPos, winSize, skin, app.assets.get("textures/failureBackground.png", Texture.class)));
|
||||
windows.put(GameState.PLAYING, new myWindow("", new Vector2(0, 0), new Vector2(0, 0), skin, app.assets.get("textures/player/player_red.png", Texture.class)));
|
||||
windows.put(GameState.INTRO, new myWindow("Level " + levelNumber, winPos, winSize, skin, app.assets.get("textures/intros/level" + levelNumber + "Intro.png", Texture.class)));
|
||||
windows.put(GameState.PAUSED, new myWindow("", winPos, winSize, skin, app.assets.get("textures/backgrounds/pauseBackground.png", Texture.class)));
|
||||
windows.put(GameState.SUCCESS, new myWindow("", winPos, winSize, skin, app.assets.get("textures/backgrounds/successBackground.png", Texture.class)));
|
||||
windows.put(GameState.FAILURE, new myWindow("", winPos, winSize, skin, app.assets.get("textures/backgrounds/failureBackground.png", Texture.class)));
|
||||
|
||||
// Init INTRO buttons
|
||||
myWindow tempWindow = windows.get(GameState.INTRO);
|
||||
tempWindow.addButton(new myButton("Continue", new Vector2((tempWindow.getX() * 2) - 5, tempWindow.getHeight() - 50), skin, "default", new ClickListener() {
|
||||
=======
|
||||
introWindow = new Window("Level "+levelNumber, skin);
|
||||
introWindow.getTitleLabel().setPosition(350, 500);
|
||||
introBackground = new Image(app.assets.get("textures/level" + levelNumber + "Intro.png", Texture.class));
|
||||
introWindow.setBackground(introBackground.getDrawable());
|
||||
introWindow.setSize(700, 500);
|
||||
introWindow.setPosition(280, 50);
|
||||
introWindow.setVisible(true);
|
||||
|
||||
TextButton butProceed = new TextButton("PROCEED", skin, "default");
|
||||
butProceed.setPosition((introWindow.getWidth() / 4) * 3, buttonSize.y + 360);
|
||||
butProceed.setSize(buttonSize.x, buttonSize.y);
|
||||
butProceed.addListener(new ClickListener() {
|
||||
>>>>>>> origin/master
|
||||
@Override
|
||||
public void clicked(com.badlogic.gdx.scenes.scene2d.InputEvent event, float x, float y) {
|
||||
setCurGameState(GameState.PLAYING);
|
||||
|
@ -452,12 +459,17 @@ public class Play extends AbstractScreen {
|
|||
}
|
||||
}
|
||||
|
||||
if(fa.getUserData().equals("PLAYER") && fb.getUserData().equals("SPIKES") ||
|
||||
fb.getUserData().equals("PLAYER") && fa.getUserData().equals("SPIKES"))
|
||||
if(fa.getUserData().equals("PLAYER") && fb.getUserData().equals("ENEMY") ||
|
||||
fb.getUserData().equals("PLAYER") && fa.getUserData().equals("ENEMY"))
|
||||
{
|
||||
setCurGameState(GameState.FAILURE);
|
||||
System.out.println("FAILURE - TOUCHED SPIKE");
|
||||
return;
|
||||
for(Enemy e : enemies)
|
||||
{
|
||||
if(e.getFixtures().contains(fa, false) || e.getFixtures().contains(fb, false))
|
||||
{
|
||||
e.setAlive(false);
|
||||
e.setCurColour(e.getCurColour());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(fa.getUserData().equals("PLAYER") && fb.getUserData().equals("PASSBOUNDARY") ||
|
||||
|
|
|
@ -35,12 +35,11 @@ public class ScreenManager {
|
|||
screens.put(Screen.MENU, new Menu(app));
|
||||
screens.put(Screen.LEADERBOARD, new Leaderboard(app));
|
||||
screens.put(Screen.LEVELSELECT, new LevelSelect(app));
|
||||
screens.put(Screen.ENDLESSMODE, new EndlessMode(app));
|
||||
//screens.put(Screen.ENDLESSMODE, new EndlessMode(app));
|
||||
}
|
||||
|
||||
public void setPlayScreen(int levelNumber)
|
||||
{
|
||||
|
||||
// remove loaded level
|
||||
if(screens.get(Screen.PLAY) != null)
|
||||
{
|
||||
|
|