BrawlCrate v0.41
Wii File Editor
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Properties | List of all members
BrawlLib.SSBB.ResourceNodes.FCFGNode Class Reference
Inheritance diagram for BrawlLib.SSBB.ResourceNodes.FCFGNode:
BrawlLib.SSBB.ResourceNodes.ResourceNode

Public Types

enum  CharacterLoadFlags : byte
 
enum  CostumeLoadFlags : ushort
 
enum  EntryResultLoadFlags : byte
 
enum  KirbyLoadFlags : byte
 
enum  FinalLoadFlagsV1 : byte
 
enum  FinalLoadFlags : byte
 
enum  AirJumpFlags : uint
 
enum  MotionEtcTypes
 

Public Member Functions

override int OnCalculateSize (bool force)
 
override void OnRebuild (VoidPtr address, int length, bool force)
 
override bool OnInitialize ()
 
- Public Member Functions inherited from BrawlLib.SSBB.ResourceNodes.ResourceNode
void OnRenamed ()
 
List< ResourceNodeGetChildrenRecursive ()
 Used primarily to get bone lists. Kept for all resource nodes for utility. More...
 
virtual void SignalPropertyChange ()
 
virtual void Dispose ()
 
void SelectChildAtIndex (int index)
 
void UpdateProperties ()
 
void UpdateCurrentControl ()
 
virtual bool MoveUp ()
 
virtual bool MoveDown ()
 
virtual void OnMoved ()
 
virtual void DoMoveDown ()
 
virtual void DoMoveDown (bool select)
 
virtual void DoMoveUp ()
 
virtual void DoMoveUp (bool select)
 
virtual bool AddUp ()
 
virtual bool AddDown ()
 
virtual bool ToParent ()
 
void Populate (int levels=-1)
 
virtual void OnPopulate ()
 
void Initialize (ResourceNode parent, FileMap source)
 
void Initialize (ResourceNode parent, VoidPtr address, int length)
 
void Initialize (ResourceNode parent, DataSource origSource)
 
virtual void Initialize (ResourceNode parent, DataSource origSource, DataSource uncompSource)
 
virtual bool OnInitialize ()
 
virtual void Restore ()
 
virtual void Remove ()
 
virtual void RemoveChild (ResourceNode child)
 
virtual void AddChild (ResourceNode child)
 
virtual void AddChild (ResourceNode child, bool change)
 
virtual void InsertChild (ResourceNode child, int index)
 
virtual void InsertChild (ResourceNode child, bool change, int index)
 
void SetSizeInternal (int size)
 
virtual void Replace (string fileName)
 
virtual void Replace (ResourceNode node)
 
virtual void Replace (string fileName, FileMapProtect prot, FileOptions options)
 
virtual void ReplaceRaw (VoidPtr address, int length)
 
virtual void ReplaceRaw (FileMap map)
 
virtual void Export (string outPath)
 
void Export (FileStream outStream)
 
virtual void ExportUncompressed (string outPath)
 
void ExportUncompressed (FileStream outStream)
 
virtual void Rebuild ()
 
virtual void Rebuild (bool force)
 
virtual void Rebuild (VoidPtr address, int length, bool force)
 
virtual void OnRebuild (VoidPtr address, int length, bool force)
 
virtual int CalculateSize (bool force)
 
virtual int OnCalculateSize (bool force)
 
void Merge ()
 
void Merge (bool forceBuild)
 
ResourceNode FindChildByType (string path, bool searchChildren, params ResourceType[] types)
 
ResourceNode FindChildByType (string path, bool searchChildren, StringComparison compare, params ResourceType[] types)
 
ResourceNode FindChild (string path)
 
ResourceNode FindChild (string path, bool searchChildren)
 
ResourceNode FindChild (string path, StringComparison compare)
 
ResourceNode FindChild (string path, bool searchChildren, StringComparison compare)
 
ResourceNode[] FindChildrenByClassType (string path, Type type)
 
ResourceNode[] FindChildrenByType (string path, ResourceType type)
 
ResourceNode[] FindChildrenByTypeInGroup (string path, ResourceType type, byte group)
 
ResourceNode[] FindChildrenByName (string name)
 
unsafe string FindName (string name)
 
ResourceNode FindEmbeddedIndex (int index)
 
virtual unsafe byte[] MD5 ()
 Find the MD5 checksum of this node's data. If this node doesn't have any data (BRESGroupNode, for example), this method will return null. More...
 
string MD5Str ()
 Get the result of the MD5() function as a string of hexadecimal digits. If MD5() returns null, this method will return an empty string. More...
 
ResourceNode PrevSibling ()
 
ResourceNode NextSibling ()
 
override string ToString ()
 
virtual void SortChildren ()
 

Public Attributes

uint _tag
 
uint _size
 
uint _version
 
byte _editFlag1
 
byte _editFlag2
 
byte _editFlag3
 
byte _editFlag4
 
byte _kirbyCopyColorFlags
 
byte _entryColorFlags
 
byte _resultColorFlags
 
CharacterLoadFlags _characterLoadFlags
 
byte _finalSmashColorFlags
 
byte _unknown0x15
 
CostumeLoadFlags _colorFlags
 
uint _entryArticleFlag
 
uint _soundbank
 
uint _kirbySoundbank
 
uint _unknown0x24
 
uint _unknown0x28
 
uint _unknown0x2C
 
byte[] _pacNameArray = new byte[48]
 
byte[] _kirbyPacNameArray
 
byte[] _moduleNameArray = new byte[32]
 
byte[] _internalNameArray = new byte[16]
 
string _fighterName
 
string _pacName
 
string _kirbyPacName
 
string _moduleName
 
string _internalName
 
uint _jabFlag
 
uint _jabCount
 
uint _hasRapidJab
 
uint _canTilt
 
uint _fSmashCount
 
uint _airJumpCount
 
uint _canGlide
 
uint _canCrawl
 
uint _dashAttackIntoCrouch
 
uint _canWallJump
 
uint _canCling
 
uint _canZAir
 
uint _u12Flag
 
uint _u13Flag
 
uint _textureLoad
 
uint _aiController
 
bool _hasInternalName = true
 
bool _hasPac = true
 
bool _hasModule = true
 
bool _hasKirbyHat = true
 
- Public Attributes inherited from BrawlLib.SSBB.ResourceNodes.ResourceNode
Form _mainForm
 
string _name
 
string _origPath
 
ResourceNode _parent
 
List< ResourceNode_children = new List<ResourceNode>()
 
int _calcSize
 
EventHandler UpdateControl
 
MoveEventHandler MovedDown
 
ResourceEventHandler Renamed
 
ResourceEventHandler PropertyChanged
 
ResourceEventHandler Replaced
 
ResourceEventHandler Restored
 
