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

Function CombineFileFlags

roomedit/source/load.cpp:167–220  ·  view source on GitHub ↗

/ * CombineFileFlags: Given flags from + and - sidedefs, return linedef flags. */

Source from the content-addressed store, hash-verified

165 * CombineFileFlags: Given flags from + and - sidedefs, return linedef flags.
166 */
167int CombineFileFlags(int pos_flags, int neg_flags)
168{
169 int flags = 0;
170
171 if (pos_flags & WF_BACKWARDS)
172 flags |= BF_POS_BACKWARDS;
173 if (pos_flags & WF_TRANSPARENT)
174 flags |= BF_POS_TRANSPARENT;
175 if (pos_flags & WF_PASSABLE)
176 flags |= BF_POS_PASSABLE;
177 if (pos_flags & WF_NOLOOKTHROUGH)
178 flags |= BF_POS_NOLOOKTHROUGH;
179 if (pos_flags & WF_ABOVE_BOTTOMUP)
180 flags |= BF_POS_ABOVE_BUP;
181 if (pos_flags & WF_BELOW_TOPDOWN)
182 flags |= BF_POS_BELOW_TDOWN;
183 if (pos_flags & WF_NORMAL_TOPDOWN)
184 flags |= BF_POS_NORMAL_TDOWN;
185 if (pos_flags & WF_NO_VTILE)
186 flags |= BF_POS_NO_VTILE;
187 if (pos_flags & WF_NO_HTILE)
188 flags |= BF_POS_NO_HTILE;
189
190 if (neg_flags & WF_BACKWARDS)
191 flags |= BF_NEG_BACKWARDS;
192 if (neg_flags & WF_TRANSPARENT)
193 flags |= BF_NEG_TRANSPARENT;
194 if (neg_flags & WF_PASSABLE)
195 flags |= BF_NEG_PASSABLE;
196 if (neg_flags & WF_NOLOOKTHROUGH)
197 flags |= BF_NEG_NOLOOKTHROUGH;
198 if (neg_flags & WF_ABOVE_BOTTOMUP)
199 flags |= BF_NEG_ABOVE_BUP;
200 if (neg_flags & WF_BELOW_TOPDOWN)
201 flags |= BF_NEG_BELOW_TDOWN;
202 if (neg_flags & WF_NORMAL_TOPDOWN)
203 flags |= BF_NEG_NORMAL_TDOWN;
204 if (neg_flags & WF_NO_VTILE)
205 flags |= BF_NEG_NO_VTILE;
206 if (neg_flags & WF_NO_HTILE)
207 flags |= BF_NEG_NO_HTILE;
208
209 if ((pos_flags & WF_MAP_NEVER) || (neg_flags & WF_MAP_NEVER))
210 flags |= BF_MAP_NEVER;
211 if ((pos_flags & WF_MAP_ALWAYS) || (neg_flags & WF_MAP_ALWAYS))
212 flags |= BF_MAP_ALWAYS;
213
214 flags |= (WallScrollSpeed(pos_flags) << 20);
215 flags |= (WallScrollDirection(pos_flags) << 22);
216 flags |= (WallScrollSpeed(neg_flags) << 25);
217 flags |= (WallScrollDirection(neg_flags) << 27);
218
219 return flags;
220}
221/***************************************************************************/
222/*
223 * SetSideDefs: Fix linedefs and sidedefs to reflect contents of file sidedefs

Callers 1

SetSideDefsFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected