MCPcopy Create free account
hub / github.com/Meridian59/Meridian59 / SetSideDefs

Function SetSideDefs

roomedit/source/load.cpp:225–265  ·  view source on GitHub ↗

/ * SetSideDefs: Fix linedefs and sidedefs to reflect contents of file sidedefs */

Source from the content-addressed store, hash-verified

223 * SetSideDefs: Fix linedefs and sidedefs to reflect contents of file sidedefs
224 */
225void SetSideDefs(void)
226{
227 int i, file_sd;
228 SideDef *SD;
229 int flags1, flags2;
230
231 for (i=0; i < NumLineDefs; i++)
232 {
233 flags1 = flags2 = 0;
234 LineDef *LD = &LineDefs[i];
235
236 file_sd = LD->file_sidedef1 - 1;
237 if (file_sd == -1)
238 LD->sidedef1 = -1;
239 else
240 {
241 // Copy file sidedef info into sidedef and linedef
242 SD = &SideDefs[LD->sidedef1];
243
244 CopySideDefFromFile(SD, &FileSideDefs[file_sd]);
245 flags1 = FileSideDefs[file_sd].flags;
246 }
247
248 file_sd = LD->file_sidedef2 - 1;
249 if (file_sd == -1)
250 LD->sidedef2 = -1;
251 else
252 {
253 // Copy file sidedef info into sidedef and linedef
254 SD = &SideDefs[LD->sidedef2];
255
256 CopySideDefFromFile(SD, &FileSideDefs[file_sd]);
257 flags2 = FileSideDefs[file_sd].flags;
258 }
259
260 LD->blak_flags = CombineFileFlags(flags1, flags2);
261 // Extract per-sidedef translucency levels from bits 15-16 of WF_ flags
262 LD->translucency_pos = WallTranslucencyLevel(flags1);
263 LD->translucency_neg = WallTranslucencyLevel(flags2);
264 }
265}
266/***************************************************************************/
267/*
268 * LoadRoom: Load the room editor part of the room file, and set Vertices,

Callers 1

LoadRoomFunction · 0.85

Calls 3

CopySideDefFromFileFunction · 0.85
CombineFileFlagsFunction · 0.85
WallTranslucencyLevelFunction · 0.50

Tested by

no test coverage detected