ResourceChildEventHandler ChildRemoved
 
bool _isPopulating
 
bool _replaced
 

Properties

override ResourceType ResourceFileType [get]
 
string FighterName [get, set]
 
string PacName [get, set]
 
string KirbyPacName [get, set]
 
string ModuleName [get, set]
 
bool HasInternalName [get, set]
 
string InternalFighterName [get, set]
 
string AutoPacName [get]
 
string AutoKirbyPacName [get]
 
string AutoModuleName [get]
 
string AutoInternalFighterName [get]
 
bool CanCrawl [get, set]
 
byte CanFTilt [get, set]
 
bool CanGlide [get, set]
 
bool CanWallCling [get, set]
 
bool CanWallJump [get, set]
 
bool CanZAir [get, set]
 
AirJumpFlags AirJumpCount [get, set]
 
bool DAIntoCrouch [get, set]
 
uint FSmashCount [get, set]
 
bool HasRapidJab [get, set]
 
uint JabCount [get, set]
 
uint JabFlag [get, set]
 
bool HasCostume00 [get, set]
 
bool HasCostume01 [get, set]
 
bool HasCostume02 [get, set]
 
bool HasCostume03 [get, set]
 
bool HasCostume04 [get, set]
 
bool HasCostume05 [get, set]
 
bool HasCostume06 [get, set]
 
bool HasCostume07 [get, set]
 
bool HasCostume08 [get, set]
 
bool HasCostume09 [get, set]
 
bool HasCostume10 [get, set]
 
bool HasCostume11 [get, set]
 
bool UnknownFlagA [get, set]
 
bool UnknownFlagB [get, set]
 
bool UnknownFlagC [get, set]
 
bool UnknownFlagD [get, set]
 
bool HasPac [get, set]
 
bool HasModule [get, set]
 
MotionEtcTypes MotionEtcType [get, set]
 
bool MergeMotionEtc [get, set]
 
bool PerCostumeEtc [get, set]
 
bool UnknownLoadFlagA [get, set]
 
bool UnknownLoadFlagB [get, set]
 
EntryResultLoadFlags EntryLoadType [get, set]
 
EntryResultLoadFlags ResultLoadType [get, set]
 
bool HasKirbyHat [get, set]
 
KirbyLoadFlags KirbyLoadType [get, set]
 
uint Version [get, set]
 
bool LoadFitFinal [get, set]
 
FinalLoadFlags FinalLoadType [get, set]
 
bool FinalSmashMusic [get, set]
 
uint SoundBank [get, set]
 
uint KirbySoundBank [get, set]
 
uint AIController [get, set]
 
uint EntryFlag [get, set]
 
bool IkPhysics [get, set]
 
uint TextureLoader [get, set]
 
uint U12Flag [get, set]
 
uint U13Flag [get, set]
 
bool WorkManage [get, set]
 
- Properties inherited from BrawlLib.SSBB.ResourceNodes.ResourceNode
string FilePath [get]
 
string FileName [get]
 
string DirectoryName [get]
 
ResourceNode RootNode [get]
 
DataSource OriginalSource [get]
 
DataSource UncompressedSource [get]
 
DataSource WorkingSource [get]
 
DataSource WorkingUncompressed [get]
 
virtual bool HasChildren [get]
 
virtual ResourceType ResourceFileType [get]
 
string NodeType [get]
 
virtual string TreePathAbsolute [get]
 
virtual string TreePath [get]
 
virtual int Level [get]
 
virtual int MaxNameLength [get]
 
virtual bool AllowDuplicateNames [get]
 
virtual bool AllowNullNames [get]
 
virtual string Name [get, set]
 
ResourceNode Parent [get, set]
 
List< ResourceNodeChildren [get]
 
int Index [get]
 
int HexIndex [get]
 
bool IsCompressed [get]
 
bool HasChanged [get, set]
 
bool IsBranch [get]
 
bool HasMerged [get]
 
virtual bool AllowSaving [get, set]
 
virtual bool IsDirty [get, set]
 
virtual uint UncompressedSize [get]
 
virtual Type[] AllowedChildTypes [get]
 
virtual string Compression [get, set]
 
virtual bool RetainChildrenOnReplace [get]
 
virtual bool supportsCompression [get]
 
static MD5CryptoServiceProvider MD5Provider [get]
 

Additional Inherited Members

- Static Public Member Functions inherited from BrawlLib.SSBB.ResourceNodes.ResourceNode
static ResourceNode[] FindAllSubNodes (ResourceNode root)
 
static ResourceNode FindNode (ResourceNode root, string path, bool searchChildren, StringComparison compare)
 
- Protected Member Functions inherited from BrawlLib.SSBB.ResourceNodes.ResourceNode
void ForceReplacedEvent ()
 
virtual void MergeInternal ()
 
- Events inherited from BrawlLib.SSBB.ResourceNodes.ResourceNode
SelectEventHandler SelectChild
 
EventHandler UpdateProps
 
MoveEventHandler MovedUp
 
ResourceEventHandler Disposing
 
ResourceChildEventHandler ChildAdded
 
ResourceChildInsertEventHandler ChildInserted
 

Member Enumeration Documentation

◆ AirJumpFlags

152 {
153 None = 0x00000000,
154 NormalAirJump = 0x00000001,
155 MultiAirJump = 0x00000002
156 }

◆ CharacterLoadFlags

78 {
79 None = 0x00, // 0000 0000
80 WorkManageFlag = 0x01, // 0000 0001
81 FinalSmashFilesFlag = 0x02, // 0000 0010
82 FinalSmashMusicOffFlag = 0x04, // 0000 0100
83 IkPhysicsFlag = 0x08, // 0000 1000
84 MergeMotionEtcFlag = 0x10, // 0001 0000
85 PerCostumeEtc = 0x20, // 0010 0000
86 UnknownFlag_A = 0x40, // 0100 0000
87 UnknownFlag_B = 0x80 // 1000 0000
88 }
bool PerCostumeEtc
Definition: FCFGNode.cs:790

◆ CostumeLoadFlags

93 {
94 None = 0x0000,
95 CostumeFlag00 = 0x0001,
96 CostumeFlag01 = 0x0002,
97 CostumeFlag02 = 0x0004,
98 CostumeFlag03 = 0x0008,
99 CostumeFlag04 = 0x0010,
100 CostumeFlag05 = 0x0020,
101 CostumeFlag06 = 0x0040,
102 CostumeFlag07 = 0x0080,
103 CostumeFlag08 = 0x0100,
104 CostumeFlag09 = 0x0200,
105 CostumeFlag10 = 0x0400,
106 CostumeFlag11 = 0x0800,
107 UnknownFlag_A = 0x1000,
108 UnknownFlag_B = 0x2000,
109
110 // Theoretical Flags
111 UnknownFlag_C = 0x4000,
112 UnknownFlag_D = 0x8000
113 }

