source: trunk/game/scripts/gamestate.py @ 504

Revision 476, 2.1 KB checked in by maximinus_parpg, 10 years ago (diff)

Edited and tidied up files.
Generally a mix of spelling mistakes, non pep-8 code
and other things.

  • Property svn:eol-style set to native
Line 
1#!/usr/bin/python
2
3#   This file is part of PARPG.
4
5#   PARPG is free software: you can redistribute it and/or modify
6#   it under the terms of the GNU General Public License as published by
7#   the Free Software Foundation, either version 3 of the License, or
8#   (at your option) any later version.
9
10#   PARPG is distributed in the hope that it will be useful,
11#   but WITHOUT ANY WARRANTY; without even the implied warranty of
12#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13#   GNU General Public License for more details.
14
15#   You should have received a copy of the GNU General Public License
16#   along with PARPG.  If not, see <http://www.gnu.org/licenses/>.
17
18from objects import base
19from scripts import quest_engine
20
21class GameState(object):
22    """This class holds the current state of the game."""
23    def __init__(self):
24        self.PC = None
25        self.quest_engine = quest_engine.QuestEngine()
26        self.objects = {}
27        self.current_map_file = None
28        self.current_map_name = None
29        # these coordinates are only used for saving and loading the game.
30        # They do not represent the pc's active location
31        self.saved_pc_coordinates = (0,0)
32       
33    def getObjectsFromMap(self, map_id):
34        """Gets all objects that are currently on the given map.
35           @type map: String
36           @param map: The map name.
37           @returns: The list of objects on this map. Or an empty list"""
38        if map_id in self.objects:
39            return [i for i in self.objects[map_id].values() if map_id in self.objects]
40       
41        return {}
42   
43    def getObjectById(self, obj_id, map_id):
44        """Gets an object by its object id and map id
45           @type obj_id: String
46           @param obj_id: The id of the object.
47           @type map_id: String
48           @param map_id: It id of the map containing the object.
49           @returns: The object or None."""
50        if not map_id in self.objects:
51            self.objects[map_id] = {}
52        if obj_id in self.objects[map_id]:
53            return self.objects[map_id][obj_id]
Note: See TracBrowser for help on using the repository browser.