broadfield-dev commited on
Commit
a70ed2f
·
verified ·
1 Parent(s): d09f4c3

Update game.py

Browse files
Files changed (1) hide show
  1. game.py +7 -3
game.py CHANGED
@@ -5,6 +5,7 @@ class Game:
5
  def __init__(self):
6
  self.map_size = 50 # Much larger dungeon
7
  self.visible_size = 10 # 10x10 visible area on screen
 
8
  self.terrain = self.generate_maze()
9
  self.player_pos = [1, 1] # Start near top-left
10
  self.player_health = 10
@@ -12,7 +13,6 @@ class Game:
12
  self.inventory = []
13
  self.monsters = self.generate_monsters()
14
  self.items = self.generate_items()
15
- self.door_pos = [48, 48] # Door to next level at far end
16
  self.level = 1
17
 
18
  def generate_maze(self):
@@ -36,7 +36,11 @@ class Game:
36
 
37
  # Ensure player start and door positions are accessible
38
  terrain[1][1] = 'f'
39
- terrain[self.door_pos[1]][self.door_pos[0]] = 'd' # 'd' for door
 
 
 
 
40
  return terrain
41
 
42
  def generate_monsters(self):
@@ -136,12 +140,12 @@ class Game:
136
  emit('message', f'Entered Level {self.level}! New dungeon awaits.')
137
 
138
  def reset_level(self):
 
139
  self.terrain = self.generate_maze()
140
  self.player_pos = [1, 1]
141
  self.player_health = 10
142
  self.monsters = self.generate_monsters()
143
  self.items = self.generate_items()
144
- self.door_pos = [48, 48]
145
 
146
  def handle_combat(self, pos):
147
  from flask_socketio import emit
 
5
  def __init__(self):
6
  self.map_size = 50 # Much larger dungeon
7
  self.visible_size = 10 # 10x10 visible area on screen
8
+ self.door_pos = [48, 48] # Door to next level at far end - set before generating maze
9
  self.terrain = self.generate_maze()
10
  self.player_pos = [1, 1] # Start near top-left
11
  self.player_health = 10
 
13
  self.inventory = []
14
  self.monsters = self.generate_monsters()
15
  self.items = self.generate_items()
 
16
  self.level = 1
17
 
18
  def generate_maze(self):
 
36
 
37
  # Ensure player start and door positions are accessible
38
  terrain[1][1] = 'f'
39
+ if hasattr(self, 'door_pos'): # Safety check
40
+ terrain[self.door_pos[1]][self.door_pos[0]] = 'd' # 'd' for door
41
+ else:
42
+ print("Warning: door_pos not set, using default [48, 48]")
43
+ terrain[48][48] = 'd' # Fallback if door_pos is not set
44
  return terrain
45
 
46
  def generate_monsters(self):
 
140
  emit('message', f'Entered Level {self.level}! New dungeon awaits.')
141
 
142
  def reset_level(self):
143
+ self.door_pos = [48, 48] # Reset door position
144
  self.terrain = self.generate_maze()
145
  self.player_pos = [1, 1]
146
  self.player_health = 10
147
  self.monsters = self.generate_monsters()
148
  self.items = self.generate_items()
 
149
 
150
  def handle_combat(self, pos):
151
  from flask_socketio import emit