◆ EntryResultLoadFlags

117 {
118 None = 0x00,
119 Single = 0x01,
120 PerColor = 0x02
121 }

◆ FinalLoadFlags

143 {
144 None = 0x00,
145 Single = 0x01,
146 PerColor = 0x02,
147 UseFitFoxFinal = 0x03
148 }

◆ FinalLoadFlagsV1

134 {
135 None = 0x01,
136 Single = 0x00,
137 PerColor = 0x02,
138 UseFitFoxFinal = 0x03
139 }

◆ KirbyLoadFlags

126 {
127 None = 0x00,
128 Single = 0x02,
129 PerColor = 0x01
130 }

◆ MotionEtcTypes

724 {
725 SingleSeparate,
726 SingleMerged,
727 PerCostumeSeparate,
728 PerCostumeSet
729 }

Member Function Documentation

◆ OnCalculateSize()

override int BrawlLib.SSBB.ResourceNodes.FCFGNode.OnCalculateSize ( bool  force)
inlinevirtual

Reimplemented from BrawlLib.SSBB.ResourceNodes.ResourceNode.

1090 {
1091 return FCFG.Size;
1092 }
const int Size
Definition: FCFG.cs:11

◆ OnInitialize()

override bool BrawlLib.SSBB.ResourceNodes.FCFGNode.OnInitialize ( )
inlinevirtual

Reimplemented from BrawlLib.SSBB.ResourceNodes.ResourceNode.

