Added support for renaming property archetypes. Added support for enums to override the default type name. Added the ability for enums/choices/flags with no values/flags to be edited as ints.
This commit is contained in:
parent
0e5355a103
commit
cf219cf17a
|
@ -219,6 +219,73 @@ TString CGameTemplate::GetPropertyArchetypeFilePath(const TString& kTypeName)
|
||||||
return GetGameDirectory() + Iter->second.Path;
|
return GetGameDirectory() + Iter->second.Path;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool CGameTemplate::RenamePropertyArchetype(const TString& kTypeName, const TString& kNewTypeName)
|
||||||
|
{
|
||||||
|
if( kTypeName != kNewTypeName )
|
||||||
|
{
|
||||||
|
// Fetch the property that we are going to be renaming.
|
||||||
|
// Validate type, too, because we only support renaming struct archetypes at the moment
|
||||||
|
auto Iter = mPropertyTemplates.find(kTypeName);
|
||||||
|
|
||||||
|
if( Iter != mPropertyTemplates.end() )
|
||||||
|
{
|
||||||
|
SPropertyTemplatePath& Path = Iter->second;
|
||||||
|
IProperty* pArchetype = Path.pTemplate.get();
|
||||||
|
|
||||||
|
if( pArchetype )
|
||||||
|
{
|
||||||
|
// Attempt to move the XML to the new location.
|
||||||
|
TString OldPath = GetGameDirectory() + Path.Path;
|
||||||
|
TString NewPath = OldPath.GetFileDirectory() + kNewTypeName + ".xml";
|
||||||
|
|
||||||
|
if( FileUtil::MoveFile(OldPath, NewPath) )
|
||||||
|
{
|
||||||
|
// Update the name in the game template's internal mapping
|
||||||
|
TString RelativePath = FileUtil::MakeRelative( NewPath, GetGameDirectory() );
|
||||||
|
auto MapNode = mPropertyTemplates.extract(Iter);
|
||||||
|
MapNode.key() = kNewTypeName;
|
||||||
|
MapNode.mapped().Path = RelativePath;
|
||||||
|
mPropertyTemplates.insert( std::move(MapNode) );
|
||||||
|
mDirty = true;
|
||||||
|
|
||||||
|
// Renaming the archetype will handle updating the actual type name, and
|
||||||
|
// dirtying/invalidating property sub-instances.
|
||||||
|
TString OldTypeName = pArchetype->HashableTypeName();
|
||||||
|
pArchetype->SetName(kNewTypeName);
|
||||||
|
|
||||||
|
// For MP2 and up, we also need to update the type names stored in the property map.
|
||||||
|
if (pArchetype->Game() >= EGame::EchoesDemo)
|
||||||
|
{
|
||||||
|
NPropertyMap::ChangeTypeName(pArchetype, *OldTypeName, *kNewTypeName);
|
||||||
|
}
|
||||||
|
|
||||||
|
// MP1 has a lot of unnamed properties that just use the type name as their name.
|
||||||
|
// Update these properties so their name now refers to the updated type name.
|
||||||
|
else
|
||||||
|
{
|
||||||
|
std::list<IProperty*> SubInstances;
|
||||||
|
pArchetype->GatherAllSubInstances(SubInstances, true);
|
||||||
|
|
||||||
|
for (auto Iter = SubInstances.begin(); Iter != SubInstances.end(); Iter++)
|
||||||
|
{
|
||||||
|
IProperty* pProperty = *Iter;
|
||||||
|
|
||||||
|
if (pProperty->Name() == kTypeName)
|
||||||
|
{
|
||||||
|
pProperty->SetName(kNewTypeName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
TString CGameTemplate::GetGameDirectory() const
|
TString CGameTemplate::GetGameDirectory() const
|
||||||
{
|
{
|
||||||
return mSourceFile.GetFileDirectory();
|
return mSourceFile.GetFileDirectory();
|
||||||
|
|
|
@ -132,6 +132,7 @@ public:
|
||||||
SMessage MessageByIndex(u32 Index);
|
SMessage MessageByIndex(u32 Index);
|
||||||
IProperty* FindPropertyArchetype(const TString& kTypeName);
|
IProperty* FindPropertyArchetype(const TString& kTypeName);
|
||||||
TString GetPropertyArchetypeFilePath(const TString& kTypeName);
|
TString GetPropertyArchetypeFilePath(const TString& kTypeName);
|
||||||
|
bool RenamePropertyArchetype(const TString& kTypeName, const TString& kNewTypeName);
|
||||||
TString GetGameDirectory() const;
|
TString GetGameDirectory() const;
|
||||||
|
|
||||||
// Inline Accessors
|
// Inline Accessors
|
||||||
|
|
|
@ -170,7 +170,15 @@ inline void ConditionalLoadMap()
|
||||||
/** Saves property names back out to the template file */
|
/** Saves property names back out to the template file */
|
||||||
void SaveMap(bool Force /*= false*/)
|
void SaveMap(bool Force /*= false*/)
|
||||||
{
|
{
|
||||||
ASSERT( gMapIsLoaded );
|
if( !gMapIsLoaded )
|
||||||
|
{
|
||||||
|
if (Force)
|
||||||
|
{
|
||||||
|
LoadMap();
|
||||||
|
}
|
||||||
|
else return;
|
||||||
|
}
|
||||||
|
|
||||||
Log::Write("Saving property map");
|
Log::Write("Saving property map");
|
||||||
|
|
||||||
if( gMapIsDirty || Force )
|
if( gMapIsDirty || Force )
|
||||||
|
@ -306,33 +314,96 @@ void SetPropertyName(u32 ID, const char* pkTypeName, const char* pkNewName)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Change the type name associated with a property ID */
|
/** Change a type name of a property. */
|
||||||
void SetTypeName(u32 ID, const char* pkOldTypeName, const char* pkNewTypeName)
|
void ChangeTypeName(IProperty* pProperty, const char* pkOldTypeName, const char* pkNewTypeName)
|
||||||
{
|
{
|
||||||
u32 OldTypeHash = CCRC32::StaticHashString(pkOldTypeName);
|
u32 OldTypeHash = CCRC32::StaticHashString(pkOldTypeName);
|
||||||
u32 NewTypeHash = CCRC32::StaticHashString(pkNewTypeName);
|
u32 NewTypeHash = CCRC32::StaticHashString(pkNewTypeName);
|
||||||
|
|
||||||
SNameKey OldKey( OldTypeHash, ID );
|
if (OldTypeHash == NewTypeHash)
|
||||||
auto MapNode = gNameMap.extract(OldKey);
|
|
||||||
|
|
||||||
if (!MapNode.empty())
|
|
||||||
{
|
{
|
||||||
SNameKey& Key = MapNode.key();
|
return;
|
||||||
SNameValue& Value = MapNode.mapped();
|
|
||||||
Key.TypeHash = NewTypeHash;
|
|
||||||
gHashToTypeName[NewTypeHash] = pkNewTypeName;
|
|
||||||
|
|
||||||
for (auto Iter = Value.PropertyList.begin(); Iter != Value.PropertyList.end(); Iter++)
|
|
||||||
{
|
|
||||||
IProperty* pProperty = *Iter;
|
|
||||||
pProperty->RecacheName();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Start off with a ist of all properties in the same inheritance chain as this one.
|
||||||
|
std::list<IProperty*> Properties;
|
||||||
|
IProperty* pArchetype = pProperty->RootArchetype();
|
||||||
|
pArchetype->GatherAllSubInstances(Properties, true);
|
||||||
|
|
||||||
|
for (auto Iter = Properties.begin(); Iter != Properties.end(); Iter++)
|
||||||
|
{
|
||||||
|
pProperty = *Iter;
|
||||||
|
|
||||||
|
if (pProperty->UsesNameMap())
|
||||||
|
{
|
||||||
|
SNameKey OldKey(OldTypeHash, pProperty->ID());
|
||||||
|
SNameKey NewKey(NewTypeHash, pProperty->ID());
|
||||||
|
|
||||||
|
// Disassociate this property from the old mapping.
|
||||||
|
auto Find = gNameMap.find(OldKey);
|
||||||
|
|
||||||
|
if (Find != gNameMap.end())
|
||||||
|
{
|
||||||
|
SNameValue& Value = Find->second;
|
||||||
|
NBasics::ListRemoveOne(Value.PropertyList, pProperty);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create a key for the new property and add it to the list.
|
||||||
|
Find = gNameMap.find(NewKey);
|
||||||
|
|
||||||
|
if (Find == gNameMap.end())
|
||||||
|
{
|
||||||
|
SNameValue Value;
|
||||||
|
Value.Name = pProperty->Name();
|
||||||
|
gNameMap[NewKey] = Value;
|
||||||
|
Find = gNameMap.find(NewKey);
|
||||||
|
}
|
||||||
|
ASSERT(Find != gNameMap.end());
|
||||||
|
Find->second.PropertyList.push_back(pProperty);
|
||||||
|
|
||||||
|
gMapIsDirty = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
gHashToTypeName[NewTypeHash] = pkNewTypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Change a type name. */
|
||||||
|
void ChangeTypeNameGlobally(const char* pkOldTypeName, const char* pkNewTypeName)
|
||||||
|
{
|
||||||
|
u32 OldTypeHash = CCRC32::StaticHashString(pkOldTypeName);
|
||||||
|
u32 NewTypeHash = CCRC32::StaticHashString(pkNewTypeName);
|
||||||
|
|
||||||
|
if (OldTypeHash == NewTypeHash)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// The process here is basically to find all properties with a matching typename
|
||||||
|
// hash and update the hashes to the new type. Not 100% sure if this is the best
|
||||||
|
// way to go about doing it. From what I understand, insert() does not invalidate
|
||||||
|
// iterators, and extract() only invalidates the iterator being extracted. So this
|
||||||
|
// implementation should work correctly.
|
||||||
|
for (auto MapIter = gNameMap.begin(); MapIter != gNameMap.end(); MapIter++)
|
||||||
|
{
|
||||||
|
if (MapIter->first.TypeHash == OldTypeHash)
|
||||||
|
{
|
||||||
|
auto PrevIter = MapIter;
|
||||||
|
PrevIter--;
|
||||||
|
|
||||||
|
auto MapNode = gNameMap.extract(MapIter);
|
||||||
|
MapIter = PrevIter;
|
||||||
|
|
||||||
|
SNameKey& Key = MapNode.key();
|
||||||
|
Key.TypeHash = NewTypeHash;
|
||||||
gNameMap.insert( std::move(MapNode) );
|
gNameMap.insert( std::move(MapNode) );
|
||||||
gMapIsDirty = true;
|
gMapIsDirty = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gHashToTypeName[NewTypeHash] = pkNewTypeName;
|
||||||
|
}
|
||||||
|
|
||||||
/** Registers a property in the name map. Should be called on all properties that use the map */
|
/** Registers a property in the name map. Should be called on all properties that use the map */
|
||||||
void RegisterProperty(IProperty* pProperty)
|
void RegisterProperty(IProperty* pProperty)
|
||||||
{
|
{
|
||||||
|
@ -363,16 +434,17 @@ void RegisterProperty(IProperty* pProperty)
|
||||||
|
|
||||||
gNameMap[Key] = Value;
|
gNameMap[Key] = Value;
|
||||||
MapFind = gNameMap.find(Key);
|
MapFind = gNameMap.find(Key);
|
||||||
|
ASSERT(MapFind != gNameMap.end());
|
||||||
|
|
||||||
RegisterTypeName(Key.TypeHash, pProperty->HashableTypeName());
|
RegisterTypeName(Key.TypeHash, pProperty->HashableTypeName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
ASSERT(MapFind != gNameMap.end());
|
||||||
pProperty->SetName( MapFind->second.Name );
|
pProperty->SetName( MapFind->second.Name );
|
||||||
}
|
}
|
||||||
|
|
||||||
ASSERT(MapFind != gNameMap.end());
|
|
||||||
MapFind->second.PropertyList.push_back(pProperty);
|
MapFind->second.PropertyList.push_back(pProperty);
|
||||||
|
|
||||||
// Update the property's Name field to match the mapped name.
|
// Update the property's Name field to match the mapped name.
|
||||||
|
|
|
@ -34,8 +34,11 @@ void RetrieveXMLsWithProperty(u32 ID, const char* pkTypeName, std::set<TString>&
|
||||||
/** Updates the name of a given property in the map */
|
/** Updates the name of a given property in the map */
|
||||||
void SetPropertyName(u32 ID, const char* pkTypeName, const char* pkNewName);
|
void SetPropertyName(u32 ID, const char* pkTypeName, const char* pkNewName);
|
||||||
|
|
||||||
/** Change the type name associated with a property ID */
|
/** Change a type name of a property. */
|
||||||
void SetTypeName(u32 ID, const char* pkOldTypeName, const char* pkNewTypeName);
|
void ChangeTypeName(IProperty* pProperty, const char* pkOldTypeName, const char* pkNewTypeName);
|
||||||
|
|
||||||
|
/** Change a type name. */
|
||||||
|
void ChangeTypeNameGlobally(const char* pkOldTypeName, const char* pkNewTypeName);
|
||||||
|
|
||||||
/** Registers a property in the name map. Should be called on all properties that use the map */
|
/** Registers a property in the name map. Should be called on all properties that use the map */
|
||||||
void RegisterProperty(IProperty* pProperty);
|
void RegisterProperty(IProperty* pProperty);
|
||||||
|
|
|
@ -42,16 +42,24 @@ class TEnumPropertyBase : public TSerializeableTypedProperty<s32, TypeEnum>
|
||||||
};
|
};
|
||||||
std::vector<SEnumValue> mValues;
|
std::vector<SEnumValue> mValues;
|
||||||
|
|
||||||
|
/** If true, the archetype's name will be used as the type name instead of "enum" or "choice". */
|
||||||
|
bool mOverrideTypeName;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
/** Constructor */
|
/** Constructor */
|
||||||
TEnumPropertyBase(EGame Game)
|
TEnumPropertyBase(EGame Game)
|
||||||
: TSerializeableTypedProperty(Game)
|
: TSerializeableTypedProperty(Game)
|
||||||
|
, mOverrideTypeName(false)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
public:
|
public:
|
||||||
virtual const char* GetHashableTypeName() const
|
virtual const char* HashableTypeName() const
|
||||||
{
|
{
|
||||||
if (TypeEnum == EPropertyType::Enum)
|
if (mpArchetype)
|
||||||
|
return mpArchetype->HashableTypeName();
|
||||||
|
else if (mOverrideTypeName)
|
||||||
|
return *mName;
|
||||||
|
else if (TypeEnum == EPropertyType::Enum)
|
||||||
return "enum";
|
return "enum";
|
||||||
else
|
else
|
||||||
return "choice";
|
return "choice";
|
||||||
|
@ -64,8 +72,15 @@ public:
|
||||||
|
|
||||||
TEnumPropertyBase* pArchetype = static_cast<TEnumPropertyBase*>(mpArchetype);
|
TEnumPropertyBase* pArchetype = static_cast<TEnumPropertyBase*>(mpArchetype);
|
||||||
u32 DefaultValueFlags = SH_HexDisplay | (pArchetype || Game() <= EGame::Prime ? SH_Optional : 0);
|
u32 DefaultValueFlags = SH_HexDisplay | (pArchetype || Game() <= EGame::Prime ? SH_Optional : 0);
|
||||||
|
|
||||||
rArc << SerialParameter("DefaultValue", mDefaultValue, DefaultValueFlags, pArchetype ? pArchetype->mDefaultValue : 0);
|
rArc << SerialParameter("DefaultValue", mDefaultValue, DefaultValueFlags, pArchetype ? pArchetype->mDefaultValue : 0);
|
||||||
|
|
||||||
|
// Only serialize type name override for root archetypes.
|
||||||
|
if (!mpArchetype)
|
||||||
|
{
|
||||||
|
rArc << SerialParameter("OverrideTypeName", mOverrideTypeName, SH_Optional, false);
|
||||||
|
}
|
||||||
|
|
||||||
if (!pArchetype || !rArc.CanSkipParameters() || mValues != pArchetype->mValues)
|
if (!pArchetype || !rArc.CanSkipParameters() || mValues != pArchetype->mValues)
|
||||||
{
|
{
|
||||||
rArc << SerialParameter("Values", mValues);
|
rArc << SerialParameter("Values", mValues);
|
||||||
|
@ -117,10 +132,33 @@ public:
|
||||||
|
|
||||||
bool HasValidValue(void* pPropertyData)
|
bool HasValidValue(void* pPropertyData)
|
||||||
{
|
{
|
||||||
|
if (mValues.empty()) return true;
|
||||||
int ID = ValueRef(pPropertyData);
|
int ID = ValueRef(pPropertyData);
|
||||||
u32 Index = ValueIndex(ID);
|
u32 Index = ValueIndex(ID);
|
||||||
return Index >= 0 && Index < mValues.size();
|
return Index >= 0 && Index < mValues.size();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool OverridesTypeName() const
|
||||||
|
{
|
||||||
|
return mpArchetype ? TPropCast<TEnumPropertyBase>(mpArchetype)->OverridesTypeName() : mOverrideTypeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SetOverrideTypeName(bool Override)
|
||||||
|
{
|
||||||
|
if (mpArchetype)
|
||||||
|
{
|
||||||
|
TEnumPropertyBase* pArchetype = TPropCast<TEnumPropertyBase>(RootArchetype());
|
||||||
|
pArchetype->SetOverrideTypeName(Override);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (mOverrideTypeName != Override)
|
||||||
|
{
|
||||||
|
mOverrideTypeName = Override;
|
||||||
|
MarkDirty();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef TEnumPropertyBase<EPropertyType::Choice> CChoiceProperty;
|
typedef TEnumPropertyBase<EPropertyType::Choice> CChoiceProperty;
|
||||||
|
|
|
@ -43,5 +43,6 @@ void CFlagsProperty::InitFromArchetype(IProperty* pOther)
|
||||||
*/
|
*/
|
||||||
u32 CFlagsProperty::HasValidValue(void* pPropertyData)
|
u32 CFlagsProperty::HasValidValue(void* pPropertyData)
|
||||||
{
|
{
|
||||||
|
if (!mAllFlags) return 0;
|
||||||
return ValueRef(pPropertyData) & ~mAllFlags;
|
return ValueRef(pPropertyData) & ~mAllFlags;
|
||||||
}
|
}
|
||||||
|
|
|
@ -153,7 +153,6 @@ void IProperty::Initialize(IProperty* pInParent, CScriptTemplate* pInTemplate, u
|
||||||
{
|
{
|
||||||
// Make sure we only get initialized once.
|
// Make sure we only get initialized once.
|
||||||
ASSERT( (mFlags & EPropertyFlag::IsInitialized) == 0 );
|
ASSERT( (mFlags & EPropertyFlag::IsInitialized) == 0 );
|
||||||
mFlags |= EPropertyFlag::IsInitialized;
|
|
||||||
|
|
||||||
mpParent = pInParent;
|
mpParent = pInParent;
|
||||||
mOffset = InOffset;
|
mOffset = InOffset;
|
||||||
|
@ -219,6 +218,8 @@ void IProperty::Initialize(IProperty* pInParent, CScriptTemplate* pInTemplate, u
|
||||||
pChild->Initialize(this, pInTemplate, ChildOffset);
|
pChild->Initialize(this, pInTemplate, ChildOffset);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mFlags |= EPropertyFlag::IsInitialized;
|
||||||
}
|
}
|
||||||
|
|
||||||
void* IProperty::RawValuePtr(void* pData) const
|
void* IProperty::RawValuePtr(void* pData) const
|
||||||
|
@ -273,6 +274,21 @@ IProperty* IProperty::ChildByIDString(const TIDString& rkIdString)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void IProperty::GatherAllSubInstances(std::list<IProperty*>& OutList, bool Recursive)
|
||||||
|
{
|
||||||
|
OutList.push_back(this);
|
||||||
|
|
||||||
|
for( u32 SubIdx = 0; SubIdx < mSubInstances.size(); SubIdx++ )
|
||||||
|
{
|
||||||
|
IProperty* pSubInstance = mSubInstances[SubIdx];
|
||||||
|
|
||||||
|
if( Recursive )
|
||||||
|
pSubInstance->GatherAllSubInstances( OutList, true );
|
||||||
|
else
|
||||||
|
OutList.push_back( pSubInstance );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
TString IProperty::GetTemplateFileName()
|
TString IProperty::GetTemplateFileName()
|
||||||
{
|
{
|
||||||
// We want to return the path to the XML file that this property originally belongs to.
|
// We want to return the path to the XML file that this property originally belongs to.
|
||||||
|
@ -328,15 +344,9 @@ void IProperty::SetName(const TString& rkNewName)
|
||||||
{
|
{
|
||||||
mName = rkNewName;
|
mName = rkNewName;
|
||||||
mFlags.ClearFlag(EPropertyFlag::HasCachedNameCheck);
|
mFlags.ClearFlag(EPropertyFlag::HasCachedNameCheck);
|
||||||
|
|
||||||
// in Echoes and on, since property names are referenced by ID, renaming a property
|
|
||||||
// doesn't directly affect the serialized data, so it doesn't need to be flagged dirty
|
|
||||||
if (mGame <= EGame::Prime)
|
|
||||||
{
|
|
||||||
MarkDirty();
|
MarkDirty();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
void IProperty::SetDescription(const TString& rkNewDescription)
|
void IProperty::SetDescription(const TString& rkNewDescription)
|
||||||
{
|
{
|
||||||
|
@ -358,7 +368,21 @@ void IProperty::SetSuffix(const TString& rkNewSuffix)
|
||||||
|
|
||||||
void IProperty::MarkDirty()
|
void IProperty::MarkDirty()
|
||||||
{
|
{
|
||||||
|
// Don't allow properties to be marked dirty before they are fully initialized.
|
||||||
|
if (IsInitialized())
|
||||||
|
{
|
||||||
|
// Mark the root parent as dirty so the template file will get resaved
|
||||||
RootParent()->mFlags |= EPropertyFlag::IsDirty;
|
RootParent()->mFlags |= EPropertyFlag::IsDirty;
|
||||||
|
|
||||||
|
// Clear property name cache in case something has been modified that affects the hash
|
||||||
|
mFlags &= ~(EPropertyFlag::HasCachedNameCheck | EPropertyFlag::HasCorrectPropertyName);
|
||||||
|
|
||||||
|
// Mark sub-instances as dirty since they may need to resave as well
|
||||||
|
for (u32 SubIdx = 0; SubIdx < mSubInstances.size(); SubIdx++)
|
||||||
|
{
|
||||||
|
mSubInstances[SubIdx]->MarkDirty();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void IProperty::ClearDirtyFlag()
|
void IProperty::ClearDirtyFlag()
|
||||||
|
@ -416,11 +440,6 @@ bool IProperty::HasAccurateName()
|
||||||
return mFlags.HasFlag( EPropertyFlag::HasCorrectPropertyName );
|
return mFlags.HasFlag( EPropertyFlag::HasCorrectPropertyName );
|
||||||
}
|
}
|
||||||
|
|
||||||
void IProperty::RecacheName()
|
|
||||||
{
|
|
||||||
mFlags.ClearFlag( EPropertyFlag::HasCachedNameCheck | EPropertyFlag::HasCorrectPropertyName );
|
|
||||||
}
|
|
||||||
|
|
||||||
/** IPropertyNew Accessors */
|
/** IPropertyNew Accessors */
|
||||||
EGame IProperty::Game() const
|
EGame IProperty::Game() const
|
||||||
{
|
{
|
||||||
|
|
|
@ -193,6 +193,7 @@ public:
|
||||||
void* RawValuePtr(void* pData) const;
|
void* RawValuePtr(void* pData) const;
|
||||||
IProperty* ChildByID(u32 ID) const;
|
IProperty* ChildByID(u32 ID) const;
|
||||||
IProperty* ChildByIDString(const TIDString& rkIdString);
|
IProperty* ChildByIDString(const TIDString& rkIdString);
|
||||||
|
void GatherAllSubInstances(std::list<IProperty*>& OutList, bool Recursive);
|
||||||
TString GetTemplateFileName();
|
TString GetTemplateFileName();
|
||||||
bool ShouldCook(void* pPropertyData) const;
|
bool ShouldCook(void* pPropertyData) const;
|
||||||
void SetName(const TString& rkNewName);
|
void SetName(const TString& rkNewName);
|
||||||
|
@ -202,7 +203,6 @@ public:
|
||||||
void ClearDirtyFlag();
|
void ClearDirtyFlag();
|
||||||
bool UsesNameMap();
|
bool UsesNameMap();
|
||||||
bool HasAccurateName();
|
bool HasAccurateName();
|
||||||
void RecacheName();
|
|
||||||
|
|
||||||
/** Accessors */
|
/** Accessors */
|
||||||
EGame Game() const;
|
EGame Game() const;
|
||||||
|
@ -221,6 +221,7 @@ public:
|
||||||
inline u32 Offset() const;
|
inline u32 Offset() const;
|
||||||
inline u32 ID() const;
|
inline u32 ID() const;
|
||||||
|
|
||||||
|
inline bool IsInitialized() const { return mFlags.HasFlag(EPropertyFlag::IsInitialized); }
|
||||||
inline bool IsArchetype() const { return mFlags.HasFlag(EPropertyFlag::IsArchetype); }
|
inline bool IsArchetype() const { return mFlags.HasFlag(EPropertyFlag::IsArchetype); }
|
||||||
inline bool IsArrayArchetype() const { return mFlags.HasFlag(EPropertyFlag::IsArrayArchetype); }
|
inline bool IsArrayArchetype() const { return mFlags.HasFlag(EPropertyFlag::IsArrayArchetype); }
|
||||||
inline bool IsAtomic() const { return mFlags.HasFlag(EPropertyFlag::IsAtomic); }
|
inline bool IsAtomic() const { return mFlags.HasFlag(EPropertyFlag::IsAtomic); }
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#include "CPropertyNameValidator.h"
|
#include "CPropertyNameValidator.h"
|
||||||
|
#include "UICommon.h"
|
||||||
#include <Common/Hash/CCRC32.h>
|
#include <Common/Hash/CCRC32.h>
|
||||||
|
|
||||||
CPropertyNameValidator::CPropertyNameValidator(QObject* pParent)
|
CPropertyNameValidator::CPropertyNameValidator(QObject* pParent)
|
||||||
|
@ -12,14 +13,23 @@ void CPropertyNameValidator::SetProperty(IProperty* pProp)
|
||||||
emit changed();
|
emit changed();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Set the type name override */
|
||||||
|
void CPropertyNameValidator::SetTypeNameOverride(const QString& kNewTypeName)
|
||||||
|
{
|
||||||
|
mTypeNameOverride = kNewTypeName;
|
||||||
|
emit changed();
|
||||||
|
}
|
||||||
|
|
||||||
/** Perform validation */
|
/** Perform validation */
|
||||||
QValidator::State CPropertyNameValidator::validate(QString& rInput, int&) const
|
QValidator::State CPropertyNameValidator::validate(QString& rInput, int&) const
|
||||||
{
|
{
|
||||||
if (mpProperty)
|
if (mpProperty)
|
||||||
{
|
{
|
||||||
|
TString TypeName = (mTypeNameOverride.isEmpty() ? mpProperty->HashableTypeName() : TO_TSTRING(mTypeNameOverride));
|
||||||
|
|
||||||
CCRC32 Hash;
|
CCRC32 Hash;
|
||||||
Hash.Hash( rInput.toStdString().c_str() );
|
Hash.Hash( rInput.toStdString().c_str() );
|
||||||
Hash.Hash( mpProperty->HashableTypeName() );
|
Hash.Hash( *TypeName );
|
||||||
u32 PropertyID = Hash.Digest();
|
u32 PropertyID = Hash.Digest();
|
||||||
|
|
||||||
if (PropertyID != mpProperty->ID())
|
if (PropertyID != mpProperty->ID())
|
||||||
|
|
|
@ -12,14 +12,21 @@ class CPropertyNameValidator : public QValidator
|
||||||
/** The property being validated against */
|
/** The property being validated against */
|
||||||
IProperty* mpProperty;
|
IProperty* mpProperty;
|
||||||
|
|
||||||
|
/** String to use to override the type name. If empty, the property's normal type name is used. */
|
||||||
|
QString mTypeNameOverride;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CPropertyNameValidator(QObject* pParent = 0);
|
CPropertyNameValidator(QObject* pParent = 0);
|
||||||
|
|
||||||
|
/** Perform validation */
|
||||||
|
QValidator::State validate(QString& rInput, int& rPos) const;
|
||||||
|
|
||||||
|
public slots:
|
||||||
/** Set the property to validate against */
|
/** Set the property to validate against */
|
||||||
void SetProperty(IProperty* pProp);
|
void SetProperty(IProperty* pProp);
|
||||||
|
|
||||||
/** Perform validation */
|
/** Set the type name override */
|
||||||
QValidator::State validate(QString& rInput, int& rPos) const;
|
void SetTypeNameOverride(const QString& kNewTypeName);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // CPROPERTYNAMEVALIDATOR_H
|
#endif // CPROPERTYNAMEVALIDATOR_H
|
||||||
|
|
|
@ -53,7 +53,9 @@ QWidget* CPropertyDelegate::createEditor(QWidget *pParent, const QStyleOptionVie
|
||||||
|
|
||||||
if (pProp)
|
if (pProp)
|
||||||
{
|
{
|
||||||
switch (pProp->Type())
|
EPropertyType Type = GetEffectiveFieldType(pProp);
|
||||||
|
|
||||||
|
switch (Type)
|
||||||
{
|
{
|
||||||
|
|
||||||
case EPropertyType::Bool:
|
case EPropertyType::Bool:
|
||||||
|
@ -166,7 +168,7 @@ QWidget* CPropertyDelegate::createEditor(QWidget *pParent, const QStyleOptionVie
|
||||||
else if (rkIndex.internalId() & 0x80000000)
|
else if (rkIndex.internalId() & 0x80000000)
|
||||||
{
|
{
|
||||||
pProp = mpModel->PropertyForIndex(rkIndex, true);
|
pProp = mpModel->PropertyForIndex(rkIndex, true);
|
||||||
EPropertyType Type = pProp->Type();
|
EPropertyType Type = GetEffectiveFieldType(pProp);
|
||||||
|
|
||||||
// Handle character
|
// Handle character
|
||||||
if (Type == EPropertyType::AnimationSet)
|
if (Type == EPropertyType::AnimationSet)
|
||||||
|
@ -206,7 +208,9 @@ void CPropertyDelegate::setEditorData(QWidget *pEditor, const QModelIndex &rkInd
|
||||||
{
|
{
|
||||||
if (!mEditInProgress)
|
if (!mEditInProgress)
|
||||||
{
|
{
|
||||||
switch (pProp->Type())
|
EPropertyType Type = pProp->Type();
|
||||||
|
|
||||||
|
switch (Type)
|
||||||
{
|
{
|
||||||
|
|
||||||
case EPropertyType::Bool:
|
case EPropertyType::Bool:
|
||||||
|
@ -330,11 +334,12 @@ void CPropertyDelegate::setEditorData(QWidget *pEditor, const QModelIndex &rkInd
|
||||||
else if (rkIndex.internalId() & 0x80000000)
|
else if (rkIndex.internalId() & 0x80000000)
|
||||||
{
|
{
|
||||||
pProp = mpModel->PropertyForIndex(rkIndex, true);
|
pProp = mpModel->PropertyForIndex(rkIndex, true);
|
||||||
|
EPropertyType Type = GetEffectiveFieldType(pProp);
|
||||||
|
|
||||||
if (pProp->Type() == EPropertyType::AnimationSet)
|
if (Type == EPropertyType::AnimationSet)
|
||||||
SetCharacterEditorData(pEditor, rkIndex);
|
SetCharacterEditorData(pEditor, rkIndex);
|
||||||
|
|
||||||
else if (pProp->Type() == EPropertyType::Flags)
|
else if (Type == EPropertyType::Flags)
|
||||||
{
|
{
|
||||||
QCheckBox *pCheckBox = static_cast<QCheckBox*>(pEditor);
|
QCheckBox *pCheckBox = static_cast<QCheckBox*>(pEditor);
|
||||||
CFlagsProperty* pFlags = TPropCast<CFlagsProperty>(pProp);
|
CFlagsProperty* pFlags = TPropCast<CFlagsProperty>(pProp);
|
||||||
|
@ -359,7 +364,7 @@ void CPropertyDelegate::setModelData(QWidget *pEditor, QAbstractItemModel* /*pMo
|
||||||
|
|
||||||
if (pProp)
|
if (pProp)
|
||||||
{
|
{
|
||||||
EPropertyType Type = pProp->Type();
|
EPropertyType Type = GetEffectiveFieldType(pProp);
|
||||||
|
|
||||||
QVector<CScriptObject*> Objects;
|
QVector<CScriptObject*> Objects;
|
||||||
Objects << mpModel->GetScriptObject();
|
Objects << mpModel->GetScriptObject();
|
||||||
|
@ -373,10 +378,10 @@ void CPropertyDelegate::setModelData(QWidget *pEditor, QAbstractItemModel* /*pMo
|
||||||
// Handle sub-properties of flags and animation sets
|
// Handle sub-properties of flags and animation sets
|
||||||
if (rkIndex.internalId() & 0x80000000)
|
if (rkIndex.internalId() & 0x80000000)
|
||||||
{
|
{
|
||||||
if (pProp->Type() == EPropertyType::AnimationSet)
|
if (Type == EPropertyType::AnimationSet)
|
||||||
SetCharacterModelData(pEditor, rkIndex);
|
SetCharacterModelData(pEditor, rkIndex);
|
||||||
|
|
||||||
else if (pProp->Type() == EPropertyType::Flags)
|
else if (Type == EPropertyType::Flags)
|
||||||
{
|
{
|
||||||
QCheckBox* pCheckBox = static_cast<QCheckBox*>(pEditor);
|
QCheckBox* pCheckBox = static_cast<QCheckBox*>(pEditor);
|
||||||
CFlagsProperty* pFlags = static_cast<CFlagsProperty*>(pProp);
|
CFlagsProperty* pFlags = static_cast<CFlagsProperty*>(pProp);
|
||||||
|
@ -391,7 +396,7 @@ void CPropertyDelegate::setModelData(QWidget *pEditor, QAbstractItemModel* /*pMo
|
||||||
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
switch (pProp->Type())
|
switch (Type)
|
||||||
{
|
{
|
||||||
|
|
||||||
case EPropertyType::Bool:
|
case EPropertyType::Bool:
|
||||||
|
@ -670,6 +675,46 @@ EPropertyType CPropertyDelegate::DetermineCharacterPropType(EGame Game, const QM
|
||||||
return EPropertyType::Invalid;
|
return EPropertyType::Invalid;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Determine the effective property type to use. Allows some types to be treated as other types. */
|
||||||
|
EPropertyType CPropertyDelegate::GetEffectiveFieldType(IProperty* pProperty) const
|
||||||
|
{
|
||||||
|
EPropertyType Out = pProperty->Type();
|
||||||
|
|
||||||
|
switch (Out)
|
||||||
|
{
|
||||||
|
|
||||||
|
// Allow Choice/Enum properties to be edited as Int properties if they don't have any values set.
|
||||||
|
case EPropertyType::Choice:
|
||||||
|
case EPropertyType::Enum:
|
||||||
|
{
|
||||||
|
CChoiceProperty* pChoice = TPropCast<CChoiceProperty>(pProperty);
|
||||||
|
|
||||||
|
if (pChoice->NumPossibleValues() == 0)
|
||||||
|
{
|
||||||
|
Out = EPropertyType::Int;
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Same deal with Flag properties
|
||||||
|
case EPropertyType::Flags:
|
||||||
|
{
|
||||||
|
CFlagsProperty* pFlags = TPropCast<CFlagsProperty>(pProperty);
|
||||||
|
|
||||||
|
if (pFlags->NumFlags() == 0)
|
||||||
|
{
|
||||||
|
Out = EPropertyType::Int;
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
return Out;
|
||||||
|
}
|
||||||
|
|
||||||
// ************ PUBLIC SLOTS ************
|
// ************ PUBLIC SLOTS ************
|
||||||
void CPropertyDelegate::WidgetEdited(QWidget *pWidget, const QModelIndex& rkIndex)
|
void CPropertyDelegate::WidgetEdited(QWidget *pWidget, const QModelIndex& rkIndex)
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ public:
|
||||||
void SetCharacterEditorData(QWidget *pEditor, const QModelIndex& rkIndex) const;
|
void SetCharacterEditorData(QWidget *pEditor, const QModelIndex& rkIndex) const;
|
||||||
void SetCharacterModelData(QWidget *pEditor, const QModelIndex& rkIndex) const;
|
void SetCharacterModelData(QWidget *pEditor, const QModelIndex& rkIndex) const;
|
||||||
EPropertyType DetermineCharacterPropType(EGame Game, const QModelIndex& rkIndex) const;
|
EPropertyType DetermineCharacterPropType(EGame Game, const QModelIndex& rkIndex) const;
|
||||||
|
EPropertyType GetEffectiveFieldType(IProperty* pProperty) const;
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void WidgetEdited(QWidget *pWidget, const QModelIndex& rkIndex);
|
void WidgetEdited(QWidget *pWidget, const QModelIndex& rkIndex);
|
||||||
|
|
|
@ -15,6 +15,7 @@ CTemplateEditDialog::CTemplateEditDialog(IProperty *pProperty, QWidget *pParent)
|
||||||
, mGame(pProperty->Game())
|
, mGame(pProperty->Game())
|
||||||
, mOriginalName(pProperty->Name())
|
, mOriginalName(pProperty->Name())
|
||||||
, mOriginalDescription(pProperty->Description())
|
, mOriginalDescription(pProperty->Description())
|
||||||
|
, mOriginalAllowTypeNameOverride(false)
|
||||||
, mOriginalNameWasValid(true)
|
, mOriginalNameWasValid(true)
|
||||||
{
|
{
|
||||||
mpUI->setupUi(this);
|
mpUI->setupUi(this);
|
||||||
|
@ -24,6 +25,37 @@ CTemplateEditDialog::CTemplateEditDialog(IProperty *pProperty, QWidget *pParent)
|
||||||
mpUI->NameLineEdit->setText(TO_QSTRING(pProperty->Name()));
|
mpUI->NameLineEdit->setText(TO_QSTRING(pProperty->Name()));
|
||||||
mpUI->DescriptionTextEdit->setPlainText(TO_QSTRING(pProperty->Description()));
|
mpUI->DescriptionTextEdit->setPlainText(TO_QSTRING(pProperty->Description()));
|
||||||
|
|
||||||
|
EPropertyType Type = pProperty->Type();
|
||||||
|
|
||||||
|
// Configure type name
|
||||||
|
if (Type == EPropertyType::Struct || Type == EPropertyType::Choice || Type == EPropertyType::Enum || Type == EPropertyType::Flags)
|
||||||
|
{
|
||||||
|
connect( mpUI->TypenameLineEdit, SIGNAL(textChanged(QString)), this, SLOT(RefreshTypeNameOverride()) );
|
||||||
|
mOriginalTypeName = pProperty->RootArchetype()->Name();
|
||||||
|
mpUI->TypenameLineEdit->setText( TO_QSTRING(mOriginalTypeName) );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
mpUI->TypenameLabel->setHidden(true);
|
||||||
|
mpUI->TypenameLineEdit->setHidden(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Configure type name override option
|
||||||
|
if (Type == EPropertyType::Enum || Type == EPropertyType::Choice)
|
||||||
|
{
|
||||||
|
CEnumProperty* pEnum = TPropCast<CEnumProperty>(pProperty);
|
||||||
|
mOriginalAllowTypeNameOverride = pEnum->OverridesTypeName();
|
||||||
|
mpUI->OverrideTypeNameCheckBox->setChecked( mOriginalAllowTypeNameOverride );
|
||||||
|
connect( mpUI->OverrideTypeNameCheckBox, SIGNAL(toggled(bool)), this, SLOT(RefreshTypeNameOverride()) );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
mpUI->OverrideTypeNameCheckBox->setHidden(true);
|
||||||
|
mpUI->OverrideTypeNameCheckBox->setChecked(true);
|
||||||
|
}
|
||||||
|
RefreshTypeNameOverride();
|
||||||
|
|
||||||
|
// Hide templates list for MP1
|
||||||
if (mGame <= EGame::Prime)
|
if (mGame <= EGame::Prime)
|
||||||
{
|
{
|
||||||
mpUI->TemplatesGroupBox->hide();
|
mpUI->TemplatesGroupBox->hide();
|
||||||
|
@ -83,6 +115,7 @@ void CTemplateEditDialog::ApplyChanges()
|
||||||
|
|
||||||
bool RenameAll = mpUI->RenameAllCheckBox->isChecked();
|
bool RenameAll = mpUI->RenameAllCheckBox->isChecked();
|
||||||
|
|
||||||
|
// Update name
|
||||||
TString NewName = TO_TSTRING(mpUI->NameLineEdit->text());
|
TString NewName = TO_TSTRING(mpUI->NameLineEdit->text());
|
||||||
if (NewName.IsEmpty()) NewName = "Unknown";
|
if (NewName.IsEmpty()) NewName = "Unknown";
|
||||||
|
|
||||||
|
@ -95,15 +128,34 @@ void CTemplateEditDialog::ApplyChanges()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Update description
|
||||||
TString NewDescription = TO_TSTRING(mpUI->DescriptionTextEdit->toPlainText());
|
TString NewDescription = TO_TSTRING(mpUI->DescriptionTextEdit->toPlainText());
|
||||||
UpdateDescription(NewDescription);
|
UpdateDescription(NewDescription);
|
||||||
|
|
||||||
|
// Update type name
|
||||||
|
TString NewTypeName = TO_TSTRING(mpUI->TypenameLineEdit->text());
|
||||||
|
bool AllowTypeNameOverride = mpUI->OverrideTypeNameCheckBox->isChecked();
|
||||||
|
UpdateTypeName(NewTypeName, AllowTypeNameOverride);
|
||||||
|
|
||||||
// Resave templates
|
// Resave templates
|
||||||
NGameList::SaveTemplates();
|
NGameList::SaveTemplates();
|
||||||
NPropertyMap::SaveMap();
|
NPropertyMap::SaveMap();
|
||||||
close();
|
close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CTemplateEditDialog::RefreshTypeNameOverride()
|
||||||
|
{
|
||||||
|
if (mpUI->OverrideTypeNameCheckBox->isChecked())
|
||||||
|
{
|
||||||
|
QString OverrideName = mpUI->TypenameLineEdit->text();
|
||||||
|
mpValidator->SetTypeNameOverride(OverrideName);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
mpValidator->SetTypeNameOverride("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// ************ PROTECTED ************
|
// ************ PROTECTED ************
|
||||||
void CTemplateEditDialog::UpdateDescription(const TString& rkNewDesc)
|
void CTemplateEditDialog::UpdateDescription(const TString& rkNewDesc)
|
||||||
{
|
{
|
||||||
|
@ -133,6 +185,34 @@ void CTemplateEditDialog::UpdateDescription(const TString& rkNewDesc)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CTemplateEditDialog::UpdateTypeName(const TString& kNewTypeName, bool AllowOverride)
|
||||||
|
{
|
||||||
|
if (mOriginalTypeName != kNewTypeName || mOriginalAllowTypeNameOverride != AllowOverride)
|
||||||
|
{
|
||||||
|
// Get a list of properties to update.
|
||||||
|
for (int GameIdx = 0; GameIdx < (int) EGame::Max; GameIdx++)
|
||||||
|
{
|
||||||
|
CGameTemplate* pGame = NGameList::GetGameTemplate( (EGame) GameIdx );
|
||||||
|
|
||||||
|
if (pGame)
|
||||||
|
{
|
||||||
|
IProperty* pArchetype = pGame->FindPropertyArchetype(mOriginalTypeName);
|
||||||
|
|
||||||
|
if (pArchetype)
|
||||||
|
{
|
||||||
|
pGame->RenamePropertyArchetype(mOriginalTypeName, kNewTypeName);
|
||||||
|
|
||||||
|
if (pArchetype->Type() == EPropertyType::Enum || pArchetype->Type() == EPropertyType::Choice)
|
||||||
|
{
|
||||||
|
CEnumProperty* pEnum = TPropCast<CEnumProperty>(pArchetype);
|
||||||
|
pEnum->SetOverrideTypeName(AllowOverride);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void CTemplateEditDialog::FindEquivalentProperties(IProperty* pProperty)
|
void CTemplateEditDialog::FindEquivalentProperties(IProperty* pProperty)
|
||||||
{
|
{
|
||||||
// This function creates a list of properties in other games that are equivalent to this one.
|
// This function creates a list of properties in other games that are equivalent to this one.
|
||||||
|
|
|
@ -21,6 +21,8 @@ class CTemplateEditDialog : public QDialog
|
||||||
|
|
||||||
TString mOriginalName;
|
TString mOriginalName;
|
||||||
TString mOriginalDescription;
|
TString mOriginalDescription;
|
||||||
|
TString mOriginalTypeName;
|
||||||
|
bool mOriginalAllowTypeNameOverride;
|
||||||
bool mOriginalNameWasValid;
|
bool mOriginalNameWasValid;
|
||||||
|
|
||||||
// These members help track what templates need to be updated and resaved after the user clicks OK
|
// These members help track what templates need to be updated and resaved after the user clicks OK
|
||||||
|
@ -32,9 +34,11 @@ public:
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void ApplyChanges();
|
void ApplyChanges();
|
||||||
|
void RefreshTypeNameOverride();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void UpdateDescription(const TString& rkNewDesc);
|
void UpdateDescription(const TString& rkNewDesc);
|
||||||
|
void UpdateTypeName(const TString& kNewTypeName, bool AllowOverride);
|
||||||
void FindEquivalentProperties(IProperty *pProperty);
|
void FindEquivalentProperties(IProperty *pProperty);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -116,14 +116,14 @@
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item row="4" column="0">
|
<item row="5" column="0">
|
||||||
<widget class="QLabel" name="DescriptionLabel">
|
<widget class="QLabel" name="DescriptionLabel">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Description:</string>
|
<string>Description:</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="4" column="1">
|
<item row="5" column="1">
|
||||||
<widget class="QPlainTextEdit" name="DescriptionTextEdit">
|
<widget class="QPlainTextEdit" name="DescriptionTextEdit">
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
<sizepolicy hsizetype="Expanding" vsizetype="Minimum">
|
<sizepolicy hsizetype="Expanding" vsizetype="Minimum">
|
||||||
|
@ -143,11 +143,31 @@
|
||||||
<height>60</height>
|
<height>60</height>
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="tabChangesFocus">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
<property name="plainText">
|
<property name="plainText">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="6" column="0">
|
||||||
|
<widget class="QLabel" name="TypenameLabel">
|
||||||
|
<property name="text">
|
||||||
|
<string>Type Name:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="6" column="1">
|
||||||
|
<widget class="QLineEdit" name="TypenameLineEdit"/>
|
||||||
|
</item>
|
||||||
|
<item row="7" column="1">
|
||||||
|
<widget class="QCheckBox" name="OverrideTypeNameCheckBox">
|
||||||
|
<property name="text">
|
||||||
|
<string>Use type name for ID hashes</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<PropertyTemplate ArchiveVer="4" Game="DKCReturns">
|
<PropertyTemplate ArchiveVer="4" Game="DKCReturns">
|
||||||
<PropertyArchetype Type="Enum">
|
<PropertyArchetype Type="Enum">
|
||||||
<Name>Item</Name>
|
<Name>PlayerItem</Name>
|
||||||
<DefaultValue>0x0</DefaultValue>
|
<DefaultValue>0x0</DefaultValue>
|
||||||
|
<OverrideTypeName>true</OverrideTypeName>
|
||||||
<Values>
|
<Values>
|
||||||
<Element Name="Banana" ID="0xB22FD89B"/>
|
<Element Name="Banana" ID="0xB22FD89B"/>
|
||||||
<Element Name="Banana Coin" ID="0xAB70F9F"/>
|
<Element Name="Banana Coin" ID="0xAB70F9F"/>
|
|
@ -955,10 +955,6 @@
|
||||||
<Key>IslandHudStruct</Key>
|
<Key>IslandHudStruct</Key>
|
||||||
<Value Path="Structs/IslandHudStruct.xml"/>
|
<Value Path="Structs/IslandHudStruct.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
|
||||||
<Key>Item</Key>
|
|
||||||
<Value Path="Enums/Item.xml"/>
|
|
||||||
</Element>
|
|
||||||
<Element>
|
<Element>
|
||||||
<Key>JungleBossStructA</Key>
|
<Key>JungleBossStructA</Key>
|
||||||
<Value Path="Structs/JungleBossStructA.xml"/>
|
<Value Path="Structs/JungleBossStructA.xml"/>
|
||||||
|
@ -1123,6 +1119,10 @@
|
||||||
<Key>PlatformMotionProperties</Key>
|
<Key>PlatformMotionProperties</Key>
|
||||||
<Value Path="Structs/PlatformMotionProperties.xml"/>
|
<Value Path="Structs/PlatformMotionProperties.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key>PlayerItem</Key>
|
||||||
|
<Value Path="Enums/PlayerItem.xml"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>ProjectileBounceData</Key>
|
<Key>ProjectileBounceData</Key>
|
||||||
<Value Path="Structs/ProjectileBounceData.xml"/>
|
<Value Path="Structs/ProjectileBounceData.xml"/>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<PropertyArchetype Type="Struct">
|
<PropertyArchetype Type="Struct">
|
||||||
<Name>PickupData</Name>
|
<Name>PickupData</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Enum" ID="0xA02EF0C4" Archetype="Item">
|
<Element Type="Enum" ID="0xA02EF0C4" Archetype="PlayerItem">
|
||||||
<DefaultValue>0xB22FD89B</DefaultValue>
|
<DefaultValue>0xB22FD89B</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Int" ID="0x28C71B54">
|
<Element Type="Int" ID="0x28C71B54">
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<PropertyTemplate ArchiveVer="4" Game="Prime">
|
<PropertyTemplate ArchiveVer="4" Game="Prime">
|
||||||
<PropertyArchetype Type="Choice">
|
<PropertyArchetype Type="Choice">
|
||||||
<Name>Item</Name>
|
<Name>PlayerItem</Name>
|
||||||
|
<OverrideTypeName>true</OverrideTypeName>
|
||||||
<Values>
|
<Values>
|
||||||
<Element Name="Power Beam" ID="0x0"/>
|
<Element Name="Power Beam" ID="0x0"/>
|
||||||
<Element Name="Ice Beam" ID="0x1"/>
|
<Element Name="Ice Beam" ID="0x1"/>
|
|
@ -575,10 +575,6 @@
|
||||||
<Key>IntBool</Key>
|
<Key>IntBool</Key>
|
||||||
<Value Path="Structs/IntBool.xml"/>
|
<Value Path="Structs/IntBool.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
|
||||||
<Key>Item</Key>
|
|
||||||
<Value Path="Enums/Item.xml"/>
|
|
||||||
</Element>
|
|
||||||
<Element>
|
<Element>
|
||||||
<Key>LayerSwitch</Key>
|
<Key>LayerSwitch</Key>
|
||||||
<Value Path="Structs/LayerSwitch.xml"/>
|
<Value Path="Structs/LayerSwitch.xml"/>
|
||||||
|
@ -604,8 +600,8 @@
|
||||||
<Value Path="Structs/PathCameraStruct.xml"/>
|
<Value Path="Structs/PathCameraStruct.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>PatternedInfo</Key>
|
<Key>PatternedAITypedef</Key>
|
||||||
<Value Path="Structs/PatternedInfo.xml"/>
|
<Value Path="Structs/PatternedAITypedef.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>PlayerAction</Key>
|
<Key>PlayerAction</Key>
|
||||||
|
@ -619,6 +615,10 @@
|
||||||
<Key>PlayerHintStruct</Key>
|
<Key>PlayerHintStruct</Key>
|
||||||
<Value Path="Structs/PlayerHintStruct.xml"/>
|
<Value Path="Structs/PlayerHintStruct.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key>PlayerItem</Key>
|
||||||
|
<Value Path="Enums/PlayerItem.xml"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>PrimeStruct1</Key>
|
<Key>PrimeStruct1</Key>
|
||||||
<Value Path="Structs/PrimeStruct1.xml"/>
|
<Value Path="Structs/PrimeStruct1.xml"/>
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<Element Type="Int" ID="0x0">
|
<Element Type="Int" ID="0x0">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x1" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x1" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x2" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x2" Archetype="ActorParameters"/>
|
||||||
<Element Type="Int" ID="0x3">
|
<Element Type="Int" ID="0x3">
|
||||||
<Name>Unknown 2</Name>
|
<Name>Unknown 2</Name>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<PropertyTemplate ArchiveVer="4" Game="Prime">
|
<PropertyTemplate ArchiveVer="4" Game="Prime">
|
||||||
<PropertyArchetype Type="Struct">
|
<PropertyArchetype Type="Struct">
|
||||||
<Name>PatternedInfo</Name>
|
<Name>PatternedAITypedef</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Float" ID="0x0">
|
<Element Type="Float" ID="0x0">
|
||||||
<Name>Mass</Name>
|
<Name>Mass</Name>
|
|
@ -1,8 +1,9 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<PropertyTemplate ArchiveVer="4" Game="Echoes">
|
<PropertyTemplate ArchiveVer="4" Game="Echoes">
|
||||||
<PropertyArchetype Type="Choice">
|
<PropertyArchetype Type="Choice">
|
||||||
<Name>Item</Name>
|
<Name>PlayerItem</Name>
|
||||||
<DefaultValue>0x0</DefaultValue>
|
<DefaultValue>0x0</DefaultValue>
|
||||||
|
<OverrideTypeName>true</OverrideTypeName>
|
||||||
<Values>
|
<Values>
|
||||||
<Element Name="Power Beam" ID="0x0"/>
|
<Element Name="Power Beam" ID="0x0"/>
|
||||||
<Element Name="Dark Beam" ID="0x1"/>
|
<Element Name="Dark Beam" ID="0x1"/>
|
|
@ -879,10 +879,6 @@
|
||||||
<Key>IngSpiderballGuardianStruct</Key>
|
<Key>IngSpiderballGuardianStruct</Key>
|
||||||
<Value Path="Structs/IngSpiderballGuardianStruct.xml"/>
|
<Value Path="Structs/IngSpiderballGuardianStruct.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
|
||||||
<Key>Item</Key>
|
|
||||||
<Value Path="Enums/Item.xml"/>
|
|
||||||
</Element>
|
|
||||||
<Element>
|
<Element>
|
||||||
<Key>LayerSwitch</Key>
|
<Key>LayerSwitch</Key>
|
||||||
<Value Path="Structs/LayerSwitch.xml"/>
|
<Value Path="Structs/LayerSwitch.xml"/>
|
||||||
|
@ -891,22 +887,26 @@
|
||||||
<Key>LightParameters</Key>
|
<Key>LightParameters</Key>
|
||||||
<Value Path="Structs/LightParameters.xml"/>
|
<Value Path="Structs/LightParameters.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
|
||||||
<Key>MotionProperties</Key>
|
|
||||||
<Value Path="Structs/MotionProperties.xml"/>
|
|
||||||
</Element>
|
|
||||||
<Element>
|
<Element>
|
||||||
<Key>MysteryFlyerData</Key>
|
<Key>MysteryFlyerData</Key>
|
||||||
<Value Path="Structs/MysteryFlyerData.xml"/>
|
<Value Path="Structs/MysteryFlyerData.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>PatternedInfo</Key>
|
<Key>PatternedAITypedef</Key>
|
||||||
<Value Path="Structs/PatternedInfo.xml"/>
|
<Value Path="Structs/PatternedAITypedef.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>PlasmaBeamInfo</Key>
|
<Key>PlasmaBeamInfo</Key>
|
||||||
<Value Path="Structs/PlasmaBeamInfo.xml"/>
|
<Value Path="Structs/PlasmaBeamInfo.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key>PlatformMotionProperties</Key>
|
||||||
|
<Value Path="Structs/PlatformMotionProperties.xml"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key>PlayerItem</Key>
|
||||||
|
<Value Path="Enums/PlayerItem.xml"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>PowerBombGuardianStageProperties</Key>
|
<Key>PowerBombGuardianStageProperties</Key>
|
||||||
<Value Path="Structs/PowerBombGuardianStageProperties.xml"/>
|
<Value Path="Structs/PowerBombGuardianStageProperties.xml"/>
|
||||||
|
@ -967,6 +967,10 @@
|
||||||
<Key>SpindleCameraStruct</Key>
|
<Key>SpindleCameraStruct</Key>
|
||||||
<Value Path="Structs/SpindleCameraStruct.xml"/>
|
<Value Path="Structs/SpindleCameraStruct.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key>SplineType</Key>
|
||||||
|
<Value Path="Structs/SplineType.xml"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>SplitterMainChassisData</Key>
|
<Key>SplitterMainChassisData</Key>
|
||||||
<Value Path="Structs/SplitterMainChassisData.xml"/>
|
<Value Path="Structs/SplitterMainChassisData.xml"/>
|
||||||
|
@ -999,10 +1003,6 @@
|
||||||
<Key>TriggerInfo</Key>
|
<Key>TriggerInfo</Key>
|
||||||
<Value Path="Structs/TriggerInfo.xml"/>
|
<Value Path="Structs/TriggerInfo.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
|
||||||
<Key>UnknownStruct1</Key>
|
|
||||||
<Value Path="Structs/UnknownStruct1.xml"/>
|
|
||||||
</Element>
|
|
||||||
<Element>
|
<Element>
|
||||||
<Key>UnknownStruct10</Key>
|
<Key>UnknownStruct10</Key>
|
||||||
<Value Path="Structs/UnknownStruct10.xml"/>
|
<Value Path="Structs/UnknownStruct10.xml"/>
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
<Element Type="Bool" ID="0x3D7406AF">
|
<Element Type="Bool" ID="0x3D7406AF">
|
||||||
<DefaultValue>false</DefaultValue>
|
<DefaultValue>false</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x493D6A2D" Archetype="UnknownStruct1"/>
|
<Element Type="Struct" ID="0x493D6A2D" Archetype="SplineType"/>
|
||||||
<Element Type="Spline" ID="0x27E5F874"/>
|
<Element Type="Spline" ID="0x27E5F874"/>
|
||||||
<Element Type="Float" ID="0xFD1E2F56">
|
<Element Type="Float" ID="0xFD1E2F56">
|
||||||
<DefaultValue>10.0</DefaultValue>
|
<DefaultValue>10.0</DefaultValue>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<PropertyTemplate ArchiveVer="4" Game="Echoes">
|
<PropertyTemplate ArchiveVer="4" Game="Echoes">
|
||||||
<PropertyArchetype Type="Struct">
|
<PropertyArchetype Type="Struct">
|
||||||
<Name>PatternedInfo</Name>
|
<Name>PatternedAITypedef</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Float" ID="0x75DBB375">
|
<Element Type="Float" ID="0x75DBB375">
|
||||||
<DefaultValue>150.0</DefaultValue>
|
<DefaultValue>150.0</DefaultValue>
|
|
@ -1,9 +1,9 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<PropertyTemplate ArchiveVer="4" Game="Echoes">
|
<PropertyTemplate ArchiveVer="4" Game="Echoes">
|
||||||
<PropertyArchetype Type="Struct">
|
<PropertyArchetype Type="Struct">
|
||||||
<Name>MotionProperties</Name>
|
<Name>PlatformMotionProperties</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Struct" ID="0x493D6A2D" Archetype="UnknownStruct1"/>
|
<Element Type="Struct" ID="0x493D6A2D" Archetype="SplineType"/>
|
||||||
<Element Type="Spline" ID="0x27E5F874"/>
|
<Element Type="Spline" ID="0x27E5F874"/>
|
||||||
<Element Type="Float" ID="0xFD1E2F56">
|
<Element Type="Float" ID="0xFD1E2F56">
|
||||||
<DefaultValue>10.0</DefaultValue>
|
<DefaultValue>10.0</DefaultValue>
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<PropertyTemplate ArchiveVer="4" Game="Echoes">
|
<PropertyTemplate ArchiveVer="4" Game="Echoes">
|
||||||
<PropertyArchetype Type="Struct">
|
<PropertyArchetype Type="Struct">
|
||||||
<Name>UnknownStruct1</Name>
|
<Name>SplineType</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0xF53DCDD6">
|
<Element Type="Int" ID="0xF53DCDD6">
|
||||||
<DefaultValue>0</DefaultValue>
|
<DefaultValue>0</DefaultValue>
|
|
@ -712,17 +712,17 @@
|
||||||
<Value Path="Structs/LightParameters.xml"/>
|
<Value Path="Structs/LightParameters.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>MotionProperties</Key>
|
<Key>PatternedAITypedef</Key>
|
||||||
<Value Path="Structs/MotionProperties.xml"/>
|
<Value Path="Structs/PatternedAITypedef.xml"/>
|
||||||
</Element>
|
|
||||||
<Element>
|
|
||||||
<Key>PatternedInfo</Key>
|
|
||||||
<Value Path="Structs/PatternedInfo.xml"/>
|
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>PlasmaBeamInfo</Key>
|
<Key>PlasmaBeamInfo</Key>
|
||||||
<Value Path="Structs/PlasmaBeamInfo.xml"/>
|
<Value Path="Structs/PlasmaBeamInfo.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key>PlatformMotionProperties</Key>
|
||||||
|
<Value Path="Structs/PlatformMotionProperties.xml"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>RezbitData</Key>
|
<Key>RezbitData</Key>
|
||||||
<Value Path="Structs/RezbitData.xml"/>
|
<Value Path="Structs/RezbitData.xml"/>
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0xEFACFA50" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0xEFACFA50" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
@ -46,7 +46,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x5CA612AA" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x5CA612AA" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
|
|
@ -45,7 +45,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4EAF615F" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x4EAF615F" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
@ -66,7 +66,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x41177AC6" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x41177AC6" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
@ -87,7 +87,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0xA8C6106B" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0xA8C6106B" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<PropertyTemplate ArchiveVer="4" Game="EchoesDemo">
|
<PropertyTemplate ArchiveVer="4" Game="EchoesDemo">
|
||||||
<PropertyArchetype Type="Struct">
|
<PropertyArchetype Type="Struct">
|
||||||
<Name>PatternedInfo</Name>
|
<Name>PatternedAITypedef</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Float" ID="0x75DBB375">
|
<Element Type="Float" ID="0x75DBB375">
|
||||||
<DefaultValue>150.0</DefaultValue>
|
<DefaultValue>150.0</DefaultValue>
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<PropertyTemplate ArchiveVer="4" Game="EchoesDemo">
|
<PropertyTemplate ArchiveVer="4" Game="EchoesDemo">
|
||||||
<PropertyArchetype Type="Struct">
|
<PropertyArchetype Type="Struct">
|
||||||
<Name>MotionProperties</Name>
|
<Name>PlatformMotionProperties</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Struct" ID="0x493D6A2D" Archetype="SplineType"/>
|
<Element Type="Struct" ID="0x493D6A2D" Archetype="SplineType"/>
|
||||||
<Element Type="Spline" ID="0x27E5F874"/>
|
<Element Type="Spline" ID="0x27E5F874"/>
|
|
@ -30,7 +30,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0xBB58C088" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0xBB58C088" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
@ -55,7 +55,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x600C5F40" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x600C5F40" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x14D1A3A8" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x14D1A3A8" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0xEFACFA50" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0xEFACFA50" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
@ -84,7 +84,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0xCFACFF53" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0xCFACFF53" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x14D1A3A8" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x14D1A3A8" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x424A6D37" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x424A6D37" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Struct" ID="0x337F9524" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x337F9524" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
<Element Type="Struct" ID="0xCF90D15E" Archetype="HealthInfo"/>
|
<Element Type="Struct" ID="0xCF90D15E" Archetype="HealthInfo"/>
|
||||||
<Element Type="Struct" ID="0x337F9524" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x337F9524" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0xE18DC6FC" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0xE18DC6FC" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
@ -59,7 +59,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x7184C29" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x7184C29" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
|
|
@ -34,7 +34,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0xB763EB10" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0xB763EB10" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
@ -62,7 +62,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x1BD017CE" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x1BD017CE" Archetype="DamageInfo">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0x119FBD31">
|
<Element Type="Choice" ID="0x119FBD31">
|
||||||
<DefaultValue>9</DefaultValue>
|
<DefaultValue>9</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Float" ID="0xF2D02613">
|
<Element Type="Float" ID="0xF2D02613">
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<PropertyTemplate ArchiveVer="4" Game="Corruption">
|
<PropertyTemplate ArchiveVer="4" Game="Corruption">
|
||||||
<PropertyArchetype Type="Enum">
|
<PropertyArchetype Type="Enum">
|
||||||
<Name>Item</Name>
|
<Name>PlayerItem</Name>
|
||||||
<DefaultValue>0x0</DefaultValue>
|
<DefaultValue>0x0</DefaultValue>
|
||||||
|
<OverrideTypeName>true</OverrideTypeName>
|
||||||
<Values>
|
<Values>
|
||||||
<Element Name="PowerBeam" ID="0xFB73F2B8"/>
|
<Element Name="PowerBeam" ID="0xFB73F2B8"/>
|
||||||
<Element Name="PlasmaBeam" ID="0x93AD6DF9"/>
|
<Element Name="PlasmaBeam" ID="0x93AD6DF9"/>
|
|
@ -1179,10 +1179,6 @@
|
||||||
<Key>Inventory</Key>
|
<Key>Inventory</Key>
|
||||||
<Value Path="Structs/Inventory.xml"/>
|
<Value Path="Structs/Inventory.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
|
||||||
<Key>Item</Key>
|
|
||||||
<Value Path="Enums/Item.xml"/>
|
|
||||||
</Element>
|
|
||||||
<Element>
|
<Element>
|
||||||
<Key>JetPack</Key>
|
<Key>JetPack</Key>
|
||||||
<Value Path="Structs/JetPack.xml"/>
|
<Value Path="Structs/JetPack.xml"/>
|
||||||
|
@ -1355,6 +1351,10 @@
|
||||||
<Key>PlayerInventoryItem</Key>
|
<Key>PlayerInventoryItem</Key>
|
||||||
<Value Path="Structs/PlayerInventoryItem.xml"/>
|
<Value Path="Structs/PlayerInventoryItem.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key>PlayerItem</Key>
|
||||||
|
<Value Path="Enums/PlayerItem.xml"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>ProportionalConvergence</Key>
|
<Key>ProportionalConvergence</Key>
|
||||||
<Value Path="Structs/ProportionalConvergence.xml"/>
|
<Value Path="Structs/ProportionalConvergence.xml"/>
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<PropertyTemplate ArchiveVer="4" Game="CorruptionProto">
|
<PropertyTemplate ArchiveVer="4" Game="CorruptionProto">
|
||||||
<PropertyArchetype Type="Enum">
|
<PropertyArchetype Type="Enum">
|
||||||
<Name>Item</Name>
|
<Name>PlayerItem</Name>
|
||||||
<DefaultValue>0x0</DefaultValue>
|
<DefaultValue>0x0</DefaultValue>
|
||||||
|
<OverrideTypeName>true</OverrideTypeName>
|
||||||
<Values>
|
<Values>
|
||||||
<Element Name="Unknown 1" ID="0xFB73F2B8"/>
|
<Element Name="Unknown 1" ID="0xFB73F2B8"/>
|
||||||
<Element Name="Unknown 2" ID="0x93AD6DF9"/>
|
<Element Name="Unknown 2" ID="0x93AD6DF9"/>
|
|
@ -887,10 +887,6 @@
|
||||||
<Key>Inventory</Key>
|
<Key>Inventory</Key>
|
||||||
<Value Path="Structs/Inventory.xml"/>
|
<Value Path="Structs/Inventory.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
|
||||||
<Key>Item</Key>
|
|
||||||
<Value Path="Enums/Item.xml"/>
|
|
||||||
</Element>
|
|
||||||
<Element>
|
<Element>
|
||||||
<Key>JetPack</Key>
|
<Key>JetPack</Key>
|
||||||
<Value Path="Structs/JetPack.xml"/>
|
<Value Path="Structs/JetPack.xml"/>
|
||||||
|
@ -1047,6 +1043,10 @@
|
||||||
<Key>PlayerInventoryItem</Key>
|
<Key>PlayerInventoryItem</Key>
|
||||||
<Value Path="Structs/PlayerInventoryItem.xml"/>
|
<Value Path="Structs/PlayerInventoryItem.xml"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key>PlayerItem</Key>
|
||||||
|
<Value Path="Enums/PlayerItem.xml"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key>ProportionalConvergence</Key>
|
<Key>ProportionalConvergence</Key>
|
||||||
<Value Path="Structs/ProportionalConvergence.xml"/>
|
<Value Path="Structs/ProportionalConvergence.xml"/>
|
||||||
|
|
|
@ -545,6 +545,10 @@
|
||||||
<Key ID="0x3BDEA98" Type="choice"/>
|
<Key ID="0x3BDEA98" Type="choice"/>
|
||||||
<Value Name="AmountOrCapacity"/>
|
<Value Name="AmountOrCapacity"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x3BDEA98" Type="int"/>
|
||||||
|
<Value Name="AmountOrCapacity"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0x3BEE47E" Type="asset"/>
|
<Key ID="0x3BEE47E" Type="asset"/>
|
||||||
<Value Name="Model01"/>
|
<Value Name="Model01"/>
|
||||||
|
@ -1161,6 +1165,10 @@
|
||||||
<Key ID="0x806C08D" Type="float"/>
|
<Key ID="0x806C08D" Type="float"/>
|
||||||
<Value Name="Unknown"/>
|
<Value Name="Unknown"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x8072DA5" Type="PlayerItem"/>
|
||||||
|
<Value Name="Item"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0x8072DA5" Type="enum"/>
|
<Key ID="0x8072DA5" Type="enum"/>
|
||||||
<Value Name="Item"/>
|
<Value Name="Item"/>
|
||||||
|
@ -9409,6 +9417,26 @@
|
||||||
<Key ID="0x3FA164BC" Type="choice"/>
|
<Key ID="0x3FA164BC" Type="choice"/>
|
||||||
<Value Name="InventoryItemParm"/>
|
<Value Name="InventoryItemParm"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x3FA164BC" Type="PlayerItem"/>
|
||||||
|
<Value Name="InventoryItemParm"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x3FA164BC" Type="Item"/>
|
||||||
|
<Value Name="InventoryItemParm"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x3FA164BC" Type="PlayerIte"/>
|
||||||
|
<Value Name="InventoryItemParm"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x3FA164BC" Type="int"/>
|
||||||
|
<Value Name="InventoryItemParm"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x3FA164BC" Type="enum"/>
|
||||||
|
<Value Name="InventoryItemParm"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0x3FA5C15B" Type="SwarmBotData"/>
|
<Key ID="0x3FA5C15B" Type="SwarmBotData"/>
|
||||||
<Value Name="SwarmBotData"/>
|
<Value Name="SwarmBotData"/>
|
||||||
|
@ -11937,6 +11965,10 @@
|
||||||
<Key ID="0x4F6E81A8" Type="float"/>
|
<Key ID="0x4F6E81A8" Type="float"/>
|
||||||
<Value Name="Unknown"/>
|
<Value Name="Unknown"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x4F7FEC39" Type="Flags"/>
|
||||||
|
<Value Name="FlagsRumble"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0x4F7FEC39" Type="int"/>
|
<Key ID="0x4F7FEC39" Type="int"/>
|
||||||
<Value Name="FlagsRumble"/>
|
<Value Name="FlagsRumble"/>
|
||||||
|
@ -12879,7 +12911,7 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0x5604D304" Type="SplineType"/>
|
<Key ID="0x5604D304" Type="SplineType"/>
|
||||||
<Value Name="SplineType"/>
|
<Value Name="TargetSplineType"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0x5604D304" Type="UnknownStruct1"/>
|
<Key ID="0x5604D304" Type="UnknownStruct1"/>
|
||||||
|
@ -15837,6 +15869,10 @@
|
||||||
<Key ID="0x6A3E9A3D" Type="choice"/>
|
<Key ID="0x6A3E9A3D" Type="choice"/>
|
||||||
<Value Name="FilterShape"/>
|
<Value Name="FilterShape"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x6A3E9A3D" Type="int"/>
|
||||||
|
<Value Name="FilterShape"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0x6A43639F" Type="asset"/>
|
<Key ID="0x6A43639F" Type="asset"/>
|
||||||
<Value Name="ThrusterEffect"/>
|
<Value Name="ThrusterEffect"/>
|
||||||
|
@ -16013,6 +16049,10 @@
|
||||||
<Key ID="0x6B5E7509" Type="choice"/>
|
<Key ID="0x6B5E7509" Type="choice"/>
|
||||||
<Value Name="World Lighting Options"/>
|
<Value Name="World Lighting Options"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x6B5E7509" Type="enum"/>
|
||||||
|
<Value Name="World Lighting Options"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0x6B5E87A7" Type="float"/>
|
<Key ID="0x6B5E87A7" Type="float"/>
|
||||||
<Value Name="Unknown"/>
|
<Value Name="Unknown"/>
|
||||||
|
@ -16741,6 +16781,10 @@
|
||||||
<Key ID="0x70729364" Type="choice"/>
|
<Key ID="0x70729364" Type="choice"/>
|
||||||
<Value Name="Condition"/>
|
<Value Name="Condition"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x70729364" Type="int"/>
|
||||||
|
<Value Name="Condition"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0x70754E15" Type="FOVInterpolationMethod"/>
|
<Key ID="0x70754E15" Type="FOVInterpolationMethod"/>
|
||||||
<Value Name="FOVInterpolationMethod"/>
|
<Value Name="FOVInterpolationMethod"/>
|
||||||
|
@ -22381,6 +22425,10 @@
|
||||||
<Key ID="0x95F8D644" Type="choice"/>
|
<Key ID="0x95F8D644" Type="choice"/>
|
||||||
<Value Name="Function"/>
|
<Value Name="Function"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x95F8D644" Type="int"/>
|
||||||
|
<Value Name="Function"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0x9603A544" Type="asset"/>
|
<Key ID="0x9603A544" Type="asset"/>
|
||||||
<Value Name="PART"/>
|
<Value Name="PART"/>
|
||||||
|
@ -23405,6 +23453,10 @@
|
||||||
<Key ID="0x9D0006AB" Type="choice"/>
|
<Key ID="0x9D0006AB" Type="choice"/>
|
||||||
<Value Name="EnvironmentEffects"/>
|
<Value Name="EnvironmentEffects"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0x9D0006AB" Type="int"/>
|
||||||
|
<Value Name="EnvironmentEffects"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0x9D06B0FE" Type="bool"/>
|
<Key ID="0x9D06B0FE" Type="bool"/>
|
||||||
<Value Name="EnforceRangeRequirementAtLaunchTime"/>
|
<Value Name="EnforceRangeRequirementAtLaunchTime"/>
|
||||||
|
@ -23805,6 +23857,26 @@
|
||||||
<Key ID="0xA02EF0C4" Type="choice"/>
|
<Key ID="0xA02EF0C4" Type="choice"/>
|
||||||
<Value Name="ItemToGive"/>
|
<Value Name="ItemToGive"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xA02EF0C4" Type="PlayerItem"/>
|
||||||
|
<Value Name="ItemToGive"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xA02EF0C4" Type="Item"/>
|
||||||
|
<Value Name="ItemToGive"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xA02EF0C4" Type="PlayerIte"/>
|
||||||
|
<Value Name="ItemToGive"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xA02EF0C4" Type="int"/>
|
||||||
|
<Value Name="ItemToGive"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xA02EF0C4" Type="enum"/>
|
||||||
|
<Value Name="ItemToGive"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0xA0347C3F" Type="bool"/>
|
<Key ID="0xA0347C3F" Type="bool"/>
|
||||||
<Value Name="Dummy"/>
|
<Value Name="Dummy"/>
|
||||||
|
@ -24013,6 +24085,10 @@
|
||||||
<Key ID="0xA1677D4E" Type="float"/>
|
<Key ID="0xA1677D4E" Type="float"/>
|
||||||
<Value Name="X"/>
|
<Value Name="X"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xA169D424" Type="PlayerItem"/>
|
||||||
|
<Value Name="Item"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0xA169D424" Type="enum"/>
|
<Key ID="0xA169D424" Type="enum"/>
|
||||||
<Value Name="Item"/>
|
<Value Name="Item"/>
|
||||||
|
@ -26791,11 +26867,11 @@
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0xB3774750" Type="PatternedAITypedef"/>
|
<Key ID="0xB3774750" Type="PatternedAITypedef"/>
|
||||||
<Value Name="PatternedAITypedef"/>
|
<Value Name="Patterned"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0xB3774750" Type="PatternedInfo"/>
|
<Key ID="0xB3774750" Type="PatternedInfo"/>
|
||||||
<Value Name="PatternedAITypedef"/>
|
<Value Name="Patterned"/>
|
||||||
</Element>
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0xB37C9890" Type="float"/>
|
<Key ID="0xB37C9890" Type="float"/>
|
||||||
|
@ -26873,6 +26949,10 @@
|
||||||
<Key ID="0xB3E150A1" Type="UnknownStruct113"/>
|
<Key ID="0xB3E150A1" Type="UnknownStruct113"/>
|
||||||
<Value Name="UnknownStruct113"/>
|
<Value Name="UnknownStruct113"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xB3E3E1E3" Type="PlayerItem"/>
|
||||||
|
<Value Name="Item"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0xB3E3E1E3" Type="enum"/>
|
<Key ID="0xB3E3E1E3" Type="enum"/>
|
||||||
<Value Name="Item"/>
|
<Value Name="Item"/>
|
||||||
|
@ -31701,6 +31781,26 @@
|
||||||
<Key ID="0xD3AF8D72" Type="choice"/>
|
<Key ID="0xD3AF8D72" Type="choice"/>
|
||||||
<Value Name="PlayerItem"/>
|
<Value Name="PlayerItem"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xD3AF8D72" Type="PlayerItem"/>
|
||||||
|
<Value Name="PlayerItem"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xD3AF8D72" Type="Item"/>
|
||||||
|
<Value Name="PlayerIte"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xD3AF8D72" Type="PlayerIte"/>
|
||||||
|
<Value Name="PlayerItem"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xD3AF8D72" Type="int"/>
|
||||||
|
<Value Name="PlayerItem"/>
|
||||||
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xD3AF8D72" Type="enum"/>
|
||||||
|
<Value Name="PlayerItem"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0xD3B7E6D8" Type="int"/>
|
<Key ID="0xD3B7E6D8" Type="int"/>
|
||||||
<Value Name="WhichScreen"/>
|
<Value Name="WhichScreen"/>
|
||||||
|
@ -34501,6 +34601,10 @@
|
||||||
<Key ID="0xE7234F72" Type="sound"/>
|
<Key ID="0xE7234F72" Type="sound"/>
|
||||||
<Value Name="Unknown"/>
|
<Value Name="Unknown"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xE7338932" Type="PlayerItem"/>
|
||||||
|
<Value Name="ItemAward"/>
|
||||||
|
</Element>
|
||||||
<Element>
|
<Element>
|
||||||
<Key ID="0xE7338932" Type="enum"/>
|
<Key ID="0xE7338932" Type="enum"/>
|
||||||
<Value Name="ItemAward"/>
|
<Value Name="ItemAward"/>
|
||||||
|
@ -38465,5 +38569,9 @@
|
||||||
<Key ID="0xFFEEBC46" Type="choice"/>
|
<Key ID="0xFFEEBC46" Type="choice"/>
|
||||||
<Value Name="PhazonDamage"/>
|
<Value Name="PhazonDamage"/>
|
||||||
</Element>
|
</Element>
|
||||||
|
<Element>
|
||||||
|
<Key ID="0xFFEEBC46" Type="int"/>
|
||||||
|
<Value Name="PhazonDamage"/>
|
||||||
|
</Element>
|
||||||
</PropertyMap>
|
</PropertyMap>
|
||||||
</PropertyMap>
|
</PropertyMap>
|
||||||
|
|
|
@ -10,22 +10,22 @@
|
||||||
<Element Type="Struct" ID="0xCEC16932" Archetype="ConditionalTest"/>
|
<Element Type="Struct" ID="0xCEC16932" Archetype="ConditionalTest"/>
|
||||||
<Element Type="Struct" ID="0xE709DDC0" Archetype="ConditionalTest">
|
<Element Type="Struct" ID="0xE709DDC0" Archetype="ConditionalTest">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0xDE3E40A3">
|
<Element Type="Choice" ID="0xDE3E40A3">
|
||||||
<DefaultValue>0</DefaultValue>
|
<DefaultValue>0x0</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
</SubProperties>
|
</SubProperties>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x49614C51" Archetype="ConditionalTest">
|
<Element Type="Struct" ID="0x49614C51" Archetype="ConditionalTest">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0xDE3E40A3">
|
<Element Type="Choice" ID="0xDE3E40A3">
|
||||||
<DefaultValue>0</DefaultValue>
|
<DefaultValue>0x0</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
</SubProperties>
|
</SubProperties>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0xB498B424" Archetype="ConditionalTest">
|
<Element Type="Struct" ID="0xB498B424" Archetype="ConditionalTest">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0xDE3E40A3">
|
<Element Type="Choice" ID="0xDE3E40A3">
|
||||||
<DefaultValue>0</DefaultValue>
|
<DefaultValue>0x0</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
</SubProperties>
|
</SubProperties>
|
||||||
</Element>
|
</Element>
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<Element Type="Bool" ID="0x87C8B399">
|
<Element Type="Bool" ID="0x87C8B399">
|
||||||
<DefaultValue>false</DefaultValue>
|
<DefaultValue>false</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Enum" ID="0xE7338932" Archetype="Item">
|
<Element Type="Enum" ID="0xE7338932" Archetype="PlayerItem">
|
||||||
<DefaultValue>0xB22FD89B</DefaultValue>
|
<DefaultValue>0xB22FD89B</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
</SubProperties>
|
</SubProperties>
|
||||||
|
|
|
@ -77,7 +77,7 @@
|
||||||
<Element Type="Int" ID="0xB581574B">
|
<Element Type="Int" ID="0xB581574B">
|
||||||
<DefaultValue>0</DefaultValue>
|
<DefaultValue>0</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Enum" ID="0x3FA164BC" Archetype="Item">
|
<Element Type="Enum" ID="0x3FA164BC" Archetype="PlayerItem">
|
||||||
<DefaultValue>0xB22FD89B</DefaultValue>
|
<DefaultValue>0xB22FD89B</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
</SubProperties>
|
</SubProperties>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<PropertyArchetype Type="Struct">
|
<PropertyArchetype Type="Struct">
|
||||||
<Name>BeatUpHandlerStruct</Name>
|
<Name>BeatUpHandlerStruct</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Enum" ID="0xB3E3E1E3" Archetype="Item">
|
<Element Type="Enum" ID="0xB3E3E1E3" Archetype="PlayerItem">
|
||||||
<DefaultValue>0xB22FD89B</DefaultValue>
|
<DefaultValue>0xB22FD89B</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Int" ID="0x8FA67C9E">
|
<Element Type="Int" ID="0x8FA67C9E">
|
||||||
|
|
|
@ -3,13 +3,13 @@
|
||||||
<PropertyArchetype Type="Struct">
|
<PropertyArchetype Type="Struct">
|
||||||
<Name>ConditionalTest</Name>
|
<Name>ConditionalTest</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Int" ID="0xDE3E40A3">
|
<Element Type="Choice" ID="0xDE3E40A3">
|
||||||
<DefaultValue>1</DefaultValue>
|
<DefaultValue>0x1</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Bool" ID="0x794F9BEB">
|
<Element Type="Bool" ID="0x794F9BEB">
|
||||||
<DefaultValue>false</DefaultValue>
|
<DefaultValue>false</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Enum" ID="0xD3AF8D72" Archetype="Item">
|
<Element Type="Enum" ID="0xD3AF8D72" Archetype="PlayerItem">
|
||||||
<DefaultValue>0xB22FD89B</DefaultValue>
|
<DefaultValue>0xB22FD89B</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Int" ID="0x3BDEA98">
|
<Element Type="Int" ID="0x3BDEA98">
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<PropertyArchetype Type="Struct">
|
<PropertyArchetype Type="Struct">
|
||||||
<Name>UnknownStruct41</Name>
|
<Name>UnknownStruct41</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Enum" ID="0xA02EF0C4" Archetype="Item">
|
<Element Type="Enum" ID="0xA02EF0C4" Archetype="PlayerItem">
|
||||||
<DefaultValue>0xB22FD89B</DefaultValue>
|
<DefaultValue>0xB22FD89B</DefaultValue>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Int" ID="0x7B7C262A">
|
<Element Type="Int" ID="0x7B7C262A">
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Asset" ID="0x6">
|
<Element Type="Asset" ID="0x6">
|
||||||
<Name>WPSC</Name>
|
<Name>WPSC</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Asset" ID="0x6">
|
<Element Type="Asset" ID="0x6">
|
||||||
<Name>ELSC</Name>
|
<Name>ELSC</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<Element Type="Vector" ID="0x4">
|
<Element Type="Vector" ID="0x4">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x5" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
||||||
<Element Type="Struct" ID="0x7" Archetype="DamageInfo"/>
|
<Element Type="Struct" ID="0x7" Archetype="DamageInfo"/>
|
||||||
<Element Type="Vector" ID="0x8">
|
<Element Type="Vector" ID="0x8">
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Asset" ID="0x6">
|
<Element Type="Asset" ID="0x6">
|
||||||
<Name>Particle 1</Name>
|
<Name>Particle 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Asset" ID="0x6">
|
<Element Type="Asset" ID="0x6">
|
||||||
<Name>Particle 1</Name>
|
<Name>Particle 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<Element Type="Float" ID="0x5">
|
<Element Type="Float" ID="0x5">
|
||||||
<Name>Unknown 2</Name>
|
<Name>Unknown 2</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x6" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x7" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x7" Archetype="ActorParameters"/>
|
||||||
<Element Type="Struct" ID="0x8" Archetype="DamageInfo">
|
<Element Type="Struct" ID="0x8" Archetype="DamageInfo">
|
||||||
<Name>DamageInfo 1</Name>
|
<Name>DamageInfo 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters">
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters">
|
||||||
<Name>ActorParameters 1</Name>
|
<Name>ActorParameters 1</Name>
|
||||||
</Element>
|
</Element>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Int" ID="0x6">
|
<Element Type="Int" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<Element Type="Vector" ID="0x4">
|
<Element Type="Vector" ID="0x4">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x5" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x7">
|
<Element Type="Float" ID="0x7">
|
||||||
<Name>Unknown 2</Name>
|
<Name>Unknown 2</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Bool" ID="0x6">
|
<Element Type="Bool" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters">
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters">
|
||||||
<Name>ActorParameters 1</Name>
|
<Name>ActorParameters 1</Name>
|
||||||
</Element>
|
</Element>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
</SubProperties>
|
</SubProperties>
|
||||||
</Properties>
|
</Properties>
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<Element Type="Vector" ID="0x4">
|
<Element Type="Vector" ID="0x4">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x5" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
||||||
<Element Type="Bool" ID="0x7">
|
<Element Type="Bool" ID="0x7">
|
||||||
<Name>Unknown 2</Name>
|
<Name>Unknown 2</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="DamageInfo"/>
|
<Element Type="Struct" ID="0x6" Archetype="DamageInfo"/>
|
||||||
<Element Type="Float" ID="0x7">
|
<Element Type="Float" ID="0x7">
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="DamageInfo"/>
|
<Element Type="Struct" ID="0x6" Archetype="DamageInfo"/>
|
||||||
<Element Type="Float" ID="0x7">
|
<Element Type="Float" ID="0x7">
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<Element Type="Vector" ID="0x4">
|
<Element Type="Vector" ID="0x4">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x5" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
||||||
<Element Type="Struct" ID="0x7" Archetype="DamageVulnerability">
|
<Element Type="Struct" ID="0x7" Archetype="DamageVulnerability">
|
||||||
<Name>DamageVulnerability 1</Name>
|
<Name>DamageVulnerability 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="DamageVulnerability">
|
<Element Type="Struct" ID="0x6" Archetype="DamageVulnerability">
|
||||||
<Name>DamageVulnerability 1</Name>
|
<Name>DamageVulnerability 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Asset" ID="0x6">
|
<Element Type="Asset" ID="0x6">
|
||||||
<Name>Particle 1</Name>
|
<Name>Particle 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown</Name>
|
<Name>Unknown</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters">
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters">
|
||||||
<Name>ActorParameters 1</Name>
|
<Name>ActorParameters 1</Name>
|
||||||
</Element>
|
</Element>
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<Element Type="Vector" ID="0x4">
|
<Element Type="Vector" ID="0x4">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x5" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x7">
|
<Element Type="Float" ID="0x7">
|
||||||
<Name>Unknown 2</Name>
|
<Name>Unknown 2</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Bool" ID="0x6">
|
<Element Type="Bool" ID="0x6">
|
||||||
<Name>Unused</Name>
|
<Name>Unused</Name>
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<Element Type="Vector" ID="0x5">
|
<Element Type="Vector" ID="0x5">
|
||||||
<Name>Scan/Collision Offset</Name>
|
<Name>Scan/Collision Offset</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Choice" ID="0x6" Archetype="Item"/>
|
<Element Type="Choice" ID="0x6" Archetype="PlayerItem"/>
|
||||||
<Element Type="Int" ID="0x7">
|
<Element Type="Int" ID="0x7">
|
||||||
<Name>Capacity</Name>
|
<Name>Capacity</Name>
|
||||||
</Element>
|
</Element>
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
<Element Type="Bool" ID="0x1">
|
<Element Type="Bool" ID="0x1">
|
||||||
<Name>Active</Name>
|
<Name>Active</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Choice" ID="0x2" Archetype="Item"/>
|
<Element Type="Choice" ID="0x2" Archetype="PlayerItem"/>
|
||||||
<Element Type="Int" ID="0x3">
|
<Element Type="Int" ID="0x3">
|
||||||
<Name>Amount</Name>
|
<Name>Amount</Name>
|
||||||
</Element>
|
</Element>
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<Element Type="Vector" ID="0x4">
|
<Element Type="Vector" ID="0x4">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x5" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
||||||
<Element Type="Bool" ID="0x7">
|
<Element Type="Bool" ID="0x7">
|
||||||
<Name>Unknown 2</Name>
|
<Name>Unknown 2</Name>
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<Element Type="Vector" ID="0x4">
|
<Element Type="Vector" ID="0x4">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x5" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x7">
|
<Element Type="Float" ID="0x7">
|
||||||
<Name>Unknown 2</Name>
|
<Name>Unknown 2</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Asset" ID="0x6">
|
<Element Type="Asset" ID="0x6">
|
||||||
<Name>Model 1</Name>
|
<Name>Model 1</Name>
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<Element Type="Vector" ID="0x4">
|
<Element Type="Vector" ID="0x4">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x5" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
||||||
<Element Type="Struct" ID="0x7" Archetype="GrappleParameters"/>
|
<Element Type="Struct" ID="0x7" Archetype="GrappleParameters"/>
|
||||||
</SubProperties>
|
</SubProperties>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Asset" ID="0x6">
|
<Element Type="Asset" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Bool" ID="0x6">
|
<Element Type="Bool" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -63,7 +63,7 @@
|
||||||
<Name>Unknown 4</Name>
|
<Name>Unknown 4</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x8" Archetype="LayerSwitch"/>
|
<Element Type="Struct" ID="0x8" Archetype="LayerSwitch"/>
|
||||||
<Element Type="Choice" ID="0x9" Archetype="Item"/>
|
<Element Type="Choice" ID="0x9" Archetype="PlayerItem"/>
|
||||||
<Element Type="Bool" ID="0xA">
|
<Element Type="Bool" ID="0xA">
|
||||||
<Name>Active</Name>
|
<Name>Active</Name>
|
||||||
</Element>
|
</Element>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Bool" ID="0x6">
|
<Element Type="Bool" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Bool" ID="0x6">
|
<Element Type="Bool" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<Element Type="Vector" ID="0x3">
|
<Element Type="Vector" ID="0x3">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x4" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x4" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x5" Archetype="ActorParameters"/>
|
||||||
<Element Type="Float" ID="0x6">
|
<Element Type="Float" ID="0x6">
|
||||||
<Name>Unknown 1</Name>
|
<Name>Unknown 1</Name>
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<Element Type="Vector" ID="0x4">
|
<Element Type="Vector" ID="0x4">
|
||||||
<Name>Scale</Name>
|
<Name>Scale</Name>
|
||||||
</Element>
|
</Element>
|
||||||
<Element Type="Struct" ID="0x5" Archetype="PatternedInfo"/>
|
<Element Type="Struct" ID="0x5" Archetype="PatternedAITypedef"/>
|
||||||
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
<Element Type="Struct" ID="0x6" Archetype="ActorParameters"/>
|
||||||
<Element Type="Bool" ID="0x7">
|
<Element Type="Bool" ID="0x7">
|
||||||
<Name>Collider</Name>
|
<Name>Collider</Name>
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<Name>AtomicAlpha</Name>
|
<Name>AtomicAlpha</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Struct" ID="0x255A4580" Archetype="EditorProperties"/>
|
<Element Type="Struct" ID="0x255A4580" Archetype="EditorProperties"/>
|
||||||
<Element Type="Struct" ID="0xB3774750" Archetype="PatternedInfo">
|
<Element Type="Struct" ID="0xB3774750" Archetype="PatternedAITypedef">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Float" ID="0x75DBB375">
|
<Element Type="Float" ID="0x75DBB375">
|
||||||
<DefaultValue>25.0</DefaultValue>
|
<DefaultValue>25.0</DefaultValue>
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<Name>AtomicBeta</Name>
|
<Name>AtomicBeta</Name>
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Struct" ID="0x255A4580" Archetype="EditorProperties"/>
|
<Element Type="Struct" ID="0x255A4580" Archetype="EditorProperties"/>
|
||||||
<Element Type="Struct" ID="0xB3774750" Archetype="PatternedInfo">
|
<Element Type="Struct" ID="0xB3774750" Archetype="PatternedAITypedef">
|
||||||
<SubProperties>
|
<SubProperties>
|
||||||
<Element Type="Float" ID="0x75DBB375">
|
<Element Type="Float" ID="0x75DBB375">
|
||||||
<DefaultValue>25.0</DefaultValue>
|
<DefaultValue>25.0</DefaultValue>
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue