71 lines
1.7 KiB
Python
71 lines
1.7 KiB
Python
|
import sys
|
||
|
from pydfhack import ContextManager
|
||
|
|
||
|
df_cm = ContextManager("Memory.xml")
|
||
|
df = df_cm.get_single_context()
|
||
|
|
||
|
if not df.attach():
|
||
|
print "Unable to attach!"
|
||
|
print "Press any key to continue"
|
||
|
|
||
|
raw_input()
|
||
|
sys.exit(1)
|
||
|
|
||
|
gui = df.gui
|
||
|
|
||
|
if gui is not None:
|
||
|
maps = df.maps
|
||
|
world = df.world
|
||
|
|
||
|
have_maps = maps.start()
|
||
|
world.start()
|
||
|
|
||
|
gm = world.read_game_mode()
|
||
|
|
||
|
if gm is not None:
|
||
|
print gm
|
||
|
|
||
|
date_tuple = (world.read_current_year(), world.read_current_month(), world.read_current_day(), world.read_current_tick())
|
||
|
|
||
|
print "Year: %d Month: %d Day: %d Tick: %d" % date_tuple
|
||
|
|
||
|
v_coords = gui.get_view_coords()
|
||
|
c_coords = gui.get_cursor_coords()
|
||
|
w_coords = (-1, -1, -1)
|
||
|
world_pos_string = ""
|
||
|
|
||
|
if have_maps is True:
|
||
|
w_coords = maps.getPosition()
|
||
|
|
||
|
x = (v_coords[0] + w_coords[0]) * 48
|
||
|
y = (v_coords[1] + w_coords[1]) * 48
|
||
|
z = (v_coords[2] + w_coords[2])
|
||
|
|
||
|
world_pos_string = " world: %d/%d/%d" % (x, y, z)
|
||
|
|
||
|
print "Map world offset: %d/%d/%d embark squares" % w_coords
|
||
|
|
||
|
if v_coords != (-1, -1, -1):
|
||
|
print "view coords: %d/%d/%d" % v_coords
|
||
|
|
||
|
if have_maps is True:
|
||
|
print world_pos_string
|
||
|
|
||
|
if c_coords != (-1, -1, -1):
|
||
|
print "cursor coords: %d/%d/%d" % c_coords
|
||
|
|
||
|
if have_maps is True:
|
||
|
print world_pos_string
|
||
|
|
||
|
window_size = gui.get_window_size()
|
||
|
|
||
|
if window_size != (-1, -1):
|
||
|
print "window size : %d %d" % window_size
|
||
|
else:
|
||
|
print "cursor and window parameters are unsupported on your version of DF"
|
||
|
|
||
|
if not df.detach():
|
||
|
print "Unable to detach!"
|
||
|
|
||
|
print "Done. Press any key to continue"
|
||
|
raw_input()
|