Compare commits

...

10 Commits

73 changed files with 1043 additions and 369 deletions

3
.gitignore vendored
View File

@@ -36,3 +36,6 @@ JGame2D
### Local Game Settings ###
gamedata
/system.txt

BIN
MapEditor.jar Normal file

Binary file not shown.

50
assets/maps/dungeon01.map Normal file
View File

@@ -0,0 +1,50 @@
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 36 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 17 17 32 32 32 32 32 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 17 32 32 32 32 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 17 17 17 17 32 32 17 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 17 17 17 17 17 17 17 32 32 32 17 17 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 32 32 32 17 17 17 17 17 17 17 32 32 32 32 32 17 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 17 17 17 17 17 17 32 32 32 17 17 17 17 17 17 32 32 32 32 32 32 32 17 17 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 17 17 17 17 32 32 32 32 32 32 32 32 32 17 17 17 17 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 17 17 17 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 17 17 17 17 17 32 32 17 17 17 32 32 17 32 32 32 32 32 32 32 17 17 17 17 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 17 17 17 32 17 17 17 32 32 17 32 32 32 32 17 32 32 32 32 32 32 17 17 17 17 17 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 17 17 32 32 32 32 32 32 32 32 17 32 32 32 17 32 32 17 17 17 17 17 32 32 17 17 17 32 32 17 17 17 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 17 17 17 17 17 32 32 32 32 32 17 32 32 32 17 32 32 17 17 17 17 17 32 17 17 32 32 32 32 32 17 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 17 17 17 17 17 32 32 32 32 32 17 32 32 32 17 32 32 17 17 17 17 17 17 17 32 32 32 32 32 32 17 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 17 17 17 17 17 32 32 32 32 32 17 32 32 32 17 32 32 32 17 17 17 17 32 32 32 32 32 32 32 32 17 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 17 17 17 17 17 32 32 32 32 32 17 32 32 32 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 17 32 32 32 32 32 32 32 17 32 17 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 17 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 17 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 17 32 32 32 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 17 32 32 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 17 17 32 32 32 32 32 32 32 17 32 32 32 32 32 17 17 17 32 32 32 32 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 17 17 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 17 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 17 17 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 17 17 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 17 17 32 32 32 32 32 32 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 17 17 32 32 32 32 32 32 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 17 32 32 32 32 32 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 32 32 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 17 32 32 32 32 32 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 32 32 32 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 17 17 17 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 17 37 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 32 32 32 17 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

50
assets/maps/dungeon02.map Normal file
View File

@@ -0,0 +1,50 @@
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 17 17 17 17 17 17 17 17 17 17 17 17 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 17 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 17 37 17 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

View File

@@ -0,0 +1,50 @@
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
27 18 27 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 2 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 21 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 5 14 14 14 22 30 30 30 30 30 22 14 14 14 14 14 14 22 14 14 30 14 14 22 14 11 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 5 14 25 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 26 14 11 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 27 18 5 22 10 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 15 30 11 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 5 14 10 6 32 1 1 1 1 1 1 4 6 32 1 1 1 1 1 1 1 4 6 15 14 11 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 5 30 10 6 15 31 3 3 3 3 23 10 6 15 31 3 3 3 3 3 23 10 6 15 22 11 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 27 18 5 30 10 6 15 11 18 18 18 18 5 10 6 15 11 18 18 18 18 18 5 10 6 15 14 11 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 5 14 10 6 15 34 9 9 9 9 17 10 6 15 34 9 9 9 9 9 17 10 6 15 14 11 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 27 5 22 10 6 8 16 16 16 16 16 16 12 6 8 16 16 16 16 16 16 16 12 6 15 14 11 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 5 14 10 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 15 14 11 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
27 18 18 5 14 10 6 32 1 1 1 1 1 1 4 6 32 1 1 1 1 1 1 1 4 6 15 22 11 18 18 18 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18
18 27 18 5 30 10 6 15 31 3 3 3 3 23 10 6 15 31 3 3 3 3 3 23 10 6 15 30 11 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 5 14 10 6 15 11 18 18 18 18 5 10 6 15 11 18 18 18 18 18 5 10 6 15 14 11 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 5 14 10 6 15 34 9 9 9 9 17 10 6 15 34 9 9 9 9 9 17 10 6 15 14 11 18 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 5 22 10 6 8 16 16 16 16 16 16 12 6 8 16 16 16 16 16 16 16 12 6 15 14 11 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 27 18 5 14 10 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 15 14 11 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 5 30 19 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 22 11 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
27 18 18 5 14 30 14 14 14 22 14 30 30 14 14 22 14 14 14 30 14 14 14 22 14 30 14 14 11 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 28 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 0 18 18 18 27 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 27 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 27 18 18 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 27 18 18 18 27 27 18 18 18 27 18 18 18 18 18 27 18 18 18 18 18 18 18 18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 27 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18

50
assets/maps/indoor01.map Normal file
View File

@@ -0,0 +1,50 @@
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 32 32 32 32 32 32 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 32 34 34 34 34 34 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 32 34 34 35 34 34 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 32 34 34 34 34 34 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 32 34 34 34 34 34 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 32 34 34 34 34 34 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 32 34 34 34 34 34 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 32 32 32 0 32 32 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

View File

@@ -1,12 +0,0 @@
1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 2 2 2 2 0 0 0 0 0 1
1 0 0 0 0 0 2 2 2 2 0 0 0 0 0 1
1 0 0 0 0 0 2 2 2 2 0 0 0 0 0 1
1 0 0 0 0 0 2 2 2 2 0 0 0 0 0 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

View File

@@ -1,50 +0,0 @@
12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 13 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 13 12 12 13 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12
12 12 12 12 12 13 22 20 20 20 20 20 20 20 23 12 12 12 22 20 20 20 20 20 20 20 20 23 12 12 12 22 20 20 20 20 20 20 20 20 20 20 23 12 12 12 12 12 12 12
12 12 12 12 12 12 18 41 40 40 40 40 40 41 19 20 20 20 21 41 10 10 11 10 10 10 10 19 20 20 20 21 41 10 35 33 33 33 33 33 33 36 17 12 12 13 12 12 12 12
12 12 13 12 12 12 18 41 40 39 39 39 40 41 41 41 41 41 41 41 10 14 15 15 15 16 10 41 41 41 41 41 41 41 31 26 26 26 26 26 26 30 17 12 12 12 12 12 12 12
12 12 12 12 12 12 18 41 40 39 39 39 40 41 41 41 41 41 41 41 10 17 12 12 12 18 10 41 41 41 41 41 41 41 31 26 26 26 26 26 26 30 17 12 12 12 12 12 12 12
12 12 12 13 12 12 18 41 40 39 39 39 40 41 41 41 41 41 41 41 10 17 12 12 12 18 11 41 41 41 41 41 41 41 31 26 26 26 26 26 26 30 17 12 13 12 12 12 12 12
12 12 12 12 13 12 18 41 40 39 39 39 40 41 41 41 41 41 41 41 10 19 20 20 20 21 10 41 41 41 41 41 41 41 31 26 26 26 26 26 26 30 17 12 12 12 12 12 12 12
12 12 12 12 12 12 18 41 40 40 39 40 40 41 41 41 41 41 41 41 11 10 35 33 36 10 10 10 10 10 10 10 10 10 37 28 28 29 26 27 28 38 17 13 12 12 12 12 12 12
12 12 12 12 12 12 18 41 41 41 10 41 41 41 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 41 41 31 26 30 14 15 25 12 12 12 12 12 12 12
12 12 12 12 13 12 18 41 41 41 10 41 41 41 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 41 41 31 26 30 17 12 12 12 12 13 12 12 12 12
12 12 12 12 12 12 24 15 16 41 10 41 41 41 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 41 41 31 26 30 17 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 18 41 10 41 41 41 41 41 41 41 41 41 41 41 31 26 30 10 10 10 41 41 41 41 41 41 41 41 41 31 26 30 17 12 12 12 12 12 13 12 12 12
12 12 13 12 12 12 12 22 21 41 10 41 41 41 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 35 33 34 26 30 17 12 12 13 12 12 12 12 12 12
12 12 12 12 12 12 12 18 10 10 10 41 41 41 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 31 26 26 26 30 17 12 12 12 12 12 12 12 12 12
12 12 12 13 12 12 12 18 10 41 41 41 41 41 41 41 41 41 41 41 41 10 31 26 30 10 41 41 41 41 41 41 41 41 41 31 26 27 28 38 17 12 13 12 12 12 12 12 12 12
12 12 12 12 12 12 12 18 10 41 41 41 10 35 33 33 33 33 33 33 33 33 34 26 32 33 33 33 33 33 33 33 33 33 33 34 26 30 10 41 17 12 12 12 12 12 12 12 12 12
12 12 12 12 12 13 12 18 10 41 41 41 11 31 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 30 10 14 25 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 13 18 10 10 41 41 10 37 28 28 28 28 28 28 28 28 29 26 27 28 28 28 28 28 28 28 28 28 28 29 26 30 10 17 12 13 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 24 16 10 41 41 10 41 41 41 41 41 41 41 41 10 31 26 30 10 41 41 41 41 41 41 41 41 41 31 26 30 10 17 12 12 12 12 13 12 12 12 12 12
12 12 12 12 12 12 12 12 18 10 41 41 10 41 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 31 26 30 11 17 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 13 12 22 21 10 41 41 10 10 10 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 31 26 30 10 17 12 12 12 13 12 12 12 12 12 12
12 12 12 12 12 12 12 18 10 10 41 41 41 41 10 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 31 26 30 10 17 12 12 12 12 12 12 12 12 12 12
12 12 12 13 12 12 12 18 10 41 41 41 41 41 10 41 41 41 41 41 41 41 31 26 30 41 41 10 41 41 41 41 41 41 41 31 26 30 10 17 12 13 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 18 10 41 41 41 41 41 10 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 10 41 41 41 41 31 26 30 10 17 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 13 18 10 10 10 10 10 10 10 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 10 41 41 41 41 37 28 38 10 17 12 12 12 12 13 12 12 12 12 12
12 12 12 12 12 12 12 18 10 10 11 10 10 10 10 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 41 10 41 14 25 12 12 13 12 12 12 12 12 12 12
12 12 12 12 12 12 12 24 16 10 10 10 10 10 10 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 10 10 10 17 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 13 12 12 18 10 10 10 10 11 10 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 10 10 10 17 12 12 12 12 12 12 12 13 12 12 12
12 12 12 12 12 12 12 12 18 11 10 10 10 10 10 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 10 10 11 17 12 12 13 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 18 10 10 10 10 10 10 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 10 10 10 17 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 13 12 12 22 21 41 41 41 41 41 41 41 41 41 41 41 41 41 37 28 38 41 41 41 41 41 41 41 41 41 41 11 10 10 19 23 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 18 41 41 41 41 41 41 41 41 41 41 41 10 10 10 10 10 10 10 10 41 41 41 41 41 41 41 10 10 10 10 10 19 23 12 12 12 13 12 12 12 12 12
12 12 12 12 12 12 13 18 41 41 41 41 41 41 41 41 41 41 10 10 10 10 10 10 10 10 10 10 41 41 10 41 41 10 10 10 10 10 10 10 17 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 18 10 41 41 41 41 41 41 41 41 41 10 11 10 10 10 10 10 11 10 10 41 41 41 41 10 10 10 10 10 11 10 10 17 12 13 12 12 12 12 12 12 12
12 12 12 12 12 12 12 18 10 41 41 41 41 10 41 41 41 41 10 10 11 10 10 10 10 10 10 10 10 41 41 41 10 10 10 10 10 41 10 10 17 12 12 12 12 12 12 12 12 12
12 12 13 12 12 12 12 18 10 41 41 41 41 41 41 41 41 41 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 41 10 10 10 10 10 17 12 12 12 12 13 12 12 12 12
12 12 12 12 12 12 12 18 10 41 41 41 41 10 41 14 15 15 16 10 10 10 10 10 11 10 10 14 15 15 16 10 10 10 10 10 10 10 11 10 17 12 12 12 12 12 12 13 12 12
12 12 12 12 12 12 12 18 41 41 41 41 41 41 14 25 12 12 24 16 10 10 10 10 10 10 14 25 12 12 18 10 10 41 10 10 41 10 10 10 17 12 12 12 12 12 12 12 12 12
12 12 12 12 13 12 12 24 15 15 15 15 15 15 25 12 12 12 12 24 15 15 15 15 15 15 25 12 13 12 24 16 10 11 10 10 10 10 14 15 25 12 13 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 24 15 15 15 15 15 15 25 12 12 12 12 12 12 12 13 12 12 12
12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12
12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12

