diff --git a/source/state/level.py b/source/state/level.py index 846d62b..bd0356f 100644 --- a/source/state/level.py +++ b/source/state/level.py @@ -2,6 +2,7 @@ __author__ = 'marble_xu' import os import json +import sys import pygame as pg from .. import tool from .. import constants as c @@ -24,7 +25,7 @@ class Level(tool.State): def loadMap(self): map_file = 'level_' + str(self.game_info[c.LEVEL_NUM]) + '.json' - file_path = os.path.join('source', 'data', 'map', map_file) + file_path = os.path.join(sys.path[0], 'source', 'data', 'map', map_file) f = open(file_path) self.map_data = json.load(f) f.close() diff --git a/source/tool.py b/source/tool.py index 1a319c8..2ebc9f6 100755 --- a/source/tool.py +++ b/source/tool.py @@ -2,6 +2,7 @@ __author__ = 'marble_xu' import os import json +import sys from abc import abstractmethod import pygame as pg from . import constants as c @@ -154,14 +155,14 @@ def load_all_gfx(directory, colorkey=c.WHITE, accept=('.png', '.jpg', '.bmp', '. return graphics def loadZombieImageRect(): - file_path = os.path.join('source', 'data', 'entity', 'zombie.json') + file_path = os.path.join(sys.path[0], 'source', 'data', 'entity', 'zombie.json') f = open(file_path) data = json.load(f) f.close() return data[c.ZOMBIE_IMAGE_RECT] def loadPlantImageRect(): - file_path = os.path.join('source', 'data', 'entity', 'plant.json') + file_path = os.path.join(sys.path[0], 'source', 'data', 'entity', 'plant.json') f = open(file_path) data = json.load(f) f.close() @@ -171,6 +172,6 @@ pg.init() pg.display.set_caption(c.ORIGINAL_CAPTION) SCREEN = pg.display.set_mode(c.SCREEN_SIZE) -GFX = load_all_gfx(os.path.join("resources","graphics")) +GFX = load_all_gfx(os.path.join(sys.path[0] ,os.path.join("resources","graphics"))) ZOMBIE_RECT = loadZombieImageRect() PLANT_RECT = loadPlantImageRect()