Moved shell.py and trees.py to tools/
parent
382c8b4261
commit
8978637786
@ -0,0 +1,45 @@
|
|||||||
|
#!/usr/bin/python
|
||||||
|
import sys
|
||||||
|
import pydfhack
|
||||||
|
from pydfhack.blocks import Point
|
||||||
|
DF = pydfhack.API("Memory.xml")
|
||||||
|
|
||||||
|
DF.Attach()
|
||||||
|
|
||||||
|
pos = DF.position
|
||||||
|
maps = DF.maps
|
||||||
|
cursor = pos.get_cursor()
|
||||||
|
refc = dict(pydfhack=pydfhack, API=pydfhack.API, DF=DF, pos=pos, maps=maps)
|
||||||
|
msize = maps.get_size()
|
||||||
|
print msize
|
||||||
|
locs = dict(pydfhack=pydfhack, API=pydfhack.API, DF=DF, pos=pos, maps=maps, msize=msize, cursor=cursor)
|
||||||
|
for z in range(msize[2]):
|
||||||
|
trees = 0
|
||||||
|
saplings = 0
|
||||||
|
dead_saplings = 0
|
||||||
|
for x in range(msize[0]):
|
||||||
|
for y in range(msize[1]):
|
||||||
|
p = Point(x, y, z, True)
|
||||||
|
block = maps.get_block(point=p)
|
||||||
|
changed = False
|
||||||
|
if not block.tiles:
|
||||||
|
break
|
||||||
|
for tx in range(16):
|
||||||
|
for ty in range(16):
|
||||||
|
tile = block.tiles[tx][ty]
|
||||||
|
if tile.ttype == 24:
|
||||||
|
trees += 1
|
||||||
|
elif tile.ttype == 231:
|
||||||
|
saplings += 1
|
||||||
|
tile.ttype = 24
|
||||||
|
changed = True
|
||||||
|
elif tile.ttype == 392:
|
||||||
|
dead_saplings += 1
|
||||||
|
tile.ttype = 24
|
||||||
|
changed = True
|
||||||
|
if changed:
|
||||||
|
block.save()
|
||||||
|
print "Saved block {0}".format(block)
|
||||||
|
print "Z-Level {0}: Trees {1}, Saplings {2}, Dead saplings {3}".format(z, trees, saplings, dead_saplings)
|
||||||
|
DF.Resume()
|
||||||
|
DF.Detach()
|
Loading…
Reference in New Issue