home · contact · privacy
Server: Minor performance optimizations in seeing_thing().
[plomrogue] / server / config / world_data.py
1 # This file is part of PlomRogue. PlomRogue is licensed under the GPL version 3
2 # or any later version. For details on its copyright, license, and warranties,
3 # see the file NOTICE in the root directory of the PlomRogue source package.
4
5
6 """World state database. With sane default values. (Randomness is in rand.)"""
7 world_db = {
8     "TURN": 0,
9     "MAP_LENGTH": 64,
10     "PLAYER_TYPE": 0,
11     "WORLD_ACTIVE": 0,
12     "MAP": False,
13     "PLUGIN": [],
14     "ThingActions": {},
15     "ThingTypes": {},
16     "Things": {},
17     "terrain_names": {
18         " ": "UNKNOWN",
19         "X": "TREE",
20         "~": "SEA",
21         ".": "EARTH"
22     }
23 }
24
25 """Mapping of direction names to internal direction chars."""
26 directions_db = {"east": "d", "south-east": "c", "south-west": "x",
27                  "west": "s", "north-west": "w", "north-east": "e"}
28
29 thing_defaults = {
30     "T_ARGUMENT": 0,
31     "T_PROGRESS": 0,
32     "T_SATIATION": 0,
33     "T_COMMAND": 0,
34     "T_CARRIES": [],
35     "carried": False,
36     "T_MEMTHING": [],
37     "T_MEMMAP": False,
38     "T_MEMDEPTHMAP": False,
39     "fovmap": False
40 }
41
42 thingtype_defaults = {
43         "TT_NAME": "(none)",
44         "TT_TOOLPOWER": 0,
45         "TT_LIFEPOINTS": 0,
46         "TT_PROLIFERATE": 0,
47         "TT_START_NUMBER": 0,
48         "TT_SYMBOL": "?",
49         "TT_TOOL": ""
50 }
51
52 symbols_passable = "."
53
54 thingprol_field_spreadable = lambda x, y: x in symbols_passable
55 thingprol_test_hook = lambda x: True
56 thingprol_post_create_hook = lambda x: None