View File

@@ -1,50 +0,0 @@
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 2 2 2 2 2 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 1 1 1 1 1 4 4 4 4 4 4 4 4 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 1 3 3 3 1 4 4 4 4 4 4 4 0 0 0 0 0 0 0 4 4 4 4 4 4 0 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 1 3 3 3 1 4 4 4 4 4 4 4 4 0 0 0 0 0 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 1 3 3 3 1 4 4 4 4 4 4 4 4 4 0 0 0 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 1 3 3 3 1 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 1 1 0 1 1 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 0 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 0 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 0 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 0 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 4 4 4 4 4 4 4 4 4 4 0 5 0 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 4 4 4 4 4 4 4 4 4 0 0 5 0 0 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 4 4 4 4 4 4 4 4 0 0 0 5 0 0 0 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 0 4 4 4 4 4 4 4 0 0 0 5 0 0 0 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 0 4 4 4 4 4 4 4 4 0 0 5 0 0 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 0 4 4 4 4 4 4 4 4 4 0 5 0 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 0 0 0 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 4 4 0 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 4 4 0 4 4 4 4 4 4 4 4 5 4 4 4 0 4 4 4 4 4 4 4 0 5 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 4 4 4 4 4 0 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 0 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 0 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 0 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 0 4 4 4 4 4 4 4 0 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 0 0 0 4 4 0 4 4 0 0 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 0 0 0 4 4 4 4 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 0 4 4 4 4 0 0 0 0 0 0 0 0 0 0 0 4 4 4 0 0 0 0 0 4 0 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 0 4 4 4 4 4 0 0 0 0 0 0 0 0 4 4 4 4 0 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 0 0 0 4 4 4 4 4 0 0 4 0 0 4 0 0 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4

76
assets/maps/tiledata Normal file
View File

@@ -0,0 +1,76 @@
000.png
false
001.png
false
002.png
false
003.png
false
004.png
false
005.png
false
006.png
false
007.png
false
008.png
false
009.png
false
010.png
false
011.png
false
012.png
false
013.png
false
014.png
false
015.png
false
016.png
true
017.png
false
018.png
true
019.png
true
020.png
true
021.png
true
022.png
true
023.png
true
024.png
true
025.png
true
026.png
true
027.png
true
028.png
true
029.png
true
030.png
true
031.png
true
032.png
true
033.png
false
034.png
false
035.png
true
036.png
false
037.png
false

View File

@@ -0,0 +1,76 @@
035.png
true
026.png
true
019.png
true
018.png
true
000.png
false
009.png
false
037.png
false
007.png
false
034.png
false
028.png
true
008.png
false
001.png
false
036.png
false
005.png
false
021.png
true
013.png
false
023.png
true
032.png
true
029.png
true
031.png
true
033.png
true
014.png
false
025.png
true
016.png
true
003.png
false
024.png
true
030.png
true
004.png
false
010.png
false
027.png
true
012.png
false
006.png
false
015.png
false
020.png
true
017.png
false
011.png
false
022.png
true
002.png
false

View File

@@ -1,50 +0,0 @@
12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 13 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 13 12 12 13 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12
12 12 12 12 12 12 12 13 22 20 20 20 20 20 20 20 23 12 22 20 20 20 20 20 20 20 20 23 12 12 12 22 20 20 20 20 20 20 20 20 20 20 23 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 18 41 40 40 40 40 40 41 19 20 21 41 10 10 11 10 10 10 10 19 20 20 20 21 41 10 35 33 33 33 33 33 33 36 17 12 12 13 12 12 12 12
12 12 13 12 12 12 12 12 18 41 40 39 39 39 40 41 41 41 41 41 10 14 15 15 15 16 10 41 41 41 41 41 41 41 31 26 26 26 26 26 26 30 17 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 18 41 40 39 39 39 40 41 41 41 41 41 10 17 12 12 12 18 10 41 41 41 41 41 41 41 31 26 26 26 26 26 26 30 17 12 12 12 12 12 12 12
12 12 12 13 12 12 12 12 18 41 40 39 39 39 40 41 41 41 41 41 10 17 12 12 12 18 11 41 41 41 41 41 41 41 31 26 26 26 26 26 26 30 17 12 13 12 12 12 12 12
12 12 12 12 13 12 12 12 18 41 40 39 39 39 40 41 41 41 41 41 10 19 20 20 20 21 10 41 41 41 41 41 41 41 31 26 26 26 26 26 26 30 17 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 18 41 40 40 39 40 40 41 41 41 41 41 11 10 35 33 36 10 10 10 10 10 10 10 10 10 37 28 28 29 26 27 28 38 17 13 12 12 12 12 12 12
12 12 12 12 12 12 12 12 18 41 41 41 10 41 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 41 41 31 26 30 14 15 25 12 12 12 12 12 12 12
12 12 12 12 13 12 12 12 24 16 41 41 10 41 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 41 41 31 26 30 17 12 12 12 12 13 12 12 12 12
12 12 12 12 12 12 12 12 12 18 41 41 10 41 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 41 41 31 26 30 17 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 22 21 41 41 10 41 41 41 41 41 41 41 41 41 31 26 30 10 10 10 41 41 41 41 41 41 41 41 41 31 26 30 17 12 12 12 12 12 13 12 12 12
12 12 13 12 12 12 12 22 21 41 41 41 10 41 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 35 33 34 26 30 17 12 12 13 12 12 12 12 12 12
12 12 12 12 12 12 12 18 41 41 10 10 10 41 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 31 26 26 26 30 17 12 12 12 12 12 12 12 12 12
12 12 12 13 12 12 12 18 41 41 10 41 41 41 41 41 41 41 41 41 41 10 31 26 30 10 41 41 41 41 41 41 41 41 41 31 26 27 28 38 17 12 13 12 12 12 12 12 12 12
12 12 12 12 12 12 12 18 41 41 10 41 41 10 35 33 33 33 33 33 33 33 34 26 32 33 33 33 33 36 41 41 41 35 33 34 26 30 10 41 17 12 12 12 12 12 12 12 12 12
12 12 12 12 12 13 12 18 41 41 10 41 41 11 31 26 26 26 26 26 26 26 26 26 26 26 26 26 26 30 10 10 10 31 26 26 26 30 10 14 25 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 13 18 41 41 10 41 41 10 37 28 28 28 28 28 28 28 29 26 27 28 28 28 28 38 41 41 41 37 28 29 26 30 10 17 12 13 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 24 16 41 10 41 41 10 41 41 41 41 41 41 41 10 31 26 30 10 41 41 41 41 41 41 41 41 41 31 26 30 10 17 12 12 12 12 13 12 12 12 12 12
12 12 12 12 12 12 12 12 18 41 10 41 41 10 41 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 31 26 30 11 17 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 13 12 22 21 41 10 41 41 10 10 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 31 26 30 10 17 12 12 12 13 12 12 12 12 12 12
12 12 12 12 12 12 12 18 41 41 10 41 41 41 10 41 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 31 26 30 10 17 12 12 12 12 12 12 12 12 12 12
12 12 12 13 12 12 12 18 41 41 10 41 41 41 10 41 41 41 41 41 41 41 31 26 30 10 10 10 41 41 41 41 41 41 41 31 26 30 10 17 12 13 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 18 41 41 10 41 41 41 10 41 41 41 41 41 41 41 31 26 30 41 41 10 41 41 10 41 41 41 41 31 26 30 10 17 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 13 18 41 41 10 10 10 10 10 10 41 41 41 41 41 41 31 26 30 41 41 10 10 10 10 41 41 41 41 37 28 38 10 17 12 12 12 12 13 12 12 12 12 12
12 12 12 12 12 12 12 18 41 41 11 10 10 10 10 10 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 41 10 41 14 25 12 12 13 12 12 12 12 12 12 12
12 12 12 12 12 12 12 24 16 41 10 10 10 10 10 10 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 10 10 10 17 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 13 12 12 18 41 10 10 10 11 10 10 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 10 10 10 17 12 12 12 12 12 12 12 13 12 12 12
12 12 12 12 12 12 12 12 18 41 10 10 10 10 10 10 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 10 10 11 17 12 12 13 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 18 41 10 10 10 10 10 10 41 41 41 41 41 41 31 26 30 41 41 41 41 41 41 41 41 41 41 10 10 10 17 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 13 12 12 22 21 41 41 41 41 41 41 41 41 41 41 41 41 41 37 28 38 41 41 41 41 41 41 41 41 41 41 11 10 10 19 23 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 18 41 41 41 41 41 41 41 41 41 41 41 41 10 10 10 10 10 10 10 41 41 41 41 41 41 41 10 10 10 10 10 19 23 12 12 12 13 12 12 12 12 12
12 12 12 12 12 12 13 18 41 41 41 41 41 41 41 41 41 41 41 10 10 10 10 10 10 10 10 10 41 41 10 41 41 10 10 10 10 10 10 10 17 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 18 41 41 41 41 41 41 41 41 41 41 41 11 10 10 10 10 10 11 10 10 41 41 41 41 10 10 10 10 10 11 10 10 17 12 13 12 12 12 12 12 12 12
12 12 12 12 12 12 12 18 41 41 42 41 41 41 41 41 41 41 41 10 11 10 10 10 10 10 10 10 10 41 41 41 10 10 10 10 10 41 10 10 17 12 12 12 12 12 12 12 12 12
12 12 13 12 12 12 12 18 41 41 10 41 41 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 41 10 10 10 10 10 17 12 12 12 12 13 12 12 12 12
12 12 12 12 12 12 12 18 41 41 10 10 10 10 41 14 15 15 16 10 10 10 10 10 11 10 10 14 15 15 16 10 10 10 10 10 10 10 11 10 17 12 12 12 12 12 12 13 12 12
12 12 12 12 12 12 12 18 41 41 41 41 41 41 14 25 12 12 24 16 10 10 10 10 10 10 14 25 12 12 18 10 10 41 10 10 41 10 10 10 17 12 12 12 12 12 12 12 12 12
12 12 12 12 13 12 12 24 15 15 15 15 15 15 25 12 12 12 12 24 15 15 15 15 15 15 25 12 13 12 24 16 10 11 10 10 10 10 14 15 25 12 13 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 24 15 15 15 15 15 15 25 12 12 12 12 12 12 12 13 12 12 12
12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12
12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12
12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12

