-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.py
72 lines (53 loc) · 1.98 KB
/
config.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import json
from arcade import color
from map.hexagonal import Hex
from draw import make_hexagon_texture
def jsonread(path):
with open(path) as json_file:
return json.load(json_file)
MAP_HEX_RADIUS = 30
MAP_HEX_OUTLINE_WIDTH = 5
MAP_HEX_OUTLINE_COLOR = "#918585"
ENTITIES_CONFIG_PATH = "game_configs/units_config.json"
FRACTIONS_CONFIG_PATH = "game_configs/fractions_config.json"
ENTITIES_CONFIG = jsonread(ENTITIES_CONFIG_PATH)
FRACTIONS_CONFIG = jsonread(FRACTIONS_CONFIG_PATH)
TREE_ID = ENTITIES_CONFIG["tree"]["entity_id"]
OWNED_TILE_ID = ENTITIES_CONFIG["ownedtile"]["entity_id"]
OWNED_TILE_HP_CLASS = ENTITIES_CONFIG["ownedtile"]["health"]
OWNED_TILE_SALARY = ENTITIES_CONFIG["ownedtile"]["salary"]
COLORS = {
"GREEN": color.GREEN_YELLOW,
"RED": (199, 21, 133),
"BLUE": color.CAMBRIDGE_BLUE,
"COLUMBIA_BLUE": color.COLUMBIA_BLUE,
"BLUEGRAY": color.BLUE_GRAY
}
ENTITY_ID2COST = dict()
for entity in ENTITIES_CONFIG.keys():
ENTITY_ID2COST.update({
ENTITIES_CONFIG[entity]["entity_id"] : ENTITIES_CONFIG[entity]["cost"]
})
class Assets:
def __init__(self):
self.entities_textures = {}
for key in ENTITIES_CONFIG.keys():
try:
self.entities_textures.update(
{ ENTITIES_CONFIG[key]["entity_id"] : ENTITIES_CONFIG[key]["texture"] }
)
except KeyError:
pass
self.hex_textures = {}
def add_hexagon_textures(self):
zero_hex = Hex()
zero_hex.init(MAP_HEX_RADIUS, shiftx=0, shifty=50, fill_color=color.GREEN_YELLOW, outline_width=MAP_HEX_OUTLINE_WIDTH)
TEXTURES = COLORS.keys()
self.hex_textures = {}
for T in TEXTURES:
self.hex_textures.update( {
T : make_hexagon_texture(MAP_HEX_RADIUS, COLORS[T],
zero_hex.cpoints, MAP_HEX_OUTLINE_COLOR, MAP_HEX_OUTLINE_WIDTH)
})
ASSETS = Assets()
ASSETS.add_hexagon_textures()