Files
Mike NelsonandAsteroth 070a8e18fa Adds Props as a new object type (#6836)
* First draft of prop object type

* Add prop editor dialog in FRED

* prop sexps

* lua table prop support

* lab support

* lua mission access to props

* prop collision support

* use std::optional so the object->instance id is always valid

* allow props to block suns

* minor cleanup and remove arbitrary limit. Still limited to 500 objects.

* Sort props by category

* cleanup

* implement collision hooks

* parse prop flags and further ensure props are inited and closed correctly

* Add Cyborg's multi suggestions

* fix missing header

* add props to empty slots if available

* add multi signature

* fix rebase issues and match collisions to the new multithread style

* appease Clang the Conquerer

* save/parse mission prop classes by name

* Clean up comments and finish TODOs

* fix string errors

* clang wants this to be static now

* address feedback

* address feedback

* Use model num from prop info instead

* merge prop and ship collision group sexps together

* fix rebase bug

* address feedback

* fix name shadowing

* ship heavy submodel

* clang

---------

Co-authored-by: Asteroth <[email protected]>
2026-02-16 14:41:34 +01:00

34 lines
1.4 KiB
C++

#ifndef PROP_FLAGS_H
#define PROP_FLAGS_H
#include "globalincs/flagset.h"
namespace Prop {
FLAG_LIST(Prop_Flags){
Glowmaps_disabled, // No glowmaps for this weapon instance
Draw_as_wireframe, // Render wireframe for this weapon instance
Render_full_detail, // Render full detail for this weapon instance
Render_without_light, // Render without light for this weapon instance
Render_without_diffuse, // Render without diffuse for this weapon instance
Render_without_glowmap, // Render without glowmap for this weapon instance
Render_without_normalmap, // Render without normal map for this weapon instance
Render_without_heightmap, // Render without height map for this weapon instance
Render_without_ambientmap, // Render without ambient for this weapon instance
Render_without_specmap, // Render without spec for this weapon instance
Render_without_reflectmap, // Render without reflect for this weapon instance
Render_with_alpha_mult, // Render with an alpha multiplier
NUM_VALUES};
FLAG_LIST(Info_Flags){
No_collide = 0, // No collisions
No_fred, // not available in fred
No_lighting,
//No_impact_debris,
NUM_VALUES};
} // namespace Prop
#endif