50
assets/maps/worldmap.map Normal file
View File

@@ -0,0 +1,50 @@
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 19 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 19 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 19 18 18 18 18 18 18 18 19 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 19 18 18 18 18 18 18 18 18 18 18 19 18 18 18 18 19 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 19 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 19 18 19 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 28 26 26 26 26 26 26 26 29 18 28 26 26 26 26 26 26 26 26 29 18 18 18 28 26 26 26 26 26 26 26 26 26 26 29 18 18 18 18 18 18 18
18 19 18 18 18 18 18 18 24 16 32 32 32 32 32 16 25 26 27 16 1 1 1 1 1 1 1 25 26 26 26 27 16 1 12 10 10 10 10 10 10 13 23 18 18 19 18 18 18 18
18 18 18 18 18 18 18 18 24 16 32 17 17 17 32 16 16 16 16 16 1 20 21 21 21 22 1 16 16 16 16 16 16 16 8 3 3 3 3 3 3 7 23 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 24 16 32 17 36 17 32 16 16 16 16 16 1 23 18 18 18 24 1 16 16 16 16 16 16 16 8 3 3 3 3 3 3 7 23 18 18 18 18 19 18 18
18 18 18 18 18 18 18 18 24 16 32 17 17 17 32 16 16 16 16 16 1 23 18 18 18 24 1 16 16 16 16 16 16 16 8 3 3 3 3 3 3 7 23 19 18 18 18 18 18 18
18 18 19 18 18 18 18 18 24 16 32 17 17 17 32 16 16 16 16 16 1 25 26 26 26 27 1 16 16 16 16 16 16 16 8 3 3 3 3 3 3 7 23 18 18 18 18 18 18 18
18 18 18 18 18 19 18 18 24 16 32 32 17 32 32 16 16 16 16 16 1 1 12 10 13 1 1 1 1 1 1 1 1 1 14 5 5 6 3 4 5 15 23 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 24 16 16 16 1 16 16 16 16 16 16 16 16 16 8 3 7 16 16 16 16 16 16 16 16 16 16 16 16 8 3 7 20 21 31 18 18 18 19 18 18 18
18 18 18 18 18 18 18 18 30 22 16 16 1 16 16 16 16 16 16 16 16 16 8 3 7 16 16 16 16 16 16 16 16 16 16 16 16 8 3 7 23 18 18 18 18 18 18 18 18 18
18 19 18 18 18 18 18 19 18 24 16 16 1 16 16 16 16 16 16 16 16 16 8 3 7 16 16 16 16 16 16 16 16 16 16 16 16 8 3 7 23 19 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 28 27 16 16 1 16 16 16 16 16 16 16 16 16 8 3 7 1 1 1 16 16 16 16 16 16 16 16 16 8 3 7 23 18 18 19 18 18 18 18 18 18
18 18 18 18 18 18 18 28 27 16 16 16 1 16 16 16 16 16 16 16 16 16 8 3 7 16 16 16 16 16 16 16 16 16 16 12 10 11 3 7 23 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 24 16 16 1 1 1 16 16 16 16 16 16 16 16 16 8 3 7 16 16 16 16 16 16 16 16 16 16 8 3 3 3 7 23 18 18 18 18 18 19 18 18 18
18 18 18 18 18 19 18 24 16 16 1 16 16 16 16 16 16 16 16 16 16 1 8 3 7 1 16 16 16 16 16 16 16 16 16 8 3 4 5 15 23 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 24 16 16 1 16 16 1 12 10 10 10 10 10 10 10 11 3 9 10 10 10 10 13 16 16 16 12 10 11 3 7 1 16 23 18 18 19 18 18 18 18 18 18
18 18 18 19 18 18 18 24 16 16 1 16 16 1 8 3 3 3 3 3 3 3 3 3 3 3 3 3 3 7 1 1 1 8 3 3 3 7 1 20 31 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 24 16 16 1 16 16 1 14 5 5 5 5 5 5 5 6 3 4 5 5 5 5 15 16 16 16 14 5 6 3 7 2 23 18 18 19 18 18 18 18 18 18 18
18 18 18 18 18 18 18 30 22 16 1 16 16 1 16 16 16 16 16 16 16 1 8 3 7 1 16 16 16 16 16 16 16 16 16 8 3 7 1 23 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 24 16 1 16 16 1 16 16 16 16 16 16 16 16 8 3 7 16 16 16 16 16 16 16 16 16 16 8 3 7 1 23 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 27 16 1 16 16 1 1 16 16 16 16 16 16 16 8 3 7 16 16 16 16 16 16 16 16 16 16 8 3 7 1 23 18 18 18 18 18 18 19 18 18 18
18 18 18 19 18 18 18 24 16 16 1 16 16 16 1 16 16 16 16 16 16 16 8 3 7 16 16 16 16 16 16 16 16 16 16 8 3 7 1 23 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 24 16 16 1 16 16 16 1 16 16 16 16 16 16 16 8 3 7 1 1 1 16 16 16 16 16 16 16 8 3 7 1 23 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 24 16 16 1 16 16 16 1 16 16 16 16 16 16 16 8 3 7 16 16 1 16 16 16 16 16 16 16 8 3 7 1 23 18 18 19 18 18 18 18 18 18 18
18 18 19 18 18 18 18 24 16 16 1 1 1 1 1 1 16 16 16 16 16 16 8 3 7 16 16 1 16 16 1 16 16 16 16 14 5 15 1 23 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 24 16 16 1 2 1 1 1 1 16 16 16 16 16 16 8 3 7 16 16 1 16 16 1 16 16 16 16 16 1 16 20 31 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 19 30 22 16 1 1 1 1 1 1 16 16 16 16 16 16 8 3 7 16 16 1 1 1 1 16 16 16 16 16 1 1 23 18 19 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 24 16 1 1 1 2 1 1 16 16 16 16 16 16 8 3 7 16 16 16 16 16 16 16 16 16 16 1 1 1 23 18 18 18 18 18 18 18 18 19 18 18
18 18 18 18 18 18 18 18 24 16 1 1 1 1 1 1 16 16 16 16 16 16 8 3 7 16 16 16 16 16 16 16 16 16 16 1 1 2 23 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 19 18 18 18 24 16 1 1 1 1 1 1 16 16 16 16 16 16 8 3 7 16 16 16 16 16 16 16 16 16 16 1 1 1 23 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 28 27 16 16 16 16 16 16 16 16 16 16 16 16 16 14 5 15 16 16 16 16 16 16 16 16 16 16 1 1 1 25 29 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 24 16 16 16 16 16 16 16 16 16 16 16 16 1 1 1 1 1 1 1 16 16 16 16 16 16 16 1 1 1 1 1 25 29 18 18 19 18 18 18 18 18 18
18 18 18 18 18 18 18 24 16 16 16 16 16 16 16 16 16 16 16 1 1 1 1 2 1 1 1 1 16 16 1 16 16 1 1 2 1 1 1 1 23 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 24 16 16 16 16 16 16 16 16 16 16 16 1 1 1 1 1 1 1 1 1 16 16 16 16 1 1 1 1 1 1 1 1 23 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 24 16 16 33 16 16 16 16 16 16 16 16 1 1 1 1 1 1 1 2 1 1 16 16 16 1 1 1 1 1 16 1 2 23 18 18 18 18 18 18 18 18 18
18 18 18 18 18 19 18 24 16 16 1 16 16 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 16 1 1 1 1 1 23 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 24 16 16 1 1 1 1 16 20 21 21 22 1 1 1 1 1 1 1 1 20 21 21 22 1 1 1 1 1 1 1 1 1 23 18 18 18 18 18 18 18 18 18
18 19 18 18 18 18 18 24 16 16 16 16 16 16 20 31 18 18 30 22 1 1 1 1 1 1 20 31 18 18 24 1 1 16 1 1 16 1 1 1 23 18 18 18 18 18 19 18 18 18
18 18 18 18 18 18 18 30 21 21 21 21 21 21 31 18 18 18 18 30 21 21 21 21 21 21 31 18 18 18 30 22 1 1 1 1 1 1 20 21 31 18 19 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 19 18 18 18 18 18 18 18 18 18 18 18 18 18 19 18 18 30 21 21 21 21 21 21 31 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 19 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 19 18 18 18 18 18 18 19 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 19 18 18 18 18 18 18 18 18 18 18 18 18 18 19 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 19 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18

