first commit
parent
fda4ad94cd
commit
d28279894f
@ -0,0 +1,53 @@
|
||||
import time
|
||||
from pydfhack import ContextManager
|
||||
|
||||
df_cm = ContextManager("Memory.xml")
|
||||
df = None
|
||||
|
||||
def test_attach():
|
||||
global df
|
||||
|
||||
if not df:
|
||||
df = df_cm.get_single_context()
|
||||
|
||||
if not df.attach():
|
||||
print "Unable to attach!"
|
||||
return False
|
||||
elif not df.detach():
|
||||
print "Unabled to detach!"
|
||||
return False
|
||||
else:
|
||||
return True
|
||||
|
||||
def suspend_test():
|
||||
global df
|
||||
|
||||
if not df:
|
||||
df = df_cm.get_single_context()
|
||||
|
||||
print "Testing suspend/resume"
|
||||
|
||||
df.attach()
|
||||
|
||||
t1 = time.time()
|
||||
|
||||
for i in xrange(1000):
|
||||
df.suspend()
|
||||
|
||||
if i % 10 == 0:
|
||||
print "%i%%" % (i / 10.0,)
|
||||
|
||||
df.resume()
|
||||
|
||||
t2 = time.time()
|
||||
|
||||
df.detach()
|
||||
|
||||
print "suspend test done in $0.9f seconds" % (t2 - t1)
|
||||
|
||||
if __name__ == "__main__":
|
||||
if test_attach():
|
||||
suspend_test()
|
||||
|
||||
print "Done. Press any key to continue"
|
||||
raw_input()
|
@ -0,0 +1,20 @@
|
||||
from context import Context, ContextManager
|
||||
|
||||
cm = ContextManager("Memory.xml")
|
||||
df = cm.get_single_context()
|
||||
|
||||
df.attach()
|
||||
|
||||
pos = df.position
|
||||
|
||||
print "Hotkeys"
|
||||
|
||||
hotkeys = pos.read_hotkeys()
|
||||
|
||||
for key in hotkeys:
|
||||
print "x: %d\ny: %d\tz: %d\ttext: %s" % (key.x, key.y, key.z, key.name)
|
||||
|
||||
df.detach()
|
||||
|
||||
print "Done. Press any key to continue"
|
||||
raw_input()
|
@ -0,0 +1,24 @@
|
||||
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)
|
||||
|
||||
pos = df.position
|
||||
|
||||
print "view coords: %s" % (pos.view_coords,)
|
||||
print "cursor coords: %s" % (pos.cursor_coords,)
|
||||
print "window size: %s" % (pos.window_size,)
|
||||
|
||||
if not df.detach():
|
||||
print "Unable to detach!"
|
||||
|
||||
print "Done. Press any key to continue"
|
||||
raw_input()
|
@ -0,0 +1,27 @@
|
||||
from pydfhack import ContextManager, Maps
|
||||
|
||||
df_cm = ContextManager("Memory.xml")
|
||||
df = df_cm.get_single_context()
|
||||
|
||||
df.attach()
|
||||
|
||||
m = df.maps()
|
||||
|
||||
m.start()
|
||||
|
||||
m_x, m_y, m_z = m.size
|
||||
|
||||
for x in xrange(m_x):
|
||||
for y in xrange(m_y):
|
||||
for z in xrange(m_z):
|
||||
if m.is_valid_block(x, y, z):
|
||||
d = m.read_designations(x, y, z)
|
||||
|
||||
for i in d:
|
||||
for j in i:
|
||||
j.bits.hidden = 0
|
||||
|
||||
m.write_designations(x, y, z, d)
|
||||
|
||||
m.finish()
|
||||
df.detach()
|
@ -0,0 +1,52 @@
|
||||
from context import Context, ContextManager
|
||||
|
||||
cm = ContextManager("Memory.xml")
|
||||
df = cm.get_single_context()
|
||||
|
||||
df.attach()
|
||||
|
||||
pos = df.position
|
||||
veg = df.vegetation
|
||||
mps = df.maps
|
||||
mat = df.materials
|
||||
|
||||
x, y, z = pos.get_cursor_coords()
|
||||
|
||||
num_veg = veg.start()
|
||||
|
||||
if x == -30000:
|
||||
print "----==== Trees ====----"
|
||||
|
||||
for i in xrange(num_veg):
|
||||
t = veg.read(i)
|
||||
|
||||
print "%d/%d/%d, %d:%d" % (t.x, t.y, t.z, t.type, t.material)
|
||||
else:
|
||||
#new method, gets the list of trees in a block. can show farm plants
|
||||
if mps.start():
|
||||
pos_tuple = (x, y, z)
|
||||
trees = mps.read_vegetation(x / 16, y / 16, z)
|
||||
|
||||
if trees is not None:
|
||||
for t in trees:
|
||||
if (t.x, t.y, t.z) == pos_tuple:
|
||||
print "----==== Tree at %d/%d/%d ====----" % pos_tuple
|
||||
print str(t)
|
||||
break
|
||||
mps.finish()
|
||||
|
||||
#old method, get the tree from the global vegetation vector. can't show farm plants
|
||||
for i in xrange(num_veg):
|
||||
t = veg.read(i)
|
||||
|
||||
if (t.x, t.y, t.z) == pos_tuple:
|
||||
print "----==== Tree at %d/%d/%d ====----" % pos_tuple
|
||||
print str(t)
|
||||
break
|
||||
|
||||
veg.finish()
|
||||
|
||||
df.detach()
|
||||
|
||||
print "Done. Press any key to continue"
|
||||
raw_input()
|
Loading…
Reference in New Issue