1207 {
1208 _tag = Header->_tag;
1209 _size = Header->_size;
1210 _version = Header->_version;
1211 _editFlag1 = Header->_editFlag1;
1212 _editFlag2 = Header->_editFlag2;
1213 _editFlag3 = Header->_editFlag3;
1214 _editFlag4 = Header->_editFlag4;
1220 if (_version == 1) // None and Single Final Smash Load Flags were switched in v1, correct here
1221 {
1223 {
1225 }
1227 {
1229 }
1230 }
1231 _unknown0x15 = Header->_unknown0x15;
1232 _colorFlags = (CostumeLoadFlags) (ushort) Header->_colorFlags;
1234 _soundbank = Header->_soundbank;
1236 _unknown0x24 = Header->_unknown0x24;
1237 _unknown0x28 = Header->_unknown0x28;
1238 _unknown0x2C = Header->_unknown0x2C;
1239
1240 for (int i = 0; i < _pacNameArray.Length; i++)
1241 {
1242 _pacNameArray[i] = Header->_pacNameArray[i];
1243 }
1244
1245 for (int i = 0; i < _kirbyPacNameArray.Length; i++)
1246 {
1247 _kirbyPacNameArray[i] = Header->_kirbyPacNameArray[i];
1248 }
1249
1250 for (int i = 0; i < _moduleNameArray.Length; i++)
1251 {
1252 _moduleNameArray[i] = Header->_moduleNameArray[i];
1253 }
1254
1255 for (int i = 0; i < _internalNameArray.Length; i++)
1256 {
1257 _internalNameArray[i] = Header->_internalNameArray[i];
1258 }
1259
1260 _pacName = Encoding.UTF8.GetString(_pacNameArray)
1261 .Substring(0, Encoding.UTF8.GetString(_pacNameArray).IndexOf('\0'))
1262 .TrimEnd('\0');
1263 _kirbyPacName = Encoding.UTF8.GetString(_kirbyPacNameArray)
1264 .Substring(0, Encoding.UTF8.GetString(_kirbyPacNameArray).IndexOf('\0'))
1265 .TrimEnd('\0');
1266 _moduleName = Encoding.UTF8.GetString(_moduleNameArray)
1267 .Substring(0, Encoding.UTF8.GetString(_moduleNameArray).IndexOf('\0'))
1268 .TrimEnd('\0');
1269 _internalName = Encoding.UTF8.GetString(_internalNameArray)
1270 .Substring(0, Encoding.UTF8.GetString(_internalNameArray).IndexOf('\0'))
1271 .TrimEnd('\0');
1272 try
1273 {
1274 if (_pacName.ToUpper().LastIndexOf(".PAC") > 0 && _pacName.ToUpper().Contains("/FIT"))
1275 {
1276 _fighterName = _pacName.Substring(_pacName.ToUpper().LastIndexOf("/FIT") + 4,
1277 _pacName.ToUpper().LastIndexOf(".PAC") - (_pacName.ToUpper().LastIndexOf("/FIT") + 4));
1278 }
1279 else
1280 {
1282 }
1283 }
1284 catch
1285 {
1287 }
1288
1289 if (Encoding.UTF8.GetString(_pacNameArray).ToUpper().TrimEnd('\0').EndsWith("\0X"))
1290 {
1291 _hasPac = false;
1292 }
1293
1294 if (Encoding.UTF8.GetString(_kirbyPacNameArray).ToUpper().TrimEnd('\0').EndsWith("\0X"))
1295 {
1296 _hasKirbyHat = false;
1297 }
1298
1299 if (Encoding.UTF8.GetString(_moduleNameArray).ToUpper().TrimEnd('\0').EndsWith("\0X"))
1300 {
1301 _hasModule = false;
1302 }
1303
1304 if (Encoding.UTF8.GetString(_internalNameArray).ToUpper().TrimEnd('\0').EndsWith("\0X"))
1305 {
1306 _hasInternalName = false;
1307 }
1308
1309 _jabFlag = Header->_jabFlag;
1310 _jabCount = Header->_jabCount;
1311 _hasRapidJab = Header->_hasRapidJab;
1312 _canTilt = Header->_canTilt;
1313 _fSmashCount = Header->_fSmashCount;
1314 _airJumpCount = Header->_airJumpCount;
1315 _canGlide = Header->_canGlide;
1316 _canCrawl = Header->_canCrawl;
1318 _canWallJump = Header->_canWallJump;
1319 _canCling = Header->_canCling;
1320 _canZAir = Header->_canZAir;
1321 _u12Flag = Header->_u12Flag;
1322 _u13Flag = Header->_u13Flag;
1323
1324 _textureLoad = Header->_textureLoad;
1325 _aiController = Header->_aiController;
1326
1327 if (_name == null && _origPath != null)
1328 {
1329 _name = Path.GetFileNameWithoutExtension(_origPath);
1330 }
1331
1332 return false;
1333 }
FinalLoadFlags
Definition: FCFGNode.cs:143
byte _entryColorFlags
Definition: FCFGNode.cs:23
bool _hasPac
Definition: FCFGNode.cs:692
uint _version
Definition: FCFGNode.cs:17
byte _editFlag3
Definition: FCFGNode.cs:20
string _kirbyPacName
Definition: FCFGNode.cs:52
uint _unknown0x24
Definition: FCFGNode.cs:32
uint _jabCount
Definition: FCFGNode.cs:58
byte[] _kirbyPacNameArray
Definition: FCFGNode.cs:41
uint _jabFlag
Definition: FCFGNode.cs:57
uint _fSmashCount
Definition: FCFGNode.cs:61
bool _hasModule
Definition: FCFGNode.cs:707
byte _kirbyCopyColorFlags
Definition: FCFGNode.cs:22
uint _kirbySoundbank
Definition: FCFGNode.cs:31
CostumeLoadFlags
Definition: FCFGNode.cs:93
string _fighterName
Definition: FCFGNode.cs:50
bool _hasKirbyHat
Definition: FCFGNode.cs:859
uint _dashAttackIntoCrouch
Definition: FCFGNode.cs:65
FinalLoadFlagsV1
Definition: FCFGNode.cs:134
CharacterLoadFlags
Definition: FCFGNode.cs:78
byte[] _moduleNameArray
Definition: FCFGNode.cs:45
uint _unknown0x2C
Definition: FCFGNode.cs:34
byte _editFlag2
Definition: FCFGNode.cs:19
uint _unknown0x28
Definition: FCFGNode.cs:33
uint _soundbank
Definition: FCFGNode.cs:30
string _moduleName
Definition: FCFGNode.cs:53
uint _hasRapidJab
Definition: FCFGNode.cs:59
uint _canCling
Definition: FCFGNode.cs:67
uint _canCrawl
Definition: FCFGNode.cs:64
CharacterLoadFlags _characterLoadFlags
Definition: FCFGNode.cs:25
uint _size
Definition: FCFGNode.cs:16
byte _unknown0x15
Definition: FCFGNode.cs:27
uint _u13Flag
Definition: FCFGNode.cs:70
byte _editFlag4
Definition: FCFGNode.cs:21
byte _editFlag1
Definition: FCFGNode.cs:18
uint _tag
Definition: FCFGNode.cs:15
uint _canWallJump
Definition: FCFGNode.cs:66
uint _canGlide
Definition: FCFGNode.cs:63
bool _hasInternalName
Definition: FCFGNode.cs:259
uint _canZAir
Definition: FCFGNode.cs:68
uint _u12Flag
Definition: FCFGNode.cs:69
uint _textureLoad
Definition: FCFGNode.cs:72
byte[] _internalNameArray
Definition: FCFGNode.cs:47
CostumeLoadFlags _colorFlags
Definition: FCFGNode.cs:28
byte[] _pacNameArray
Definition: FCFGNode.cs:38
uint _airJumpCount
Definition: FCFGNode.cs:62
byte _finalSmashColorFlags
Definition: FCFGNode.cs:26
uint _entryArticleFlag
Definition: FCFGNode.cs:29
uint _aiController
Definition: FCFGNode.cs:73
string _pacName
Definition: FCFGNode.cs:51
uint _canTilt
Definition: FCFGNode.cs:60
string _internalName
Definition: FCFGNode.cs:54
byte _resultColorFlags
Definition: FCFGNode.cs:24
string _origPath
Definition: ResourceNode.cs:139
string _name
Definition: ResourceNode.cs:139
buint _jabFlag
Definition: FCFG.cs:44
buint _textureLoad
Definition: FCFG.cs:62
buint _canCrawl
Definition: FCFG.cs:51
uint _unknown0x2C
Definition: FCFG.cs:31
uint _unknown0x28
Definition: FCFG.cs:30
fixed byte _pacNameArray[48]
Definition: FCFG.cs:35
buint _soundbank
Definition: FCFG.cs:27
byte _editFlag4
Definition: FCFG.cs:18
buint _version
Definition: FCFG.cs:14
fixed byte _internalNameArray[16]
Definition: FCFG.cs:41
fixed byte _moduleNameArray[32]
Definition: FCFG.cs:40
buint _jabCount
Definition: FCFG.cs:45
buint _canTilt
Definition: FCFG.cs:47
buint _size
Definition: FCFG.cs:13
buint _aiController
Definition: FCFG.cs:63
byte _finalSmashColorFlags
Definition: FCFG.cs:23
bushort _colorFlags
Definition: FCFG.cs:25
buint _fSmashCount
Definition: FCFG.cs:48
buint _canZAir
Definition: FCFG.cs:58
fixed byte _kirbyPacNameArray[48]
Definition: FCFG.cs:38
buint _u13Flag
Definition: FCFG.cs:60
byte _kirbyCopyColorFlags
Definition: FCFG.cs:19
byte _entryColorFlags
Definition: FCFG.cs:20
byte _characterLoadFlags
Definition: FCFG.cs:22
buint _kirbySoundbank
Definition: FCFG.cs:28
byte _editFlag1
Definition: FCFG.cs:15
buint _u12Flag
Definition: FCFG.cs:59
buint _canCling
Definition: FCFG.cs:57
uint _tag
Definition: FCFG.cs:12
buint _dashAttackIntoCrouch
Definition: FCFG.cs:54
buint _entryArticleFlag
Definition: FCFG.cs:26
uint _unknown0x24
Definition: FCFG.cs:29
buint _airJumpCount
Definition: FCFG.cs:49
buint _hasRapidJab
Definition: FCFG.cs:46
byte _unknown0x15
Definition: FCFG.cs:24
buint _canGlide
Definition: FCFG.cs:50
byte _editFlag2
Definition: FCFG.cs:16
byte _resultColorFlags
Definition: FCFG.cs:21
byte _editFlag3
Definition: FCFG.cs:17
buint _canWallJump
Definition: FCFG.cs:56

◆ OnRebuild()

override void BrawlLib.SSBB.ResourceNodes.FCFGNode.OnRebuild ( VoidPtr  address,
int  length,
bool  force 
)
inlinevirtual

Reimplemented from BrawlLib.SSBB.ResourceNodes.ResourceNode.

1095 {
1096 FCFG* hdr = (FCFG*) address;
1097 hdr->_tag = _tag;
1098 hdr->_size = _size;
1099 hdr->_version = _version;
1100 hdr->_editFlag1 = _editFlag1;
1101 hdr->_editFlag2 = _editFlag2;
1102 hdr->_editFlag3 = _editFlag3;
1103 hdr->_editFlag4 = _editFlag4;
1109 if (_version == 1) // None and Single Final Smash Load Flags were switched in v1, correct here
1110 {
1112 {
1113 case FinalLoadFlags.Single:
1114 hdr->_finalSmashColorFlags = (byte)FinalLoadFlagsV1.Single;
1115 break;
1116 case FinalLoadFlags.None:
1117 hdr->_finalSmashColorFlags = (byte)FinalLoadFlagsV1.None;
1118 break;
1119 }
1120 }
1122 hdr->_colorFlags = (ushort) _colorFlags;
1124 hdr->_soundbank = _soundbank;
1129
1130 for (int i = 0; i < 48; i++)
1131 {
1132 hdr->_pacNameArray[i] = 0x00;
1133 hdr->_kirbyPacNameArray[i] = 0x00;
1134 if (i < 32)
1135 {
1136 hdr->_moduleNameArray[i] = 0x00;
1137 }
1138
1139 if (i < 16)
1140 {
1141 hdr->_internalNameArray[i] = 0x00;
1142 }
1143 }
1144
1145 _pacNameArray = Encoding.UTF8.GetBytes(_pacName);
1146 _kirbyPacNameArray = Encoding.UTF8.GetBytes(_kirbyPacName);
1147 _moduleNameArray = Encoding.UTF8.GetBytes(_moduleName);
1148 _internalNameArray = Encoding.UTF8.GetBytes(_internalName);
1149
1150 for (int i = 0; i < _pacNameArray.Length; i++)
1151 {
1152 hdr->_pacNameArray[i] = _pacNameArray[i];
1153 }
1154
1155 for (int i = 0; i < _kirbyPacNameArray.Length; i++)
1156 {
1158 }
1159
1160 for (int i = 0; i < _moduleNameArray.Length; i++)
1161 {
1163 }
1164
1165 for (int i = 0; i < _internalNameArray.Length; i++)
1166 {
1168 }
1169
1170 if (!HasPac && _pacName.Length < 48)
1171 {
1172 hdr->_pacNameArray[_pacName.Length + 1] = 0x78;
1173 }
1174
1175 if (!HasKirbyHat && _kirbyPacName.Length < 48)
1176 {
1177 hdr->_kirbyPacNameArray[_kirbyPacName.Length + 1] = 0x78;
1178 }
1179
1180 if (!HasModule && _moduleName.Length < 32)
1181 {
1182 hdr->_moduleNameArray[_moduleName.Length + 1] = 0x78;
1183 }
1184 // Seemingly unused
1185 /*if (!HasInternalName)
1186 hdr->_internalNameArray[_internalName.Length + 1] = 0x78;*/
1187
1188 hdr->_jabFlag = _jabFlag;
1189 hdr->_jabCount = _jabCount;
1191 hdr->_canTilt = _canTilt;
1194 hdr->_canGlide = _canGlide;
1195 hdr->_canCrawl = _canCrawl;
1198 hdr->_canCling = _canCling;
1199 hdr->_canZAir = _canZAir;
1200 hdr->_u12Flag = _u12Flag;
1201 hdr->_u13Flag = _u13Flag;
1204 }
bool HasPac
Definition: FCFGNode.cs:698
bool HasKirbyHat
Definition: FCFGNode.cs:867
bool HasModule
Definition: FCFGNode.cs:713

Member Data Documentation

◆ _aiController

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._aiController

◆ _airJumpCount

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._airJumpCount

◆ _canCling

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._canCling

◆ _canCrawl

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._canCrawl

◆ _canGlide

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._canGlide

◆ _canTilt

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._canTilt

◆ _canWallJump

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._canWallJump

◆ _canZAir

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._canZAir

◆ _characterLoadFlags

CharacterLoadFlags BrawlLib.SSBB.ResourceNodes.FCFGNode._characterLoadFlags

◆ _colorFlags

CostumeLoadFlags BrawlLib.SSBB.ResourceNodes.FCFGNode._colorFlags

◆ _dashAttackIntoCrouch

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._dashAttackIntoCrouch

◆ _editFlag1

byte BrawlLib.SSBB.ResourceNodes.FCFGNode._editFlag1

◆ _editFlag2

byte BrawlLib.SSBB.ResourceNodes.FCFGNode._editFlag2

◆ _editFlag3

byte BrawlLib.SSBB.ResourceNodes.FCFGNode._editFlag3

◆ _editFlag4

byte BrawlLib.SSBB.ResourceNodes.FCFGNode._editFlag4

◆ _entryArticleFlag

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._entryArticleFlag

◆ _entryColorFlags

byte BrawlLib.SSBB.ResourceNodes.FCFGNode._entryColorFlags

◆ _fighterName

string BrawlLib.SSBB.ResourceNodes.FCFGNode._fighterName

◆ _finalSmashColorFlags

byte BrawlLib.SSBB.ResourceNodes.FCFGNode._finalSmashColorFlags

◆ _fSmashCount

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._fSmashCount

◆ _hasInternalName

bool BrawlLib.SSBB.ResourceNodes.FCFGNode._hasInternalName = true

◆ _hasKirbyHat

bool BrawlLib.SSBB.ResourceNodes.FCFGNode._hasKirbyHat = true

◆ _hasModule

bool BrawlLib.SSBB.ResourceNodes.FCFGNode._hasModule = true

◆ _hasPac

bool BrawlLib.SSBB.ResourceNodes.FCFGNode._hasPac = true

◆ _hasRapidJab

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._hasRapidJab

◆ _internalName

string BrawlLib.SSBB.ResourceNodes.FCFGNode._internalName

◆ _internalNameArray

byte [] BrawlLib.SSBB.ResourceNodes.FCFGNode._internalNameArray = new byte[16]

◆ _jabCount

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._jabCount

◆ _jabFlag

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._jabFlag

◆ _kirbyCopyColorFlags

byte BrawlLib.SSBB.ResourceNodes.FCFGNode._kirbyCopyColorFlags

◆ _kirbyPacName

string BrawlLib.SSBB.ResourceNodes.FCFGNode._kirbyPacName

◆ _kirbyPacNameArray

byte [] BrawlLib.SSBB.ResourceNodes.FCFGNode._kirbyPacNameArray
Initial value:
=
new byte[48]

◆ _kirbySoundbank

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._kirbySoundbank

◆ _moduleName

string BrawlLib.SSBB.ResourceNodes.FCFGNode._moduleName

◆ _moduleNameArray

byte [] BrawlLib.SSBB.ResourceNodes.FCFGNode._moduleNameArray = new byte[32]

◆ _pacName

string BrawlLib.SSBB.ResourceNodes.FCFGNode._pacName

◆ _pacNameArray

byte [] BrawlLib.SSBB.ResourceNodes.FCFGNode._pacNameArray = new byte[48]

◆ _resultColorFlags

byte BrawlLib.SSBB.ResourceNodes.FCFGNode._resultColorFlags

◆ _size

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._size

◆ _soundbank

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._soundbank

◆ _tag

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._tag

◆ _textureLoad

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._textureLoad

◆ _u12Flag

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._u12Flag

◆ _u13Flag

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._u13Flag

◆ _unknown0x15

byte BrawlLib.SSBB.ResourceNodes.FCFGNode._unknown0x15

◆ _unknown0x24

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._unknown0x24

◆ _unknown0x28

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._unknown0x28

◆ _unknown0x2C

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._unknown0x2C

◆ _version

uint BrawlLib.SSBB.ResourceNodes.FCFGNode._version

Property Documentation

◆ AIController

uint BrawlLib.SSBB.ResourceNodes.FCFGNode.AIController
getset
996 {
997 get => _aiController;
998 set
999 {
1000 _aiController = value;
1002 }
1003 }
virtual void SignalPropertyChange()
Definition: ResourceNode.cs:313

◆ AirJumpCount

AirJumpFlags BrawlLib.SSBB.ResourceNodes.FCFGNode.AirJumpCount
getset
402 {
404 set
405 {
406 _airJumpCount = (uint) value;
408 }
409 }
AirJumpFlags
Definition: FCFGNode.cs:152

◆ AutoInternalFighterName

string BrawlLib.SSBB.ResourceNodes.FCFGNode.AutoInternalFighterName
get

◆ AutoKirbyPacName

string BrawlLib.SSBB.ResourceNodes.FCFGNode.AutoKirbyPacName
get

◆ AutoModuleName

string BrawlLib.SSBB.ResourceNodes.FCFGNode.AutoModuleName
get

◆ AutoPacName

string BrawlLib.SSBB.ResourceNodes.FCFGNode.AutoPacName
get

◆ CanCrawl

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.CanCrawl
getset
323 {
324 get => Convert.ToBoolean(_canCrawl);
325 set
326 {
327 _canCrawl = Convert.ToUInt32(value);
329 }
330 }

◆ CanFTilt

byte BrawlLib.SSBB.ResourceNodes.FCFGNode.CanFTilt
getset
336 {
337 get => Convert.ToByte(_canTilt);
338 set
339 {
340 _canTilt = Convert.ToUInt32(value);
342 }
343 }

◆ CanGlide

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.CanGlide
getset
349 {
350 get => Convert.ToBoolean(_canGlide);
351 set
352 {
353 _canGlide = Convert.ToUInt32(value);
355 }
356 }

◆ CanWallCling

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.CanWallCling
getset
362 {
363 get => Convert.ToBoolean(_canCling);
364 set
365 {
366 _canCling = Convert.ToUInt32(value);
368 }
369 }

◆ CanWallJump

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.CanWallJump
getset
375 {
376 get => Convert.ToBoolean(_canWallJump);
377 set
378 {
379 _canWallJump = Convert.ToUInt32(value);
381 }
382 }

◆ CanZAir

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.CanZAir
getset
388 {
389 get => Convert.ToBoolean(_canZAir);
390 set
391 {
392 _canZAir = Convert.ToUInt32(value);
394 }
395 }

◆ DAIntoCrouch

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.DAIntoCrouch
getset
415 {
416 get => Convert.ToBoolean(_dashAttackIntoCrouch);
417 set
418 {
419 _dashAttackIntoCrouch = Convert.ToUInt32(value);
421 }
422 }

◆ EntryFlag

uint BrawlLib.SSBB.ResourceNodes.FCFGNode.EntryFlag
getset
1010 {
1011 get => _entryArticleFlag;
1012 set
1013 {
1014 _entryArticleFlag = value;
1016 }
1017 }

◆ EntryLoadType

EntryResultLoadFlags BrawlLib.SSBB.ResourceNodes.FCFGNode.EntryLoadType
getset
834 {
836 set
837 {
838 _entryColorFlags = (byte) value;
840 }
841 }
EntryResultLoadFlags
Definition: FCFGNode.cs:117

◆ FighterName

string BrawlLib.SSBB.ResourceNodes.FCFGNode.FighterName
getset
163 {
164 get => _fighterName;
165 set
166 {
167 if (value.Length > 0)
168 {
169 if (value.Length <= 16)
170 {
171 _fighterName = value;
172 }
173 else
174 {
175 _fighterName = value.Substring(0, 16);
176 }
177
183 }
184 }
185 }
string AutoKirbyPacName
Definition: FCFGNode.cs:307
string AutoPacName
Definition: FCFGNode.cs:302
string AutoModuleName
Definition: FCFGNode.cs:312
string AutoInternalFighterName
Definition: FCFGNode.cs:317

◆ FinalLoadType

FinalLoadFlags BrawlLib.SSBB.ResourceNodes.FCFGNode.FinalLoadType
getset
932 {
934 set
935 {
936 _finalSmashColorFlags = (byte) value;
937 if (_finalSmashColorFlags == 0x00)
938 {
939 LoadFitFinal = false;
940 }
941 else
942 {
943 LoadFitFinal = true;
944 }
945
947 }
948 }
bool LoadFitFinal
Definition: FCFGNode.cs:916

◆ FinalSmashMusic

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.FinalSmashMusic
getset
954 {
955 get => (_characterLoadFlags & CharacterLoadFlags.FinalSmashMusicOffFlag) != 0;
956 set
957 {
958 _characterLoadFlags = (_characterLoadFlags & ~CharacterLoadFlags.FinalSmashMusicOffFlag) |
959 (value ? CharacterLoadFlags.FinalSmashMusicOffFlag : 0);
961 }
962 }

◆ FSmashCount

uint BrawlLib.SSBB.ResourceNodes.FCFGNode.FSmashCount
getset
428 {
429 get => _fSmashCount;
430 set
431 {
432 _fSmashCount = value;
434 }
435 }

◆ HasCostume00

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume00
getset
481 {
482 get => (_colorFlags & CostumeLoadFlags.CostumeFlag00) != 0;
483 set
484 {
485 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag00) |
486 (value ? CostumeLoadFlags.CostumeFlag00 : 0);
488 }
489 }

◆ HasCostume01

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume01
getset
494 {
495 get => (_colorFlags & CostumeLoadFlags.CostumeFlag01) != 0;
496 set
497 {
498 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag01) |
499 (value ? CostumeLoadFlags.CostumeFlag01 : 0);
501 }
502 }

◆ HasCostume02

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume02
getset
507 {
508 get => (_colorFlags & CostumeLoadFlags.CostumeFlag02) != 0;
509 set
510 {
511 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag02) |
512 (value ? CostumeLoadFlags.CostumeFlag02 : 0);
514 }
515 }

◆ HasCostume03

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume03
getset
520 {
521 get => (_colorFlags & CostumeLoadFlags.CostumeFlag03) != 0;
522 set
523 {
524 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag03) |
525 (value ? CostumeLoadFlags.CostumeFlag03 : 0);
527 }
528 }

◆ HasCostume04

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume04
getset
533 {
534 get => (_colorFlags & CostumeLoadFlags.CostumeFlag04) != 0;
535 set
536 {
537 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag04) |
538 (value ? CostumeLoadFlags.CostumeFlag04 : 0);
540 }
541 }

◆ HasCostume05

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume05
getset
546 {
547 get => (_colorFlags & CostumeLoadFlags.CostumeFlag05) != 0;
548 set
549 {
550 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag05) |
551 (value ? CostumeLoadFlags.CostumeFlag05 : 0);
553 }
554 }

◆ HasCostume06

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume06
getset
559 {
560 get => (_colorFlags & CostumeLoadFlags.CostumeFlag06) != 0;
561 set
562 {
563 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag06) |
564 (value ? CostumeLoadFlags.CostumeFlag06 : 0);
566 }
567 }

◆ HasCostume07

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume07
getset
572 {
573 get => (_colorFlags & CostumeLoadFlags.CostumeFlag07) != 0;
574 set
575 {
576 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag07) |
577 (value ? CostumeLoadFlags.CostumeFlag07 : 0);
579 }
580 }

◆ HasCostume08

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume08
getset
585 {
586 get => (_colorFlags & CostumeLoadFlags.CostumeFlag08) != 0;
587 set
588 {
589 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag08) |
590 (value ? CostumeLoadFlags.CostumeFlag08 : 0);
592 }
593 }

◆ HasCostume09

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume09
getset
598 {
599 get => (_colorFlags & CostumeLoadFlags.CostumeFlag09) != 0;
600 set
601 {
602 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag09) |
603 (value ? CostumeLoadFlags.CostumeFlag09 : 0);
605 }
606 }

◆ HasCostume10

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume10
getset
611 {
612 get => (_colorFlags & CostumeLoadFlags.CostumeFlag10) != 0;
613 set
614 {
615 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag10) |
616 (value ? CostumeLoadFlags.CostumeFlag10 : 0);
618 }
619 }

◆ HasCostume11

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasCostume11
getset
624 {
625 get => (_colorFlags & CostumeLoadFlags.CostumeFlag11) != 0;
626 set
627 {
628 _colorFlags = (_colorFlags & ~CostumeLoadFlags.CostumeFlag11) |
629 (value ? CostumeLoadFlags.CostumeFlag11 : 0);
631 }
632 }

◆ HasInternalName

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasInternalName
getset
266 {
267 get => _hasInternalName;
268 set
269 {
270 _hasInternalName = value;
272 }
273 }

◆ HasKirbyHat

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasKirbyHat
getset
867 {
868 get => _hasKirbyHat;
869 set
870 {
871 _hasKirbyHat = value;
873 }
874 }

◆ HasModule

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasModule
getset
713 {
714 get => _hasModule;
715 set
716 {
717 _hasModule = value;
719 }
720 }

◆ HasPac

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasPac
getset
698 {
699 get => _hasPac;
700 set
701 {
702 _hasPac = value;
704 }
705 }

◆ HasRapidJab

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.HasRapidJab
getset
441 {
442 get => Convert.ToBoolean(_hasRapidJab);
443 set
444 {
445 _hasRapidJab = Convert.ToUInt32(value);
447 }
448 }

◆ IkPhysics

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.IkPhysics
getset
1023 {
1024 get => (_characterLoadFlags & CharacterLoadFlags.IkPhysicsFlag) != 0;
1025 set
1026 {
1027 _characterLoadFlags = (_characterLoadFlags & ~CharacterLoadFlags.IkPhysicsFlag) |
1028 (value ? CharacterLoadFlags.IkPhysicsFlag : 0);
1030 }
1031 }

◆ InternalFighterName

string BrawlLib.SSBB.ResourceNodes.FCFGNode.InternalFighterName
getset
279 {
280 get => _internalName;
281 set
282 {
283 if (value.Length > 0)
284 {
285 if (value.Length <= 16)
286 {
287 _internalName = value;
288 }
289 else
290 {
291 _internalName = value.Substring(0, 16);
292 }
293
295 }
296 }
297 }

◆ JabCount

uint BrawlLib.SSBB.ResourceNodes.FCFGNode.JabCount
getset
455 {
456 get => _jabCount;
457 set
458 {
459 _jabCount = value;
461 }
462 }

◆ JabFlag

uint BrawlLib.SSBB.ResourceNodes.FCFGNode.JabFlag
getset
469 {
470 get => _jabFlag;
471 set
472 {
473 _jabFlag = value;
475 }
476 }

◆ KirbyLoadType

KirbyLoadFlags BrawlLib.SSBB.ResourceNodes.FCFGNode.KirbyLoadType
getset
882 {
884 set
885 {
886 _kirbyCopyColorFlags = (byte) value;
887 if (_kirbyCopyColorFlags == 0x00)
888 {
889 HasKirbyHat = false;
890 }
891 else
892 {
893 HasKirbyHat = true;
894 }
895
897 }
898 }
KirbyLoadFlags
Definition: FCFGNode.cs:126

◆ KirbyPacName

string BrawlLib.SSBB.ResourceNodes.FCFGNode.KirbyPacName
getset
215 {
216 get => _kirbyPacName;
217 set
218 {
219 if (value.Length > 0)
220 {
221 if (value.Length <= 46)
222 {
223 _kirbyPacName = value;
224 }
225 else
226 {
227 _kirbyPacName = value.Substring(0, 46);
228 }
229
231 }
232 }
233 }

◆ KirbySoundBank

uint BrawlLib.SSBB.ResourceNodes.FCFGNode.KirbySoundBank
getset
983 {
984 get => _kirbySoundbank;
985 set
986 {
987 _kirbySoundbank = value;
989 }
990 }

◆ LoadFitFinal

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.LoadFitFinal
getset
916 {
917 get => (_characterLoadFlags & CharacterLoadFlags.FinalSmashFilesFlag) != 0;
918 set
919 {
920 _characterLoadFlags = (_characterLoadFlags & ~CharacterLoadFlags.FinalSmashFilesFlag) |
921 (value ? CharacterLoadFlags.FinalSmashFilesFlag : 0);
923 }
924 }

◆ MergeMotionEtc

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.MergeMotionEtc
getset
773 {
774 get => (_characterLoadFlags & CharacterLoadFlags.MergeMotionEtcFlag) != 0;
775 set
776 {
777 _characterLoadFlags = (_characterLoadFlags & ~CharacterLoadFlags.MergeMotionEtcFlag) |
778 (value ? CharacterLoadFlags.MergeMotionEtcFlag : 0);
780 }
781 }

◆ ModuleName