View File

@@ -0,0 +1,50 @@
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 9 1 1 1 1 1 1 1 18 3 9 1 1 1 1 1 1 1 1 18 3 3 3 9 1 1 1 1 1 1 1 1 1 1 18 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 25 23 17 17 17 17 17 23 22 1 29 23 11 11 11 11 11 11 11 22 1 1 1 29 23 11 30 28 28 28 28 28 28 15 16 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 25 23 17 34 34 34 17 23 23 23 23 23 11 33 14 14 14 36 11 23 23 23 23 23 23 23 10 24 24 24 24 24 24 7 16 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 25 23 17 34 12 34 17 23 23 23 23 23 11 16 3 3 3 25 11 23 23 23 23 23 23 23 10 24 24 24 24 24 24 7 16 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 25 23 17 34 34 34 17 23 23 23 23 23 11 16 3 3 3 25 11 23 23 23 23 23 23 23 10 24 24 24 24 24 24 7 16 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 25 23 17 34 34 34 17 23 23 23 23 23 11 22 1 1 1 29 11 23 23 23 23 23 23 23 10 24 24 24 24 24 24 7 16 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 25 23 17 17 11 17 17 23 23 23 23 23 11 11 30 28 15 11 11 11 11 11 11 11 11 11 11 13 13 31 24 27 13 32 16 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 25 23 23 23 11 23 23 23 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 23 23 10 24 7 33 14 19 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 26 36 23 23 11 23 23 23 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 23 23 10 24 7 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 25 23 23 11 23 23 23 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 23 23 10 24 7 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 9 29 23 23 11 23 23 23 23 23 23 23 23 23 10 24 7 11 11 11 23 23 23 23 23 23 23 23 23 10 24 7 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 9 29 23 23 23 11 23 23 23 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 30 28 35 24 7 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 11 11 23 23 23 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 10 24 24 24 7 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 23 23 23 23 23 23 23 23 23 23 11 10 24 7 11 23 23 23 23 23 23 23 23 23 10 24 27 13 32 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 23 23 11 30 28 28 28 28 28 28 28 35 24 5 28 28 28 28 15 23 23 23 30 28 35 24 7 11 23 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 23 23 11 10 24 24 24 24 24 24 24 24 24 24 24 24 24 24 7 11 11 11 10 24 24 24 7 11 33 19 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 23 23 11 21 13 13 13 13 13 13 13 31 24 27 13 13 13 13 32 23 23 23 21 13 31 24 7 11 16 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 26 36 23 11 23 23 11 23 23 23 23 23 23 23 11 10 24 7 23 23 23 23 23 23 23 23 23 23 10 24 7 11 16 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 25 23 11 23 23 11 23 23 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 10 24 7 11 16 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 9 29 23 11 23 23 11 11 23 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 10 24 7 11 16 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 23 23 23 11 23 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 10 24 7 11 16 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 23 23 23 11 23 23 23 23 23 23 23 10 24 7 11 11 11 23 23 23 23 23 23 23 10 24 7 11 16 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 23 23 23 11 23 23 23 23 23 23 23 10 24 7 23 23 11 23 23 23 23 23 23 23 10 24 7 11 16 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 11 11 11 11 11 23 23 23 23 23 23 10 24 7 23 23 11 11 11 11 23 23 23 23 21 13 32 11 16 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 11 11 11 11 11 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 23 11 23 33 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 26 36 23 11 11 11 11 11 11 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 23 11 11 16 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 25 23 11 11 11 11 11 11 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 11 11 11 16 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 25 23 11 11 11 11 11 11 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 11 11 11 16 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 25 23 11 11 11 11 11 11 23 23 23 23 23 23 10 24 7 23 23 23 23 23 23 23 23 23 23 11 11 11 16 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 9 29 23 23 23 23 23 23 23 23 23 23 23 23 23 21 13 32 23 23 23 23 23 23 23 23 23 23 11 11 11 22 18 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 23 23 23 23 23 23 23 23 23 23 11 11 11 11 11 11 11 23 23 23 23 23 23 23 11 11 11 11 11 22 18 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 23 23 23 23 23 23 23 23 23 11 11 11 11 11 11 11 11 11 23 23 23 23 23 11 11 11 11 11 11 11 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 23 23 23 23 23 23 23 23 23 11 11 11 11 11 11 11 11 11 23 23 23 23 11 11 11 11 11 11 11 11 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 20 23 23 23 23 23 23 23 23 11 11 11 11 11 11 11 11 11 11 23 23 23 11 11 11 11 11 11 11 11 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 23 23 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 11 11 11 11 23 33 14 14 36 11 11 11 11 11 11 11 11 33 14 14 36 11 11 11 11 11 11 11 11 11 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 25 23 23 23 23 23 23 33 3 3 3 26 36 11 11 11 11 11 11 33 19 3 3 25 11 11 11 11 11 11 11 11 11 16 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 26 14 14 14 14 14 14 19 3 3 3 3 26 14 14 14 14 14 14 19 3 3 3 26 36 11 11 11 11 11 11 33 14 19 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 26 14 14 14 14 14 14 19 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3

BIN
assets/tiles/000.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

Before

Width:  |  Height:  |  Size: 6.7 KiB

After

Width:  |  Height:  |  Size: 6.7 KiB

View File

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

View File

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

View File

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

Before

Width:  |  Height:  |  Size: 6.6 KiB

After

Width:  |  Height:  |  Size: 6.6 KiB

View File

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

BIN
assets/tiles/036.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

