Skip to content

Commit 9509e70

Browse files
(respawn.titanfall) making some methods more readable
1 parent cdec452 commit 9509e70

File tree

1 file changed

+20
-6
lines changed

1 file changed

+20
-6
lines changed

bsp_tool/branches/respawn/titanfall.py

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1174,22 +1174,33 @@ def mesh(bsp, mesh_index: int) -> geometry.Mesh:
11741174
# material
11751175
material_sort = bsp.MATERIAL_SORTS[mesh.material_sort]
11761176
texture_data = bsp.TEXTURE_DATA[material_sort.texture_data]
1177-
material = geometry.Material(bsp.TEXTURE_DATA_STRING_DATA[texture_data.name_index])
1177+
material_name = bsp.TEXTURE_DATA_STRING_DATA[texture_data.name_index]
1178+
material = geometry.Material(material_name)
11781179
# indices
11791180
start, length = mesh.first_mesh_index, mesh.num_triangles * 3
1180-
indices = [material_sort.vertex_offset + i for i in bsp.MESH_INDICES[start:start + length]]
1181+
indices = [
1182+
material_sort.vertex_offset + i
1183+
for i in bsp.MESH_INDICES[start:start + length]]
11811184
# vertices
11821185
vertex_lump = (mesh.flags & MeshFlags.MASK_VERTEX).name
1183-
converter = bsp.lit_vertex if vertex_lump.split("_")[1] == "LIT" else bsp.unlit_vertex
1186+
converters = {
1187+
"VERTEX_LIT_FLAT": bsp.lit_vertex,
1188+
"VERTEX_LIT_BUMP": bsp.lit_vertex,
1189+
"VERTEX_UNLIT": bsp.unlit_vertex,
1190+
"VERTEX_UNLIT_TS": bsp.unlit_vertex}
1191+
convert = converters[vertex_lump]
11841192
VERTEX_LUMP = getattr(bsp, vertex_lump)
1185-
vertices = [converter(VERTEX_LUMP[i]) for i in indices]
1193+
vertices = [convert(VERTEX_LUMP[i]) for i in indices]
11861194
return geometry.Mesh(material, geometry.triangle_soup(vertices))
11871195

11881196

11891197
def model(bsp, model_index: int) -> geometry.Model:
11901198
# entity
11911199
# NOTE: not all brush entities are in the ENTITIES block
1192-
entities = [e for es in bsp.search_all_entities(model=f"*{model_index}").values() for e in es]
1200+
entities = [
1201+
entity
1202+
for entities in bsp.search_all_entities(model=f"*{model_index}").values()
1203+
for entity in entities]
11931204
model_entity = entities[0] if len(entities) != 0 else dict()
11941205
origin = model_entity.get("origin", "0 0 0")
11951206
origin = vector.vec3(*origin.split())
@@ -1198,7 +1209,10 @@ def model(bsp, model_index: int) -> geometry.Model:
11981209
# geometry
11991210
model = bsp.MODELS[model_index]
12001211
start, length = model.first_mesh, model.num_meshes
1201-
out = geometry.Model([bsp.mesh(i) for i in range(start, start + length)], origin, angles)
1212+
out = geometry.Model([
1213+
bsp.mesh(i)
1214+
for i in range(start, start + length)],
1215+
origin, angles)
12021216
out.entity = model_entity
12031217
return out
12041218

0 commit comments

Comments
 (0)