commit f0f066b3289fb63d27c04e9a84baf94d0a275757
Author: Egor Deev <67710823+IGlek@users.noreply.github.com>
Date: Sat Feb 19 09:14:43 2022 +0700
alfa v. 1
diff --git a/code/camera.py b/code/camera.py
new file mode 100644
index 0000000..b95c9fc
--- /dev/null
+++ b/code/camera.py
@@ -0,0 +1,19 @@
+import pygame
+
+
+class Camera(pygame.sprite.Group):
+ def __init__(self):
+ super().__init__()
+ self.screen = pygame.display.get_surface() # ПОЛУЧЕНИЕ ЭКРАНА
+ self.w_half = self.screen.get_size()[0] // 2 # ПОЛОВИНА ШИРИНЫ
+ self.h_half = self.screen.get_size()[1] // 2 # ПОЛОВИНА ВЫСОТЫ
+ self.atone = pygame.math.Vector2() # ПОЗИЦИЯ КАМЕРЫ
+
+ def picture(self, player):
+ # ПОЛУЧЕНИЕ ПОЗИЦИИ ИГРОКА
+ self.atone.x = player.rect.centerx - self.w_half
+ self.atone.y = player.rect.centery - self.h_half
+
+ for sprite in sorted(self.sprites(), key=lambda sprite: sprite.rect.centery):
+ atone_pos = sprite.rect.topleft - self.atone
+ self.screen.blit(sprite.image, atone_pos) # ОТРИСОВКА
diff --git a/code/data.py b/code/data.py
new file mode 100644
index 0000000..9736a0a
--- /dev/null
+++ b/code/data.py
@@ -0,0 +1,33 @@
+WIDTH = 1280
+HEIGTH = 720
+FPS = 60
+TILESIZE = 64
+
+p1, p2 = 50, 52
+WORLD_MAP = [
+ ['x'] * p2,
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'x', 'x', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'x'],
+ ['x', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'p', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] + [' '] * p1 + ['x'],
+ ['x'] * p2
+]
diff --git a/code/level.py b/code/level.py
new file mode 100644
index 0000000..d4b77fb
--- /dev/null
+++ b/code/level.py
@@ -0,0 +1,32 @@
+import pygame
+from tile import Tile
+from player import Player
+from camera import Camera
+
+from data import *
+
+
+# КЛАСС ОТВЕЧАЕТ ЗА ОТРИСОВКУ И ОБНОВЛЕНИЕ УРОВНЯ
+class Level:
+ def __init__(self):
+ self.screen = pygame.display.get_surface() # ПОЛУЧЕНИЕ ЭКРАНА
+
+ # СПРАЙТЫ
+ self.vis_sprites = Camera() # ВИДИМЫЕ
+ self.obs_sprites = pygame.sprite.Group() # ОБСТРАКТНЫЕ
+
+ self.load_map()
+
+ def load_map(self): # ЗАГРУЗКА СОХРАНЁННОЙ КАРТЫ
+ for i, row in enumerate(WORLD_MAP):
+ for j, col in enumerate(row):
+ x, y = j * TILESIZE, i * TILESIZE
+
+ if col == "x":
+ Tile((x, y), [self.vis_sprites, self.obs_sprites]) # ОТРИСОВКА СПРАЙТА КАРТЫ
+ if col == "p":
+ self.player = Player((x, y), [self.vis_sprites], self.obs_sprites) # ОТРИСОВКА СПРАЙТА ИГРОКА
+
+ def run(self): # ОТРИСОВКА И ОБНОВЛЕНИЕ СПРАЙТОВ
+ self.vis_sprites.picture(self.player)
+ self.vis_sprites.update()
diff --git a/code/main.py b/code/main.py
new file mode 100644
index 0000000..360d929
--- /dev/null
+++ b/code/main.py
@@ -0,0 +1,33 @@
+import pygame, sys
+from data import *
+from level import Level
+
+
+class Game:
+ def __init__(self):
+ # ЗАПУСК ИГРЫ
+ pygame.init()
+ self.screen = pygame.display.set_mode((WIDTH, HEIGTH))
+ pygame.display.set_caption('Pixel Gamble')
+ self.clock = pygame.time.Clock()
+
+ self.level = Level() # ЗАГРУЗКА КАРТЫ
+
+ def run(self):
+ while True:
+ for event in pygame.event.get():
+ if event.type == pygame.QUIT:
+ pygame.quit()
+ sys.exit()
+
+ self.screen.fill('black')
+
+ self.level.run() # ОТРИСОВКА КАРТЫ
+
+ pygame.display.update()
+ self.clock.tick(FPS)
+
+
+if __name__ == '__main__':
+ game = Game()
+ game.run()
diff --git a/code/player.py b/code/player.py
new file mode 100644
index 0000000..6c3c6c7
--- /dev/null
+++ b/code/player.py
@@ -0,0 +1,67 @@
+import pygame
+from data import *
+
+
+# КЛАСС ОТВЕЧАЕТ ЗА ОТРИСОВКУ ИГРОКА В ВЫБРАННОЙ ПОЗИЦИИ
+class Player(pygame.sprite.Sprite):
+ def __init__(self, pos, groups, obs_sprites):
+ super().__init__(groups)
+ self.image = pygame.image.load("../data/textures/player/player.png") # ЗАГРУЗКА
+ self.rect = self.image.get_rect(topleft=pos) # ОТРИСОВКА
+ self.hitbox = self.rect.inflate(0, -26) # РАЗМЕР ХИТБОКСА
+
+ self.point = pygame.math.Vector2() # ПОЗИЦИЯ ИГРОКА
+ self.obs_sprites = obs_sprites
+ self.speed = 5
+
+ def wasd(self):
+ keyboard = pygame.key.get_pressed()
+
+ # ПЕРМЕЩЕНИЕ Y
+ if keyboard[pygame.K_w]:
+ self.point.y = -1
+ elif keyboard[pygame.K_s]:
+ self.point.y = 1
+ else:
+ self.point.y = 0
+
+ # ПЕРМЕЩЕНИЕ X
+ if keyboard[pygame.K_a]:
+ self.point.x = -1
+ elif keyboard[pygame.K_d]:
+ self.point.x = 1
+ else:
+ self.point.x = 0
+
+ def move(self, speed): # СКОРОСТЬ ПЕРЕДВЕЖЕНИЯ
+ if self.point.magnitude() != 0:
+ self.point = self.point.normalize() # ФИКС СКОРОСТИ ПО ДИАГОНАЛИ
+
+ self.hitbox.x += self.point.x * speed
+ self.barrier(True)
+ self.hitbox.y += self.point.y * speed
+ self.barrier(False)
+
+ self.rect.center = self.hitbox.center
+
+ def barrier(self, point):
+ if point:
+ for sprite in self.obs_sprites:
+ if sprite.hitbox.colliderect(self.hitbox):
+ # СТОЛКНОВЕНИЕ ПО ГОРИЗОНТУ
+ if self.point.x > 0: # влево
+ self.hitbox.right = sprite.hitbox.left
+ if self.point.x < 0: # вправо
+ self.hitbox.left = sprite.hitbox.right
+ else:
+ for sprite in self.obs_sprites:
+ if sprite.hitbox.colliderect(self.hitbox):
+ # СТОЛКНОВЕНИЕ ПО ВЕРТИКАЛИ
+ if self.point.y > 0: # вниз
+ self.hitbox.bottom = sprite.hitbox.top
+ if self.point.y < 0: # вверх
+ self.hitbox.top = sprite.hitbox.bottom
+
+ def update(self):
+ self.wasd()
+ self.move(self.speed)
diff --git a/code/tile.py b/code/tile.py
new file mode 100644
index 0000000..74a4806
--- /dev/null
+++ b/code/tile.py
@@ -0,0 +1,11 @@
+import pygame
+from data import *
+
+
+# КЛАСС ОТВЕЧАЕТ ЗА ОТРИСОВКУ ОДНОГО СПРАЙТА КАРТЫ В ВЫБРАННОЙ ПОЗИЦИИ
+class Tile(pygame.sprite.Sprite):
+ def __init__(self, pos, groups):
+ super().__init__(groups)
+ self.image = pygame.image.load("../data/textures/earth/rock.png").convert_alpha() # ЗАГРУЗКА
+ self.rect = self.image.get_rect(topleft=pos) # ОТРИСОВКА
+ self.hitbox = self.rect.inflate(0, -10) # РАЗМЕР ХИТБОКСА
diff --git a/data/maps/pixel_gamble.tiled-project b/data/maps/pixel_gamble.tiled-project
new file mode 100644
index 0000000..5df7bd3
--- /dev/null
+++ b/data/maps/pixel_gamble.tiled-project
@@ -0,0 +1,12 @@
+{
+ "automappingRulesFile": "",
+ "commands": [
+ ],
+ "extensionsPath": "../../../game_pygame/maps/extensions",
+ "folders": [
+ "../../../game_pygame/maps"
+ ],
+ "objectTypesFile": "",
+ "propertyTypes": [
+ ]
+}
diff --git a/data/maps/pixel_gamble.tiled-session b/data/maps/pixel_gamble.tiled-session
new file mode 100644
index 0000000..cc374a7
--- /dev/null
+++ b/data/maps/pixel_gamble.tiled-session
@@ -0,0 +1,249 @@
+{
+ "Map/SizeTest": {
+ "height": 4300,
+ "width": 2
+ },
+ "activeFile": "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/test.tmx",
+ "expandedProjectPaths": [
+ ],
+ "file.lastUsedOpenFilter": "Все файлы (*)",
+ "fileStates": {
+ "": {
+ "scaleInEditor": 1
+ },
+ "#4": {
+ "dynamicWrapping": true
+ },
+ "C:/Users/EGOR/AppData/Local/Temp/Rar$DIa20176.27130/sample_indoor.tmx": {
+ "scale": 0.75,
+ "selectedLayer": 2,
+ "viewCenter": {
+ "x": 290.66666666666663,
+ "y": 252
+ }
+ },
+ "C:/Users/EGOR/AppData/Local/Temp/Rar$DIa20176.27130/sample_indoor.tmx#roguelikeSheet_transparent": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/AppData/Local/Temp/Rar$DIa20176.30376/sample_map.tmx": {
+ "scale": 0.21612499999999998,
+ "selectedLayer": 0,
+ "viewCenter": {
+ "x": 800.4626951995373,
+ "y": 800.4626951995373
+ }
+ },
+ "C:/Users/EGOR/AppData/Local/Temp/Rar$DIa20176.30376/sample_map.tmx#Roguelike": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Desktop/tmw_desert_spacing.tsx": {
+ "scaleInDock": 1,
+ "scaleInEditor": 1
+ },
+ "C:/Users/EGOR/Desktop/безымянный.tmx": {
+ "scale": 1,
+ "selectedLayer": 0,
+ "viewCenter": {
+ "x": -29.5,
+ "y": -12527
+ }
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Overworld.tsx": {
+ "dynamicWrapping": true,
+ "scaleInDock": 1,
+ "scaleInEditor": 2
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx": {
+ "scale": 0.33,
+ "selectedLayer": 0,
+ "viewCenter": {
+ "x": 1642.4242424242423,
+ "y": 733.3333333333333
+ }
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#0": {
+ "dynamicWrapping": false,
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#01": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#02": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#03": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#04": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#05": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#06": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#07": {
+ "scaleInDock": 1,
+ "scaleInEditor": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#08": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#09": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#10": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#11": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#12": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#13": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#14": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#15": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#16": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#17": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#18": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#19": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#20": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#Floor": {
+ "scaleInDock": 1,
+ "scaleInEditor": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#Map Pack": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#RPGpack": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#Tiles": {
+ "dynamicWrapping": true,
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#grass_1": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#grass_2": {
+ "dynamicWrapping": false,
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx#grass_3": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/grass_night.tsx": {
+ "dynamicWrapping": false,
+ "scaleInDock": 1,
+ "scaleInEditor": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/mapPack_spritesheet.tsx": {
+ "scaleInDock": 1,
+ "scaleInEditor": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/test.tmx": {
+ "scale": 0.5,
+ "selectedLayer": 0,
+ "viewCenter": {
+ "x": 2104,
+ "y": 822
+ }
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/test.tmx#4": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/test.tmx#grass": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/test.tmx#rock": {
+ "scaleInDock": 1
+ },
+ "C:/Users/EGOR/Python/game_pygame/maps/map1.tmx": {
+ "scale": 1.4,
+ "selectedLayer": 0,
+ "viewCenter": {
+ "x": 335.3571428571429,
+ "y": 303.2142857142857
+ }
+ },
+ "C:/Users/EGOR/Python/game_pygame/maps/tmw_desert_spacing.tsx": {
+ "scaleInDock": 1,
+ "scaleInEditor": 1
+ },
+ "C:/Users/EGOR/Python/game_pygame/maps/ьфз2.tmx": {
+ "scale": 1,
+ "selectedLayer": 0,
+ "viewCenter": {
+ "x": 57,
+ "y": 16
+ }
+ },
+ "main.tmx": {
+ "scale": 0.3551704545454545,
+ "selectedLayer": 0,
+ "viewCenter": {
+ "x": 1694.9608062709967,
+ "y": 864.3737002079669
+ }
+ },
+ "main.tmx#mapPack_spritesheet": {
+ "scaleInDock": 1
+ }
+ },
+ "last.externalTilesetPath": "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles",
+ "last.imagePath": "C:/Users/EGOR/Desktop/kenneyrpgpack/Spritesheet",
+ "map.fixedSize": true,
+ "map.height": 27,
+ "map.lastUsedFormat": "tmx",
+ "map.layerDataFormat": null,
+ "map.tileHeight": 64,
+ "map.tileWidth": 64,
+ "map.width": 54,
+ "openFiles": [
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx",
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/test.tmx"
+ ],
+ "project": "pixel_gamble.tiled-project",
+ "recentFiles": [
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Rpg.tmx",
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/test.tmx",
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/mapPack_spritesheet.tsx",
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/grass_night.tsx",
+ "main.tmx",
+ "C:/Users/EGOR/AppData/Local/Temp/Rar$DIa20176.30376/sample_map.tmx",
+ "C:/Users/EGOR/AppData/Local/Temp/Rar$DIa20176.27130/sample_indoor.tmx",
+ "C:/Users/EGOR/Python/Pixel_Gamble/data/textures/tiles/Overworld.tsx",
+ "C:/Users/EGOR/Python/game_pygame/maps/ьфз2.tmx",
+ "C:/Users/EGOR/Python/game_pygame/maps/map1.tmx",
+ "C:/Users/EGOR/Desktop/tmw_desert_spacing.tsx",
+ "C:/Users/EGOR/Desktop/безымянный.tmx"
+ ],
+ "tileset.embedInMap": true,
+ "tileset.lastUsedFilter": "Все файлы (*)",
+ "tileset.lastUsedFormat": "tsx",
+ "tileset.margin": 0,
+ "tileset.spacing": 0,
+ "tileset.tileSize": {
+ "height": 64,
+ "width": 64
+ },
+ "tileset.type": 1
+}
diff --git a/data/textures/coin_copper.png b/data/textures/coin_copper.png
new file mode 100644
index 0000000..765bf3d
Binary files /dev/null and b/data/textures/coin_copper.png differ
diff --git a/data/textures/coin_gold.png b/data/textures/coin_gold.png
new file mode 100644
index 0000000..da5d6ab
Binary files /dev/null and b/data/textures/coin_gold.png differ
diff --git a/data/textures/coin_silver.png b/data/textures/coin_silver.png
new file mode 100644
index 0000000..1344454
Binary files /dev/null and b/data/textures/coin_silver.png differ
diff --git a/data/textures/earth/g0.png b/data/textures/earth/g0.png
new file mode 100644
index 0000000..213776a
Binary files /dev/null and b/data/textures/earth/g0.png differ
diff --git a/data/textures/earth/g1_1.png b/data/textures/earth/g1_1.png
new file mode 100644
index 0000000..11b3706
Binary files /dev/null and b/data/textures/earth/g1_1.png differ
diff --git a/data/textures/earth/g1_2.png b/data/textures/earth/g1_2.png
new file mode 100644
index 0000000..947075b
Binary files /dev/null and b/data/textures/earth/g1_2.png differ
diff --git a/data/textures/earth/g1_3.png b/data/textures/earth/g1_3.png
new file mode 100644
index 0000000..dafbcca
Binary files /dev/null and b/data/textures/earth/g1_3.png differ
diff --git a/data/textures/earth/g1_4.png b/data/textures/earth/g1_4.png
new file mode 100644
index 0000000..a69b4e6
Binary files /dev/null and b/data/textures/earth/g1_4.png differ
diff --git a/data/textures/earth/g1_5.png b/data/textures/earth/g1_5.png
new file mode 100644
index 0000000..81a1155
Binary files /dev/null and b/data/textures/earth/g1_5.png differ
diff --git a/data/textures/earth/g1_6.png b/data/textures/earth/g1_6.png
new file mode 100644
index 0000000..3c079c7
Binary files /dev/null and b/data/textures/earth/g1_6.png differ
diff --git a/data/textures/earth/g1_7.png b/data/textures/earth/g1_7.png
new file mode 100644
index 0000000..6e85fb0
Binary files /dev/null and b/data/textures/earth/g1_7.png differ
diff --git a/data/textures/earth/g1_8.png b/data/textures/earth/g1_8.png
new file mode 100644
index 0000000..3431313
Binary files /dev/null and b/data/textures/earth/g1_8.png differ
diff --git a/data/textures/earth/g1_9.png b/data/textures/earth/g1_9.png
new file mode 100644
index 0000000..573f4e5
Binary files /dev/null and b/data/textures/earth/g1_9.png differ
diff --git a/data/textures/earth/g2_1.png b/data/textures/earth/g2_1.png
new file mode 100644
index 0000000..507db11
Binary files /dev/null and b/data/textures/earth/g2_1.png differ
diff --git a/data/textures/earth/g2_2.png b/data/textures/earth/g2_2.png
new file mode 100644
index 0000000..36311a0
Binary files /dev/null and b/data/textures/earth/g2_2.png differ
diff --git a/data/textures/earth/g2_3.png b/data/textures/earth/g2_3.png
new file mode 100644
index 0000000..1bcd31b
Binary files /dev/null and b/data/textures/earth/g2_3.png differ
diff --git a/data/textures/earth/g2_4.png b/data/textures/earth/g2_4.png
new file mode 100644
index 0000000..126c124
Binary files /dev/null and b/data/textures/earth/g2_4.png differ
diff --git a/data/textures/earth/g2_5.png b/data/textures/earth/g2_5.png
new file mode 100644
index 0000000..a5aef40
Binary files /dev/null and b/data/textures/earth/g2_5.png differ
diff --git a/data/textures/earth/g2_6.png b/data/textures/earth/g2_6.png
new file mode 100644
index 0000000..701aaaa
Binary files /dev/null and b/data/textures/earth/g2_6.png differ
diff --git a/data/textures/earth/g2_7.png b/data/textures/earth/g2_7.png
new file mode 100644
index 0000000..b595c92
Binary files /dev/null and b/data/textures/earth/g2_7.png differ
diff --git a/data/textures/earth/g2_8.png b/data/textures/earth/g2_8.png
new file mode 100644
index 0000000..c7386ec
Binary files /dev/null and b/data/textures/earth/g2_8.png differ
diff --git a/data/textures/earth/g3_1.png b/data/textures/earth/g3_1.png
new file mode 100644
index 0000000..4d230a1
Binary files /dev/null and b/data/textures/earth/g3_1.png differ
diff --git a/data/textures/earth/g3_2.png b/data/textures/earth/g3_2.png
new file mode 100644
index 0000000..788a6e1
Binary files /dev/null and b/data/textures/earth/g3_2.png differ
diff --git a/data/textures/earth/g3_3.png b/data/textures/earth/g3_3.png
new file mode 100644
index 0000000..d3185cb
Binary files /dev/null and b/data/textures/earth/g3_3.png differ
diff --git a/data/textures/earth/g4_1.png b/data/textures/earth/g4_1.png
new file mode 100644
index 0000000..8ba2787
Binary files /dev/null and b/data/textures/earth/g4_1.png differ
diff --git a/data/textures/earth/g4_2.png b/data/textures/earth/g4_2.png
new file mode 100644
index 0000000..0d36966
Binary files /dev/null and b/data/textures/earth/g4_2.png differ
diff --git a/data/textures/earth/g4_3.png b/data/textures/earth/g4_3.png
new file mode 100644
index 0000000..8cfd671
Binary files /dev/null and b/data/textures/earth/g4_3.png differ
diff --git a/data/textures/earth/parants/g1.png b/data/textures/earth/parants/g1.png
new file mode 100644
index 0000000..f825d31
Binary files /dev/null and b/data/textures/earth/parants/g1.png differ
diff --git a/data/textures/earth/parants/g2.png b/data/textures/earth/parants/g2.png
new file mode 100644
index 0000000..68d7cba
Binary files /dev/null and b/data/textures/earth/parants/g2.png differ
diff --git a/data/textures/earth/parants/g3.png b/data/textures/earth/parants/g3.png
new file mode 100644
index 0000000..7184b5f
Binary files /dev/null and b/data/textures/earth/parants/g3.png differ
diff --git a/data/textures/earth/parants/g4.png b/data/textures/earth/parants/g4.png
new file mode 100644
index 0000000..2a93115
Binary files /dev/null and b/data/textures/earth/parants/g4.png differ
diff --git a/data/textures/earth/parants/p1.png b/data/textures/earth/parants/p1.png
new file mode 100644
index 0000000..3785bcc
Binary files /dev/null and b/data/textures/earth/parants/p1.png differ
diff --git a/data/textures/earth/parants/r1.png b/data/textures/earth/parants/r1.png
new file mode 100644
index 0000000..e15a28d
Binary files /dev/null and b/data/textures/earth/parants/r1.png differ
diff --git a/data/textures/earth/parants/t1.png b/data/textures/earth/parants/t1.png
new file mode 100644
index 0000000..96b877a
Binary files /dev/null and b/data/textures/earth/parants/t1.png differ
diff --git a/data/textures/earth/r1_1.png b/data/textures/earth/r1_1.png
new file mode 100644
index 0000000..ce6303c
Binary files /dev/null and b/data/textures/earth/r1_1.png differ
diff --git a/data/textures/earth/r1_2.png b/data/textures/earth/r1_2.png
new file mode 100644
index 0000000..6e63b1c
Binary files /dev/null and b/data/textures/earth/r1_2.png differ
diff --git a/data/textures/earth/r1_3.png b/data/textures/earth/r1_3.png
new file mode 100644
index 0000000..381378d
Binary files /dev/null and b/data/textures/earth/r1_3.png differ
diff --git a/data/textures/earth/r1_4.png b/data/textures/earth/r1_4.png
new file mode 100644
index 0000000..0cad820
Binary files /dev/null and b/data/textures/earth/r1_4.png differ
diff --git a/data/textures/earth/r1_5.png b/data/textures/earth/r1_5.png
new file mode 100644
index 0000000..8a8d719
Binary files /dev/null and b/data/textures/earth/r1_5.png differ
diff --git a/data/textures/earth/r1_6.png b/data/textures/earth/r1_6.png
new file mode 100644
index 0000000..4ebe580
Binary files /dev/null and b/data/textures/earth/r1_6.png differ
diff --git a/data/textures/earth/r1_7.png b/data/textures/earth/r1_7.png
new file mode 100644
index 0000000..190ba53
Binary files /dev/null and b/data/textures/earth/r1_7.png differ
diff --git a/data/textures/earth/r1_8.png b/data/textures/earth/r1_8.png
new file mode 100644
index 0000000..0e8bd03
Binary files /dev/null and b/data/textures/earth/r1_8.png differ
diff --git a/data/textures/earth/r1_9.png b/data/textures/earth/r1_9.png
new file mode 100644
index 0000000..0157b69
Binary files /dev/null and b/data/textures/earth/r1_9.png differ
diff --git a/data/textures/earth/rock.png b/data/textures/earth/rock.png
new file mode 100644
index 0000000..a02d64a
Binary files /dev/null and b/data/textures/earth/rock.png differ
diff --git a/data/textures/earth/t1_1.png b/data/textures/earth/t1_1.png
new file mode 100644
index 0000000..a105b58
Binary files /dev/null and b/data/textures/earth/t1_1.png differ
diff --git a/data/textures/earth/t1_10.png b/data/textures/earth/t1_10.png
new file mode 100644
index 0000000..aa457ba
Binary files /dev/null and b/data/textures/earth/t1_10.png differ
diff --git a/data/textures/earth/t1_11.png b/data/textures/earth/t1_11.png
new file mode 100644
index 0000000..47ecaf6
Binary files /dev/null and b/data/textures/earth/t1_11.png differ
diff --git a/data/textures/earth/t1_2.png b/data/textures/earth/t1_2.png
new file mode 100644
index 0000000..0b3e975
Binary files /dev/null and b/data/textures/earth/t1_2.png differ
diff --git a/data/textures/earth/t1_3.png b/data/textures/earth/t1_3.png
new file mode 100644
index 0000000..81e29b9
Binary files /dev/null and b/data/textures/earth/t1_3.png differ
diff --git a/data/textures/earth/t1_4.png b/data/textures/earth/t1_4.png
new file mode 100644
index 0000000..bb39a6d
Binary files /dev/null and b/data/textures/earth/t1_4.png differ
diff --git a/data/textures/earth/t1_5.png b/data/textures/earth/t1_5.png
new file mode 100644
index 0000000..1a8368e
Binary files /dev/null and b/data/textures/earth/t1_5.png differ
diff --git a/data/textures/earth/t1_6.png b/data/textures/earth/t1_6.png
new file mode 100644
index 0000000..cbbe74f
Binary files /dev/null and b/data/textures/earth/t1_6.png differ
diff --git a/data/textures/earth/t1_7.png b/data/textures/earth/t1_7.png
new file mode 100644
index 0000000..e9c4e96
Binary files /dev/null and b/data/textures/earth/t1_7.png differ
diff --git a/data/textures/earth/t1_8.png b/data/textures/earth/t1_8.png
new file mode 100644
index 0000000..1a7ed28
Binary files /dev/null and b/data/textures/earth/t1_8.png differ
diff --git a/data/textures/earth/t1_9.png b/data/textures/earth/t1_9.png
new file mode 100644
index 0000000..1b0c002
Binary files /dev/null and b/data/textures/earth/t1_9.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_0.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_0.png
new file mode 100644
index 0000000..6ffc676
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_0.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_1.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_1.png
new file mode 100644
index 0000000..a02e714
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_1.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_2.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_2.png
new file mode 100644
index 0000000..072c95e
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_2.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_3.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_3.png
new file mode 100644
index 0000000..63ab5bf
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_3.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_4.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_4.png
new file mode 100644
index 0000000..42b3a85
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_4.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_5.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_5.png
new file mode 100644
index 0000000..ca431fa
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_5.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_6.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_6.png
new file mode 100644
index 0000000..c04dfa8
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_6.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_7.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_7.png
new file mode 100644
index 0000000..3e5e1ec
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Down_7.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_0.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_0.png
new file mode 100644
index 0000000..a411ac0
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_0.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_1.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_1.png
new file mode 100644
index 0000000..b2261b9
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_1.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_2.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_2.png
new file mode 100644
index 0000000..d0b9462
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_2.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_3.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_3.png
new file mode 100644
index 0000000..2fc2302
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_3.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_4.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_4.png
new file mode 100644
index 0000000..b75d3c8
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_4.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_5.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_5.png
new file mode 100644
index 0000000..fa733fa
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_5.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_6.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_6.png
new file mode 100644
index 0000000..cd11b09
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_6.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_7.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_7.png
new file mode 100644
index 0000000..47ec0b6
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Left_7.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_0.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_0.png
new file mode 100644
index 0000000..d2bd4c1
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_0.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_1.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_1.png
new file mode 100644
index 0000000..952805f
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_1.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_2.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_2.png
new file mode 100644
index 0000000..8f6e8d3
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_2.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_3.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_3.png
new file mode 100644
index 0000000..ce9c70c
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_3.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_4.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_4.png
new file mode 100644
index 0000000..984bee0
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_4.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_5.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_5.png
new file mode 100644
index 0000000..f8c6f3d
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_5.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_6.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_6.png
new file mode 100644
index 0000000..4969fd7
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_6.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_7.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_7.png
new file mode 100644
index 0000000..e111806
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Right_7.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_0.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_0.png
new file mode 100644
index 0000000..d2f84f4
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_0.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_1.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_1.png
new file mode 100644
index 0000000..ac438a8
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_1.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_2.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_2.png
new file mode 100644
index 0000000..7061805
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_2.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_3.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_3.png
new file mode 100644
index 0000000..261cb9d
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_3.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_4.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_4.png
new file mode 100644
index 0000000..d2f84f4
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_4.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_5.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_5.png
new file mode 100644
index 0000000..09c948b
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_5.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_6.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_6.png
new file mode 100644
index 0000000..9f0585c
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_6.png differ
diff --git a/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_7.png b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_7.png
new file mode 100644
index 0000000..fb3dfde
Binary files /dev/null and b/data/textures/player/Elliot/08_Elliot_RPG_Walk Up_7.png differ
diff --git a/data/textures/player/player.png b/data/textures/player/player.png
new file mode 100644
index 0000000..4c13c19
Binary files /dev/null and b/data/textures/player/player.png differ
diff --git a/data/textures/tiles/Rpg.tmx b/data/textures/tiles/Rpg.tmx
new file mode 100644
index 0000000..b15f962
--- /dev/null
+++ b/data/textures/tiles/Rpg.tmx
@@ -0,0 +1,266 @@
+
+
diff --git a/data/textures/tiles/test.png b/data/textures/tiles/test.png
new file mode 100644
index 0000000..5b69763
Binary files /dev/null and b/data/textures/tiles/test.png differ
diff --git a/data/textures/tiles/test.tmx b/data/textures/tiles/test.tmx
new file mode 100644
index 0000000..2357369
--- /dev/null
+++ b/data/textures/tiles/test.tmx
@@ -0,0 +1,47 @@
+
+