BIN
assets/tiles/037.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@@ -1,13 +1,23 @@
package de.miaurizius.jgame2d.core;
import javax.swing.*;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.logging.Logger;
public class Boot {
public static final Logger logger = Logger.getLogger("JDGame2D");
public static JFrame window;
public static GamePanel gamePanel = new GamePanel();
public static GamePanel gamePanel;
static {
try {
gamePanel = new GamePanel();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
static void main() {
generateWindow();

View File

@@ -7,6 +7,7 @@ import de.miaurizius.jgame2d.core.handlers.*;
import de.miaurizius.jgame2d.entity.Entity;
import de.miaurizius.jgame2d.entity.Player;
import de.miaurizius.jgame2d.environment.EnvironmentManager;
import de.miaurizius.jgame2d.tile.MiniMap;
import de.miaurizius.jgame2d.tile.TileManager;
import de.miaurizius.jgame2d.tile.interactive.InteractiveTile;
@@ -15,6 +16,7 @@ import javax.sound.sampled.FloatControl;
import javax.swing.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.logging.Level;
@@ -38,8 +40,8 @@ public class GamePanel extends JPanel implements Runnable {
public Graphics2D fg2;
// WORLD SETTINGS
public final int maxWorldCol = 50;
public final int maxWorldRow = 50;
public int maxWorldCol = 50;
public int maxWorldRow = 50;
public Map currentMap = Map.OVERWORLD;
//FPS
@@ -58,6 +60,7 @@ public class GamePanel extends JPanel implements Runnable {
public Config config = new Config(this);
public PathFinder pFinder = new PathFinder(this);
public EnvironmentManager eManager = new EnvironmentManager(this);
public MiniMap mapMan = new MiniMap(this);
Thread gameThread;
// ENTITY AND OBJECT
@@ -73,7 +76,7 @@ public class GamePanel extends JPanel implements Runnable {
// GAME STATE
public GameState gameState;
public GamePanel() {
public GamePanel() throws IOException {
this.setPreferredSize(new Dimension(screenWidth, screenHeight));
this.setBackground(Color.black);
this.setDoubleBuffered(true);
@@ -165,6 +168,11 @@ public class GamePanel extends JPanel implements Runnable {
return;
}
if(gameState == GameState.MAP) {
mapMan.drawFullMapScreen(fg2);
return;
}
// GAME
tileM.draw(fg2);
for(Entity entity : iTile[currentMap.getIndex()]) if(entity != null) entity.draw(fg2);
@@ -183,6 +191,9 @@ public class GamePanel extends JPanel implements Runnable {
// ENVIRONMENT
eManager.draw(fg2);
// MINI MAP
mapMan.drawMiniMap(fg2);
// UI
ui.draw(fg2);

View File

@@ -4,6 +4,7 @@ import de.miaurizius.jgame2d.core.enums.GameState;
import de.miaurizius.jgame2d.entity.Entity;
import de.miaurizius.jgame2d.entity.item.CoinObj;
import de.miaurizius.jgame2d.entity.item.HeartObj;
import de.miaurizius.jgame2d.environment.Lighting;
import java.awt.*;
import java.awt.image.BufferedImage;
@@ -16,16 +17,17 @@ public class UI {
GamePanel panel;
Graphics2D graphics2d;
Font font;
BufferedImage heart_full, heart_half, heart_blank, coin;
ArrayList<String> messages = new ArrayList<>();
ArrayList<Integer> messageCounter = new ArrayList<>();
public Font font;
public String currentDialogue;
public Entity tradingNPC;
public int commandNum;
public int playerSlotCol, playerSlotRow;
public int npcSlotCol, npcSlotRow;
private int transCounter;
private int transCount;
private int sleepCount;
// SUB-STATES
public TradeState tradeState = TradeState.SELECT;
@@ -64,6 +66,7 @@ public class UI {
case GAMEOVER -> drawGameOverScreen();
case TRANSITION -> drawTransitionScreen();
case TRADE -> drawTradeScreen();
case SLEEP -> drawSleepScreen();
}
}
@@ -375,11 +378,11 @@ public class UI {
if(commandNum == 1) graphics2d.drawString(">", x-panel.tileSize, y);
}
private void drawTransitionScreen() {
transCounter++;
graphics2d.setColor(new Color(0,0,0, transCounter*5));
transCount++;
graphics2d.setColor(new Color(0,0,0, transCount *5));
graphics2d.fillRect(0, 0, panel.screenWidth, panel.screenHeight);
if(transCounter != 50) return;
transCounter = 0;
if(transCount != 50) return;
transCount = 0;
panel.gameState = GameState.PLAY;
panel.currentMap = panel.eventH.tempMap;
panel.player.worldX = panel.tileSize * panel.eventH.tempCol;
@@ -395,6 +398,24 @@ public class UI {
}
panel.keyH.spacePressed = false;
}
private void drawSleepScreen() {
sleepCount++;
if(sleepCount < 120) {
panel.eManager.lighting.filterAlpha += 0.01F;
if(panel.eManager.lighting.filterAlpha >= 1F) panel.eManager.lighting.filterAlpha = 1F;
}
if(sleepCount >= 120) {
panel.eManager.lighting.filterAlpha -= 0.01F;
if(panel.eManager.lighting.filterAlpha <= 0F) {
panel.eManager.lighting.filterAlpha = 0F;
sleepCount = 0;
panel.eManager.lighting.dayCount = 0;
panel.eManager.lighting.dayState = Lighting.DayState.DAY;
panel.gameState = GameState.PLAY;
panel.player.getPlayerImage();
}
}
}
// TRADING
private void tradeSelect() {

View File

@@ -13,5 +13,7 @@ public enum GameState {
GAMEOVER,
TRANSITION,
TRADE,
SLEEP,
MAP,
}

View File

@@ -2,8 +2,8 @@ package de.miaurizius.jgame2d.core.enums;
public enum Map {
OVERWORLD("world3", 0),
HUT("hut", 1);
OVERWORLD("worldmap", 0),
HUT("worldmap", 1);
private final String name;
private final int index;

View File

@@ -3,6 +3,7 @@ package de.miaurizius.jgame2d.core.handlers;
import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.enums.Map;
import de.miaurizius.jgame2d.entity.item.*;
import de.miaurizius.jgame2d.entity.monster.OrcMON;
import de.miaurizius.jgame2d.entity.npc.MerchantNPC;
import de.miaurizius.jgame2d.entity.npc.OldManNPC;
import de.miaurizius.jgame2d.entity.monster.GreenSlimeMON;
@@ -37,27 +38,7 @@ public class AssetSetter {
panel.obj[Map.OVERWORLD.getIndex()][i] = new ChestObj(panel, new KeyObj(panel));
panel.obj[Map.OVERWORLD.getIndex()][i].worldX = panel.tileSize*30;
panel.obj[Map.OVERWORLD.getIndex()][i].worldY = panel.tileSize*28;
i++;
panel.obj[Map.OVERWORLD.getIndex()][i] = new PotionObj(panel);
panel.obj[Map.OVERWORLD.getIndex()][i].worldX = panel.tileSize*21;
panel.obj[Map.OVERWORLD.getIndex()][i].worldY = panel.tileSize*20;
i++;
panel.obj[Map.OVERWORLD.getIndex()][i] = new PotionObj(panel);
panel.obj[Map.OVERWORLD.getIndex()][i].worldX = panel.tileSize*20;
panel.obj[Map.OVERWORLD.getIndex()][i].worldY = panel.tileSize*20;
i++;
panel.obj[Map.OVERWORLD.getIndex()][i] = new PotionObj(panel);
panel.obj[Map.OVERWORLD.getIndex()][i].worldX = panel.tileSize*17;
panel.obj[Map.OVERWORLD.getIndex()][i].worldY = panel.tileSize*21;
i++;
panel.obj[Map.OVERWORLD.getIndex()][i] = new LanternObj(panel);
panel.obj[Map.OVERWORLD.getIndex()][i].worldX = panel.tileSize*18;
panel.obj[Map.OVERWORLD.getIndex()][i].worldY = panel.tileSize*20;
panel.obj[Map.OVERWORLD.getIndex()][i].worldY = panel.tileSize*29;
i++;
}
@@ -96,6 +77,11 @@ public class AssetSetter {
panel.monster[Map.OVERWORLD.getIndex()][i] = new GreenSlimeMON(panel);
panel.monster[Map.OVERWORLD.getIndex()][i].worldX = panel.tileSize*38;
panel.monster[Map.OVERWORLD.getIndex()][i].worldY = panel.tileSize*42;
i++;
panel.monster[Map.OVERWORLD.getIndex()][i] = new OrcMON(panel);
panel.monster[Map.OVERWORLD.getIndex()][i].worldX = panel.tileSize*12;
panel.monster[Map.OVERWORLD.getIndex()][i].worldY = panel.tileSize*33;
}
public void setITiles() {
@@ -108,15 +94,18 @@ public class AssetSetter {
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,32,12);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,33,12);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,29,21);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,30,21);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,25,27);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,26,27);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,27,27);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,27,28);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,27,29);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,28,29);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,29,29);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,27,30);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,27,31);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,28,31);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,29,31);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,30,31);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,18,40);i++;
panel.iTile[Map.OVERWORLD.getIndex()][i] = new DryTreeTI(panel,17,40);i++;

View File

