├── godot ├── scenes │ ├── transition │ │ ├── transitions.json │ │ ├── transition-imgs │ │ │ ├── transition-grid.png │ │ │ ├── transition-hbars.png │ │ │ ├── transition-motion.png │ │ │ ├── transition-noise.png │ │ │ ├── transition-pixel.png │ │ │ ├── transition-swirl.png │ │ │ ├── transition-vbars.png │ │ │ ├── transition-mechadoor.png │ │ │ ├── transition-slashes.png │ │ │ ├── transition-stripes.png │ │ │ ├── transition-pixel-swirl.png │ │ │ ├── transition-motion-pixel.png │ │ │ ├── README.md │ │ │ ├── transition-grid.png.import │ │ │ ├── transition-hbars.png.import │ │ │ ├── transition-motion.png.import │ │ │ ├── transition-noise.png.import │ │ │ ├── transition-pixel.png.import │ │ │ ├── transition-swirl.png.import │ │ │ ├── transition-vbars.png.import │ │ │ ├── transition-slashes.png.import │ │ │ ├── transition-stripes.png.import │ │ │ ├── transition-mechadoor.png.import │ │ │ ├── transition-pixel-swirl.png.import │ │ │ └── transition-motion-pixel.png.import │ │ ├── Transition.shader │ │ ├── Transition.tscn │ │ ├── TexRect.gd │ │ └── Transition.gd │ ├── map │ │ ├── tuxemon.png │ │ ├── README.md │ │ ├── tuxemon.png.import │ │ ├── Map.tres │ │ └── Map.tscn │ ├── player │ │ ├── rpg-player.png │ │ ├── README.md │ │ ├── rpg-player.png.import │ │ ├── Player.gd │ │ └── Player.tscn │ ├── game │ │ └── Game.tscn │ └── instructions │ │ └── Instructions.tscn ├── icon.png ├── fonts │ ├── Xolonium-Regular.ttf │ ├── LICENSE.txt │ └── FONTLOG.txt ├── default_env.tres ├── icon.png.import └── project.godot ├── .gitignore ├── README.md └── LICENSE /godot/scenes/transition/transitions.json: -------------------------------------------------------------------------------- 1 | [ 2 | 3 | ] -------------------------------------------------------------------------------- /godot/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/icon.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | *.bak 3 | *.exe 4 | *.pck 5 | *.tmp 6 | *.x86_64 7 | *.x86 8 | 9 | .DS_Store 10 | .import/ -------------------------------------------------------------------------------- /godot/scenes/map/tuxemon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/map/tuxemon.png -------------------------------------------------------------------------------- /godot/scenes/map/README.md: -------------------------------------------------------------------------------- 1 | # Sprite creators 2 | 3 | ## [Buch](https://opengameart.org/content/tuxemon-tileset) 4 | - tuxemon.png -------------------------------------------------------------------------------- /godot/fonts/Xolonium-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/fonts/Xolonium-Regular.ttf -------------------------------------------------------------------------------- /godot/scenes/player/rpg-player.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/player/rpg-player.png -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-grid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-grid.png -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-hbars.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-hbars.png -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-motion.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-motion.png -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-noise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-noise.png -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-pixel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-pixel.png -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-swirl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-swirl.png -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-vbars.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-vbars.png -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-mechadoor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-mechadoor.png -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-slashes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-slashes.png -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-stripes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-stripes.png -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-pixel-swirl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-pixel-swirl.png -------------------------------------------------------------------------------- /godot/scenes/player/README.md: -------------------------------------------------------------------------------- 1 | # Sprite creators 2 | 3 | ## [FlaF (me)](https://artstation.com/flaf) 4 | - rpg-player.png 5 | > If you use this, credit me at [my ArtStation](https://artstation.com/flaf). -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-motion-pixel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FlavioFS/godot-pokemon-transitions/HEAD/godot/scenes/transition/transition-imgs/transition-motion-pixel.png -------------------------------------------------------------------------------- /godot/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | 9 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/README.md: -------------------------------------------------------------------------------- 1 | # Sprite creators 2 | 3 | ## [FlaF (me)](https://artstation.com/flaf) 4 | - All transition images in this folder. 5 | > If you use this, credit me at [my ArtStation](https://artstation.com/flaf). -------------------------------------------------------------------------------- /godot/scenes/transition/Transition.shader: -------------------------------------------------------------------------------- 1 | shader_type canvas_item; 2 | 3 | uniform float fill : hint_range(0., 1.) = 0.5; 4 | 5 | void fragment () { 6 | float mask = texture(TEXTURE, UV).r; 7 | vec3 black = vec3(0.); 8 | COLOR = vec4(black, step(mask, fill)); 9 | } -------------------------------------------------------------------------------- /godot/scenes/game/Game.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=2] 2 | 3 | [ext_resource path="res://scenes/map/Map.tscn" type="PackedScene" id=1] 4 | [ext_resource path="res://scenes/instructions/Instructions.tscn" type="PackedScene" id=2] 5 | [ext_resource path="res://scenes/transition/Transition.tscn" type="PackedScene" id=3] 6 | 7 | [node name="Game" type="Node2D"] 8 | 9 | [node name="Map" parent="." instance=ExtResource( 1 )] 10 | 11 | [node name="Instructions" parent="." instance=ExtResource( 2 )] 12 | layer = 3 13 | 14 | [node name="Transition" parent="." instance=ExtResource( 3 )] 15 | 16 | -------------------------------------------------------------------------------- /godot/scenes/instructions/Instructions.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://fonts/Xolonium-Regular.ttf" type="DynamicFontData" id=1] 4 | 5 | [sub_resource type="DynamicFont" id=1] 6 | size = 20 7 | font_data = ExtResource( 1 ) 8 | 9 | [node name="Instructions" type="CanvasLayer"] 10 | 11 | [node name="Label" type="Label" parent="."] 12 | anchor_top = 1.0 13 | anchor_right = 1.0 14 | anchor_bottom = 1.0 15 | margin_left = 10.0 16 | margin_top = -91.0 17 | custom_fonts/font = SubResource( 1 ) 18 | text = "Transitions: 19 | Z - Hide screen 20 | X - Show screen" 21 | valign = 1 22 | 23 | -------------------------------------------------------------------------------- /godot/icon.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://icon.png" 13 | dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/map/tuxemon.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/tuxemon.png-849aee885f33695356b8e8dd4fd16e14.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/map/tuxemon.png" 13 | dest_files=[ "res://.import/tuxemon.png-849aee885f33695356b8e8dd4fd16e14.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/player/rpg-player.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/rpg-player.png-bda519d05930a3e49dbdb7c5ff494a14.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/player/rpg-player.png" 13 | dest_files=[ "res://.import/rpg-player.png-bda519d05930a3e49dbdb7c5ff494a14.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-grid.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-grid.png-cd989e5b1f320ad9a4ae9590cab32afa.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-grid.png" 13 | dest_files=[ "res://.import/transition-grid.png-cd989e5b1f320ad9a4ae9590cab32afa.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-hbars.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-hbars.png-d8826b0b892a0f477de44257842efc00.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-hbars.png" 13 | dest_files=[ "res://.import/transition-hbars.png-d8826b0b892a0f477de44257842efc00.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-motion.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-motion.png-27233002c61baa1d2fbac57ae1816df2.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-motion.png" 13 | dest_files=[ "res://.import/transition-motion.png-27233002c61baa1d2fbac57ae1816df2.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-noise.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-noise.png-f782f6ace19e4bbb9df0836d7d38eeff.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-noise.png" 13 | dest_files=[ "res://.import/transition-noise.png-f782f6ace19e4bbb9df0836d7d38eeff.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-pixel.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-pixel.png-9e58e3c2967b607a80cffc7ea0f3551a.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-pixel.png" 13 | dest_files=[ "res://.import/transition-pixel.png-9e58e3c2967b607a80cffc7ea0f3551a.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-swirl.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-swirl.png-75d982c1885332e2f6e7c4b4c24b2b08.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-swirl.png" 13 | dest_files=[ "res://.import/transition-swirl.png-75d982c1885332e2f6e7c4b4c24b2b08.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-vbars.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-vbars.png-8d0d49d29d2ac5f5ec83ecb167e6615d.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-vbars.png" 13 | dest_files=[ "res://.import/transition-vbars.png-8d0d49d29d2ac5f5ec83ecb167e6615d.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-slashes.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-slashes.png-4047f2090582dfcc289b4dd9a936877e.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-slashes.png" 13 | dest_files=[ "res://.import/transition-slashes.png-4047f2090582dfcc289b4dd9a936877e.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-stripes.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-stripes.png-cc00e2a54ce6d5a8224397645b31a7a3.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-stripes.png" 13 | dest_files=[ "res://.import/transition-stripes.png-cc00e2a54ce6d5a8224397645b31a7a3.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-mechadoor.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-mechadoor.png-3de421bc10dc829d8477f28621d51d3e.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-mechadoor.png" 13 | dest_files=[ "res://.import/transition-mechadoor.png-3de421bc10dc829d8477f28621d51d3e.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-pixel-swirl.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-pixel-swirl.png-5ea690858d5441875159a9549ae847a7.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-pixel-swirl.png" 13 | dest_files=[ "res://.import/transition-pixel-swirl.png-5ea690858d5441875159a9549ae847a7.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /godot/scenes/transition/transition-imgs/transition-motion-pixel.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/transition-motion-pixel.png-da34044b2b7fe763c2b2942caf7bd61a.stex" 6 | metadata={ 7 | "vram_texture": false 8 | } 9 | 10 | [deps] 11 | 12 | source_file="res://scenes/transition/transition-imgs/transition-motion-pixel.png" 13 | dest_files=[ "res://.import/transition-motion-pixel.png-da34044b2b7fe763c2b2942caf7bd61a.stex" ] 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/bptc_ldr=0 21 | compress/normal_map=0 22 | flags/repeat=0 23 | flags/filter=false 24 | flags/mipmaps=false 25 | flags/anisotropic=false 26 | flags/srgb=2 27 | process/fix_alpha_border=true 28 | process/premult_alpha=false 29 | process/HDR_as_SRGB=false 30 | process/invert_color=false 31 | stream=false 32 | size_limit=0 33 | detect_3d=true 34 | svg/scale=1.0 35 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # [Godot] Pokemon Transitions 2 | Old pokemon-style screen transitions. 3 | 4 | ## [:tv: Video sample](http://www.youtube.com/watch?v=7MrJkCDC1pU) 5 | [![Preview gif 1](https://i.postimg.cc/bvzMSHv3/preview1.gif)](http://www.youtube.com/watch?v=7MrJkCDC1pU) 6 | [![Preview gif 2](https://i.postimg.cc/SsRvDSC9/preview2.gif)](http://www.youtube.com/watch?v=7MrJkCDC1pU) 7 | [![Preview gif 3](https://i.postimg.cc/yNvGmggB/preview3.gif)](http://www.youtube.com/watch?v=7MrJkCDC1pU) 8 | 9 | ## How does it work? 10 | This transition uses an Alpha Test shader and attempts to replicate retro GameBoy-style Pokemon battle transitions. 11 | Most transition-related files are in the transitions directory: 12 | 13 | ### [Transitions Directory](godot/scenes/transition) 14 | - [Transition shader](godot/scenes/transition/Transition.shader) 15 | - [Transition sprite](godot/scenes/transition/TexRect.gd) 16 | - [Transition scene](godot/scenes/transition/Transition.gd) 17 | -------------------------------------------------------------------------------- /godot/scenes/transition/Transition.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=6 format=2] 2 | 3 | [ext_resource path="res://scenes/transition/Transition.gd" type="Script" id=1] 4 | [ext_resource path="res://scenes/transition/Transition.shader" type="Shader" id=2] 5 | [ext_resource path="res://scenes/transition/transition-imgs/transition-hbars.png" type="Texture" id=3] 6 | [ext_resource path="res://scenes/transition/TexRect.gd" type="Script" id=4] 7 | 8 | [sub_resource type="ShaderMaterial" id=1] 9 | shader = ExtResource( 2 ) 10 | shader_param/fill = 0.0 11 | 12 | [node name="CanvasLayer" type="CanvasLayer"] 13 | layer = 2 14 | script = ExtResource( 1 ) 15 | 16 | [node name="TextureRect" type="TextureRect" parent="."] 17 | material = SubResource( 1 ) 18 | anchor_right = 1.0 19 | anchor_bottom = 1.0 20 | texture = ExtResource( 3 ) 21 | expand = true 22 | script = ExtResource( 4 ) 23 | duration = 1.0 24 | fill = 0.0 25 | 26 | [node name="Tween" type="Tween" parent="TextureRect"] 27 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Flávio Freitas 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /godot/scenes/transition/TexRect.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends TextureRect 3 | 4 | ########################################################### 5 | # Attributes and Nodes 6 | ########################################################### 7 | export(float, 0.0, 3.0, 0.1) var duration : float = 1.0 8 | export(float, 0.0, 1.0) var fill : float = 0.0 setget _set_fill 9 | 10 | var tween_lock : bool = false 11 | 12 | onready var tween : Tween = $Tween 13 | 14 | 15 | ########################################################### 16 | # Tweening 17 | ########################################################### 18 | func show_screen(): 19 | if tween_lock or fill == 0.0: 20 | return 21 | tween_lock = true 22 | if tween.interpolate_property(self, "fill", fill, 0.0, duration*(fill), 23 | Tween.TRANS_LINEAR, Tween.EASE_IN_OUT): 24 | if tween.start(): 25 | yield(tween, "tween_completed") 26 | tween_lock = false 27 | 28 | func hide_screen(): 29 | if tween_lock or fill == 1.0: 30 | return 31 | tween_lock = true 32 | if tween.interpolate_property(self, "fill", fill, 1.0, duration*(1.0-fill), 33 | Tween.TRANS_LINEAR, Tween.EASE_IN_OUT): 34 | if tween.start(): 35 | yield(tween, "tween_completed") 36 | tween_lock = false 37 | 38 | ########################################################### 39 | # Set Get 40 | ########################################################### 41 | func _set_fill(val:float): 42 | fill = clamp(val, 0.0, 1.0) 43 | material.set_shader_param("fill", fill) -------------------------------------------------------------------------------- /godot/scenes/player/Player.gd: -------------------------------------------------------------------------------- 1 | extends KinematicBody2D 2 | 3 | const GRID_SIZE : int = 16 4 | 5 | enum Direction { 6 | DOWN, 7 | UP, 8 | LEFT 9 | } 10 | 11 | export var speed : float = 50 12 | 13 | var direction : int = Direction.DOWN 14 | var axis : Vector2 = Vector2.ZERO 15 | var next_position : Vector2 = Vector2.ZERO 16 | 17 | onready var anim : AnimationPlayer = $Sprite/AnimationPlayer 18 | onready var sprite : Sprite = $Sprite 19 | onready var tween : Tween = $Tween 20 | onready var ray : RayCast2D = $RayCast2D 21 | 22 | func _ready(): 23 | play_anim("idle", Direction.DOWN) 24 | 25 | func _process(delta): 26 | update_inputs() 27 | if axis.x != 0 or axis.y != 0: 28 | update_direction() 29 | play_anim("walk", direction) 30 | try_move() 31 | else: 32 | play_anim("idle", direction) 33 | 34 | func try_move(): 35 | ray.enabled = true 36 | ray.force_raycast_update() 37 | if not ray.is_colliding(): 38 | ray.enabled = false 39 | set_process(false) 40 | tween.interpolate_property(self, "position", position, next_position, 41 | 0.5, Tween.TRANS_LINEAR, Tween.EASE_IN_OUT) 42 | tween.start() 43 | yield(tween, "tween_completed") 44 | set_process(true) 45 | else: 46 | ray.enabled = false 47 | 48 | func update_inputs(): 49 | axis.x = ( 50 | int(Input.is_action_pressed("ui_right")) 51 | - int(Input.is_action_pressed("ui_left")) 52 | ) 53 | axis.y = ( 54 | int(Input.is_action_pressed("ui_down")) 55 | - int(Input.is_action_pressed("ui_up")) 56 | ) 57 | 58 | func update_direction(): 59 | if axis.x != 0: 60 | direction = Direction.LEFT 61 | sprite.flip_h = axis.x > 0 62 | ray.cast_to = Vector2(axis.x * GRID_SIZE, 0) 63 | next_position = Vector2( 64 | round(position.x + ray.cast_to.x), 65 | round(position.y) 66 | ) 67 | elif axis.y != 0: 68 | direction = Direction.DOWN if axis.y > 0 else Direction.UP 69 | ray.cast_to = Vector2(0, axis.y * GRID_SIZE) 70 | next_position = Vector2( 71 | round(position.x), 72 | round(position.y + ray.cast_to.y) 73 | ) 74 | 75 | func play_anim(animation:String, dir:int): 76 | anim.play("%s-%s" % [animation, dir]) -------------------------------------------------------------------------------- /godot/scenes/transition/Transition.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends CanvasLayer 3 | 4 | ########################################################### 5 | # Transition List 6 | ########################################################### 7 | var transition_list : Array = [ 8 | "transition-hbars.png", 9 | "transition-vbars.png", 10 | "transition-mechadoor.png", 11 | "transition-noise.png", 12 | "transition-motion.png", 13 | "transition-motion-pixel.png", 14 | "transition-swirl.png", 15 | "transition-pixel-swirl.png", 16 | "transition-pixel.png", 17 | "transition-slashes.png", 18 | "transition-stripes.png", 19 | "transition-grid.png" 20 | ] 21 | 22 | enum Transitions { 23 | bars_x, 24 | bars_y, 25 | mecha_door, 26 | noise, 27 | motion, 28 | motion_pixel, 29 | swirl, 30 | pixel_swirl_2, 31 | pixel_swirl, 32 | slashes, 33 | stripes, 34 | grid 35 | } 36 | 37 | ########################################################### 38 | # Attributes and Logic 39 | ########################################################### 40 | export(Transitions) var mask : int = 0 setget _set_mask 41 | export(float, 0.0, 1.0) var fill : float = 0 setget _set_fill 42 | export(float, 0.0, 3.0, 0.1) var duration : float = 1 setget _set_duration 43 | 44 | var input_lock : bool = false 45 | 46 | onready var tex_rect : TextureRect = $TextureRect 47 | 48 | ########################################################### 49 | # Every Frame 50 | ########################################################### 51 | func _ready(): 52 | self.mask = mask 53 | self.fill = fill 54 | self.duration = duration 55 | 56 | func _process(delta): 57 | if Engine.editor_hint: 58 | print("hint") 59 | set_process(false) 60 | else: 61 | if Input.is_action_pressed("ui_accept"): 62 | tex_rect.hide_screen() 63 | elif Input.is_action_pressed("ui_cancel"): 64 | tex_rect.show_screen() 65 | 66 | ########################################################### 67 | # Set Get 68 | ########################################################### 69 | func _set_mask(transition_mask:int): 70 | var new_mask : Texture = load( 71 | "res://scenes/transition/transition-imgs/%s" % 72 | transition_list[transition_mask]) 73 | if new_mask: 74 | mask = transition_mask 75 | if Engine.editor_hint: 76 | $TextureRect.texture = new_mask 77 | elif tex_rect: 78 | tex_rect.texture = new_mask 79 | 80 | func _set_fill(val:float): 81 | fill = val 82 | if Engine.editor_hint: 83 | $TextureRect.fill = val 84 | elif tex_rect: 85 | tex_rect.fill = val 86 | 87 | func _set_duration(val:float): 88 | duration = val 89 | if Engine.editor_hint: 90 | $TextureRect.duration = val 91 | elif tex_rect: 92 | tex_rect.duration = val -------------------------------------------------------------------------------- /godot/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | _global_script_classes=[ ] 12 | _global_script_class_icons={ 13 | 14 | } 15 | 16 | [application] 17 | 18 | config/name="godot-pokemon-transitions" 19 | run/main_scene="res://scenes/game/Game.tscn" 20 | config/icon="res://icon.png" 21 | 22 | [importer_defaults] 23 | 24 | texture={ 25 | "compress/bptc_ldr": 0, 26 | "compress/hdr_mode": 0, 27 | "compress/lossy_quality": 0.7, 28 | "compress/mode": 0, 29 | "compress/normal_map": 0, 30 | "detect_3d": true, 31 | "flags/anisotropic": false, 32 | "flags/filter": false, 33 | "flags/mipmaps": false, 34 | "flags/repeat": 0, 35 | "flags/srgb": 2, 36 | "process/HDR_as_SRGB": false, 37 | "process/fix_alpha_border": true, 38 | "process/invert_color": false, 39 | "process/premult_alpha": false, 40 | "size_limit": 0, 41 | "stream": false, 42 | "svg/scale": 1.0 43 | } 44 | 45 | [input] 46 | 47 | ui_accept={ 48 | "deadzone": 0.5, 49 | "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777221,"unicode":0,"echo":false,"script":null) 50 | , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777222,"unicode":0,"echo":false,"script":null) 51 | , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null) 52 | , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":0,"pressure":0.0,"pressed":false,"script":null) 53 | , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":90,"unicode":0,"echo":false,"script":null) 54 | ] 55 | } 56 | ui_cancel={ 57 | "deadzone": 0.5, 58 | "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777217,"unicode":0,"echo":false,"script":null) 59 | , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":1,"pressure":0.0,"pressed":false,"script":null) 60 | , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":88,"unicode":0,"echo":false,"script":null) 61 | ] 62 | } 63 | 64 | [rendering] 65 | 66 | environment/default_environment="res://default_env.tres" 67 | -------------------------------------------------------------------------------- /godot/scenes/player/Player.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=10 format=2] 2 | 3 | [ext_resource path="res://scenes/player/Player.gd" type="Script" id=1] 4 | [ext_resource path="res://scenes/player/rpg-player.png" type="Texture" id=2] 5 | 6 | [sub_resource type="Animation" id=1] 7 | resource_name = "idle-0" 8 | tracks/0/type = "value" 9 | tracks/0/path = NodePath(".:frame") 10 | tracks/0/interp = 1 11 | tracks/0/loop_wrap = true 12 | tracks/0/imported = false 13 | tracks/0/enabled = true 14 | tracks/0/keys = { 15 | "times": PoolRealArray( 0 ), 16 | "transitions": PoolRealArray( 1 ), 17 | "update": 1, 18 | "values": [ 1 ] 19 | } 20 | 21 | [sub_resource type="Animation" id=2] 22 | resource_name = "idle-1" 23 | tracks/0/type = "value" 24 | tracks/0/path = NodePath(".:frame") 25 | tracks/0/interp = 1 26 | tracks/0/loop_wrap = true 27 | tracks/0/imported = false 28 | tracks/0/enabled = true 29 | tracks/0/keys = { 30 | "times": PoolRealArray( 0 ), 31 | "transitions": PoolRealArray( 1 ), 32 | "update": 1, 33 | "values": [ 4 ] 34 | } 35 | 36 | [sub_resource type="Animation" id=3] 37 | resource_name = "idle-2" 38 | tracks/0/type = "value" 39 | tracks/0/path = NodePath(".:frame") 40 | tracks/0/interp = 1 41 | tracks/0/loop_wrap = true 42 | tracks/0/imported = false 43 | tracks/0/enabled = true 44 | tracks/0/keys = { 45 | "times": PoolRealArray( 0 ), 46 | "transitions": PoolRealArray( 1 ), 47 | "update": 1, 48 | "values": [ 7 ] 49 | } 50 | 51 | [sub_resource type="Animation" id=4] 52 | resource_name = "walk-0" 53 | loop = true 54 | step = 0.25 55 | tracks/0/type = "value" 56 | tracks/0/path = NodePath(".:frame") 57 | tracks/0/interp = 1 58 | tracks/0/loop_wrap = true 59 | tracks/0/imported = false 60 | tracks/0/enabled = true 61 | tracks/0/keys = { 62 | "times": PoolRealArray( 0, 0.25, 0.5, 0.75 ), 63 | "transitions": PoolRealArray( 1, 1, 1, 1 ), 64 | "update": 1, 65 | "values": [ 0, 1, 2, 1 ] 66 | } 67 | 68 | [sub_resource type="Animation" id=5] 69 | resource_name = "walk-1" 70 | loop = true 71 | step = 0.25 72 | tracks/0/type = "value" 73 | tracks/0/path = NodePath(".:frame") 74 | tracks/0/interp = 1 75 | tracks/0/loop_wrap = true 76 | tracks/0/imported = false 77 | tracks/0/enabled = true 78 | tracks/0/keys = { 79 | "times": PoolRealArray( 0, 0.25, 0.5, 0.75 ), 80 | "transitions": PoolRealArray( 1, 1, 1, 1 ), 81 | "update": 1, 82 | "values": [ 3, 4, 5, 4 ] 83 | } 84 | 85 | [sub_resource type="Animation" id=6] 86 | resource_name = "walk-2" 87 | loop = true 88 | step = 0.25 89 | tracks/0/type = "value" 90 | tracks/0/path = NodePath(".:frame") 91 | tracks/0/interp = 1 92 | tracks/0/loop_wrap = true 93 | tracks/0/imported = false 94 | tracks/0/enabled = true 95 | tracks/0/keys = { 96 | "times": PoolRealArray( 0, 0.25, 0.5, 0.75 ), 97 | "transitions": PoolRealArray( 1, 1, 1, 1 ), 98 | "update": 1, 99 | "values": [ 6, 7, 8, 7 ] 100 | } 101 | 102 | [sub_resource type="RectangleShape2D" id=7] 103 | extents = Vector2( 8, 8 ) 104 | 105 | [node name="Player" type="KinematicBody2D"] 106 | position = Vector2( 0, -8 ) 107 | collision_mask = 0 108 | script = ExtResource( 1 ) 109 | 110 | [node name="Sprite" type="Sprite" parent="."] 111 | texture = ExtResource( 2 ) 112 | vframes = 3 113 | hframes = 3 114 | frame = 4 115 | region_filter_clip = true 116 | 117 | [node name="AnimationPlayer" type="AnimationPlayer" parent="Sprite"] 118 | playback_speed = 1.5 119 | anims/idle-0 = SubResource( 1 ) 120 | anims/idle-1 = SubResource( 2 ) 121 | anims/idle-2 = SubResource( 3 ) 122 | anims/walk-0 = SubResource( 4 ) 123 | anims/walk-1 = SubResource( 5 ) 124 | anims/walk-2 = SubResource( 6 ) 125 | 126 | [node name="Tween" type="Tween" parent="."] 127 | 128 | [node name="CollisionShape2D" type="CollisionShape2D" parent="."] 129 | position = Vector2( 0, 8 ) 130 | shape = SubResource( 7 ) 131 | 132 | [node name="RayCast2D" type="RayCast2D" parent="."] 133 | position = Vector2( 0, 8 ) 134 | cast_to = Vector2( 0, 16 ) 135 | collision_mask = 32 136 | 137 | -------------------------------------------------------------------------------- /godot/fonts/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright 2011-2016 Severin Meyer , 2 | with Reserved Font Name Xolonium. 3 | 4 | This Font Software is licensed under the SIL Open Font License, 5 | Version 1.1. This license is copied below, and is also available 6 | with a FAQ at 7 | 8 | 9 | ----------------------------------------------------------- 10 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 11 | ----------------------------------------------------------- 12 | 13 | PREAMBLE 14 | The goals of the Open Font License (OFL) are to stimulate worldwide 15 | development of collaborative font projects, to support the font creation 16 | efforts of academic and linguistic communities, and to provide a free and 17 | open framework in which fonts may be shared and improved in partnership 18 | with others. 19 | 20 | The OFL allows the licensed fonts to be used, studied, modified and 21 | redistributed freely as long as they are not sold by themselves. The 22 | fonts, including any derivative works, can be bundled, embedded, 23 | redistributed and/or sold with any software provided that any reserved 24 | names are not used by derivative works. The fonts and derivatives, 25 | however, cannot be released under any other type of license. The 26 | requirement for fonts to remain under this license does not apply 27 | to any document created using the fonts or their derivatives. 28 | 29 | DEFINITIONS 30 | "Font Software" refers to the set of files released by the Copyright 31 | Holder(s) under this license and clearly marked as such. This may 32 | include source files, build scripts and documentation. 33 | 34 | "Reserved Font Name" refers to any names specified as such after the 35 | copyright statement(s). 36 | 37 | "Original Version" refers to the collection of Font Software components as 38 | distributed by the Copyright Holder(s). 39 | 40 | "Modified Version" refers to any derivative made by adding to, deleting, 41 | or substituting -- in part or in whole -- any of the components of the 42 | Original Version, by changing formats or by porting the Font Software to a 43 | new environment. 44 | 45 | "Author" refers to any designer, engineer, programmer, technical 46 | writer or other person who contributed to the Font Software. 47 | 48 | PERMISSION & CONDITIONS 49 | Permission is hereby granted, free of charge, to any person obtaining 50 | a copy of the Font Software, to use, study, copy, merge, embed, modify, 51 | redistribute, and sell modified and unmodified copies of the Font 52 | Software, subject to the following conditions: 53 | 54 | 1) Neither the Font Software nor any of its individual components, 55 | in Original or Modified Versions, may be sold by itself. 56 | 57 | 2) Original or Modified Versions of the Font Software may be bundled, 58 | redistributed and/or sold with any software, provided that each copy 59 | contains the above copyright notice and this license. These can be 60 | included either as stand-alone text files, human-readable headers or 61 | in the appropriate machine-readable metadata fields within text or 62 | binary files as long as those fields can be easily viewed by the user. 63 | 64 | 3) No Modified Version of the Font Software may use the Reserved Font 65 | Name(s) unless explicit written permission is granted by the corresponding 66 | Copyright Holder. This restriction only applies to the primary font name as 67 | presented to the users. 68 | 69 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font 70 | Software shall not be used to promote, endorse or advertise any 71 | Modified Version, except to acknowledge the contribution(s) of the 72 | Copyright Holder(s) and the Author(s) or with their explicit written 73 | permission. 74 | 75 | 5) The Font Software, modified or unmodified, in part or in whole, 76 | must be distributed entirely under this license, and must not be 77 | distributed under any other license. The requirement for fonts to 78 | remain under this license does not apply to any document created 79 | using the Font Software. 80 | 81 | TERMINATION 82 | This license becomes null and void if any of the above conditions are 83 | not met. 84 | 85 | DISCLAIMER 86 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 87 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF 88 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT 89 | OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE 90 | COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 91 | INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL 92 | DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 93 | FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM 94 | OTHER DEALINGS IN THE FONT SOFTWARE. 95 | -------------------------------------------------------------------------------- /godot/fonts/FONTLOG.txt: -------------------------------------------------------------------------------- 1 | Please distribute this file along with the Xolonium fonts when possible. 2 | 3 | 4 | Source 5 | 6 | Find the sourcefiles of Xolonium at 7 | 8 | 9 | 10 | Credits 11 | 12 | Xolonium is created with FontForge , 13 | Inkscape , Python , and 14 | FontTools . 15 | 16 | It originated as a custom font for the open-source 17 | game Xonotic . With many thanks to the 18 | Xonotic community for your support. 19 | 20 | 21 | Supported OpenType features 22 | 23 | case Provides case sensitive placement of punctuation, 24 | brackets, and math symbols for uppercase text. 25 | frac Replaces number/number sequences with diagonal fractions. 26 | Numbers that touch a slash should not exceed 10 digits. 27 | kern Provides kerning for Latin, Greek, and Cyrillic scripts. 28 | locl Dutch: Replaces j with a stressed version if it follows í. 29 | Sami: Replaces n-form Eng with the preferred N-form version. 30 | Romanian and Moldovan: Replaces ŞşŢţ with the preferred ȘșȚț. 31 | pnum Replaces monospaced digits with proportional versions. 32 | sinf Replaces digits with scientific inferiors below the baseline. 33 | subs Replaces digits with subscript versions on the baseline. 34 | sups Replaces digits with superscript versions. 35 | zero Replaces zero with a slashed version. 36 | 37 | 38 | Supported glyph sets 39 | 40 | Adobe Latin 3 41 | OpenType W1G 42 | ISO 8859-1 Western European 43 | ISO 8859-2 Central European 44 | ISO 8859-3 South European 45 | ISO 8859-4 North European 46 | ISO 8859-5 Cyrillic 47 | ISO 8859-7 Greek 48 | ISO 8859-9 Turkish 49 | ISO 8859-10 Nordic 50 | ISO 8859-13 Baltic Rim 51 | ISO 8859-14 Celtic 52 | ISO 8859-15 Western European 53 | ISO 8859-16 South-Eastern European 54 | 55 | 56 | Available glyphs 57 | 58 | !"#$%&'()*+,-./0123456789:;<=>? 59 | @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ 60 | `abcdefghijklmnopqrstuvwxyz{|}~ 61 | 62 |  ¡¢£¤¥¦§¨©ª«¬ ®¯°±²³´µ¶·¸¹º»¼½¾¿ 63 | ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞß 64 | àáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ 65 | ĀāĂ㥹ĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğ 66 | ĠġĢģĤĥĦħĨĩĪīĬĭĮįİıIJijĴĵĶķĸĹĺĻļĽľ 67 | ĿŀŁłŃńŅņŇňŊŋŌōŎŏŐőŒœŔŕŖŗŘřŚśŜŝŞş 68 | ŠšŢţŤťŦŧŨũŪūŬŭŮůŰűŲųŴŵŶŷŸŹźŻżŽž 69 | ƒǺǻǼǽǾǿȘșȚțȷ 70 | 71 | ˆˇˉ˘˙˚˛˜˝ 72 | 73 | ͺ;΄΅Ά·ΈΉΊΌΎΏΐ 74 | ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩΪΫάέήίΰ 75 | αβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ 76 | 77 | ЀЁЂЃЄЅІЇЈЉЊЋЌЍЎЏАБВГДЕЖЗИЙКЛМНОП 78 | РСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп 79 | рстуфхцчшщъыьэюяѐёђѓєѕіїјљњћќѝўџ 80 | ѢѣѲѳѴѵҐґҒғҔҕҖҗҘҙҚқҜҝҞҟҠҡҢңҤҥҦҧҨҩ 81 | ҪҫҬҭҮүҰұҲҳҴҵҶҷҸҹҺһҼҽӀӁӂӇӈӋӌӏӐӑӒӓ 82 | ӔӕӖӗӘәӜӝӞӟӠӡӢӣӤӥӦӧӨөӮӯӰӱӲӳӴӵӶӷӸӹ 83 | Ԥԥ 84 | 85 | ḂḃḊḋḞḟṀṁṖṗṠṡṪṫẀẁẂẃẄẅẞỲỳ 86 | 87 |      ‒–—―‘’‚‛“”„‟†‡•…‰′″‹›‽‾⁄ 88 | ⁰⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾ⁿ₀₁₂₃₄₅₆₇₈₉₊₋₌₍₎ 89 | ₤₦₩₫€₯₱₹₺₽₿ 90 | ℅ℓ№℗™Ω℮ 91 | ⅛⅜⅝⅞ 92 | ←↑→↓ 93 | ∂∆∏∑−∕∙√∞∟∫≈≠≤≥ 94 | ⌖ 95 | ■▬▮▰▲▶▼◀◆◊●◢◣◤◥ 96 | ☄★☠☢☣⚙⚛⚠⚡⛔ 97 | ❇❈❌❤❰❱❲❳ 98 | fffiflffiffl 99 | 🌌🌍🌎🌏👽💣🔥🔫 100 | 😁😃😄😆😇😈😉😊😎😐😒😕😘 101 | 😛😝😞😟😠😣😭😮😲😴😵 102 | 🚀 103 | 104 | 105 | Debugging glyphs 106 | 107 |  U+EFFD Font version 108 |  U+F000 Font hinting indicator 109 | 110 | 111 | Changelog 112 | 113 | Xolonium 4.1 2016-11-22 Severin Meyer 114 | Reverted frac OpenType feature to a more stable implementation 115 | 116 | Xolonium 4.0 2016-10-08 Severin Meyer 117 | Decreased width of most glyphs 118 | Thinner vertical stems in Xolonium-Regular 119 | Thicker horizontal stems in Xolonium-Bold 120 | Revised diagonal stems 121 | Lowered middle bars 122 | Revised diacritical bars 123 | Added glyphs: 124 | ӏẞ₿ 125 | U+2007 U+2008 U+2009 U+200A U+202F 126 | U+EFFD U+F000 127 | Revised glyphs: 128 | $&,JKQRXkwxy~¢¤ßǻ˜ζκλμξφЖУжћѴѵ∕₱₺₦₩€ℓ№≈ffffiffl 129 | ❤🌍🌎🌏😁😄😇😈😉😊😘😭😮😴🚀 130 | Removed uncommon glyphs: 131 | ʼnſʼҌҍҎҏҾҿӃӄӇӈӚӛӪӫӬӭ 132 | U+0312 U+0313 U+0326 133 | Simplified OpenType features pnum, zero, and case 134 | Removed OpenType feature dlig 135 | Revised vertical metrics 136 | Merged outlines of composite glyphs in otf version 137 | Added ttf version with custom outlines and instructions 138 | Added woff and woff2 version 139 | 140 | Xolonium 3.1 2015-06-10 Severin Meyer 141 | Added currency glyphs: 142 | ₦₩₫₱₹₺₽ 143 | Revised glyph: 144 | ₯ 145 | Relicensed public release under the SIL Open Font License 1.1 146 | 147 | Xolonium 3.0 2015-05-04 Severin Meyer 148 | Decreased width of glyphs 149 | Decreased descender height 150 | Increased height of super/subscript glyphs 151 | Revised width of dashes, underscore, and overscore 152 | Sharper bends with more circular proportions 153 | Decreased stroke thickness of mathematical glyphs 154 | Revised diacritical marks 155 | Revised diacritical bars 156 | Revised Cyrillic hooks 157 | Revised glyphs: 158 | GQRYjmuwßŊŒſƒǻfffiffiffl 159 | ΞΨΩδζιξπςστυφω 160 | ЉЄДЛУЭЯбдлэяєљђєћѢѣҨҩҼҽӃӄӘә 161 | #$&'()*,/69?@[]{}~¡£¤¥§©®¿ 162 | ‹›₤€₯ℓ№℗℮←↑→↓∂∏∑∞≈▰☄❈❰❱❲❳😝 163 | Raised vertical position of mathematical glyphs 164 | Unified advance width of numeral and monetary glyphs 165 | Unified advance width of mathematical glyphs 166 | Revised bearings 167 | Rewrote kern feature 168 | Bolder Xolonium-Bold with improved proportions 169 | Updated glyph names to conform to the AGLFN 1.7 170 | Revised hints and PS Private Dictionary 171 | Added glyphs: 172 | ӶӷԤԥ 173 | Added OpenType features: 174 | case frac liga locl pnum sinf subs sups zero 175 | 176 | Xolonium 2.4 2014-12-23 Severin Meyer 177 | Added dingbats: 178 | ⛔💣🔥 179 | Revised size and design of emoticons 180 | Revised dingbats: 181 | ⌖☄☠☣⚙⚛⚠⚡❇❈🌌🌍🌎🌏🔫 182 | Removed dingbat: 183 | 💥 184 | 185 | Xolonium 2.3 2014-08-14 Severin Meyer 186 | Bugfixed ε and έ, thanks to bowzee for the feedback 187 | 188 | Xolonium 2.2 2014-03-01 Severin Meyer 189 | Added dingbats: 190 | ⌖◆●❌💥 191 | Revised dingbats: 192 | •←↑→↓◊☄★☠☣⚙⚛⚠⚡❇❈❤🌌🌍🌎🌏👽🔫🚀 193 | Removed dingbats: 194 | ♻✪💡📡🔋🔧🔭 195 | 196 | Xolonium 2.1 2013-10-20 Severin Meyer 197 | Added dingbats: 198 | ←↑→↓❰❱❲❳■▬▮▰▲▶▼◀◢◣◤◥ 199 | ☄★☠☢☣♻⚙⚛⚠⚡✪❇❈❤ 200 | 🌌🌍🌎🌏👽💡📡🔋🔧🔫🔭🚀 201 | 😁😃😄😆😇😈😉😊😎😐😒😕 202 | 😘😛😝😞😟😠😣😭😮😲😴😵 203 | 204 | Xolonium 2.0.1 2013-07-12 Severin Meyer 205 | Reorganised and simplified files 206 | 207 | Xolonium 2.0 2012-08-11 Severin Meyer 208 | Revised bends 209 | Revised thickness of uppercase diagonal stems 210 | Revised diacritical marks 211 | Revised hints and PS Private Dictionary 212 | Revised glyphs: 213 | *1469@DPRly{}§©®¶ÐÞƒΘΞαεζνξνυЄЉЊ 214 | ЏБЗЛУЧЪЫЬЭЯбзлчъыьэяєљњџ•€∂∙√∞∫≠ 215 | Completed glyph sets: 216 | Adobe Latin 3 217 | OpenType World Glyph Set 1 (W1G) 218 | Ghostscript Standard (ghostscript-fonts-std-8.11) 219 | Added OpenType kern feature 220 | Added Xolonium-Bold 221 | 222 | Xolonium 1.2 2011-02-12 Severin Meyer 223 | Revised glyphs: 224 | D·Ðı 225 | Completed glyph sets: 226 | ISO 8859-7 (Greek) 227 | Unicode Latin Extended-A block 228 | Added glyphs: 229 | †‡•…‰⁄™∂∑−√∞≠≤≥ 230 | 231 | Xolonium 1.1 2011-01-17 Severin Meyer 232 | Revised placement of cedilla and ogonek in accented glyphs 233 | Revised glyphs: 234 | ,;DKTjkvwxy¥§Ð˛€ 235 | Completed glyph sets: 236 | ISO 8859-2 (Central European) 237 | ISO 8859-3 (South European, Esperanto) 238 | ISO 8859-4 (North European) 239 | ISO 8859-5 (Cyrillic) 240 | ISO 8859-9 (Turkish) 241 | ISO 8859-10 (Nordic) 242 | ISO 8859-13 (Baltic Rim) 243 | ISO 8859-14 (Celtic) 244 | ISO 8859-16 (South-Eastern European) 245 | Added glyphs: 246 | ȷʼ̒ ЀЍѐѝ‒–—‘’‚‛“”„‟‹› 247 | 248 | Xolonium 1.0 2011-01-04 Severin Meyer 249 | Completed glyph sets: 250 | ISO 8859-1 (Western European) 251 | ISO 8859-15 (Western European) 252 | Added glyphs: 253 | ĄĆĘŁŃŚŹŻąćęłńśźżıˆˇ˙˚˛˜ 254 | -------------------------------------------------------------------------------- /godot/scenes/map/Map.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="TileSet" load_steps=27 format=2] 2 | 3 | [ext_resource path="res://scenes/map/tuxemon.png" type="Texture" id=1] 4 | 5 | [sub_resource type="ConvexPolygonShape2D" id=1] 6 | points = PoolVector2Array( 4, 8, 12, 8, 12, 16, 4, 16 ) 7 | 8 | [sub_resource type="ConvexPolygonShape2D" id=2] 9 | points = PoolVector2Array( 4, 0, 12, 0, 12, 16, 4, 16 ) 10 | 11 | [sub_resource type="ConvexPolygonShape2D" id=3] 12 | points = PoolVector2Array( 4, 0, 12, 0, 12, 8, 4, 8 ) 13 | 14 | [sub_resource type="ConvexPolygonShape2D" id=4] 15 | points = PoolVector2Array( 4, 8, 12, 8, 12, 16, 4, 16 ) 16 | 17 | [sub_resource type="ConvexPolygonShape2D" id=5] 18 | points = PoolVector2Array( 4, 0, 12, 0, 12, 16, 4, 16 ) 19 | 20 | [sub_resource type="ConvexPolygonShape2D" id=6] 21 | points = PoolVector2Array( 4, 0, 12, 0, 12, 8, 4, 8 ) 22 | 23 | [sub_resource type="ConvexPolygonShape2D" id=7] 24 | points = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) 25 | 26 | [sub_resource type="ConvexPolygonShape2D" id=8] 27 | points = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) 28 | 29 | [sub_resource type="ConvexPolygonShape2D" id=9] 30 | points = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) 31 | 32 | [sub_resource type="ConvexPolygonShape2D" id=10] 33 | points = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) 34 | 35 | [sub_resource type="ConvexPolygonShape2D" id=11] 36 | points = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) 37 | 38 | [sub_resource type="ConvexPolygonShape2D" id=12] 39 | points = PoolVector2Array( 16, 0, 16, 4, 4, 4, 4, 16, 0, 16, 0, 0 ) 40 | 41 | [sub_resource type="ConvexPolygonShape2D" id=13] 42 | points = PoolVector2Array( 0, 0, 16, 0, 16, 4, 0, 4 ) 43 | 44 | [sub_resource type="ConvexPolygonShape2D" id=14] 45 | points = PoolVector2Array( 16, 0, 16, 16, 12, 16, 12, 4, 0, 4, 0, 0 ) 46 | 47 | [sub_resource type="ConvexPolygonShape2D" id=15] 48 | points = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) 49 | 50 | [sub_resource type="ConvexPolygonShape2D" id=16] 51 | points = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) 52 | 53 | [sub_resource type="ConvexPolygonShape2D" id=17] 54 | points = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) 55 | 56 | [sub_resource type="ConvexPolygonShape2D" id=18] 57 | points = PoolVector2Array( 0, 0, 4, 0, 4, 16, 0, 16 ) 58 | 59 | [sub_resource type="ConvexPolygonShape2D" id=19] 60 | points = PoolVector2Array( 12, 0, 16, 0, 16, 16, 12, 16 ) 61 | 62 | [sub_resource type="ConvexPolygonShape2D" id=20] 63 | points = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) 64 | 65 | [sub_resource type="ConvexPolygonShape2D" id=21] 66 | points = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) 67 | 68 | [sub_resource type="ConvexPolygonShape2D" id=22] 69 | points = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) 70 | 71 | [sub_resource type="ConvexPolygonShape2D" id=23] 72 | points = PoolVector2Array( 0, 0, 32, 0, 32, 32, 0, 32 ) 73 | 74 | [sub_resource type="ConvexPolygonShape2D" id=24] 75 | points = PoolVector2Array( 0, 0, 16, 0, 16, 32, 0, 32 ) 76 | 77 | [sub_resource type="ConvexPolygonShape2D" id=25] 78 | points = PoolVector2Array( 0, 0, 32, 0, 32, 32, 0, 32 ) 79 | 80 | [resource] 81 | 30/name = "hill-R" 82 | 30/texture = ExtResource( 1 ) 83 | 30/tex_offset = Vector2( 0, 0 ) 84 | 30/modulate = Color( 1, 1, 1, 1 ) 85 | 30/region = Rect2( 48, 64, 16, 48 ) 86 | 30/tile_mode = 1 87 | 30/autotile/bitmask_mode = 2 88 | 30/autotile/bitmask_flags = [ Vector2( 0, 0 ), 144, Vector2( 0, 1 ), 146, Vector2( 0, 2 ), 18 ] 89 | 30/autotile/icon_coordinate = Vector2( 0, 0 ) 90 | 30/autotile/tile_size = Vector2( 16, 16 ) 91 | 30/autotile/spacing = 0 92 | 30/autotile/occluder_map = [ ] 93 | 30/autotile/navpoly_map = [ ] 94 | 30/autotile/priority_map = [ ] 95 | 30/autotile/z_index_map = [ ] 96 | 30/occluder_offset = Vector2( 0, 0 ) 97 | 30/navigation_offset = Vector2( 0, 0 ) 98 | 30/shapes = [ { 99 | "autotile_coord": Vector2( 0, 0 ), 100 | "one_way": false, 101 | "one_way_margin": 1.0, 102 | "shape": SubResource( 1 ), 103 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 104 | }, { 105 | "autotile_coord": Vector2( 0, 1 ), 106 | "one_way": false, 107 | "one_way_margin": 1.0, 108 | "shape": SubResource( 2 ), 109 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 110 | }, { 111 | "autotile_coord": Vector2( 0, 2 ), 112 | "one_way": false, 113 | "one_way_margin": 1.0, 114 | "shape": SubResource( 3 ), 115 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 116 | } ] 117 | 30/z_index = 0 118 | 31/name = "hill-L" 119 | 31/texture = ExtResource( 1 ) 120 | 31/tex_offset = Vector2( 0, 0 ) 121 | 31/modulate = Color( 1, 1, 1, 1 ) 122 | 31/region = Rect2( 32, 64, 16, 48 ) 123 | 31/tile_mode = 1 124 | 31/autotile/bitmask_mode = 2 125 | 31/autotile/bitmask_flags = [ Vector2( 0, 0 ), 144, Vector2( 0, 1 ), 146, Vector2( 0, 2 ), 18 ] 126 | 31/autotile/icon_coordinate = Vector2( 0, 0 ) 127 | 31/autotile/tile_size = Vector2( 16, 16 ) 128 | 31/autotile/spacing = 0 129 | 31/autotile/occluder_map = [ ] 130 | 31/autotile/navpoly_map = [ ] 131 | 31/autotile/priority_map = [ ] 132 | 31/autotile/z_index_map = [ ] 133 | 31/occluder_offset = Vector2( 0, 0 ) 134 | 31/navigation_offset = Vector2( 0, 0 ) 135 | 31/shapes = [ { 136 | "autotile_coord": Vector2( 0, 0 ), 137 | "one_way": false, 138 | "one_way_margin": 1.0, 139 | "shape": SubResource( 4 ), 140 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 141 | }, { 142 | "autotile_coord": Vector2( 0, 1 ), 143 | "one_way": false, 144 | "one_way_margin": 1.0, 145 | "shape": SubResource( 5 ), 146 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 147 | }, { 148 | "autotile_coord": Vector2( 0, 2 ), 149 | "one_way": false, 150 | "one_way_margin": 1.0, 151 | "shape": SubResource( 6 ), 152 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 153 | } ] 154 | 31/z_index = 0 155 | 32/name = "tuxemon.png 32" 156 | 32/texture = ExtResource( 1 ) 157 | 32/tex_offset = Vector2( 0, 0 ) 158 | 32/modulate = Color( 1, 1, 1, 1 ) 159 | 32/region = Rect2( 112, 16, 16, 16 ) 160 | 32/tile_mode = 1 161 | 32/autotile/bitmask_mode = 2 162 | 32/autotile/bitmask_flags = [ Vector2( 0, 0 ), 511, Vector2( 0, 1 ), 511, Vector2( 0, 2 ), 511 ] 163 | 32/autotile/icon_coordinate = Vector2( 0, 0 ) 164 | 32/autotile/tile_size = Vector2( 16, 16 ) 165 | 32/autotile/spacing = 0 166 | 32/autotile/occluder_map = [ ] 167 | 32/autotile/navpoly_map = [ ] 168 | 32/autotile/priority_map = [ ] 169 | 32/autotile/z_index_map = [ ] 170 | 32/occluder_offset = Vector2( 0, 0 ) 171 | 32/navigation_offset = Vector2( 0, 0 ) 172 | 32/shapes = [ ] 173 | 32/z_index = 0 174 | 38/name = "hill-T" 175 | 38/texture = ExtResource( 1 ) 176 | 38/tex_offset = Vector2( 0, 0 ) 177 | 38/modulate = Color( 1, 1, 1, 1 ) 178 | 38/region = Rect2( 64, 48, 48, 16 ) 179 | 38/tile_mode = 1 180 | 38/autotile/bitmask_mode = 2 181 | 38/autotile/bitmask_flags = [ Vector2( 0, 0 ), 48, Vector2( 1, 0 ), 56, Vector2( 2, 0 ), 24 ] 182 | 38/autotile/icon_coordinate = Vector2( 0, 0 ) 183 | 38/autotile/tile_size = Vector2( 16, 16 ) 184 | 38/autotile/spacing = 0 185 | 38/autotile/occluder_map = [ ] 186 | 38/autotile/navpoly_map = [ ] 187 | 38/autotile/priority_map = [ ] 188 | 38/autotile/z_index_map = [ ] 189 | 38/occluder_offset = Vector2( 0, 0 ) 190 | 38/navigation_offset = Vector2( 0, 0 ) 191 | 38/shapes = [ ] 192 | 38/z_index = 0 193 | 39/name = "hill-B" 194 | 39/texture = ExtResource( 1 ) 195 | 39/tex_offset = Vector2( 0, 0 ) 196 | 39/modulate = Color( 1, 1, 1, 1 ) 197 | 39/region = Rect2( 64, 64, 48, 16 ) 198 | 39/tile_mode = 1 199 | 39/autotile/bitmask_mode = 2 200 | 39/autotile/bitmask_flags = [ Vector2( 0, 0 ), 48, Vector2( 1, 0 ), 56, Vector2( 2, 0 ), 24 ] 201 | 39/autotile/icon_coordinate = Vector2( 0, 0 ) 202 | 39/autotile/tile_size = Vector2( 16, 16 ) 203 | 39/autotile/spacing = 0 204 | 39/autotile/occluder_map = [ ] 205 | 39/autotile/navpoly_map = [ ] 206 | 39/autotile/priority_map = [ ] 207 | 39/autotile/z_index_map = [ ] 208 | 39/occluder_offset = Vector2( 0, 0 ) 209 | 39/navigation_offset = Vector2( 0, 0 ) 210 | 39/shapes = [ ] 211 | 39/z_index = 0 212 | 40/name = "painted" 213 | 40/texture = ExtResource( 1 ) 214 | 40/tex_offset = Vector2( 0, 0 ) 215 | 40/modulate = Color( 1, 1, 1, 1 ) 216 | 40/region = Rect2( 48, 144, 80, 16 ) 217 | 40/tile_mode = 1 218 | 40/autotile/bitmask_mode = 2 219 | 40/autotile/bitmask_flags = [ Vector2( 1, 0 ), 56, Vector2( 3, 0 ), 24, Vector2( 4, 0 ), 48 ] 220 | 40/autotile/icon_coordinate = Vector2( 0, 0 ) 221 | 40/autotile/tile_size = Vector2( 16, 16 ) 222 | 40/autotile/spacing = 0 223 | 40/autotile/occluder_map = [ ] 224 | 40/autotile/navpoly_map = [ ] 225 | 40/autotile/priority_map = [ ] 226 | 40/autotile/z_index_map = [ ] 227 | 40/occluder_offset = Vector2( 0, 0 ) 228 | 40/navigation_offset = Vector2( 0, 0 ) 229 | 40/shapes = [ { 230 | "autotile_coord": Vector2( 2, 0 ), 231 | "one_way": false, 232 | "one_way_margin": 1.0, 233 | "shape": SubResource( 7 ), 234 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 235 | }, { 236 | "autotile_coord": Vector2( 1, 0 ), 237 | "one_way": false, 238 | "one_way_margin": 1.0, 239 | "shape": SubResource( 8 ), 240 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 241 | }, { 242 | "autotile_coord": Vector2( 0, 0 ), 243 | "one_way": false, 244 | "one_way_margin": 1.0, 245 | "shape": SubResource( 9 ), 246 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 247 | }, { 248 | "autotile_coord": Vector2( 3, 0 ), 249 | "one_way": false, 250 | "one_way_margin": 1.0, 251 | "shape": SubResource( 10 ), 252 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 253 | }, { 254 | "autotile_coord": Vector2( 4, 0 ), 255 | "one_way": false, 256 | "one_way_margin": 1.0, 257 | "shape": SubResource( 11 ), 258 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 259 | } ] 260 | 40/z_index = 0 261 | 41/name = "wood-fence" 262 | 41/texture = ExtResource( 1 ) 263 | 41/tex_offset = Vector2( 0, 0 ) 264 | 41/modulate = Color( 1, 1, 1, 1 ) 265 | 41/region = Rect2( 48, 112, 16, 16 ) 266 | 41/tile_mode = 1 267 | 41/autotile/bitmask_mode = 2 268 | 41/autotile/bitmask_flags = [ Vector2( 1, 0 ), 48, Vector2( 1, 1 ), 56 ] 269 | 41/autotile/icon_coordinate = Vector2( 0, 0 ) 270 | 41/autotile/tile_size = Vector2( 16, 16 ) 271 | 41/autotile/spacing = 0 272 | 41/autotile/occluder_map = [ ] 273 | 41/autotile/navpoly_map = [ ] 274 | 41/autotile/priority_map = [ ] 275 | 41/autotile/z_index_map = [ ] 276 | 41/occluder_offset = Vector2( 0, 0 ) 277 | 41/navigation_offset = Vector2( 0, 0 ) 278 | 41/shapes = [ ] 279 | 41/z_index = 0 280 | 42/name = "brush" 281 | 42/texture = ExtResource( 1 ) 282 | 42/tex_offset = Vector2( 0, 0 ) 283 | 42/modulate = Color( 1, 1, 1, 1 ) 284 | 42/region = Rect2( 16, 80, 16, 16 ) 285 | 42/tile_mode = 0 286 | 42/occluder_offset = Vector2( 0, 0 ) 287 | 42/navigation_offset = Vector2( 0, 0 ) 288 | 42/shapes = [ ] 289 | 42/z_index = 0 290 | 44/name = "f1" 291 | 44/texture = ExtResource( 1 ) 292 | 44/tex_offset = Vector2( 0, 0 ) 293 | 44/modulate = Color( 1, 1, 1, 1 ) 294 | 44/region = Rect2( 112, 0, 16, 16 ) 295 | 44/tile_mode = 0 296 | 44/occluder_offset = Vector2( 0, 0 ) 297 | 44/navigation_offset = Vector2( 0, 0 ) 298 | 44/shapes = [ ] 299 | 44/z_index = 0 300 | 45/name = "f2" 301 | 45/texture = ExtResource( 1 ) 302 | 45/tex_offset = Vector2( 0, 0 ) 303 | 45/modulate = Color( 1, 1, 1, 1 ) 304 | 45/region = Rect2( 112, 112, 16, 16 ) 305 | 45/tile_mode = 0 306 | 45/occluder_offset = Vector2( 0, 0 ) 307 | 45/navigation_offset = Vector2( 0, 0 ) 308 | 45/shapes = [ ] 309 | 45/z_index = 0 310 | 46/name = "f3" 311 | 46/texture = ExtResource( 1 ) 312 | 46/tex_offset = Vector2( 0, 0 ) 313 | 46/modulate = Color( 1, 1, 1, 1 ) 314 | 46/region = Rect2( 112, 80, 16, 16 ) 315 | 46/tile_mode = 0 316 | 46/occluder_offset = Vector2( 0, 0 ) 317 | 46/navigation_offset = Vector2( 0, 0 ) 318 | 46/shapes = [ ] 319 | 46/z_index = 0 320 | 47/name = "floor" 321 | 47/texture = ExtResource( 1 ) 322 | 47/tex_offset = Vector2( 0, 0 ) 323 | 47/modulate = Color( 1, 1, 1, 1 ) 324 | 47/region = Rect2( 64, 96, 48, 48 ) 325 | 47/tile_mode = 1 326 | 47/autotile/bitmask_mode = 2 327 | 47/autotile/bitmask_flags = [ Vector2( 0, 0 ), 432, Vector2( 0, 1 ), 438, Vector2( 0, 2 ), 54, Vector2( 1, 0 ), 504, Vector2( 1, 1 ), 511, Vector2( 1, 2 ), 63, Vector2( 2, 0 ), 216, Vector2( 2, 1 ), 219, Vector2( 2, 2 ), 27 ] 328 | 47/autotile/icon_coordinate = Vector2( 1, 1 ) 329 | 47/autotile/tile_size = Vector2( 16, 16 ) 330 | 47/autotile/spacing = 0 331 | 47/autotile/occluder_map = [ ] 332 | 47/autotile/navpoly_map = [ ] 333 | 47/autotile/priority_map = [ ] 334 | 47/autotile/z_index_map = [ ] 335 | 47/occluder_offset = Vector2( 0, 0 ) 336 | 47/navigation_offset = Vector2( 0, 0 ) 337 | 47/shapes = [ ] 338 | 47/z_index = 0 339 | 48/name = "wall-T" 340 | 48/texture = ExtResource( 1 ) 341 | 48/tex_offset = Vector2( 0, 0 ) 342 | 48/modulate = Color( 1, 1, 1, 1 ) 343 | 48/region = Rect2( 64, 0, 48, 16 ) 344 | 48/tile_mode = 1 345 | 48/autotile/bitmask_mode = 2 346 | 48/autotile/bitmask_flags = [ Vector2( 0, 0 ), 48, Vector2( 1, 0 ), 56, Vector2( 2, 0 ), 24 ] 347 | 48/autotile/icon_coordinate = Vector2( 0, 0 ) 348 | 48/autotile/tile_size = Vector2( 16, 16 ) 349 | 48/autotile/spacing = 0 350 | 48/autotile/occluder_map = [ ] 351 | 48/autotile/navpoly_map = [ ] 352 | 48/autotile/priority_map = [ ] 353 | 48/autotile/z_index_map = [ ] 354 | 48/occluder_offset = Vector2( 0, 0 ) 355 | 48/navigation_offset = Vector2( 0, 0 ) 356 | 48/shapes = [ { 357 | "autotile_coord": Vector2( 0, 0 ), 358 | "one_way": false, 359 | "one_way_margin": 1.0, 360 | "shape": SubResource( 12 ), 361 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 362 | }, { 363 | "autotile_coord": Vector2( 1, 0 ), 364 | "one_way": false, 365 | "one_way_margin": 1.0, 366 | "shape": SubResource( 13 ), 367 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 368 | }, { 369 | "autotile_coord": Vector2( 2, 0 ), 370 | "one_way": false, 371 | "one_way_margin": 1.0, 372 | "shape": SubResource( 14 ), 373 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 374 | } ] 375 | 48/z_index = 0 376 | 49/name = "wall-B" 377 | 49/texture = ExtResource( 1 ) 378 | 49/tex_offset = Vector2( 0, 0 ) 379 | 49/modulate = Color( 1, 1, 1, 1 ) 380 | 49/region = Rect2( 64, 32, 48, 16 ) 381 | 49/tile_mode = 1 382 | 49/autotile/bitmask_mode = 2 383 | 49/autotile/bitmask_flags = [ Vector2( 0, 0 ), 48, Vector2( 1, 0 ), 56, Vector2( 2, 0 ), 24 ] 384 | 49/autotile/icon_coordinate = Vector2( 0, 0 ) 385 | 49/autotile/tile_size = Vector2( 16, 16 ) 386 | 49/autotile/spacing = 0 387 | 49/autotile/occluder_map = [ ] 388 | 49/autotile/navpoly_map = [ ] 389 | 49/autotile/priority_map = [ ] 390 | 49/autotile/z_index_map = [ ] 391 | 49/occluder_offset = Vector2( 0, 0 ) 392 | 49/navigation_offset = Vector2( 0, 0 ) 393 | 49/shapes = [ { 394 | "autotile_coord": Vector2( 1, 0 ), 395 | "one_way": false, 396 | "one_way_margin": 1.0, 397 | "shape": SubResource( 15 ), 398 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 399 | }, { 400 | "autotile_coord": Vector2( 0, 0 ), 401 | "one_way": false, 402 | "one_way_margin": 1.0, 403 | "shape": SubResource( 16 ), 404 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 405 | }, { 406 | "autotile_coord": Vector2( 2, 0 ), 407 | "one_way": false, 408 | "one_way_margin": 1.0, 409 | "shape": SubResource( 17 ), 410 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 411 | } ] 412 | 49/z_index = 0 413 | 50/name = "wall-L" 414 | 50/texture = ExtResource( 1 ) 415 | 50/tex_offset = Vector2( 0, 0 ) 416 | 50/modulate = Color( 1, 1, 1, 1 ) 417 | 50/region = Rect2( 64, 16, 16, 16 ) 418 | 50/tile_mode = 0 419 | 50/occluder_offset = Vector2( 0, 0 ) 420 | 50/navigation_offset = Vector2( 0, 0 ) 421 | 50/shapes = [ { 422 | "autotile_coord": Vector2( 0, 0 ), 423 | "one_way": false, 424 | "one_way_margin": 1.0, 425 | "shape": SubResource( 18 ), 426 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 427 | } ] 428 | 50/z_index = 0 429 | 51/name = "wall-R" 430 | 51/texture = ExtResource( 1 ) 431 | 51/tex_offset = Vector2( 0, 0 ) 432 | 51/modulate = Color( 1, 1, 1, 1 ) 433 | 51/region = Rect2( 96, 16, 16, 16 ) 434 | 51/tile_mode = 0 435 | 51/occluder_offset = Vector2( 0, 0 ) 436 | 51/navigation_offset = Vector2( 0, 0 ) 437 | 51/shapes = [ { 438 | "autotile_coord": Vector2( 0, 0 ), 439 | "one_way": false, 440 | "one_way_margin": 1.0, 441 | "shape": SubResource( 19 ), 442 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 443 | } ] 444 | 51/z_index = 0 445 | 52/name = "wood" 446 | 52/texture = ExtResource( 1 ) 447 | 52/tex_offset = Vector2( 0, 0 ) 448 | 52/modulate = Color( 1, 1, 1, 1 ) 449 | 52/region = Rect2( 0, 128, 48, 32 ) 450 | 52/tile_mode = 1 451 | 52/autotile/bitmask_mode = 2 452 | 52/autotile/bitmask_flags = [ Vector2( 0, 0 ), 24, Vector2( 1, 0 ), 48, Vector2( 1, 1 ), 56 ] 453 | 52/autotile/icon_coordinate = Vector2( 0, 0 ) 454 | 52/autotile/tile_size = Vector2( 16, 16 ) 455 | 52/autotile/spacing = 0 456 | 52/autotile/occluder_map = [ ] 457 | 52/autotile/navpoly_map = [ ] 458 | 52/autotile/priority_map = [ ] 459 | 52/autotile/z_index_map = [ ] 460 | 52/occluder_offset = Vector2( 0, 0 ) 461 | 52/navigation_offset = Vector2( 0, 0 ) 462 | 52/shapes = [ { 463 | "autotile_coord": Vector2( 0, 0 ), 464 | "one_way": false, 465 | "one_way_margin": 1.0, 466 | "shape": SubResource( 20 ), 467 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 468 | }, { 469 | "autotile_coord": Vector2( 1, 0 ), 470 | "one_way": false, 471 | "one_way_margin": 1.0, 472 | "shape": SubResource( 21 ), 473 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 474 | }, { 475 | "autotile_coord": Vector2( 1, 1 ), 476 | "one_way": false, 477 | "one_way_margin": 1.0, 478 | "shape": SubResource( 22 ), 479 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 480 | } ] 481 | 52/z_index = 0 482 | 53/name = "base1" 483 | 53/texture = ExtResource( 1 ) 484 | 53/tex_offset = Vector2( 0, 0 ) 485 | 53/modulate = Color( 1, 1, 1, 1 ) 486 | 53/region = Rect2( 80, 80, 16, 16 ) 487 | 53/tile_mode = 0 488 | 53/occluder_offset = Vector2( 0, 0 ) 489 | 53/navigation_offset = Vector2( 0, 0 ) 490 | 53/shapes = [ ] 491 | 53/z_index = 0 492 | 54/name = "base2" 493 | 54/texture = ExtResource( 1 ) 494 | 54/tex_offset = Vector2( 0, 0 ) 495 | 54/modulate = Color( 1, 1, 1, 1 ) 496 | 54/region = Rect2( 96, 80, 16, 16 ) 497 | 54/tile_mode = 0 498 | 54/occluder_offset = Vector2( 0, 0 ) 499 | 54/navigation_offset = Vector2( 0, 0 ) 500 | 54/shapes = [ ] 501 | 54/z_index = 0 502 | 55/name = "tuxemon.png 55" 503 | 55/texture = ExtResource( 1 ) 504 | 55/tex_offset = Vector2( 0, 0 ) 505 | 55/modulate = Color( 1, 1, 1, 1 ) 506 | 55/region = Rect2( 32, 112, 32, 32 ) 507 | 55/tile_mode = 0 508 | 55/occluder_offset = Vector2( 0, 0 ) 509 | 55/navigation_offset = Vector2( 0, 0 ) 510 | 55/shapes = [ ] 511 | 55/z_index = 0 512 | 56/name = "tuxemon.png 56" 513 | 56/texture = ExtResource( 1 ) 514 | 56/tex_offset = Vector2( 0, 0 ) 515 | 56/modulate = Color( 1, 1, 1, 1 ) 516 | 56/region = Rect2( 0, 0, 32, 32 ) 517 | 56/tile_mode = 0 518 | 56/occluder_offset = Vector2( 0, 0 ) 519 | 56/navigation_offset = Vector2( 0, 0 ) 520 | 56/shapes = [ { 521 | "autotile_coord": Vector2( 0, 0 ), 522 | "one_way": false, 523 | "one_way_margin": 1.0, 524 | "shape": SubResource( 23 ), 525 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 526 | } ] 527 | 56/z_index = 0 528 | 57/name = "tuxemon.png 57" 529 | 57/texture = ExtResource( 1 ) 530 | 57/tex_offset = Vector2( 0, 0 ) 531 | 57/modulate = Color( 1, 1, 1, 1 ) 532 | 57/region = Rect2( 16, 32, 16, 32 ) 533 | 57/tile_mode = 0 534 | 57/occluder_offset = Vector2( 0, 0 ) 535 | 57/navigation_offset = Vector2( 0, 0 ) 536 | 57/shapes = [ { 537 | "autotile_coord": Vector2( 0, 0 ), 538 | "one_way": false, 539 | "one_way_margin": 1.0, 540 | "shape": SubResource( 24 ), 541 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 542 | } ] 543 | 57/z_index = 0 544 | 58/name = "tuxemon.png 58" 545 | 58/texture = ExtResource( 1 ) 546 | 58/tex_offset = Vector2( 0, 0 ) 547 | 58/modulate = Color( 1, 1, 1, 1 ) 548 | 58/region = Rect2( 32, 32, 32, 32 ) 549 | 58/tile_mode = 0 550 | 58/occluder_offset = Vector2( 0, 0 ) 551 | 58/navigation_offset = Vector2( 0, 0 ) 552 | 58/shapes = [ { 553 | "autotile_coord": Vector2( 0, 0 ), 554 | "one_way": false, 555 | "one_way_margin": 1.0, 556 | "shape": SubResource( 25 ), 557 | "shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) 558 | } ] 559 | 58/z_index = 0 560 | 59/name = "tuxemon.png 59" 561 | 59/texture = ExtResource( 1 ) 562 | 59/tex_offset = Vector2( 0, 0 ) 563 | 59/modulate = Color( 1, 1, 1, 1 ) 564 | 59/region = Rect2( 0, 80, 16, 16 ) 565 | 59/tile_mode = 0 566 | 59/occluder_offset = Vector2( 0, 0 ) 567 | 59/navigation_offset = Vector2( 0, 0 ) 568 | 59/shapes = [ ] 569 | 59/z_index = 0 570 | 571 | -------------------------------------------------------------------------------- /godot/scenes/map/Map.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://scenes/map/Map.tres" type="TileSet" id=1] 4 | [ext_resource path="res://scenes/player/Player.tscn" type="PackedScene" id=2] 5 | 6 | [node name="Map" type="Node2D"] 7 | 8 | [node name="TileMap" type="TileMap" parent="."] 9 | tile_set = ExtResource( 1 ) 10 | cell_size = Vector2( 16, 16 ) 11 | collision_layer = 32 12 | format = 1 13 | tile_data = PoolIntArray( 786437, 53, 0, 786438, 53, 0, 786439, 53, 0, 786440, 53, 0, 786441, 53, 0, 786442, 53, 0, 786443, 53, 0, 786444, 53, 0, 786445, 53, 0, 786446, 53, 0, 786447, 53, 0, 786448, 53, 0, 786449, 53, 0, 786450, 53, 0, 786451, 53, 0, 786452, 53, 0, 786453, 53, 0, 786454, 53, 0, 786455, 53, 0, 786456, 53, 0, 786457, 53, 0, 786458, 53, 0, 786459, 53, 0, 786460, 53, 0, 786461, 53, 0, 786462, 53, 0, 786463, 53, 0, 786464, 53, 0, 786465, 53, 0, 786466, 53, 0, 786467, 53, 0, 786468, 53, 0, 786469, 53, 0, 786470, 53, 0, 786471, 53, 0, 786472, 53, 0, 786473, 53, 0, 786474, 53, 0, 786475, 53, 0, 786476, 53, 0, 786477, 53, 0, 786478, 53, 0, 786479, 53, 0, 786480, 53, 0, 786481, 53, 0, 786482, 53, 0, 786483, 53, 0, 786484, 53, 0, 786485, 53, 0, 786486, 53, 0, 851973, 53, 0, 851974, 53, 0, 851975, 53, 0, 851976, 53, 0, 851977, 53, 0, 851978, 53, 0, 851979, 53, 0, 851980, 53, 0, 851981, 53, 0, 851982, 53, 0, 851983, 53, 0, 851984, 53, 0, 851985, 53, 0, 851986, 53, 0, 851987, 53, 0, 851988, 53, 0, 851989, 53, 0, 851990, 53, 0, 851991, 53, 0, 851992, 53, 0, 851993, 53, 0, 851994, 53, 0, 851995, 53, 0, 851996, 53, 0, 851997, 53, 0, 851998, 53, 0, 851999, 53, 0, 852000, 53, 0, 852001, 53, 0, 852002, 53, 0, 852003, 53, 0, 852004, 53, 0, 852005, 53, 0, 852006, 53, 0, 852007, 53, 0, 852008, 53, 0, 852009, 53, 0, 852010, 53, 0, 852011, 53, 0, 852012, 53, 0, 852013, 53, 0, 852014, 53, 0, 852015, 53, 0, 852016, 53, 0, 852017, 54, 0, 852018, 53, 0, 852019, 53, 0, 852020, 53, 0, 852021, 53, 0, 852022, 53, 0, 917509, 53, 0, 917510, 53, 0, 917511, 54, 0, 917512, 53, 0, 917513, 53, 0, 917514, 53, 0, 917515, 53, 0, 917516, 53, 0, 917517, 53, 0, 917518, 53, 0, 917519, 53, 0, 917520, 53, 0, 917521, 53, 0, 917522, 53, 0, 917523, 53, 0, 917524, 53, 0, 917525, 53, 0, 917526, 53, 0, 917527, 53, 0, 917528, 53, 0, 917529, 53, 0, 917530, 53, 0, 917531, 53, 0, 917532, 53, 0, 917533, 53, 0, 917534, 53, 0, 917535, 53, 0, 917536, 53, 0, 917537, 53, 0, 917538, 53, 0, 917539, 53, 0, 917540, 53, 0, 917541, 53, 0, 917542, 53, 0, 917543, 53, 0, 917544, 53, 0, 917545, 53, 0, 917546, 53, 0, 917547, 53, 0, 917548, 53, 0, 917549, 53, 0, 917550, 53, 0, 917551, 53, 0, 917552, 53, 0, 917553, 54, 0, 917554, 53, 0, 917555, 53, 0, 917556, 53, 0, 917557, 53, 0, 917558, 53, 0, 983045, 53, 0, 983046, 53, 0, 983047, 53, 0, 983048, 53, 0, 983049, 53, 0, 983050, 53, 0, 983051, 53, 0, 983052, 53, 0, 983053, 53, 0, 983054, 53, 0, 983055, 53, 0, 983056, 53, 0, 983057, 53, 0, 983058, 53, 0, 983059, 53, 0, 983060, 53, 0, 983061, 53, 0, 983062, 53, 0, 983063, 53, 0, 983064, 53, 0, 983065, 53, 0, 983066, 53, 0, 983067, 53, 0, 983068, 53, 0, 983069, 53, 0, 983070, 53, 0, 983071, 53, 0, 983072, 53, 0, 983073, 53, 0, 983074, 53, 0, 983075, 53, 0, 983076, 53, 0, 983077, 53, 0, 983078, 54, 0, 983079, 53, 0, 983080, 54, 0, 983081, 53, 0, 983082, 53, 0, 983083, 53, 0, 983084, 53, 0, 983085, 53, 0, 983086, 53, 0, 983087, 53, 0, 983088, 53, 0, 983089, 54, 0, 983090, 53, 0, 983091, 53, 0, 983092, 53, 0, 983093, 53, 0, 983094, 54, 0, 1048581, 53, 0, 1048582, 53, 0, 1048583, 53, 0, 1048584, 53, 0, 1048585, 53, 0, 1048586, 53, 0, 1048587, 53, 0, 1048588, 53, 0, 1048589, 53, 0, 1048590, 53, 0, 1048591, 53, 0, 1048592, 53, 0, 1048593, 53, 0, 1048594, 53, 0, 1048595, 53, 0, 1048596, 53, 0, 1048597, 53, 0, 1048598, 53, 0, 1048599, 53, 0, 1048600, 53, 0, 1048601, 53, 0, 1048602, 53, 0, 1048603, 53, 0, 1048604, 54, 0, 1048605, 53, 0, 1048606, 53, 0, 1048607, 53, 0, 1048608, 53, 0, 1048609, 53, 0, 1048610, 53, 0, 1048611, 53, 0, 1048612, 53, 0, 1048613, 53, 0, 1048614, 54, 0, 1048615, 54, 0, 1048616, 53, 0, 1048617, 53, 0, 1048618, 53, 0, 1048619, 53, 0, 1048620, 53, 0, 1048621, 53, 0, 1048622, 53, 0, 1048623, 53, 0, 1048624, 53, 0, 1048625, 54, 0, 1048626, 53, 0, 1048627, 53, 0, 1048628, 53, 0, 1048629, 53, 0, 1048630, 54, 0, 1114117, 53, 0, 1114118, 54, 0, 1114119, 53, 0, 1114120, 53, 0, 1114121, 53, 0, 1114122, 53, 0, 1114123, 53, 0, 1114124, 53, 0, 1114125, 53, 0, 1114126, 53, 0, 1114127, 53, 0, 1114128, 53, 0, 1114129, 53, 0, 1114130, 53, 0, 1114131, 53, 0, 1114132, 53, 0, 1114133, 53, 0, 1114134, 53, 0, 1114135, 53, 0, 1114136, 53, 0, 1114137, 53, 0, 1114138, 53, 0, 1114139, 53, 0, 1114140, 54, 0, 1114141, 53, 0, 1114142, 53, 0, 1114143, 53, 0, 1114144, 53, 0, 1114145, 53, 0, 1114146, 54, 0, 1114147, 54, 0, 1114148, 54, 0, 1114149, 54, 0, 1114150, 53, 0, 1114151, 53, 0, 1114152, 53, 0, 1114153, 53, 0, 1114154, 53, 0, 1114155, 53, 0, 1114156, 53, 0, 1114157, 53, 0, 1114158, 53, 0, 1114159, 53, 0, 1114160, 53, 0, 1114161, 54, 0, 1114162, 53, 0, 1114163, 53, 0, 1114164, 53, 0, 1114165, 53, 0, 1114166, 54, 0, 1179653, 54, 0, 1179654, 53, 0, 1179655, 53, 0, 1179656, 53, 0, 1179657, 53, 0, 1179658, 53, 0, 1179659, 53, 0, 1179660, 53, 0, 1179661, 53, 0, 1179662, 53, 0, 1179663, 53, 0, 1179664, 53, 0, 1179665, 53, 0, 1179666, 53, 0, 1179667, 53, 0, 1179668, 53, 0, 1179669, 53, 0, 1179670, 53, 0, 1179671, 53, 0, 1179672, 53, 0, 1179673, 53, 0, 1179674, 53, 0, 1179675, 54, 0, 1179676, 54, 0, 1179677, 53, 0, 1179678, 53, 0, 1179679, 53, 0, 1179680, 53, 0, 1179681, 53, 0, 1179682, 53, 0, 1179683, 53, 0, 1179684, 53, 0, 1179685, 53, 0, 1179686, 53, 0, 1179687, 53, 0, 1179688, 53, 0, 1179689, 53, 0, 1179690, 53, 0, 1179691, 53, 0, 1179692, 53, 0, 1179693, 53, 0, 1179694, 54, 0, 1179695, 53, 0, 1179696, 53, 0, 1179697, 54, 0, 1179698, 53, 0, 1179699, 53, 0, 1179700, 53, 0, 1179701, 53, 0, 1179702, 54, 0, 1245189, 54, 0, 1245190, 53, 0, 1245191, 53, 0, 1245192, 53, 0, 1245193, 54, 0, 1245194, 53, 0, 1245195, 53, 0, 1245196, 53, 0, 1245197, 53, 0, 1245198, 53, 0, 1245199, 53, 0, 1245200, 53, 0, 1245201, 53, 0, 1245202, 53, 0, 1245203, 53, 0, 1245204, 53, 0, 1245205, 53, 0, 1245206, 53, 0, 1245207, 53, 0, 1245208, 53, 0, 1245209, 53, 0, 1245210, 53, 0, 1245211, 53, 0, 1245212, 53, 0, 1245213, 53, 0, 1245214, 53, 0, 1245215, 53, 0, 1245216, 53, 0, 1245217, 53, 0, 1245218, 53, 0, 1245219, 53, 0, 1245220, 53, 0, 1245221, 53, 0, 1245222, 53, 0, 1245223, 53, 0, 1245224, 53, 0, 1245225, 53, 0, 1245226, 53, 0, 1245227, 53, 0, 1245228, 53, 0, 1245229, 53, 0, 1245230, 54, 0, 1245231, 53, 0, 1245232, 54, 0, 1245233, 53, 0, 1245234, 53, 0, 1245235, 53, 0, 1245236, 53, 0, 1245237, 54, 0, 1245238, 53, 0, 1310725, 53, 0, 1310726, 53, 0, 1310727, 53, 0, 1310728, 53, 0, 1310729, 53, 0, 1310730, 53, 0, 1310731, 53, 0, 1310732, 53, 0, 1310733, 53, 0, 1310734, 53, 0, 1310735, 53, 0, 1310736, 53, 0, 1310737, 53, 0, 1310738, 53, 0, 1310739, 53, 0, 1310740, 53, 0, 1310741, 53, 0, 1310742, 53, 0, 1310743, 53, 0, 1310744, 53, 0, 1310745, 53, 0, 1310746, 53, 0, 1310747, 53, 0, 1310748, 53, 0, 1310749, 53, 0, 1310750, 53, 0, 1310751, 53, 0, 1310752, 53, 0, 1310753, 54, 0, 1310754, 54, 0, 1310755, 53, 0, 1310756, 53, 0, 1310757, 54, 0, 1310758, 54, 0, 1310759, 53, 0, 1310760, 53, 0, 1310761, 53, 0, 1310762, 53, 0, 1310763, 53, 0, 1310764, 53, 0, 1310765, 53, 0, 1310766, 53, 0, 1310767, 53, 0, 1310768, 53, 0, 1310769, 53, 0, 1310770, 53, 0, 1310771, 53, 0, 1310772, 53, 0, 1310773, 53, 0, 1310774, 53, 0, 1376261, 53, 0, 1376262, 53, 0, 1376263, 53, 0, 1376264, 53, 0, 1376265, 53, 0, 1376266, 53, 0, 1376267, 53, 0, 1376268, 53, 0, 1376269, 53, 0, 1376270, 53, 0, 1376271, 53, 0, 1376272, 53, 0, 1376273, 53, 0, 1376274, 53, 0, 1376275, 53, 0, 1376276, 53, 0, 1376277, 53, 0, 1376278, 53, 0, 1376279, 53, 0, 1376280, 53, 0, 1376281, 53, 0, 1376282, 53, 0, 1376283, 54, 0, 1376284, 53, 0, 1376285, 53, 0, 1376286, 53, 0, 1376287, 53, 0, 1376288, 53, 0, 1376289, 53, 0, 1376290, 53, 0, 1376291, 53, 0, 1376292, 53, 0, 1376293, 53, 0, 1376294, 53, 0, 1376295, 54, 0, 1376296, 53, 0, 1376297, 53, 0, 1376298, 53, 0, 1376299, 53, 0, 1376300, 53, 0, 1376301, 53, 0, 1376302, 53, 0, 1376303, 53, 0, 1376304, 53, 0, 1376305, 53, 0, 1376306, 53, 0, 1376307, 53, 0, 1376308, 53, 0, 1376309, 53, 0, 1376310, 53, 0, 1441797, 53, 0, 1441798, 53, 0, 1441799, 53, 0, 1441800, 53, 0, 1441801, 53, 0, 1441802, 53, 0, 1441803, 53, 0, 1441804, 53, 0, 1441805, 53, 0, 1441806, 53, 0, 1441807, 53, 0, 1441808, 53, 0, 1441809, 53, 0, 1441810, 53, 0, 1441811, 53, 0, 1441812, 53, 0, 1441813, 53, 0, 1441814, 53, 0, 1441815, 53, 0, 1441816, 53, 0, 1441817, 53, 0, 1441818, 53, 0, 1441819, 54, 0, 1441820, 53, 0, 1441821, 53, 0, 1441822, 53, 0, 1441823, 53, 0, 1441824, 53, 0, 1441825, 53, 0, 1441826, 53, 0, 1441827, 53, 0, 1441828, 53, 0, 1441829, 53, 0, 1441830, 53, 0, 1441831, 53, 0, 1441832, 53, 0, 1441833, 53, 0, 1441834, 53, 0, 1441835, 53, 0, 1441836, 53, 0, 1441837, 53, 0, 1441838, 53, 0, 1441839, 53, 0, 1441840, 53, 0, 1441841, 53, 0, 1441842, 53, 0, 1441843, 53, 0, 1441844, 53, 0, 1441845, 53, 0, 1441846, 53, 0, 1507333, 53, 0, 1507334, 53, 0, 1507335, 53, 0, 1507336, 53, 0, 1507337, 53, 0, 1507338, 53, 0, 1507339, 53, 0, 1507340, 53, 0, 1507341, 53, 0, 1507342, 53, 0, 1507343, 53, 0, 1507344, 53, 0, 1507345, 53, 0, 1507346, 53, 0, 1507347, 53, 0, 1507348, 53, 0, 1507349, 53, 0, 1507350, 53, 0, 1507351, 53, 0, 1507352, 53, 0, 1507353, 53, 0, 1507354, 53, 0, 1507355, 53, 0, 1507356, 54, 0, 1507357, 53, 0, 1507358, 53, 0, 1507359, 53, 0, 1507360, 53, 0, 1507361, 53, 0, 1507362, 53, 0, 1507363, 53, 0, 1507364, 53, 0, 1507365, 53, 0, 1507366, 53, 0, 1507367, 53, 0, 1507368, 53, 0, 1507369, 53, 0, 1507370, 53, 0, 1507371, 53, 0, 1507372, 53, 0, 1507373, 53, 0, 1507374, 53, 0, 1507375, 53, 0, 1507376, 53, 0, 1507377, 53, 0, 1507378, 53, 0, 1507379, 53, 0, 1507380, 53, 0, 1507381, 53, 0, 1507382, 53, 0, 1572869, 53, 0, 1572870, 53, 0, 1572871, 53, 0, 1572872, 53, 0, 1572873, 53, 0, 1572874, 53, 0, 1572875, 53, 0, 1572876, 53, 0, 1572877, 53, 0, 1572878, 53, 0, 1572879, 53, 0, 1572880, 53, 0, 1572881, 53, 0, 1572882, 53, 0, 1572883, 53, 0, 1572884, 53, 0, 1572885, 53, 0, 1572886, 53, 0, 1572887, 53, 0, 1572888, 53, 0, 1572889, 53, 0, 1572890, 53, 0, 1572891, 53, 0, 1572892, 54, 0, 1572893, 53, 0, 1572894, 53, 0, 1572895, 53, 0, 1572896, 47, 0, 1572897, 47, 1, 1572898, 47, 1, 1572899, 47, 2, 1572900, 53, 0, 1572901, 53, 0, 1572902, 53, 0, 1572903, 53, 0, 1572904, 53, 0, 1572905, 54, 0, 1572906, 53, 0, 1572907, 53, 0, 1572908, 53, 0, 1572909, 53, 0, 1572910, 53, 0, 1572911, 53, 0, 1572912, 53, 0, 1572913, 53, 0, 1572914, 53, 0, 1572915, 53, 0, 1572916, 53, 0, 1572917, 53, 0, 1572918, 53, 0, 1638405, 53, 0, 1638406, 53, 0, 1638407, 53, 0, 1638408, 53, 0, 1638409, 53, 0, 1638410, 53, 0, 1638411, 53, 0, 1638412, 53, 0, 1638413, 53, 0, 1638414, 53, 0, 1638415, 53, 0, 1638416, 53, 0, 1638417, 53, 0, 1638418, 53, 0, 1638419, 53, 0, 1638420, 53, 0, 1638421, 53, 0, 1638422, 53, 0, 1638423, 53, 0, 1638424, 53, 0, 1638425, 53, 0, 1638426, 53, 0, 1638427, 53, 0, 1638428, 53, 0, 1638429, 53, 0, 1638430, 53, 0, 1638431, 53, 0, 1638432, 47, 65536, 1638433, 47, 65537, 1638434, 47, 65537, 1638435, 47, 65538, 1638436, 53, 0, 1638437, 53, 0, 1638438, 53, 0, 1638439, 53, 0, 1638440, 53, 0, 1638441, 53, 0, 1638442, 54, 0, 1638443, 53, 0, 1638444, 53, 0, 1638445, 53, 0, 1638446, 53, 0, 1638447, 53, 0, 1638448, 53, 0, 1638449, 53, 0, 1638450, 53, 0, 1638451, 53, 0, 1638452, 53, 0, 1638453, 53, 0, 1638454, 53, 0, 1703941, 53, 0, 1703942, 53, 0, 1703943, 53, 0, 1703944, 53, 0, 1703945, 53, 0, 1703946, 53, 0, 1703947, 54, 0, 1703948, 54, 0, 1703949, 53, 0, 1703950, 53, 0, 1703951, 53, 0, 1703952, 53, 0, 1703953, 53, 0, 1703954, 53, 0, 1703955, 53, 0, 1703956, 53, 0, 1703957, 53, 0, 1703958, 53, 0, 1703959, 53, 0, 1703960, 53, 0, 1703961, 53, 0, 1703962, 53, 0, 1703963, 53, 0, 1703964, 53, 0, 1703965, 53, 0, 1703966, 53, 0, 1703967, 53, 0, 1703968, 47, 131072, 1703969, 47, 131073, 1703970, 47, 131073, 1703971, 47, 131074, 1703972, 53, 0, 1703973, 53, 0, 1703974, 53, 0, 1703975, 53, 0, 1703976, 53, 0, 1703977, 53, 0, 1703978, 54, 0, 1703979, 53, 0, 1703980, 53, 0, 1703981, 53, 0, 1703982, 53, 0, 1703983, 53, 0, 1703984, 53, 0, 1703985, 53, 0, 1703986, 53, 0, 1703987, 53, 0, 1703988, 53, 0, 1703989, 53, 0, 1703990, 53, 0, 1769477, 53, 0, 1769478, 53, 0, 1769479, 53, 0, 1769480, 53, 0, 1769481, 53, 0, 1769482, 54, 0, 1769483, 53, 0, 1769484, 53, 0, 1769485, 53, 0, 1769486, 53, 0, 1769487, 53, 0, 1769488, 53, 0, 1769489, 53, 0, 1769490, 53, 0, 1769491, 53, 0, 1769492, 53, 0, 1769493, 53, 0, 1769494, 53, 0, 1769495, 53, 0, 1769496, 53, 0, 1769497, 53, 0, 1769498, 53, 0, 1769499, 53, 0, 1769500, 53, 0, 1769501, 53, 0, 1769502, 53, 0, 1769503, 53, 0, 1769504, 53, 0, 1769505, 53, 0, 1769506, 53, 0, 1769507, 53, 0, 1769508, 53, 0, 1769509, 53, 0, 1769510, 53, 0, 1769511, 53, 0, 1769512, 53, 0, 1769513, 53, 0, 1769514, 54, 0, 1769515, 53, 0, 1769516, 53, 0, 1769517, 53, 0, 1769518, 53, 0, 1769519, 53, 0, 1769520, 53, 0, 1769521, 53, 0, 1769522, 53, 0, 1769523, 54, 0, 1769524, 53, 0, 1769525, 53, 0, 1769526, 53, 0, 1835013, 53, 0, 1835014, 53, 0, 1835015, 53, 0, 1835016, 53, 0, 1835017, 54, 0, 1835018, 53, 0, 1835019, 53, 0, 1835020, 53, 0, 1835021, 53, 0, 1835022, 53, 0, 1835023, 53, 0, 1835024, 53, 0, 1835025, 53, 0, 1835026, 53, 0, 1835027, 53, 0, 1835028, 53, 0, 1835029, 53, 0, 1835030, 53, 0, 1835031, 54, 0, 1835032, 53, 0, 1835033, 53, 0, 1835034, 53, 0, 1835035, 53, 0, 1835036, 53, 0, 1835037, 53, 0, 1835038, 53, 0, 1835039, 53, 0, 1835040, 53, 0, 1835041, 53, 0, 1835042, 53, 0, 1835043, 54, 0, 1835044, 53, 0, 1835045, 53, 0, 1835046, 53, 0, 1835047, 53, 0, 1835048, 53, 0, 1835049, 53, 0, 1835050, 54, 0, 1835051, 53, 0, 1835052, 53, 0, 1835053, 53, 0, 1835054, 53, 0, 1835055, 53, 0, 1835056, 53, 0, 1835057, 53, 0, 1835058, 53, 0, 1835059, 54, 0, 1835060, 54, 0, 1835061, 54, 0, 1835062, 54, 0, 1900549, 53, 0, 1900550, 53, 0, 1900551, 53, 0, 1900552, 53, 0, 1900553, 54, 0, 1900554, 53, 0, 1900555, 53, 0, 1900556, 53, 0, 1900557, 53, 0, 1900558, 53, 0, 1900559, 53, 0, 1900560, 53, 0, 1900561, 53, 0, 1900562, 53, 0, 1900563, 53, 0, 1900564, 53, 0, 1900565, 53, 0, 1900566, 54, 0, 1900567, 53, 0, 1900568, 53, 0, 1900569, 53, 0, 1900570, 53, 0, 1900571, 53, 0, 1900572, 53, 0, 1900573, 53, 0, 1900574, 53, 0, 1900575, 53, 0, 1900576, 53, 0, 1900577, 53, 0, 1900578, 53, 0, 1900579, 54, 0, 1900580, 53, 0, 1900581, 53, 0, 1900582, 53, 0, 1900583, 53, 0, 1900584, 53, 0, 1900585, 54, 0, 1900586, 53, 0, 1900587, 53, 0, 1900588, 53, 0, 1900589, 53, 0, 1900590, 53, 0, 1900591, 53, 0, 1900592, 54, 0, 1900593, 53, 0, 1900594, 53, 0, 1900595, 53, 0, 1900596, 53, 0, 1900597, 53, 0, 1900598, 53, 0, 1966085, 53, 0, 1966086, 53, 0, 1966087, 53, 0, 1966088, 53, 0, 1966089, 54, 0, 1966090, 53, 0, 1966091, 53, 0, 1966092, 53, 0, 1966093, 53, 0, 1966094, 53, 0, 1966095, 53, 0, 1966096, 53, 0, 1966097, 53, 0, 1966098, 53, 0, 1966099, 53, 0, 1966100, 53, 0, 1966101, 53, 0, 1966102, 53, 0, 1966103, 53, 0, 1966104, 53, 0, 1966105, 53, 0, 1966106, 53, 0, 1966107, 53, 0, 1966108, 53, 0, 1966109, 53, 0, 1966110, 53, 0, 1966111, 53, 0, 1966112, 53, 0, 1966113, 53, 0, 1966114, 53, 0, 1966115, 53, 0, 1966116, 53, 0, 1966117, 53, 0, 1966118, 53, 0, 1966119, 53, 0, 1966120, 53, 0, 1966121, 53, 0, 1966122, 53, 0, 1966123, 53, 0, 1966124, 53, 0, 1966125, 53, 0, 1966126, 53, 0, 1966127, 54, 0, 1966128, 53, 0, 1966129, 53, 0, 1966130, 53, 0, 1966131, 53, 0, 1966132, 53, 0, 1966133, 53, 0, 1966134, 53, 0, 2031621, 53, 0, 2031622, 53, 0, 2031623, 53, 0, 2031624, 53, 0, 2031625, 53, 0, 2031626, 53, 0, 2031627, 53, 0, 2031628, 53, 0, 2031629, 53, 0, 2031630, 53, 0, 2031631, 53, 0, 2031632, 53, 0, 2031633, 53, 0, 2031634, 53, 0, 2031635, 53, 0, 2031636, 53, 0, 2031637, 53, 0, 2031638, 53, 0, 2031639, 53, 0, 2031640, 53, 0, 2031641, 53, 0, 2031642, 53, 0, 2031643, 53, 0, 2031644, 53, 0, 2031645, 53, 0, 2031646, 53, 0, 2031647, 53, 0, 2031648, 53, 0, 2031649, 53, 0, 2031650, 53, 0, 2031651, 53, 0, 2031652, 53, 0, 2031653, 53, 0, 2031654, 53, 0, 2031655, 53, 0, 2031656, 53, 0, 2031657, 53, 0, 2031658, 53, 0, 2031659, 53, 0, 2031660, 53, 0, 2031661, 54, 0, 2031662, 54, 0, 2031663, 54, 0, 2031664, 53, 0, 2031665, 53, 0, 2031666, 53, 0, 2031667, 53, 0, 2031668, 53, 0, 2031669, 53, 0, 2031670, 53, 0, 2097157, 53, 0, 2097158, 53, 0, 2097159, 53, 0, 2097160, 53, 0, 2097161, 53, 0, 2097162, 53, 0, 2097163, 53, 0, 2097164, 53, 0, 2097165, 53, 0, 2097166, 53, 0, 2097167, 53, 0, 2097168, 53, 0, 2097169, 53, 0, 2097170, 53, 0, 2097171, 53, 0, 2097172, 53, 0, 2097173, 53, 0, 2097174, 53, 0, 2097175, 53, 0, 2097176, 53, 0, 2097177, 53, 0, 2097178, 53, 0, 2097179, 53, 0, 2097180, 53, 0, 2097181, 53, 0, 2097182, 53, 0, 2097183, 53, 0, 2097184, 53, 0, 2097185, 53, 0, 2097186, 53, 0, 2097187, 53, 0, 2097188, 53, 0, 2097189, 53, 0, 2097190, 53, 0, 2097191, 53, 0, 2097192, 53, 0, 2097193, 53, 0, 2097194, 53, 0, 2097195, 54, 0, 2097196, 54, 0, 2097197, 53, 0, 2097198, 53, 0, 2097199, 54, 0, 2097200, 53, 0, 2097201, 53, 0, 2097202, 53, 0, 2097203, 54, 0, 2097204, 53, 0, 2097205, 53, 0, 2097206, 53, 0, 2162693, 53, 0, 2162694, 53, 0, 2162695, 53, 0, 2162696, 53, 0, 2162697, 53, 0, 2162698, 53, 0, 2162699, 53, 0, 2162700, 53, 0, 2162701, 53, 0, 2162702, 53, 0, 2162703, 53, 0, 2162704, 53, 0, 2162705, 53, 0, 2162706, 53, 0, 2162707, 53, 0, 2162708, 53, 0, 2162709, 53, 0, 2162710, 53, 0, 2162711, 53, 0, 2162712, 53, 0, 2162713, 53, 0, 2162714, 53, 0, 2162715, 53, 0, 2162716, 53, 0, 2162717, 54, 0, 2162718, 53, 0, 2162719, 53, 0, 2162720, 53, 0, 2162721, 53, 0, 2162722, 53, 0, 2162723, 53, 0, 2162724, 53, 0, 2162725, 53, 0, 2162726, 53, 0, 2162727, 53, 0, 2162728, 53, 0, 2162729, 53, 0, 2162730, 53, 0, 2162731, 53, 0, 2162732, 53, 0, 2162733, 53, 0, 2162734, 53, 0, 2162735, 53, 0, 2162736, 54, 0, 2162737, 54, 0, 2162738, 53, 0, 2162739, 54, 0, 2162740, 53, 0, 2162741, 53, 0, 2162742, 53, 0, 2228229, 53, 0, 2228230, 53, 0, 2228231, 53, 0, 2228232, 53, 0, 2228233, 53, 0, 2228234, 53, 0, 2228235, 53, 0, 2228236, 53, 0, 2228237, 53, 0, 2228238, 53, 0, 2228239, 53, 0, 2228240, 53, 0, 2228241, 53, 0, 2228242, 53, 0, 2228243, 53, 0, 2228244, 53, 0, 2228245, 53, 0, 2228246, 53, 0, 2228247, 54, 0, 2228248, 54, 0, 2228249, 54, 0, 2228250, 53, 0, 2228251, 53, 0, 2228252, 53, 0, 2228253, 53, 0, 2228254, 53, 0, 2228255, 53, 0, 2228256, 53, 0, 2228257, 53, 0, 2228258, 53, 0, 2228259, 53, 0, 2228260, 53, 0, 2228261, 53, 0, 2228262, 53, 0, 2228263, 53, 0, 2228264, 53, 0, 2228265, 53, 0, 2228266, 53, 0, 2228267, 53, 0, 2228268, 53, 0, 2228269, 53, 0, 2228270, 53, 0, 2228271, 53, 0, 2228272, 53, 0, 2228273, 53, 0, 2228274, 54, 0, 2228275, 54, 0, 2228276, 53, 0, 2228277, 53, 0, 2228278, 53, 0, 2293765, 53, 0, 2293766, 53, 0, 2293767, 53, 0, 2293768, 53, 0, 2293769, 53, 0, 2293770, 53, 0, 2293771, 53, 0, 2293772, 53, 0, 2293773, 53, 0, 2293774, 53, 0, 2293775, 53, 0, 2293776, 53, 0, 2293777, 53, 0, 2293778, 53, 0, 2293779, 53, 0, 2293780, 53, 0, 2293781, 53, 0, 2293782, 53, 0, 2293783, 53, 0, 2293784, 53, 0, 2293785, 53, 0, 2293786, 53, 0, 2293787, 53, 0, 2293788, 53, 0, 2293789, 53, 0, 2293790, 53, 0, 2293791, 53, 0, 2293792, 53, 0, 2293793, 53, 0, 2293794, 53, 0, 2293795, 53, 0, 2293796, 53, 0, 2293797, 53, 0, 2293798, 53, 0, 2293799, 53, 0, 2293800, 53, 0, 2293801, 54, 0, 2293802, 53, 0, 2293803, 53, 0, 2293804, 53, 0, 2293805, 53, 0, 2293806, 53, 0, 2293807, 53, 0, 2293808, 53, 0, 2293809, 53, 0, 2293810, 53, 0, 2293811, 54, 0, 2293812, 54, 0, 2293813, 54, 0, 2293814, 54, 0, 2359301, 53, 0, 2359302, 53, 0, 2359303, 53, 0, 2359304, 53, 0, 2359305, 53, 0, 2359306, 53, 0, 2359307, 53, 0, 2359308, 53, 0, 2359309, 53, 0, 2359310, 53, 0, 2359311, 53, 0, 2359312, 53, 0, 2359313, 53, 0, 2359314, 53, 0, 2359315, 53, 0, 2359316, 53, 0, 2359317, 53, 0, 2359318, 53, 0, 2359319, 53, 0, 2359320, 53, 0, 2359321, 53, 0, 2359322, 53, 0, 2359323, 53, 0, 2359324, 53, 0, 2359325, 53, 0, 2359326, 53, 0, 2359327, 53, 0, 2359328, 53, 0, 2359329, 53, 0, 2359330, 53, 0, 2359331, 53, 0, 2359332, 53, 0, 2359333, 53, 0, 2359334, 53, 0, 2359335, 53, 0, 2359336, 53, 0, 2359337, 53, 0, 2359338, 53, 0, 2359339, 53, 0, 2359340, 53, 0, 2359341, 53, 0, 2359342, 53, 0, 2359343, 53, 0, 2359344, 53, 0, 2359345, 53, 0, 2359346, 53, 0, 2359347, 53, 0, 2359348, 53, 0, 2359349, 53, 0, 2359350, 53, 0, 2424837, 53, 0, 2424838, 53, 0, 2424839, 53, 0, 2424840, 53, 0, 2424841, 53, 0, 2424842, 53, 0, 2424843, 53, 0, 2424844, 53, 0, 2424845, 53, 0, 2424846, 53, 0, 2424847, 53, 0, 2424848, 53, 0, 2424849, 53, 0, 2424850, 53, 0, 2424851, 53, 0, 2424852, 53, 0, 2424853, 53, 0, 2424854, 53, 0, 2424855, 53, 0, 2424856, 53, 0, 2424857, 53, 0, 2424858, 53, 0, 2424859, 53, 0, 2424860, 53, 0, 2424861, 53, 0, 2424862, 53, 0, 2424863, 53, 0, 2424864, 53, 0, 2424865, 53, 0, 2424866, 53, 0, 2424867, 53, 0, 2424868, 53, 0, 2424869, 53, 0, 2424870, 53, 0, 2424871, 53, 0, 2424872, 53, 0, 2424873, 53, 0, 2424874, 53, 0, 2424875, 53, 0, 2424876, 53, 0, 2424877, 53, 0, 2424878, 53, 0, 2424879, 53, 0, 2424880, 53, 0, 2424881, 53, 0, 2424882, 53, 0, 2424883, 53, 0, 2424884, 53, 0, 2424885, 53, 0, 2424886, 53, 0, 2490373, 53, 0, 2490374, 53, 0, 2490375, 53, 0, 2490376, 53, 0, 2490377, 53, 0, 2490378, 53, 0, 2490379, 53, 0, 2490380, 53, 0, 2490381, 53, 0, 2490382, 53, 0, 2490383, 53, 0, 2490384, 53, 0, 2490385, 53, 0, 2490386, 53, 0, 2490387, 53, 0, 2490388, 53, 0, 2490389, 53, 0, 2490390, 53, 0, 2490391, 53, 0, 2490392, 53, 0, 2490393, 53, 0, 2490394, 53, 0, 2490395, 53, 0, 2490396, 53, 0, 2490397, 53, 0, 2490398, 53, 0, 2490399, 53, 0, 2490400, 53, 0, 2490401, 53, 0, 2490402, 53, 0, 2490403, 53, 0, 2490404, 53, 0, 2490405, 53, 0, 2490406, 53, 0, 2490407, 53, 0, 2490408, 53, 0, 2490409, 53, 0, 2490410, 53, 0, 2490411, 53, 0, 2490412, 53, 0, 2490413, 53, 0, 2490414, 53, 0, 2490415, 53, 0, 2490416, 53, 0, 2490417, 53, 0, 2490418, 53, 0, 2490419, 53, 0, 2490420, 53, 0, 2490421, 53, 0, 2490422, 53, 0, 2555909, 53, 0, 2555910, 53, 0, 2555911, 53, 0, 2555912, 54, 0, 2555913, 53, 0, 2555914, 53, 0, 2555915, 53, 0, 2555916, 53, 0, 2555917, 53, 0, 2555918, 53, 0, 2555919, 53, 0, 2555920, 53, 0, 2555921, 53, 0, 2555922, 53, 0, 2555923, 53, 0, 2555924, 53, 0, 2555925, 53, 0, 2555926, 53, 0, 2555927, 53, 0, 2555928, 53, 0, 2555929, 53, 0, 2555930, 53, 0, 2555931, 53, 0, 2555932, 53, 0, 2555933, 53, 0, 2555934, 53, 0, 2555935, 53, 0, 2555936, 54, 0, 2555937, 54, 0, 2555938, 54, 0, 2555939, 54, 0, 2555940, 53, 0, 2555941, 53, 0, 2555942, 53, 0, 2555943, 53, 0, 2555944, 53, 0, 2555945, 53, 0, 2555946, 53, 0, 2555947, 53, 0, 2555948, 53, 0, 2555949, 53, 0, 2555950, 53, 0, 2555951, 53, 0, 2555952, 53, 0, 2555953, 53, 0, 2555954, 53, 0, 2555955, 53, 0, 2555956, 53, 0, 2555957, 53, 0, 2555958, 53, 0, 2621445, 53, 0, 2621446, 53, 0, 2621447, 53, 0, 2621448, 53, 0, 2621449, 54, 0, 2621450, 54, 0, 2621451, 54, 0, 2621452, 54, 0, 2621453, 53, 0, 2621454, 53, 0, 2621455, 53, 0, 2621456, 53, 0, 2621457, 53, 0, 2621458, 53, 0, 2621459, 53, 0, 2621460, 53, 0, 2621461, 53, 0, 2621462, 53, 0, 2621463, 53, 0, 2621464, 53, 0, 2621465, 53, 0, 2621466, 53, 0, 2621467, 53, 0, 2621468, 53, 0, 2621469, 53, 0, 2621470, 53, 0, 2621471, 53, 0, 2621472, 53, 0, 2621473, 53, 0, 2621474, 53, 0, 2621475, 53, 0, 2621476, 53, 0, 2621477, 53, 0, 2621478, 53, 0, 2621479, 53, 0, 2621480, 53, 0, 2621481, 53, 0, 2621482, 53, 0, 2621483, 53, 0, 2621484, 53, 0, 2621485, 53, 0, 2621486, 53, 0, 2621487, 53, 0, 2621488, 53, 0, 2621489, 53, 0, 2621490, 53, 0, 2621491, 54, 0, 2621492, 54, 0, 2621493, 54, 0, 2621494, 54, 0 ) 14 | 15 | [node name="TileMap2" type="TileMap" parent="."] 16 | tile_set = ExtResource( 1 ) 17 | cell_size = Vector2( 16, 16 ) 18 | cell_y_sort = true 19 | collision_layer = 32 20 | format = 1 21 | tile_data = PoolIntArray( 786442, 51, 0, 786460, 50, 0, 786479, 51, 0, 851978, 51, 0, 851996, 50, 0, 852015, 51, 0, 917514, 51, 0, 917532, 50, 0, 917551, 51, 0, 983045, 49, 0, 983046, 49, 1, 983047, 49, 1, 983048, 49, 1, 983049, 49, 1, 983050, 49, 2, 983051, 40, 4, 983052, 40, 1, 983053, 40, 1, 983054, 40, 1, 983055, 40, 1, 983056, 40, 1, 983057, 40, 1, 983058, 40, 1, 983059, 40, 1, 983060, 40, 1, 983061, 40, 1, 983062, 40, 1, 983063, 40, 1, 983064, 40, 3, 983068, 49, 0, 983069, 49, 1, 983070, 49, 1, 983071, 49, 1, 983072, 49, 1, 983073, 49, 1, 983074, 49, 1, 983075, 49, 1, 983076, 49, 1, 983077, 49, 1, 983078, 49, 1, 983079, 49, 1, 983080, 49, 1, 983081, 49, 1, 983082, 49, 1, 983083, 49, 1, 983084, 49, 1, 983085, 49, 1, 983086, 49, 1, 983087, 49, 2, 1048586, 57, 0, 1048587, 42, 0, 1048588, 42, 0, 1048589, 42, 0, 1048590, 42, 0, 1048593, 42, 0, 1048594, 42, 0, 1048609, 42, 0, 1048610, 42, 0, 1048613, 42, 0, 1048614, 42, 0, 1048617, 42, 0, 1048618, 42, 0, 1048624, 48, 0, 1048625, 48, 1, 1048626, 48, 1, 1048627, 48, 1, 1048628, 48, 1, 1048629, 48, 1, 1048630, 48, 2, 1114123, 42, 0, 1114124, 42, 0, 1114125, 42, 0, 1114126, 42, 0, 1114129, 42, 0, 1114130, 42, 0, 1114133, 42, 0, 1114134, 42, 0, 1114141, 42, 0, 1114142, 42, 0, 1114143, 42, 0, 1114144, 42, 0, 1114145, 42, 0, 1114146, 42, 0, 1114149, 42, 0, 1114150, 42, 0, 1114151, 42, 0, 1114152, 42, 0, 1114153, 42, 0, 1114154, 42, 0, 1114160, 50, 0, 1114161, 46, 0, 1114166, 51, 0, 1179658, 57, 0, 1179659, 42, 0, 1179660, 42, 0, 1179661, 42, 0, 1179662, 42, 0, 1179669, 42, 0, 1179670, 42, 0, 1179677, 42, 0, 1179678, 42, 0, 1179679, 42, 0, 1179680, 42, 0, 1179681, 42, 0, 1179682, 42, 0, 1179685, 42, 0, 1179686, 42, 0, 1179687, 42, 0, 1179688, 42, 0, 1179696, 50, 0, 1179702, 51, 0, 1245195, 42, 0, 1245196, 42, 0, 1245197, 42, 0, 1245198, 42, 0, 1245199, 52, 1, 1245200, 52, 65537, 1245201, 52, 65537, 1245202, 52, 65537, 1245203, 52, 65537, 1245204, 52, 65537, 1245205, 52, 65537, 1245206, 52, 65537, 1245207, 52, 65537, 1245208, 52, 65537, 1245209, 52, 65537, 1245210, 52, 65537, 1245211, 52, 65537, 1245212, 52, 65537, 1245213, 52, 65537, 1245214, 52, 65537, 1245215, 52, 65537, 1245216, 52, 65537, 1245217, 52, 65537, 1245218, 52, 65537, 1245219, 52, 65537, 1245220, 52, 65537, 1245221, 52, 65537, 1245222, 52, 65537, 1245223, 52, 65537, 1245224, 52, 65537, 1245225, 52, 65537, 1245226, 52, 65537, 1245227, 52, 0, 1245232, 50, 0, 1245234, 44, 0, 1245235, 46, 0, 1245238, 51, 0, 1310725, 48, 0, 1310726, 48, 1, 1310727, 48, 1, 1310728, 48, 1, 1310729, 48, 1, 1310730, 48, 1, 1310731, 48, 1, 1310732, 48, 1, 1310733, 48, 1, 1310734, 48, 1, 1310735, 48, 1, 1310736, 48, 1, 1310737, 48, 1, 1310738, 48, 1, 1310739, 48, 1, 1310740, 48, 1, 1310741, 48, 1, 1310742, 48, 1, 1310743, 48, 1, 1310744, 48, 2, 1310745, 42, 0, 1310746, 42, 0, 1310747, 42, 0, 1310748, 42, 0, 1310749, 42, 0, 1310750, 42, 0, 1310751, 42, 0, 1310752, 42, 0, 1310753, 42, 0, 1310754, 42, 0, 1310755, 42, 0, 1310756, 42, 0, 1310757, 42, 0, 1310758, 42, 0, 1310759, 42, 0, 1310760, 42, 0, 1310768, 50, 0, 1310770, 46, 0, 1310771, 44, 0, 1310774, 51, 0, 1376280, 51, 0, 1376281, 42, 0, 1376282, 42, 0, 1376283, 42, 0, 1376284, 42, 0, 1376285, 42, 0, 1376286, 42, 0, 1376287, 42, 0, 1376288, 42, 0, 1376289, 42, 0, 1376290, 42, 0, 1376291, 42, 0, 1376292, 42, 0, 1376293, 42, 0, 1376294, 42, 0, 1376295, 42, 0, 1376296, 42, 0, 1376304, 50, 0, 1376309, 44, 0, 1376310, 51, 0, 1441816, 51, 0, 1441817, 42, 0, 1441818, 42, 0, 1441819, 42, 0, 1441820, 42, 0, 1441821, 42, 0, 1441822, 42, 0, 1441823, 42, 0, 1441824, 42, 0, 1441825, 42, 0, 1441826, 42, 0, 1441827, 42, 0, 1441828, 42, 0, 1441829, 42, 0, 1441830, 42, 0, 1441831, 42, 0, 1441832, 42, 0, 1441840, 49, 0, 1441841, 49, 1, 1441842, 49, 1, 1441843, 49, 1, 1441844, 49, 1, 1441845, 49, 1, 1441846, 49, 2, 1507352, 51, 0, 1507353, 57, 0, 1507354, 40, 4, 1507355, 40, 3, 1507359, 48, 0, 1507360, 48, 1, 1507361, 48, 1, 1507362, 48, 1, 1507363, 48, 1, 1507364, 48, 1, 1507365, 48, 1, 1507366, 48, 1, 1507367, 48, 1, 1507368, 48, 2, 1572883, 42, 0, 1572884, 42, 0, 1572888, 51, 0, 1572895, 50, 0, 1572896, 44, 0, 1572903, 46, 0, 1572904, 51, 0, 1638418, 42, 0, 1638419, 42, 0, 1638420, 42, 0, 1638421, 42, 0, 1638424, 51, 0, 1638431, 50, 0, 1638440, 51, 0, 1638444, 48, 0, 1638445, 48, 1, 1638446, 48, 1, 1638447, 48, 1, 1638448, 48, 1, 1638449, 48, 1, 1638450, 48, 1, 1638451, 48, 1, 1638452, 48, 1, 1638453, 48, 1, 1638454, 48, 2, 1703953, 42, 0, 1703954, 42, 0, 1703955, 56, 0, 1703957, 42, 0, 1703958, 42, 0, 1703960, 51, 0, 1703967, 50, 0, 1703976, 51, 0, 1703980, 50, 0, 1703984, 44, 0, 1703990, 51, 0, 1769489, 42, 0, 1769490, 42, 0, 1769493, 42, 0, 1769494, 42, 0, 1769496, 51, 0, 1769503, 50, 0, 1769512, 51, 0, 1769516, 50, 0, 1769519, 44, 0, 1769520, 59, 0, 1769521, 44, 0, 1769526, 51, 0, 1835026, 42, 0, 1835027, 42, 0, 1835028, 42, 0, 1835029, 42, 0, 1835032, 51, 0, 1835039, 50, 0, 1835048, 51, 0, 1835052, 50, 0, 1835056, 44, 0, 1835062, 51, 0, 1900563, 42, 0, 1900564, 42, 0, 1900568, 51, 0, 1900575, 50, 0, 1900576, 45, 0, 1900577, 53, 0, 1900578, 53, 0, 1900579, 54, 0, 1900580, 53, 0, 1900581, 53, 0, 1900582, 53, 0, 1900583, 53, 0, 1900584, 51, 0, 1900588, 50, 0, 1900598, 51, 0, 1966104, 51, 0, 1966111, 49, 0, 1966112, 49, 1, 1966113, 49, 1, 1966114, 49, 1, 1966115, 49, 1, 1966116, 49, 1, 1966117, 49, 1, 1966118, 49, 1, 1966119, 49, 1, 1966120, 49, 2, 1966124, 50, 0, 1966126, 45, 0, 1966134, 51, 0, 2031640, 51, 0, 2031647, 31, 0, 2031660, 50, 0, 2031662, 59, 0, 2031663, 45, 0, 2031670, 51, 0, 2097176, 51, 0, 2097183, 31, 65536, 2097186, 58, 0, 2097196, 50, 0, 2097197, 45, 0, 2097198, 45, 0, 2097206, 51, 0, 2162712, 51, 0, 2162719, 31, 65536, 2162732, 50, 0, 2162742, 51, 0, 2228248, 51, 0, 2228255, 31, 65536, 2228268, 50, 0, 2228276, 59, 0, 2228277, 45, 0, 2228278, 51, 0, 2293784, 51, 0, 2293791, 31, 65536, 2293804, 50, 0, 2293813, 59, 0, 2293814, 51, 0, 2359320, 51, 0, 2359327, 31, 65536, 2359340, 50, 0, 2359350, 51, 0, 2424856, 51, 0, 2424863, 31, 65536, 2424876, 50, 0, 2424886, 51, 0, 2490392, 51, 0, 2490399, 31, 65536, 2490412, 50, 0, 2490413, 46, 0, 2490414, 46, 0, 2490415, 46, 0, 2490422, 51, 0, 2555928, 51, 0, 2555935, 31, 65536, 2555948, 50, 0, 2555949, 46, 0, 2555950, 46, 0, 2555951, 46, 0, 2555958, 51, 0, 2621464, 51, 0, 2621471, 31, 131072, 2621484, 50, 0, 2621494, 51, 0 ) 22 | 23 | [node name="Player" parent="TileMap2" instance=ExtResource( 2 )] 24 | position = Vector2( 456, 447 ) 25 | 26 | [node name="Camera2D" type="Camera2D" parent="TileMap2/Player"] 27 | current = true 28 | zoom = Vector2( 0.3, 0.3 ) 29 | drag_margin_h_enabled = false 30 | drag_margin_v_enabled = false 31 | 32 | --------------------------------------------------------------------------------