Merge remote-tracking branch 'origin/development'
# Conflicts: # environment.md
This commit is contained in:
commit
748e317e2e
5
Run.py
5
Run.py
@ -1,3 +1,6 @@
|
|||||||
|
from pathlib import Path
|
||||||
|
|
||||||
from src.game.Game import Game
|
from src.game.Game import Game
|
||||||
|
|
||||||
game = Game()
|
programPath = Path(".").resolve()
|
||||||
|
game = Game(programPath)
|
||||||
|
BIN
data/structure.pdf
Normal file
BIN
data/structure.pdf
Normal file
Binary file not shown.
@ -8,10 +8,8 @@
|
|||||||
* *Na wyspie znajdują się różnorodne elementy, które pomagają lub przeszkadzają przetrwać*
|
* *Na wyspie znajdują się różnorodne elementy, które pomagają lub przeszkadzają przetrwać*
|
||||||
* *Agent ma zasoby, które musi uzupełniać aby przeżyć, np. głód*
|
* *Agent ma zasoby, które musi uzupełniać aby przeżyć, np. głód*
|
||||||
* *Agent porusza się w środowisku 20x20*
|
* *Agent porusza się w środowisku 20x20*
|
||||||
*
|
|
||||||
## Struktura projektu
|
## Struktura projektu
|
||||||
*Plik przedstawiający strukturę katalogów oraz klas:* [structure.pdf](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/data/structure.pdf)
|
*Plik przedstawiający strukturę katalogów oraz klas:* [structure.pdf](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/data/structure.pdf)
|
||||||
|
|
||||||
## Główne klasy projektu
|
## Główne klasy projektu
|
||||||
* [Run.py](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/src/development/Run.py) - plik, względem którego uruchamia się całe środowisko.
|
* [Run.py](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/src/development/Run.py) - plik, względem którego uruchamia się całe środowisko.
|
||||||
* [Game.py](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/src/development/src/game/Game.py) -
|
* [Game.py](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/src/development/src/game/Game.py) -
|
||||||
@ -25,10 +23,8 @@ klasa realizacyjna, w niej wywoływane są wszystkie inne główne obiekty, obs
|
|||||||
* [Entity.py](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/src/development/src/entities/Entity.py) - przedstawia jednostki występujące na mapie, które w jakiś sposób zachodzą ze sobą w interakcje.
|
* [Entity.py](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/src/development/src/entities/Entity.py) - przedstawia jednostki występujące na mapie, które w jakiś sposób zachodzą ze sobą w interakcje.
|
||||||
* [Player.py](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/src/development/src/entities/Player.py) - tworzy agenta, którym na daną chwilę możemy się poruszać i zachodzić w interakcje z innymi jednostkami.
|
* [Player.py](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/src/development/src/entities/Player.py) - tworzy agenta, którym na daną chwilę możemy się poruszać i zachodzić w interakcje z innymi jednostkami.
|
||||||
* [Statistics.py](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/src/development/src/entities/Statistics.py) - reprezentuje zasoby agenta, które odpowiednio zwiększają się, lub zmniejszają po interakcji z jakimś elementem.
|
* [Statistics.py](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/src/development/src/entities/Statistics.py) - reprezentuje zasoby agenta, które odpowiednio zwiększają się, lub zmniejszają po interakcji z jakimś elementem.
|
||||||
*
|
|
||||||
## Reprezentacja wiedzy
|
## Reprezentacja wiedzy
|
||||||
*Wiedzą w naszym projekcie są statystyki agenta, które mowią o tym w jakim stanie toczy się proces przetrwania.
|
*Wiedzą w naszym projekcie są statystyki agenta, które mowią o tym w jakim stanie toczy się proces przetrwania.
|
||||||
Posiadamy również konsolę, która wypisuje wartości statystyk na ekranie.*
|
Posiadamy również konsolę, która wypisuje wartości statystyk na ekranie.*
|
||||||
![screenshot](https://git.wmi.amu.edu.pl/s444409/DSZI_Survival/src/master/data/images/adventure.png)
|
|
||||||
|
|
||||||
## Uruchomienie projektu
|
## Uruchomienie projektu
|
@ -24,12 +24,12 @@ class Entity(pygame.sprite.Sprite):
|
|||||||
texturesFolder = ""
|
texturesFolder = ""
|
||||||
textureFile = ""
|
textureFile = ""
|
||||||
try:
|
try:
|
||||||
texturesFolder = Path("../data/images/entities")
|
texturesFolder = Path("./data/images/entities")
|
||||||
textureFile = texturesFolder / textureName
|
textureFile = texturesFolder / textureName
|
||||||
except IOError:
|
except IOError:
|
||||||
print("Cannot load texture from " + texturesFolder + ". Exiting...")
|
print("Cannot load texture from " + texturesFolder + ". Exiting...")
|
||||||
exit(1)
|
exit(1)
|
||||||
image = pygame.image.load(str(textureFile)).convert_alpha()
|
image = pygame.image.load(str(textureFile.resolve())).convert_alpha()
|
||||||
image = pygame.transform.scale(image, (tileSize, tileSize))
|
image = pygame.transform.scale(image, (tileSize, tileSize))
|
||||||
rect = image.get_rect()
|
rect = image.get_rect()
|
||||||
return image, rect
|
return image, rect
|
||||||
|
@ -12,12 +12,12 @@ from src.game.Timer import Timer
|
|||||||
|
|
||||||
|
|
||||||
class Game:
|
class Game:
|
||||||
def __init__(self):
|
def __init__(self, filesPath):
|
||||||
self.running = True
|
self.running = True
|
||||||
print("Loading configuration...", end=" ")
|
print("Loading configuration...", end=" ")
|
||||||
|
|
||||||
try:
|
try:
|
||||||
configFolder = Path("../data/config/")
|
configFolder = Path(str(filesPath) + "/data/config/")
|
||||||
configFile = configFolder / "mainConfig.json"
|
configFile = configFolder / "mainConfig.json"
|
||||||
|
|
||||||
self.config = json.loads(configFile.read_text())
|
self.config = json.loads(configFile.read_text())
|
||||||
@ -47,8 +47,8 @@ class Game:
|
|||||||
self.screen = Screen(self, self.config["window"])
|
self.screen = Screen(self, self.config["window"])
|
||||||
print("OK")
|
print("OK")
|
||||||
|
|
||||||
self.mapDataFolder = path.dirname("../data/mapdata/")
|
mapFile = Path(str(filesPath) + "/data/mapdata/")
|
||||||
self.map = Map(path.join(self.mapDataFolder, 'map.txt'), self.screen)
|
self.map = Map(path.join(mapFile, 'map.txt'), self.screen)
|
||||||
self.player = Player((6, 2), self.map.tileSize)
|
self.player = Player((6, 2), self.map.tileSize)
|
||||||
self.map.addEntity(self.player)
|
self.map.addEntity(self.player)
|
||||||
self.eventManager = EventManager(self, self.player)
|
self.eventManager = EventManager(self, self.player)
|
||||||
|
@ -1,14 +1,13 @@
|
|||||||
|
from pathlib import Path
|
||||||
|
|
||||||
import pygame
|
import pygame
|
||||||
import os
|
|
||||||
from os import path
|
|
||||||
|
|
||||||
|
|
||||||
class TerrainTile(pygame.sprite.Sprite):
|
class TerrainTile(pygame.sprite.Sprite):
|
||||||
def __init__(self, x, y, texture, tileSize):
|
def __init__(self, x, y, texture, tileSize):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
self.imagesFolder = path.dirname("../data/images/")
|
terrainTexturesPath = Path("./data/images/terrain").resolve()
|
||||||
self.terrainFolder = path.join(self.imagesFolder, 'terrain')
|
self.image = pygame.image.load(str(terrainTexturesPath / texture)).convert()
|
||||||
self.image = pygame.image.load(os.path.join(self.terrainFolder, texture)).convert()
|
|
||||||
self.image = pygame.transform.scale(self.image, (tileSize, tileSize))
|
self.image = pygame.transform.scale(self.image, (tileSize, tileSize))
|
||||||
self.rect = self.image.get_rect()
|
self.rect = self.image.get_rect()
|
||||||
self.x = x
|
self.x = x
|
||||||
|
Loading…
Reference in New Issue
Block a user