@@ -1,6 +1,7 @@
package de.miaurizius.jgame2d.core.handlers;
import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.enums.Direction;
import de.miaurizius.jgame2d.entity.Entity;
public class CollisionHandler {
@@ -25,7 +26,11 @@ public class CollisionHandler {
int tileNum1, tileNum2;
switch(entity.direction) {
// TEMP DIRECTION FOR KNOCKBACK
Direction direction = entity.direction;
if(entity.knockback) direction = entity.knockbackDirection;
switch(direction) {
case UP:
entityTopRow = (entityTopWorldY - entity.speed)/panel.tileSize;
tileNum1 = panel.tileM.mapTileNum[panel.currentMap.getIndex()][entityLeftCol][entityTopRow];

View File

@@ -53,6 +53,9 @@ public class KeyHandler implements KeyListener {
case KeyEvent.VK_SPACE -> spacePressed = true;
//case KeyEvent.VK_F -> shotKeyPressed = true;
// MINI MAP TOGGLE
case KeyEvent.VK_X -> panel.mapMan.miniMapOn = !panel.mapMan.miniMapOn;
// DEBUG OPTIONS
case KeyEvent.VK_T -> debug = !debug;
case KeyEvent.VK_R -> {for(Map m : Map.values()) panel.tileM.loadMap(m);}
@@ -64,6 +67,7 @@ public class KeyHandler implements KeyListener {
panel.ui.commandNum = 0;
}
case KeyEvent.VK_C -> panel.gameState = GameState.CHARACTER;
case KeyEvent.VK_M -> panel.gameState = GameState.MAP;
}
}
private void handlePause(int code) {
@@ -182,6 +186,12 @@ public class KeyHandler implements KeyListener {
if(code == KeyEvent.VK_ESCAPE) panel.ui.tradeState = UI.TradeState.SELECT;
}
}
private void handleMap(int code) {
switch (code) {
// EXIT STATE
case KeyEvent.VK_M, KeyEvent.VK_ESCAPE -> panel.gameState = GameState.PLAY;
}
}
// UTILITY
private void playerInventory(int code) {
@@ -255,6 +265,7 @@ public class KeyHandler implements KeyListener {
case CHARACTER -> handleCharacter(code);
case GAMEOVER -> handleGameOver(code);
case TRADE -> handleTrade(code);
case MAP -> handleMap(code);
}
}
@Override

View File

@@ -34,6 +34,7 @@ public class Sound {
load(11, "assets/sounds/cuttree.wav");
load(12, "assets/sounds/gameover.wav");
load(13, "assets/sounds/stairs.wav");
load(14, "assets/sounds/sleep.wav");
}
@Deprecated

View File

@@ -14,6 +14,8 @@ import java.awt.image.BufferedImage;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Objects;
import java.util.Random;
import java.util.logging.Level;
public class Entity {
@@ -24,6 +26,7 @@ public class Entity {
public BufferedImage image, image2, image3;
public Rectangle solidArea = new Rectangle(0, 0, 48, 48);
public Rectangle attackArea = new Rectangle(0, 0, 0, 0);
public Entity attacker;
public int solidAreaDefaultX, solidAreaDefaultY;
public boolean collision;
protected String[] dialogue = new String[20];
@@ -35,18 +38,20 @@ public class Entity {
int dialogueIndex;
public boolean collisionOn;
public boolean invincible;
boolean attacking;
public boolean attacking;
public boolean alive = true;
public boolean dying;
public boolean hpBarOn;
public boolean consumable;
public boolean onPath;
public boolean knockback;
public Direction knockbackDirection;
// COUNTER
public int spriteCount;
public int actionLock;
public int invincibleCount;
public int shotAvailableCount;
int dyingCount;
int hpBarCount;
int knockbackCount;
@@ -103,7 +108,7 @@ public class Entity {
return;
}
switch(panel.player.direction) {
switch(knockbackDirection) {
case UP -> worldY -= speed;
case DOWN -> worldY += speed;
case LEFT ->worldX -= speed;
@@ -116,7 +121,7 @@ public class Entity {
knockback = false;
knockbackCount = 0;
speed = defaultSpeed;
} else {
} else if(attacking) attacking(); else {
setAction();
checkCollision();
@@ -128,14 +133,14 @@ public class Entity {
case RIGHT -> worldX += speed;
}
}
}
spriteCount++;
if(spriteCount > 24) {
if(spriteNum == 1) spriteNum = 2;
else if(spriteNum == 2) spriteNum = 1;
else spriteNum = 0;
spriteCount = 0;
spriteCount++;
if(spriteCount > 24) {
if(spriteNum == 1) spriteNum = 2;
else if(spriteNum == 2) spriteNum = 1;
else spriteNum = 0;
spriteCount = 0;
}
}
// INVINCIBLE COUNTER
@@ -177,8 +182,9 @@ public class Entity {
hpBarCount = 0;
changeOpacity(graphics2d, 0.4f);
}
//TODO: fix attacking sprite drawing position for monsters
if(dying) dyingAnimation(graphics2d);
if(type == EntityType.PLAYER) { // only modify sprite render position for player because I dont know yet how monster attack sprite are gonna look
if(type == EntityType.PLAYER || name.equals("orc")) { // only modify sprite render position for player because I dont know yet how monster attack sprite are gonna look
if(attacking) graphics2d.drawImage(parseSpriteATK(),
(direction == Direction.LEFT) ? screenX - panel.tileSize : screenX,
(direction == Direction.UP) ? screenY - panel.tileSize : screenY, null);
@@ -197,6 +203,48 @@ public class Entity {
// INTERACTION
public void setAction() {}
public void damageReaction() {}
public void attacking() {
if(panel.player.attackCancel && type == EntityType.PLAYER) return;
spriteCount++;
if(spriteCount <= 5) spriteNum = 1;
if(spriteCount > 5 && spriteCount <= 25) {
spriteNum = 2;
int currentWorldX = worldX;
int currentWorldY = worldY;
int solidAreaWidth = solidArea.width;
int solidAreaHeight = solidArea.height;
switch(direction) {
case UP -> worldY -= attackArea.height;
case DOWN -> worldY += attackArea.height;
case LEFT -> worldX -= attackArea.width;
case RIGHT -> worldX += attackArea.width;
}
solidArea.width = attackArea.width;
solidArea.height = attackArea.height;
if(type == EntityType.MONSTER) if(panel.collisionH.checkPlayer(this)) damagePlayer(attackValue);
if(type == EntityType.PLAYER) {
int monsterIndex = panel.collisionH.checkEntity(this, panel.monster[panel.currentMap.getIndex()]);
panel.player.damageMonster(monsterIndex, this, attack, currentWeapon.knockbackVal);
int iTileIndex = panel.collisionH.checkEntity(this, panel.iTile[panel.currentMap.getIndex()]);
panel.player.interactTile(iTileIndex);
}
worldX = currentWorldX;
worldY = currentWorldY;
solidArea.width = solidAreaWidth;
solidArea.height = solidAreaHeight;
}
if(spriteCount > 25) {
spriteNum = 1;
spriteCount = 0;
attacking = false;
}
}
public void damagePlayer(int attack) {
if(panel.player.invincible) return;
panel.playSE(6);
@@ -290,6 +338,12 @@ public class Entity {
}
return index;
}
public void setKnockback(Entity target, Entity attacker, int knockbackVal) {
this.attacker = attacker;
target.knockbackDirection = attacker.direction;
target.speed += knockbackVal;
target.knockback = true;
}
// PARTICLE SETUP
public Color getParticleColor() {
@@ -339,6 +393,22 @@ public class Entity {
public int getRow() {
return (worldY + solidArea.y) / panel.tileSize;
}
public int dX(Entity target) {
return Math.abs(worldX - target.worldX);
}
public int dY(Entity target) {
return Math.abs(worldY - target.worldY);
}
public int dTile(Entity target) {
if(Objects.equals(name, "orc")) System.out.println("dX: " + dX(target) + " dY: " + dY(target));
return (dX(target) + dY(target)) / panel.tileSize;
}
public int getGoalCol(Entity target) {
return (target.worldX+target.solidArea.x)/panel.tileSize;
}
public int getGoalRow(Entity target) {
return (target.worldY+target.solidArea.y)/panel.tileSize;
}
// SETTING THINGS UP
BufferedImage parseSprite() {
@@ -417,7 +487,10 @@ public class Entity {
}
} else onPath = false;
}
public void followPlayer(int goalCol, int goalRow) {
public void followPlayer() {
int goalCol = panel.player.getCol();
int goalRow = panel.player.getRow();
int startCol = (worldX + solidArea.x) / panel.tileSize;
int startRow = (worldY + solidArea.y) / panel.tileSize;
@@ -458,5 +531,66 @@ public class Entity {
}
}
}
public void checkStopChasing(Entity target, int distance, int rate) {
if(Objects.equals(name, "orc")) System.out.println("dTile: " + dTile(target) + " distance: " + distance);
if(dTile(target) > distance) onPath = false;
}
public void checkStartChasing(Entity target, int distance, int rate) {
if(dTile(target) < distance) onPath = true;
}
public void checkShooting(int rate, int shotInterval) {
if(new Random().nextInt(rate) == 0 && projectile.alive == false && shotAvailableCount == shotInterval) {
projectile.set(worldX, worldY, direction, true, this);
// CHECK VACANCY
for(int ii = 0; ii < panel.projectileList.size(); ii++) {
if(panel.projectileList.get(ii) == null) {
panel.projectileList.set(ii, projectile);
break;
}
}
shotAvailableCount = 0;
}
}
public void checkAttack(int rate, int straight, int horizontal) {
boolean targetInRange = false;
int xDist = dX(panel.player);
int yDist = dY(panel.player);
switch(direction) {
case UP -> {
if(panel.player.worldY < worldY && yDist < straight && xDist < horizontal) targetInRange = true;
}
case DOWN -> {
if(panel.player.worldY > worldY && yDist < straight && xDist < horizontal) targetInRange = true;
}
case LEFT -> {
if(panel.player.worldX < worldX && xDist < straight && yDist < horizontal) targetInRange = true;
}
case RIGHT -> {
if(panel.player.worldX > worldX && xDist < straight && yDist < horizontal) targetInRange = true;
}
}
if(targetInRange)
if (new Random().nextInt(rate) == 0) {
attacking = true;
spriteNum = 1;
spriteCount = 0;
shotAvailableCount = 0;
}
}
public void setRandomDirection() {
actionLock++;
if(actionLock == 120) { //lock action for x frames
Random rand = new Random();
int i = rand.nextInt(100)+1; //Generate number between 1 and 100
if(i <= 25) direction = Direction.UP;
if(i > 25 && i <= 50) direction = Direction.DOWN;
if(i > 50 && i <= 75) direction = Direction.LEFT;
if(i > 75) direction = Direction.RIGHT;
actionLock = 0;
}
}
}

View File

@@ -11,6 +11,7 @@ import de.miaurizius.jgame2d.entity.item.SwordNormalObj;
import de.miaurizius.jgame2d.entity.projectile.FireballObj;
import java.awt.*;
import java.awt.image.BufferedImage;
public class Player extends Entity {
@@ -175,45 +176,7 @@ public class Player extends Entity {
}
}
public void attacking() {
if(attackCancel) return;
spriteCount++;
if(spriteCount <= 5) spriteNum = 1;
if(spriteCount > 5 && spriteCount <= 25) {
spriteNum = 2;
int currentWorldX = worldX;
int currentWorldY = worldY;
int solidAreaWidth = solidArea.width;
int solidAreaHeight = solidArea.height;
switch(direction) {
case UP -> worldY -= attackArea.height;
case DOWN -> worldY += attackArea.height;
case LEFT -> worldX -= attackArea.width;
case RIGHT -> worldX += attackArea.width;
}
solidArea.width = attackArea.width;
solidArea.height = attackArea.height;
int monsterIndex = panel.collisionH.checkEntity(this, panel.monster[panel.currentMap.getIndex()]);
damageMonster(monsterIndex, attack, currentWeapon.knockbackVal);
int iTileIndex = panel.collisionH.checkEntity(this, panel.iTile[panel.currentMap.getIndex()]);
interactTile(iTileIndex);
worldX = currentWorldX;
worldY = currentWorldY;
solidArea.width = solidAreaWidth;
solidArea.height = solidAreaHeight;
}
if(spriteCount > 25) {
spriteNum = 1;
spriteCount = 0;
attacking = false;
}
}
public void damageMonster(int index, int attack, int knockbackVal) {
public void damageMonster(int index, Entity attacker, int attack, int knockbackVal) {
if(index == 999) return;
if(panel.monster[panel.currentMap.getIndex()][index].invincible) return;
@@ -221,7 +184,7 @@ public class Player extends Entity {
if(damage > 0) {
panel.playSE(5);
if(knockbackVal > 0) knockback(panel.monster[panel.currentMap.getIndex()][index], knockbackVal);
if(knockbackVal > 0) setKnockback(panel.monster[panel.currentMap.getIndex()][index], attacker, knockbackVal);
panel.monster[panel.currentMap.getIndex()][index].life -= damage;
panel.monster[panel.currentMap.getIndex()][index].invincible = true;
}
@@ -234,11 +197,6 @@ public class Player extends Entity {
checkLevelUp();
}
}
public void knockback(Entity entity, int knockbackVal) {
entity.direction = direction;
entity.speed += knockbackVal;
entity.knockback = true;
}
public void interactTile(int index) {
if(index == 999 || !panel.iTile[panel.currentMap.getIndex()][index].destructible || panel.iTile[panel.currentMap.getIndex()][index].invincible) return;
@@ -307,6 +265,16 @@ public class Player extends Entity {
life = maxLife;
invincible = false;
}
public void getSleepingImage(BufferedImage image) {
down1 = image;
down2 = image;
up1 = image;
up2 = image;
left1 = image;
left2 = image;
right1 = image;
right2 = image;
}
// SETTING THINGS UP
public void setDefaultValues() {

View File

@@ -0,0 +1,31 @@
package de.miaurizius.jgame2d.entity.item;
import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.enums.EntityType;
import de.miaurizius.jgame2d.core.enums.GameState;
import de.miaurizius.jgame2d.entity.Entity;
public class TentObj extends Entity {
public TentObj(GamePanel panel) {
super(panel);
type = EntityType.ITEM;
consumable = true;
name = "Tent";
down1 = initEntitySprites("objects/tent");
description = "[" + name + "]\nA small tent to rest\nuntil next morning.";
price = 200;
stackable = true;
}
@Override
public boolean use(Entity entity) {
panel.gameState = GameState.SLEEP;
panel.playSE(14);
panel.player.life = panel.player.maxLife;
panel.player.mana = panel.player.maxMana;
panel.player.getSleepingImage(down1);
return true;
}
}

View File

@@ -1,7 +1,6 @@
package de.miaurizius.jgame2d.entity.monster;
import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.enums.Direction;
import de.miaurizius.jgame2d.core.enums.EntityType;
import de.miaurizius.jgame2d.entity.Entity;
import de.miaurizius.jgame2d.entity.item.CoinObj;
@@ -36,41 +35,16 @@ public class GreenSlimeMON extends Entity {
getImage();
}
@Override
public void update() {
super.update();
int dx = Math.abs(worldX - panel.player.worldX);
int dy = Math.abs(worldY - panel.player.worldY);
int dTile = (dx+dy)/panel.tileSize;
if(!onPath && dTile < 5) if(new Random().nextInt(100)+1 > 50) onPath = true;
if(onPath && dTile > 20) onPath = false;
}
// INTERACTION
public void setAction() {
if(!onPath) checkStartChasing(panel.player, 5 ,100);
checkStopChasing(panel.player, 10, 100);
if(onPath) {
searchPath((panel.player.worldX+panel.player.solidArea.x)/panel.tileSize, (panel.player.worldY+panel.player.solidArea.y)/panel.tileSize);
followPlayer();
return;
}
actionLock++;
if(actionLock == 120) { //lock action for x frames
Random rand = new Random();
int i = rand.nextInt(100)+1; //Generate number between 1 and 100
if(i <= 25) direction = Direction.UP;
if(i > 25 && i <= 50) direction = Direction.DOWN;
if(i > 50 && i <= 75) direction = Direction.LEFT;
if(i > 75) direction = Direction.RIGHT;
actionLock = 0;
}
// int i = new Random().nextInt(100)+1;
// if(i > 99 && !projectile.alive) {
// projectile.set(worldX, worldY, direction, true, this);
// panel.projectileList.add(projectile);
// }
setRandomDirection();
checkShooting(200, 30);
}
public void damageReaction() {
actionLock = 0;

View File

@@ -0,0 +1,83 @@
package de.miaurizius.jgame2d.entity.monster;
import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.enums.EntityType;
import de.miaurizius.jgame2d.entity.Entity;
import de.miaurizius.jgame2d.entity.item.CoinObj;
import de.miaurizius.jgame2d.entity.item.HeartObj;
import de.miaurizius.jgame2d.entity.item.PotionObj;
import java.util.Random;
public class OrcMON extends Entity {
public OrcMON(GamePanel panel) {
super(panel);
type = EntityType.MONSTER;
name = "orc";
defaultSpeed = 1;
speed = defaultSpeed;
maxLife = 10;
life = maxLife;
attack = 8;
defense = 2;
exp = 10;
solidArea.x = 4;
solidArea.y = 4;
solidArea.width = 40;
solidArea.height = 44;
solidAreaDefaultX = solidArea.x;
solidAreaDefaultY = solidArea.y;
attackArea.width = panel.tileSize;
attackArea.height = panel.tileSize;
getImage();
getAttackImage();
}
// INTERACTION
public void setAction() {
if(!onPath) checkStartChasing(panel.player, 10 ,100);
checkStopChasing(panel.player, 15, 100);
if(onPath) {
followPlayer();
return;
}
setRandomDirection();
if(!attacking) checkAttack(30, panel.tileSize*4, panel.tileSize);
}
public void damageReaction() {
actionLock = 0;
onPath = true;
}
public void checkDrop() {
int i = new Random().nextInt(100)+1;
if(i < 50) dropItem(new CoinObj(panel));
if(i >= 50 && i < 75) dropItem(new HeartObj(panel));
if(i >= 75 && i < 100) dropItem(new PotionObj(panel));
}
// SETTING THINGS UP
public void getImage() {
up1 = initEntitySprites("monster/orc_up_1");
up2 = initEntitySprites("monster/orc_up_2");
down1 = initEntitySprites("monster/orc_down_1");
down2 = initEntitySprites("monster/orc_down_2");
left1 = initEntitySprites("monster/orc_left_1");
left2 = initEntitySprites("monster/orc_left_2");
right1 = initEntitySprites("monster/orc_right_1");
right2 = initEntitySprites("monster/orc_right_2");
}
public void getAttackImage() {
attackUp1 = initEntitySprites("monster/orc_attack_up_1");
attackUp2 = initEntitySprites("monster/orc_attack_up_2");
attackDown1 = initEntitySprites("monster/orc_attack_down_1");
attackDown2 = initEntitySprites("monster/orc_attack_down_2");
attackLeft1 = initEntitySprites("monster/orc_attack_left_1");
attackLeft2 = initEntitySprites("monster/orc_attack_left_2");
attackRight1 = initEntitySprites("monster/orc_attack_right_1");
attackRight2 = initEntitySprites("monster/orc_attack_right_2");
}
}

View File

@@ -49,6 +49,8 @@ public class MerchantNPC extends Entity {
inventory.add(new AxeObj(panel));
inventory.add(new ShieldWoodObj(panel));
inventory.add(new IronShieldObj(panel));
inventory.add(new LanternObj(panel));
inventory.add(new TentObj(panel));
}
}

View File

@@ -30,10 +30,10 @@ public class OldManNPC extends Entity {
public void setAction() {
if(onPath) {
searchPath(12, 9);
return;
}
// if(onPath) {
// searchPath(12, 9);
// return;
// }
actionLock++;
if(actionLock != 120) return; //lock action for x frames

View File

@@ -28,7 +28,7 @@ public class Projectile extends Entity {
if(user.type == EntityType.PLAYER) {
int monsterIndex = panel.collisionH.checkEntity(this, panel.monster[panel.currentMap.getIndex()]);
if(monsterIndex != 999) {
panel.player.damageMonster(monsterIndex, attack, knockbackVal);
panel.player.damageMonster(monsterIndex, this, attack, knockbackVal);
generateParticle(user.projectile, panel.monster[panel.currentMap.getIndex()][monsterIndex]);
alive = false;
}

View File

@@ -7,7 +7,7 @@ import java.awt.*;
public class EnvironmentManager {
GamePanel panel;
Lighting lighting;
public Lighting lighting;
public EnvironmentManager(GamePanel panel) {
this.panel = panel;

View File

@@ -9,6 +9,9 @@ public class Lighting {
GamePanel panel;
BufferedImage darknessFilter;
public int dayCount;
public DayState dayState = DayState.DAY;
public float filterAlpha;
public Lighting(GamePanel panel) {
this.panel = panel;
@@ -16,12 +19,61 @@ public class Lighting {
}
public void draw(Graphics2D g2) {
g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, filterAlpha));
g2.drawImage(darknessFilter, 0, 0, null);
g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1F));
// DEBUG
if(panel.keyH.debug) {
String s;
switch (dayState) {
case DAY -> s = "DAY";
case DUSK -> s = "DUSK";
case NIGHT -> s = "NIGHT";
case DAWN -> s = "DAWN";
default -> s = "UNKNOWN";
}
g2.setColor(Color.white);
g2.setFont(g2.getFont().deriveFont(50f));
g2.drawString(s + " " + dayCount, 700, 500);
}
}
public void update() {
if(!panel.player.lightUpdated) return;
setLightSource();
panel.player.lightUpdated = false;
if(panel.player.lightUpdated) {
setLightSource();
panel.player.lightUpdated = false;
}
switch (dayState) {
case DAY -> {
dayCount++;
if (dayCount > 36000) { //10 minutes
dayState = DayState.DUSK;
dayCount = 0;
}
}
case DUSK -> {
filterAlpha += 0.001f;
if (filterAlpha > 1f) {
filterAlpha = 1f;
dayState = DayState.NIGHT;
}
}
case NIGHT -> {
dayCount++;
if (dayCount > 36000) { //10 minutes
dayState = DayState.DAWN;
dayCount = 0;
}
}
case DAWN -> {
filterAlpha -= 0.001f;
if (filterAlpha < 0f) {
filterAlpha = 0f;
dayState = DayState.DAY;
}
}
}
}
// ...
@@ -32,7 +84,7 @@ public class Lighting {
int centerX = panel.player.screenX + panel.tileSize/2;
int centerY = panel.player.screenY + panel.tileSize/2;
RadialGradientPaint gPaint = getRadialGradientPaint(centerX, centerY);
RadialGradientPaint gPaint = getRadialGradientPaint(centerX, centerY, 0F,0F, 0.1F);
g2.setPaint(gPaint);
g2.fillRect(0, 0, panel.screenWidth, panel.screenHeight);
@@ -40,20 +92,20 @@ public class Lighting {
}
// UTILITY
private RadialGradientPaint getRadialGradientPaint(int centerX, int centerY) {
private RadialGradientPaint getRadialGradientPaint(int centerX, int centerY, float r, float g, float b) {
Color[] color = new Color[] {
new Color(0, 0, 0, 0.1f),
new Color(0, 0, 0, 0.42f),
new Color(0, 0, 0, 0.52f),
new Color(0, 0, 0, 0.61f),
new Color(0, 0, 0, 0.69f),
new Color(0, 0, 0, 0.76f),
new Color(0, 0, 0, 0.82f),
new Color(0, 0, 0, 0.87f),
new Color(0, 0, 0, 0.91f),
new Color(0, 0, 0, 0.94f),
new Color(0, 0, 0, 0.96f),
new Color(0, 0, 0, 0.97f)
new Color(r, g, b, 0.1f),
new Color(r, g, b, 0.42f),
new Color(r, g, b, 0.52f),
new Color(r, g, b, 0.61f),
new Color(r, g, b, 0.69f),
new Color(r, g, b, 0.76f),
new Color(r, g, b, 0.82f),
new Color(r, g, b, 0.87f),
new Color(r, g, b, 0.91f),
new Color(r, g, b, 0.94f),
new Color(r, g, b, 0.96f),
new Color(r, g, b, 0.97f)
};
final int lim = 3;
@@ -69,4 +121,11 @@ public class Lighting {
return new RadialGradientPaint(centerX, centerY, (panel.player.currentLight == null ? 75 : panel.player.currentLight.lightRadius), fraction, color);
}
public enum DayState {
DAY,
DUSK,
NIGHT,
DAWN,
}
}

View File

@@ -0,0 +1,93 @@
package de.miaurizius.jgame2d.tile;
import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.enums.Map;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.IOException;
public class MiniMap extends TileManager {
GamePanel panel;
BufferedImage worldMap[];
public boolean miniMapOn;
public MiniMap(GamePanel panel) throws IOException {
super(panel);
this.panel = panel;
createWorldMap();
}
public void createWorldMap() {
worldMap = new BufferedImage[Map.values().length];
int worldMapWidth = panel.maxWorldCol * panel.tileSize;
int worldMapHeight = panel.maxWorldRow * panel.tileSize;
for (int i = 0; i < Map.values().length; i++) {
worldMap[i] = new BufferedImage(worldMapWidth, worldMapHeight, BufferedImage.TYPE_INT_ARGB);
Graphics2D g2 = worldMap[i].createGraphics();
int col = 0;
int row = 0;
while(col < panel.maxWorldCol && row < panel.maxWorldRow) {
int tileNum = mapTileNum[i][col][row];
int x = col * panel.tileSize;
int y = row * panel.tileSize;
g2.drawImage(panel.tileM.tile[tileNum].image, x, y, null);
col++;
if(col != panel.maxWorldCol) continue;
col = 0;
row++;
}
g2.dispose();
}
}
public void drawFullMapScreen(Graphics2D g2) {
// BACKGROUND
g2.setColor(Color.black);
g2.fillRect(0, 0, panel.screenWidth, panel.screenHeight);
// DRAW MAP
int width = 500;
int height = 500;
int x = panel.screenWidth / 2 - width / 2;
int y = panel.screenHeight / 2 - height / 2;
g2.drawImage(worldMap[panel.currentMap.getIndex()], x, y, width, height, null);
// DRAW PLAYER
double scale = (double)(panel.tileSize * panel.maxWorldCol)/width;
int playerX = (int)(x + panel.player.worldX/scale);
int playerY = (int)(y + panel.player.worldY/scale);
int playerSize = (int)(panel.tileSize/scale);
g2.drawImage(panel.player.down1, playerX, playerY, playerSize, playerSize, null);
// HINT
g2.setFont(panel.ui.font.deriveFont(32F));
g2.setColor(Color.white);
g2.drawString("Press M to close", 750, 550);
}
public void drawMiniMap(Graphics2D g2) {
if(!miniMapOn) return;
// DRAW MAP
int width = 300;
int height = 300;
int x = panel.screenWidth - width - 50;
int y = 50;
g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.8f));
g2.drawImage(worldMap[panel.currentMap.getIndex()], x, y, width, height, null);
// DRAW PLAYER
double scale = (double)(panel.tileSize * panel.maxWorldCol)/width;
int playerX = (int)(x + panel.player.worldX/scale);
int playerY = (int)(y + panel.player.worldY/scale);
int playerSize = (int)(panel.tileSize/3);
g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1f));
g2.drawImage(panel.player.down1, playerX-6, playerY-6, playerSize, playerSize, null);
}
}

View File

@@ -8,6 +8,7 @@ import de.miaurizius.jgame2d.core.enums.Map;
import javax.imageio.ImageIO;
import java.awt.*;
import java.io.*;
import java.util.ArrayList;
import java.util.logging.Level;
public class TileManager {
@@ -15,19 +16,52 @@ public class TileManager {
GamePanel panel;
public Tile[] tile;
public int[][][] mapTileNum;
ArrayList<String> filesNames = new ArrayList<>();
ArrayList<String> collisionStatus = new ArrayList<>();
public TileManager(GamePanel panel) {
public TileManager(GamePanel panel) throws IOException {
this.panel = panel;
tile = new Tile[50];
mapTileNum = new int[Map.values().length][panel.maxWorldCol][panel.maxWorldRow];
InputStream is = new FileInputStream("assets/maps/tiledata");
BufferedReader br = new BufferedReader(new InputStreamReader(is));
// READ TILE DATA FROM FILE
try {
String line;
while((line = br.readLine()) != null) {
filesNames.add(line);
collisionStatus.add(br.readLine());
}
br.close();
} catch(IOException e) {
Boot.logger.log(Level.SEVERE, "Could not read tile data file", e);
}
tile = new Tile[filesNames.size()];
getTileImage();
// GETTING WORLD SIZES
is = new FileInputStream("assets/maps/editoredmap.map");
br = new BufferedReader(new InputStreamReader(is));
try {
String line = br.readLine();
String maxTile[] = line.split(" ");
panel.maxWorldCol = maxTile.length;
panel.maxWorldRow = maxTile.length;
mapTileNum = new int[Map.values().length][panel.maxWorldCol][panel.maxWorldRow];
br.close();
} catch(IOException e) {
Boot.logger.log(Level.SEVERE, "Could not read map size data", e);
}
for(Map m : Map.values()) loadMap(m);
}
public void initializeTile(int i, String name, boolean col) {
try {
tile[i] = new Tile();
tile[i].image = ImageIO.read(new FileInputStream("assets/tiles/" + name + ".png"));
tile[i].image = ImageIO.read(new FileInputStream("assets/tiles/" + name));
tile[i].collision = col;
} catch(IOException e) {
Boot.logger.log(Level.SEVERE, "Could not load tile", e);
@@ -35,61 +69,14 @@ public class TileManager {
}
public void getTileImage() {
// PLACEHOLDER
initializeTile(0, "grass00", false);
initializeTile(2, "grass00", false);
initializeTile(3, "grass00", false);
initializeTile(4, "grass00", false);
initializeTile(5, "grass00", false);
initializeTile(6, "grass00", false);
initializeTile(7, "grass00", false);
initializeTile(8, "grass00", false);
initializeTile(9, "grass00", false);
// GRASS
initializeTile(10, "grass00", false);
initializeTile(11, "grass01", false);
// WATER
initializeTile(12, "water00", true);
initializeTile(13, "water01", true);
initializeTile(14, "water02", true);
initializeTile(15, "water03", true);
initializeTile(16, "water04", true);
initializeTile(17, "water05", true);
initializeTile(18, "water06", true);
initializeTile(19, "water07", true);
initializeTile(20, "water08", true);
initializeTile(21, "water09", true);
initializeTile(22, "water10", true);
initializeTile(23, "water11", true);
initializeTile(24, "water12", true);
initializeTile(25, "water13", true);
// ROAD
initializeTile(26, "road00", false);
initializeTile(27, "road01", false);
initializeTile(28, "road02", false);
initializeTile(29, "road03", false);
initializeTile(30, "road04", false);
initializeTile(31, "road05", false);
initializeTile(32, "road06", false);
initializeTile(33, "road07", false);
initializeTile(34, "road08", false);
initializeTile(35, "road09", false);
initializeTile(36, "road10", false);
initializeTile(37, "road11", false);
initializeTile(38, "road12", false);
// WORLD
initializeTile(39, "earth", false);
initializeTile(40, "wall", true);
initializeTile(41, "tree", true);
//
initializeTile(42, "hut", false);
initializeTile(43, "floor01", false);
initializeTile(44, "table01", true);
for(int i = 0; i < filesNames.size(); i++) {
String fileName;
boolean collision;
fileName = filesNames.get(i);
collision = Boolean.parseBoolean(collisionStatus.get(i));
initializeTile(i, fileName, collision);
}
for (Tile tile : tile) {
if(tile == null) continue;