X-Git-Url: https://plomlompom.com/repos/test.html?a=blobdiff_plain;f=plomrogue-server.py;h=db297952c4ca3d0756bf277fee9313827edfd4f1;hb=f1b54d65ab5807797ece8b682803d44e8eb4af41;hp=c8cb0eebaa8548018f8fce0f990e7d784180d96b;hpb=063eb0e64a0a2122c5581a668217290eb0b01f2b;p=plomrogue
diff --git a/plomrogue-server.py b/plomrogue-server.py
index c8cb0ee..db29795 100755
--- a/plomrogue-server.py
+++ b/plomrogue-server.py
@@ -117,7 +117,7 @@ def record(command):
def save_world():
- """Save all commands needed to reconstruct current world state."""
+ """Save all commands needed to reconstruct current world state."""
# TODO: Misses same optimizations as record() from the original record().
def quote(string):
@@ -291,8 +291,8 @@ def play_game():
def remake_map():
- # DUMMY.
- print("I'd (re-)make the map now, if only I knew how.")
+ # DUMMY map creator.
+ world_db["MAP"] = bytearray(b'.' * (world_db["MAP_LENGTH"] ** 2))
def set_world_inactive():
@@ -369,7 +369,8 @@ def command_makeworld(seed_string):
def command_maplength(maplength_string):
# DUMMY.
set_world_inactive()
- # TODO: remove things, map
+ # TODO: remove map (is this necessary? no memory management trouble â¦)
+ world_db["Things"] = {}
setter(None, "MAP_LENGTH", 1, 256)(maplength_string)
@@ -377,18 +378,25 @@ def command_worldactive(worldactive_string):
# DUMMY.
val = integer_test(worldactive_string, 0, 1)
if val:
- if 0 != world_db["WORLD_ACTIVE"] and 0 == val:
- set_world_inactive()
+ if 0 != world_db["WORLD_ACTIVE"]:
+ if 0 == val:
+ set_world_inactive()
+ else:
+ print("World already active.")
elif 0 == world_db["WORLD_ACTIVE"]:
wait_exists = False
+ for ThingAction in world_db["ThingActions"]:
+ if "wait" == ThingAction["TA_NAME"]:
+ wait_exists = True
+ break
player_exists = False
- map_exists = False
- # TODO: perform tests:
- # Is there thing action of name 'wait'?
- # Is there a player thing?
- # Is there a map?
+ for Thing in world_db["Things"]:
+ if 0 == ThingAction["T_ID"]:
+ player_exists = True
+ break
+ map_exists = "MAP" in world_db
if wait_exists and player_exists and map_exists:
- # TODO: rebuild al things' FOVs, map memories
+ # TODO: rebuild all things' FOVs, map memories
world_db["WORLD_ACTIVE"] = 1