mirror of
https://github.com/freedoom/freedoom.git
synced 2025-09-01 13:25:46 -04:00
42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
#!/usr/bin/python
|
|
|
|
# cleanroom.py: a clean-room IWAD texture1 lump constructor
|
|
from doom import Patch, Texture
|
|
|
|
class Model:
|
|
"""The Model represents the original texture list,
|
|
the WIP texture list, and various bits of state.
|
|
"""
|
|
def parse_texture_file(self,fname):
|
|
texture1 = file(fname, "r").read()
|
|
textures = {}
|
|
current = None
|
|
for line in texture1.split("\n"):
|
|
if len(line) == 0 or line[0] == ";" or line[0] == "#":
|
|
continue
|
|
elif line[0] == "*" and current:
|
|
junk,name,y,x= line.split()
|
|
current.patches.append(Patch(name,int(x),int(y)))
|
|
else:
|
|
line = line.split()
|
|
current = Texture(line[0],line[1],line[2])
|
|
textures[line[0]] = current
|
|
return textures
|
|
|
|
def new_wip_textures(self):
|
|
for texture in self.orig_textures.values():
|
|
self.wip_textures[texture.name] = \
|
|
Texture(texture.name, texture.width, texture.height)
|
|
|
|
def __init__(self):
|
|
self.orig_textures = \
|
|
self.parse_texture_file("../../textures/combined.txt")
|
|
self.wip_textures = {}
|
|
|
|
model = Model()
|
|
print "\n\n\torig\n\n"
|
|
print "".join(map(str, model.orig_textures.values()))
|
|
|
|
print "\n\n\tnew\n\n"
|
|
model.new_wip_textures()
|
|
print "".join(map(str, model.wip_textures.values()))
|