6060#include < EASTL\map.h>
6161#include < EASTL\string.h>
6262#include < EASTL\vector.h>
63+ #include < EASTL\bitset.h>
6364
6465// / Access the active editor object; check Editors::cEditor
6566#define Editor (*Editors::GetEditor ())
@@ -76,6 +77,38 @@ namespace Editors
7677{
7778 class EditorUI ;
7879
80+ enum eValidityTests {
81+ kValidityTooComplex = 0 ,
82+ kValidityOverBudget = 1 ,
83+ kValidityIncomplete = 2 ,
84+ kValidityUnloadableTextures = 3 ,
85+ kValidityInvalidName = 4 ,
86+ kValidityInvalidParts = 5 ,
87+ kValidityInvalidParents = 6 ,
88+ kValidityInvalidScales = 7 ,
89+ kValidityOutOfBounds = 8 ,
90+ kValidityTooSmall = 9 ,
91+ kValidityNoMouth = 0xa ,
92+ kValidityNotPainted = 0xb ,
93+ kValidityStatsOutOfRange = 0xc ,
94+ kValidityHasFloatingParts = 0xd ,
95+ kValidityUnloadableBlocks = 0xe ,
96+ kValidityInvalidSymmetry = 0xf ,
97+ kValidityMissingPacks = 0x10 ,
98+ kValidityHasZeroBlocks = 0x11 ,
99+ kValidityInvalidPaint = 0x12 ,
100+ kValidityIntersectingEndEffectors = 0x13 ,
101+ kValidityBlankName = 0x14 ,
102+ kValidityBadCharacters = 0x15 ,
103+ kValidityTooSmallX = 0x16 ,
104+ kValidityTooSmallY = 0x17 ,
105+ kValidityTooSmallZ = 0x18 ,
106+ kValidityTooSmallAbsoluteZ = 0x19 ,
107+ kValidityFailedLoad = 0x1a ,
108+ kValidityInvalidLimb = 0x1b ,
109+ kValidityNoReason = 0x1c
110+ };
111+
79112 enum class Mode : int
80113 {
81114 BuildMode = 0 ,
@@ -244,22 +277,16 @@ namespace Editors
244277 /* 30h */ int mMouseFlags ;
245278 /* 34h */ MouseState mMouseState ;
246279
247- /* 38h */ bool field_38;
248- /* 3Ch */ int field_3C;
249- /* 40h */ int field_40; // not initialized
250- /* 44h */ int field_44; // not initialized
251- /* 48h */ int field_48;
252- /* 4Ch */ int field_4C;
253- /* 50h */ int field_50;
254- /* 54h */ int field_54;
255- /* 58h */ int field_58;
256- /* 5Ch */ int field_5C;
257- /* 60h */ int field_60;
258- /* 64h */ int field_64;
259- /* 68h */ float field_68; // Set to 0 when mouse click, and when changing mode
280+ /* 38h */ bool mMouseMoved ;
281+ /* 3Ch */ int mModeModifiers ;
282+ /* 40h */ int mControlModifierMode ; // not initialized
283+ /* 44h */ int mEyeDropperModiferMode ; // not initialized
284+ /* 48h */ eastl::bitset<128 > mModelValidity ;
285+ /* 58h */ eastl::bitset<128 > mModelSaveValidity ;
286+ /* 68h */ float mIdleTime ; // Set to 0 when mouse click, and when changing mode
260287 // / Time to wait before starting animated creature (in milliseconds).
261288 /* 6Ch */ float mCreatureIdleActivationTime ;
262- /* 70h */ float field_70 ;
289+ /* 70h */ float mSwapToModelTime ;
263290 /* 74h */ bool field_74;
264291
265292 // TODO ManagedPtr
@@ -289,12 +316,11 @@ namespace Editors
289316 /* A8h */ ModelPtr mpBackgroundModel; // used in loc_5874D8
290317 // / A background model used in accessories editors. It belongs to mpBackgroundModelWorld.
291318 /* ACh */ ModelPtr mpAccBackgroundModel;
292- /* B0h */ eastl::string16 field_B0 ;
319+ /* B0h */ eastl::string16 mOriginalTag ;
293320 // /* B9h */ bool editorShowAbilityIcons; // might also be 4B6h ?
294321
295- /* C0h */ int field_C0; // not initialized // lastMouseClick[2] ?
296- /* C4h */ int field_C4; // not initialized
297- /* C8h */ int field_C8; // not initialized
322+ /* C0h */ int mMouseDownPosition [2 ]; // not initialized // lastMouseClick[2] ?
323+ /* C8h */ float mRolloverTime ; // not initialized
298324
299325 // also valid for spines
300326 // / Rigblock that is being hovered, and where actions like mouse wheel scaling will be applied
0 commit comments