219 {
220 #region Populate
221
223 {
224 int commonActionFlagsCount = 0;
225 int actionFlagsCount = 0;
226 int totalActionCount = 0;
227 List<int> ActionOffsets;
228
229 MoveDefActionListNode subActions =
230 new MoveDefActionListNode {
_name =
"SubAction Scripts",
_parent =
this},
231 actions =
new MoveDefActionListNode {
_name =
"Action Scripts",
_parent =
this};
232
234
235
236 for (int i = 9; i < 11; i++)
237 {
239 ActionOffsets = new List<int>();
241 {
242 ActionOffsets.Add(actionOffset[x]);
243 }
244
245 actions.ActionOffsets.Add(ActionOffsets);
246 }
247
248 for (int i = 12; i < 16; i++)
249 {
251 ActionOffsets = new List<int>();
253 {
254 ActionOffsets.Add(actionOffset[x]);
255 }
256
257 subActions.ActionOffsets.Add(ActionOffsets);
258 }
259
261 {
264 }
265
266 int amt = 0;
267
268
269
271 {
272 case "FitZakoBall":
273 case "FitZakoBoy":
274 case "FitZakoGirl":
275 case "FitZakoChild":
276 amt = 1;
277 break;
278 case "FitPurin":
279 amt = 3;
280 break;
281 case "FitKoopa":
282 case "FitMetaknight":
283 amt = 5;
284 break;
285 case "FitGanon":
286 case "FitGKoopa":
287 case "FitMarth":
288 amt = 6;
289 break;
290 case "FitPokeFushigisou":
291 amt = 7;
292 break;
293 case "FitCaptain":
294 case "FitIke":
295 case "FitLuigi":
296 case "FitPokeLizardon":
297 case "FitPokeTrainer":
298 case "FitPokeZenigame":
299 case "FitSonic":
300 amt = 8;
301 break;
302 case "FitDonkey":
303 case "FitSheik":
304 case "FitWarioMan":
305 amt = 9;
306 break;
307 case "FitMario":
308 case "FitWario":
309 case "FitZelda":
310 amt = 10;
311 break;
312 case "FitFalco":
313 case "FitLucario":
314 case "FitPikachu":
315 amt = 11;
316 break;
317 case "FitSZerosuit":
318 amt = 12;
319 break;
320 case "FitDiddy":
321 case "FitFox":
322 case "FitLucas":
323 case "FitPikmin":
324 case "FitPit":
325 case "FitWolf":
326 case "FitYoshi":
327 amt = 13;
328 break;
329 case "FitNess":
330 case "FitPeach":
331 case "FitRobot":
332 amt = 14;
333 break;
334 case "FitDedede":
335 case "FitGameWatch":
336 amt = 16;
337 break;
338 case "FitPopo":
339 amt = 18;
340 break;
341 case "FitLink":
342 case "FitSnake":
343 case "FitToonLink":
344 amt = 20;
345 break;
346 case "FitSamus":
347 amt = 22;
348 break;
349 case "FitKirby":
350 amt = 68;
351 break;
352 default:
353 amt = (
Size - 124) / 4;
354 break;
355 }
356
358 for (int i = 0; i < amt; i++)
359 {
361 }
362
368 {
373 }
374
376 {
377 (
actionFlags =
new MoveDefActionFlagsNode(
"Action Flags",
381 }
382
383 totalActionCount = commonActionFlagsCount + actionFlagsCount;
385 {
388 }
389
391 {
392 int count;
394 {
396 }
397 else
398 {
400 }
401
403 {
406 }
407
408
410
411
412 for (int i = 0; i < count; i++)
413 {
414 actions.AddChild(
new MoveDefActionGroupNode {
_name =
"Action" + (i + 274),
offsetID = i},
415 false);
416 }
417
418
419 for (int i = 0; i < 2; i++)
420 {
422 {
424 }
425 }
426
427
429
430
431
432 Root._actions = actions;
433 }
434
436 {
439 }
440
442 {
445 }
446
449 {
450 string name;
451 int count = 0;
452 for (int i = 0; i < 4; i++)
453 {
455 {
457 break;
458 }
459 }
460
461
463
464
465 for (int i = 0; i < count; i++)
466 {
468 {
470 }
471 else
472 {
473 name = "<null>";
474 }
475
476 subActions.AddChild(
477 new MoveDefSubActionGroupNode
478 {
481 }, false);
482 }
483
484
485 for (int i = 0; i < 4; i++)
486 {
488 {
490 }
491 }
492
493
495
496 Root._subActions = subActions;
497 }
498
500 {
503 }
504
506 {
509 }
510
512 {
515 }
516
518 {
521 }
522
524 {
527 }
528
530 {
533 }
534
536 {
539 }
540
542 {
545 }
546
548 {
551 }
552
554 {
557 }
558
560 {
561 (
boneRef1 =
new MoveDefBoneIndicesNode(
"Bone References",
564 }
565
567 {
570 }
571
573 {
576 }
577
578
579 int y = 0;
580 MoveDefExternalNode ext = null;
582 {
584 {
585 MoveDefSoundDatasNode p = new MoveDefSoundDatasNode
586 {
isExtra =
true, separate =
true,
_name =
"Sound Data 2"};
587 p.Initialize(
this,
new DataSource(
BaseAddress + DataOffset, 0));
589 }
591 {
592 MoveDefKirbyParamList49Node p =
new MoveDefKirbyParamList49Node {
isExtra =
true,
offsetID = y};
593 p.Initialize(
this,
new DataSource(
BaseAddress + DataOffset, 0));
595 }
597 {
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617 }
618 else if ((y == 51 || y == 52) && RootNode.Name == "FitKirby")
619 {
620 MoveDefKirbyParamList5152Node p = new MoveDefKirbyParamList5152Node
622 p.Initialize(
this,
new DataSource(
BaseAddress + DataOffset, 0));
624 }
626 {
627 Pit7Robot13Node p =
new Pit7Robot13Node {
isExtra =
true,
offsetID = y};
628 p.Initialize(
this,
new DataSource(
BaseAddress + DataOffset, 0));
630 }
632 {
633 HitDataListOffsetNode p = new HitDataListOffsetNode
635 p.Initialize(
this,
new DataSource(
BaseAddress + DataOffset, 0));
637 }
639 {
641 p.Initialize(
this,
new DataSource(
BaseAddress + DataOffset, 0));
643 }
645 {
647 p.Initialize(
this,
new DataSource(
BaseAddress + DataOffset, 0));
649 }
650 else if (
656 {
657 MoveDefHitDataListNode p = new MoveDefHitDataListNode
659 p.Initialize(
this,
new DataSource(
BaseAddress + DataOffset, 0));
661 }
662 else if (y == 6 &&
RootNode.
Name.StartsWith(
"FitWario"))
663 {
667 }
668 else if (y == 8 &&
RootNode.
Name.StartsWith(
"FitWario"))
669 {
673 }
675 {
679 }
681 {
683
684 if (y == 0)
685 {
688 }
689
691 ActionOffsets = new List<int>();
692 for (
int x = 0; x <
Root.
GetSize(DataOffset) / 4; x++)
693 {
694 ActionOffsets.Add(actionOffset[x]);
695 }
696
698
699 if (y == 3)
700 {
701 string name;
702 int count = 0;
703 for (int i = 0; i < 4; i++)
704 {
706 {
707 break;
708 }
709 }
710
711
713
714
715 for (int i = 0; i < count; i++)
716 {
718 {
720 }
721 else
722 {
723 name = "<null>";
724 }
725
727 new MoveDefSubActionGroupNode
728 {
731 }, false);
732 }
733
734
735 for (int i = 0; i < 4; i++)
736 {
738 }
739 }
740 }
742 {
746 }
747 else
748 {
749 if (DataOffset >
Root.dataSize)
750 {
751 continue;
752 }
753
754 ext = null;
755 if (DataOffset > 1480)
756 {
757 MoveDefEntryNode entry = null;
759 {
760 if (ext.Name.StartsWith("param"))
761 {
762 int o = 0;
764 {
765 MoveDefRawDataNode d = new MoveDefRawDataNode("ExtraParams" + y)
768 for (int i = 0; i < o; i++)
769 {
771 .Initialize(d,
BaseAddress + DataOffset + d.Size / o * i, d.Size / o);
772 }
773
774 entry = d;
775 }
776 else
777 {
778 MoveDefSectionParamNode p = new MoveDefSectionParamNode
781 entry = p;
782 }
783 }
784 else
785 {
796 {
797 int o = 0;
799 {
800 MoveDefRawDataNode d = new MoveDefRawDataNode("ExtraParams" + y)
803 for (int i = 0; i < o; i++)
804 {
806 .Initialize(d,
807 BaseAddress + DataOffset + d.Size / o * i, d.Size / o);
808 }
809
810 entry = d;
811 }
812 else
813 {
814 MoveDefSectionParamNode p = new MoveDefSectionParamNode
817 entry = p;
818 }
819 }
820 else
821 {
823 {
826 }
827
828 (entry = new MoveDefArticleNode
832 }
833 }
834 }
835 else
836 {
846 {
847 int o = 0;
849 {
850 MoveDefRawDataNode d = new MoveDefRawDataNode("ExtraParams" + y)
853 for (int i = 0; i < o; i++)
854 {
856 .Initialize(d,
BaseAddress + DataOffset + d.Size / o * i, d.Size / o);
857 }
858
859 entry = d;
860 }
861 else
862 {
863 MoveDefSectionParamNode p = new MoveDefSectionParamNode
866 entry = p;
867 }
868 }
869 else
870 {
872 {
875 }
876
877 (entry = new MoveDefArticleNode
881 }
882 }
883
885 }
886 }
887
888 y++;
889 }
890
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
927
928
930
931
933
934
936
937
938
939 }
940
941 #endregion
942
944 }
List< List< int > > ActionOffsets
Definition: MoveDefGeneralNodes.cs:12
MoveDefActionInterruptsNode actionInterrupts
Definition: MoveDefDataNode.cs:169
MoveDefGroupNode _articleGroup
Definition: MoveDefDataNode.cs:153
MoveDefSoundDatasNode nanaSoundData
Definition: MoveDefDataNode.cs:178
MoveDefUnk22Node unk22
Definition: MoveDefDataNode.cs:163
MoveDefStaticArticleGroupNode staticArticles
Definition: MoveDefDataNode.cs:168
MoveDefUnk7Node unk7
Definition: MoveDefDataNode.cs:161
MoveDefActionPreNode actionPre
Definition: MoveDefDataNode.cs:162
MoveDefAttributeNode attributes
Definition: MoveDefDataNode.cs:156
int Unknown7
Definition: MoveDefDataNode.cs:33
MoveDefActionFlagsNode actionFlags
Definition: MoveDefDataNode.cs:160
MoveDefActionOverrideNode override2
Definition: MoveDefDataNode.cs:159
MoveDefActionListNode nanaSubActions
Definition: MoveDefDataNode.cs:176
int CommonActionFlagsStart
Definition: MoveDefDataNode.cs:29
MoveDefModelVisibilityNode mdlVisibility
Definition: MoveDefDataNode.cs:165
MoveDefArticleNode entryArticle
Definition: MoveDefDataNode.cs:167
MoveDefAttributeNode sseAttributes
Definition: MoveDefDataNode.cs:156
MoveDefBoneRef2Node boneRef2
Definition: MoveDefDataNode.cs:172
SZerosuitExtraParams8Node zssParams8
Definition: MoveDefDataNode.cs:181
MoveDefUnk17Node boneFloats1
Definition: MoveDefDataNode.cs:166
MoveDefMiscNode misc
Definition: MoveDefDataNode.cs:157
Wario8 warioParams8
Definition: MoveDefDataNode.cs:186
MoveDefUnk17Node boneFloats3
Definition: MoveDefDataNode.cs:164
MoveDefBoneIndicesNode boneRef1
Definition: MoveDefDataNode.cs:171
int ActionFlagsStart
Definition: MoveDefDataNode.cs:31
void PopulateActionGroup(ResourceNode g, List< int > ActionOffsets, bool subactions, int index)
Definition: MoveDefDataNode.cs:971
MoveDefActionOverrideNode override1
Definition: MoveDefDataNode.cs:158
MoveDefUnk17Node boneFloats2
Definition: MoveDefDataNode.cs:166
Wario6 warioParams6
Definition: MoveDefDataNode.cs:187
int EntryActionsStart
Definition: MoveDefDataNode.cs:37
MoveDefActionFlagsNode commonActionFlags
Definition: MoveDefDataNode.cs:160
MoveDefFlagsNode _animFlags
Definition: MoveDefDataNode.cs:155
MoveDefUnk24Node unk24
Definition: MoveDefDataNode.cs:170
bool isExtra
Definition: MoveDefNode.cs:137
int offsetID
Definition: MoveDefNode.cs:136
int _offset
Definition: MoveDefNode.cs:67
MoveDefNode Root
Definition: MoveDefNode.cs:48
bool _extOverride
Definition: MoveDefNode.cs:131
override void SortChildren()
Definition: MoveDefNode.cs:192
int Size
Definition: MoveDefNode.cs:87
VoidPtr BaseAddress
Definition: MoveDefNode.cs:32
List< string > _names
Definition: DataActionFlags.cs:202
List< FDefSubActionFlag > _flags
Definition: DataActionFlags.cs:203
int BoneRefOffset
Definition: DataMiscNode.cs:36
MoveDefExternalNode IsExternal(int offset)
Definition: MoveDefNode.cs:3112
int GetSize(int offset)
Definition: MoveDefNode.cs:3348
ResourceNode _parent
Definition: ResourceNode.cs:142
void Initialize(ResourceNode parent, FileMap source)
Definition: ResourceNode.cs:651
ResourceNode RootNode
Definition: ResourceNode.cs:175
virtual string Name
Definition: ResourceNode.cs:223
virtual void AddChild(ResourceNode child)
Definition: ResourceNode.cs:757
List< ResourceNode > Children
Definition: ResourceNode.cs:262
void Populate(int levels=-1)
Definition: ResourceNode.cs:613
Definition: FighterDefinition.cs:348
bint _subactionSFXStart
Definition: FighterDefinition.cs:361
bint _subactionFlagsStart
Definition: FighterDefinition.cs:356
bint _arcGroup
Definition: FighterDefinition.cs:352
bint _boneID
Definition: FighterDefinition.cs:353
bint _id
Definition: FighterDefinition.cs:351
bint _modelVisibility
Definition: FighterDefinition.cs:362
bint _subactionGFXStart
Definition: FighterDefinition.cs:359
bint _actionsStart
Definition: FighterDefinition.cs:357