string BrawlLib.SSBB.ResourceNodes.FCFGNode.ModuleName
getset
239 {
240 get => _moduleName;
241 set
242 {
243 if (value.Length > 0)
244 {
245 if (value.Length <= 30)
246 {
247 _moduleName = value;
248 }
249 else
250 {
251 _moduleName = value.Substring(0, 30);
252 }
253
255 }
256 }
257 }

◆ MotionEtcType

MotionEtcTypes BrawlLib.SSBB.ResourceNodes.FCFGNode.MotionEtcType
getset
738 {
739 get => PerCostumeEtc ?
740 (MergeMotionEtc ? MotionEtcTypes.PerCostumeSet : MotionEtcTypes.PerCostumeSeparate) :
741 (MergeMotionEtc ? MotionEtcTypes.SingleMerged : MotionEtcTypes.SingleSeparate);
742 set
743 {
744 switch (value)
745 {
746 case MotionEtcTypes.SingleSeparate:
747 MergeMotionEtc = false;
748 PerCostumeEtc = false;
749 break;
750 case MotionEtcTypes.SingleMerged:
751 MergeMotionEtc = true;
752 PerCostumeEtc = false;
753 break;
754 case MotionEtcTypes.PerCostumeSeparate:
755 MergeMotionEtc = false;
756 PerCostumeEtc = true;
757 break;
758 case MotionEtcTypes.PerCostumeSet:
759 MergeMotionEtc = true;
760 PerCostumeEtc = true;
761 break;
762 }
763 }
764 }
MotionEtcTypes
Definition: FCFGNode.cs:724
bool MergeMotionEtc
Definition: FCFGNode.cs:773

◆ PacName

string BrawlLib.SSBB.ResourceNodes.FCFGNode.PacName
getset
191 {
192 get => _pacName;
193 set
194 {
195 if (value.Length > 0)
196 {
197 if (value.Length <= 46)
198 {
199 _pacName = value;
200 }
201 else
202 {
203 _pacName = value.Substring(0, 46);
204 }
205
207 }
208 }
209 }

◆ PerCostumeEtc

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.PerCostumeEtc
getset
790 {
791 get => (_characterLoadFlags & CharacterLoadFlags.PerCostumeEtc) != 0;
792 set
793 {
794 _characterLoadFlags = (_characterLoadFlags & ~CharacterLoadFlags.PerCostumeEtc) |
795 (value ? CharacterLoadFlags.PerCostumeEtc : 0);
797 }
798 }

◆ ResourceFileType

override ResourceType BrawlLib.SSBB.ResourceNodes.FCFGNode.ResourceFileType
get

◆ ResultLoadType

EntryResultLoadFlags BrawlLib.SSBB.ResourceNodes.FCFGNode.ResultLoadType
getset
849 {
851 set
852 {
853 _resultColorFlags = (byte) value;
855 }
856 }

◆ SoundBank

uint BrawlLib.SSBB.ResourceNodes.FCFGNode.SoundBank
getset
969 {
970 get => _soundbank;
971 set
972 {
973 _soundbank = value;
975 }
976 }

◆ TextureLoader

uint BrawlLib.SSBB.ResourceNodes.FCFGNode.TextureLoader
getset
1038 {
1039 get => _textureLoad;
1040 set
1041 {
1042 _textureLoad = value;
1044 }
1045 }

◆ U12Flag

uint BrawlLib.SSBB.ResourceNodes.FCFGNode.U12Flag
getset
1052 {
1053 get => _u12Flag;
1054 set
1055 {
1056 _u12Flag = value;
1058 }
1059 }

◆ U13Flag

uint BrawlLib.SSBB.ResourceNodes.FCFGNode.U13Flag
getset
1066 {
1067 get => _u13Flag;
1068 set
1069 {
1070 _u13Flag = value;
1072 }
1073 }

◆ UnknownFlagA

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.UnknownFlagA
getset
638 {
639 get => (_colorFlags & CostumeLoadFlags.UnknownFlag_A) != 0;
640 set
641 {
642 _colorFlags = (_colorFlags & ~CostumeLoadFlags.UnknownFlag_A) |
643 (value ? CostumeLoadFlags.UnknownFlag_A : 0);
645 }
646 }

◆ UnknownFlagB

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.UnknownFlagB
getset
652 {
653 get => (_colorFlags & CostumeLoadFlags.UnknownFlag_B) != 0;
654 set
655 {
656 _colorFlags = (_colorFlags & ~CostumeLoadFlags.UnknownFlag_B) |
657 (value ? CostumeLoadFlags.UnknownFlag_B : 0);
659 }
660 }

◆ UnknownFlagC

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.UnknownFlagC
getset
667 {
668 get => (_colorFlags & CostumeLoadFlags.UnknownFlag_C) != 0;
669 set
670 {
671 _colorFlags = (_colorFlags & ~CostumeLoadFlags.UnknownFlag_C) |
672 (value ? CostumeLoadFlags.UnknownFlag_C : 0);
674 }
675 }

◆ UnknownFlagD

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.UnknownFlagD
getset
682 {
683 get => (_colorFlags & CostumeLoadFlags.UnknownFlag_D) != 0;
684 set
685 {
686 _colorFlags = (_colorFlags & ~CostumeLoadFlags.UnknownFlag_D) |
687 (value ? CostumeLoadFlags.UnknownFlag_D : 0);
689 }
690 }

◆ UnknownLoadFlagA

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.UnknownLoadFlagA
getset
804 {
805 get => (_characterLoadFlags & CharacterLoadFlags.UnknownFlag_A) != 0;
806 set
807 {
808 _characterLoadFlags = (_characterLoadFlags & ~CharacterLoadFlags.UnknownFlag_A) |
809 (value ? CharacterLoadFlags.UnknownFlag_A : 0);
811 }
812 }

◆ UnknownLoadFlagB

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.UnknownLoadFlagB
getset
818 {
819 get => (_characterLoadFlags & CharacterLoadFlags.UnknownFlag_B) != 0;
820 set
821 {
822 _characterLoadFlags = (_characterLoadFlags & ~CharacterLoadFlags.UnknownFlag_B) |
823 (value ? CharacterLoadFlags.UnknownFlag_B : 0);
825 }
826 }

◆ Version

uint BrawlLib.SSBB.ResourceNodes.FCFGNode.Version
getset
902 {
903 get => _version;
904 set
905 {
906 _version = value;
908 }
909 }

◆ WorkManage

bool BrawlLib.SSBB.ResourceNodes.FCFGNode.WorkManage
getset
1079 {
1080 get => (_characterLoadFlags & CharacterLoadFlags.WorkManageFlag) != 0;
1081 set
1082 {
1083 _characterLoadFlags = (_characterLoadFlags & ~CharacterLoadFlags.WorkManageFlag) |
1084 (value ? CharacterLoadFlags.WorkManageFlag : 0);
1086 }
1087 }

The documentation for this class was generated from the following file: