Esempio n. 1
0
        public void SaveFile()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");

            psaMovesetParser.PsaFile.SaveFile("./Tests/GeneralTests/Out/SaveFile/FitMario.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/Data/FitMario.pac", "./Tests/GeneralTests/Out/SaveFile/FitMario.pac"));
        }
Esempio n. 2
0
        public void MoveCommandDownwardsThatHasParameters()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");

            psaMovesetParser.ActionsHandler.MoveActionCommand(0, 0, 9, MoveDirection.DOWN);
            psaMovesetParser.PsaFile.SaveFile("./Tests/ActionsTests/Out/Move/FitMarioMoveCommandDownwards-CommandWithParametersSwapWithCommandWithNoParameters.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/ActionsTests/ComparisonData/Move/FitMarioMoveCommandDownwards-CommandWithParametersSwapWithCommandWithNoParameters.pac", "./Tests/ActionsTests/Out/Move/FitMarioMoveCommandDownwards-CommandWithParametersSwapWithCommandWithNoParameters.pac"));
        }
Esempio n. 3
0
        public void AddOneCommandToSubActionWithNoExistingCommands(int subActionId, int codeBlockId, string comparisonFileName)
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");

            psaMovesetParser.SubActionsHandler.AddCommand(subActionId, codeBlockId);
            psaMovesetParser.PsaFile.SaveFile($"./Tests/SubActionsTests/Out/Add/{comparisonFileName}");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical($"./Tests/SubActionsTests/ComparisonData/Add/{comparisonFileName}", $"./Tests/SubActionsTests/Out/Add/{comparisonFileName}"));
        }
Esempio n. 4
0
        public void RemoveOneCommandFromAction(int actionId, int codeBlockId, int commandIndex, string comparisonFileName)
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");

            psaMovesetParser.ActionsHandler.RemoveCommandFromAction(actionId, codeBlockId, commandIndex);
            psaMovesetParser.PsaFile.SaveFile($"./Tests/ActionsTests/Out/Remove/{comparisonFileName}");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical($"./Tests/ActionsTests/ComparisonData/Remove/{comparisonFileName}", $"./Tests/ActionsTests/Out/Remove/{comparisonFileName}"));
        }
Esempio n. 5
0
        public void RemoveCommandWithPointerFromAction()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");

            psaMovesetParser.ActionsHandler.RemoveCommandFromAction(2, 0, 11);
            psaMovesetParser.PsaFile.SaveFile("./Tests/ActionsTests/Out/Remove/FitMarioRemoveCommandWithPointerInAction.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/ActionsTests/ComparisonData/Remove/FitMarioRemoveCommandWithPointerInAction.pac", "./Tests/ActionsTests/Out/Remove/FitMarioRemoveCommandWithPointerInAction.pac"));
        }
Esempio n. 6
0
        public void MoveCommandUpwards()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");

            psaMovesetParser.ActionsHandler.MoveActionCommand(0, 0, 1, MoveDirection.UP);
            psaMovesetParser.PsaFile.SaveFile("./Tests/ActionsTests/Out/Move/FitMarioMoveCommandUpwards-BothCommandsHaveParameters.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/ActionsTests/ComparisonData/Move/FitMarioMoveCommandUpwards-BothCommandsHaveParameters.pac", "./Tests/ActionsTests/Out/Move/FitMarioMoveCommandUpwards-BothCommandsHaveParameters.pac"));
        }
Esempio n. 7
0
        public void AddOneCommandToSubActionWithNoExistingCommandsWithExistingOffset()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");

            psaMovesetParser.SubActionsHandler.AddCommand(0, 0);
            psaMovesetParser.PsaFile.SaveFile("./Tests/SubActionsTests/Out/Add/FitMarioOneCommandAddedWithNoExistingCommandsWithExistingOffset.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/SubActionsTests/ComparisonData/Add/FitMarioOneCommandAddedWithNoExistingCommandsWithExistingOffset.pac", "./Tests/SubActionsTests/Out/Add/FitMarioOneCommandAddedWithNoExistingCommandsWithExistingOffset.pac"));
        }
Esempio n. 8
0
        public void AddTwoCommandsToActionWithExistingCommands()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");

            psaMovesetParser.ActionsHandler.AddCommandToAction(0, 0);
            psaMovesetParser.ActionsHandler.AddCommandToAction(0, 0);
            psaMovesetParser.PsaFile.SaveFile("./Tests/ActionsTests/Out/Add/FitMarioTwoCommandsAdded.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/ActionsTests/ComparisonData/Add/FitMarioTwoCommandsAdded.pac", "./Tests/ActionsTests/Out/Add/FitMarioTwoCommandsAdded.pac"));
        }
Esempio n. 9
0
        public void RemoveCommandAtEndOfDataSection()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");

            psaMovesetParser.ActionsHandler.AddCommandToAction(6, 1);
            psaMovesetParser.ActionsHandler.RemoveCommandFromAction(6, 1, 3);
            psaMovesetParser.PsaFile.SaveFile("./Tests/ActionsTests/Out/Remove/FitMarioRemoveCommandAtEndOfDataSection.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/ActionsTests/ComparisonData/Remove/FitMarioRemoveCommandAtEndOfDataSection.pac", "./Tests/ActionsTests/Out/Remove/FitMarioRemoveCommandAtEndOfDataSection.pac"));
        }
Esempio n. 10
0
        public void ModifyCommandInActionWithParametersToCommandWithNoParameters()
        {
            PsaMovesetHandler          psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");
            List <PsaCommandParameter> parameters       = new List <PsaCommandParameter>();

            psaMovesetParser.ActionsHandler.ModifyActionCommand(0, 0, 0, new PsaCommand(917504, 25788, parameters));
            psaMovesetParser.PsaFile.SaveFile("./Tests/ActionsTests/Out/Modify/FitMarioModifyCommandWithParametersToCommandWithNoParameters.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/ActionsTests/ComparisonData/Modify/FitMarioModifyCommandWithParametersToCommandWithNoParameters.pac", "./Tests/ActionsTests/Out/Modify/FitMarioModifyCommandWithParametersToCommandWithNoParameters.pac"));
        }
Esempio n. 11
0
        public void AddCommandsToSubActionWithFreeSpaceInMiddleOfDataSection()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");

            psaMovesetParser.SubActionsHandler.RemoveCommand(19, 0, 0);
            psaMovesetParser.SubActionsHandler.AddCommand(19, 0);
            psaMovesetParser.PsaFile.SaveFile("./Tests/SubActionsTests/Out/Add/FitMarioOneCommandAddedWithFreeSpaceInMiddleOfDataSection.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/SubActionsTests/ComparisonData/Add/FitMarioOneCommandAddedWithFreeSpaceInMiddleOfDataSection.pac", "./Tests/SubActionsTests/Out/Add/FitMarioOneCommandAddedWithFreeSpaceInMiddleOfDataSection.pac"));
        }
Esempio n. 12
0
        public void ReadPsaCommandsFromAction3()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");
            List <PsaCommand> psaCommands      = psaMovesetParser.ActionsHandler.GetPsaCommandsForActionCodeBlock(3, 1);

            Assert.AreEqual(5, psaCommands.Count);
            Assert.AreEqual(656384, psaCommands[0].Instruction);
            Assert.AreEqual(4, psaCommands[0].Parameters.Count);
            Assert.AreEqual(6, psaCommands[0].Parameters[0].Type);
            Assert.AreEqual(7, psaCommands[0].Parameters[0].Value);
        }
Esempio n. 13
0
        public void ReadPsaCommandsFromAction2()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");
            List <PsaCommand> psaCommands      = psaMovesetParser.ActionsHandler.GetPsaCommandsForActionCodeBlock(1, 0);

            Assert.AreEqual(33, psaCommands.Count);
            Assert.AreEqual(33620480, psaCommands[0].Instruction);
            Assert.AreEqual(2, psaCommands[0].Parameters.Count);
            Assert.AreEqual(0, psaCommands[0].Parameters[0].Type);
            Assert.AreEqual(0, psaCommands[0].Parameters[0].Value);
        }
Esempio n. 14
0
        public void ReadPsaCommandsFromSubAction2()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");
            List <PsaCommand> psaCommands      = psaMovesetParser.SubActionsHandler.GetPsaCommandsForSubAction(73, 2);

            Assert.AreEqual(2, psaCommands.Count);
            Assert.AreEqual(131328, psaCommands[0].Instruction);
            Assert.AreEqual(1, psaCommands[0].Parameters.Count);
            Assert.AreEqual(1, psaCommands[0].Parameters[0].Type);
            Assert.AreEqual(60000, psaCommands[0].Parameters[0].Value);
        }
Esempio n. 15
0
        public void RemoveAllCommandsFromSubAction()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");

            for (int i = 0; i < 5; i++)
            {
                psaMovesetParser.SubActionsHandler.RemoveCommand(70, 0, 0);
            }
            psaMovesetParser.PsaFile.SaveFile("./Tests/SubActionsTests/Out/Remove/FitMarioRemoveAllCommandsInSubAction.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/SubActionsTests/ComparisonData/Remove/FitMarioRemoveAllCommandsInSubAction.pac", "./Tests/SubActionsTests/Out/Remove/FitMarioRemoveAllCommandsInSubAction.pac"));
        }
Esempio n. 16
0
        public void ModifyCommandInActionWithDifferentCommandWithSmallerParameterCount()
        {
            PsaMovesetHandler          psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");
            List <PsaCommandParameter> parameters       = new List <PsaCommandParameter>
            {
                new PsaCommandParameter(0, 0)
            };

            psaMovesetParser.ActionsHandler.ModifyActionCommand(0, 0, 0, new PsaCommand(67109120, 25788, parameters));
            psaMovesetParser.PsaFile.SaveFile("./Tests/ActionsTests/Out/Modify/FitMarioModifyCommandWithDifferentCommandWithSmallerParameterCount.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/ActionsTests/ComparisonData/Modify/FitMarioModifyCommandWithDifferentCommandWithSmallerParameterCount.pac", "./Tests/ActionsTests/Out/Modify/FitMarioModifyCommandWithDifferentCommandWithSmallerParameterCount.pac"));
        }
Esempio n. 17
0
        public void ModifyCommandInActionWithCommandThatHasPointerParameter()
        {
            PsaMovesetHandler          psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");
            List <PsaCommandParameter> parameters       = new List <PsaCommandParameter>
            {
                new PsaCommandParameter(2, 98464)
            };

            psaMovesetParser.ActionsHandler.ModifyActionCommand(0, 0, 0, new PsaCommand(459008, 103152, parameters));
            psaMovesetParser.PsaFile.SaveFile("./Tests/ActionsTests/Out/Modify/FitMarioModifyCommandInActionWithCommandThatHasPointerParameter.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/ActionsTests/ComparisonData/Modify/FitMarioModifyCommandInActionWithCommandThatHasPointerParameter.pac", "./Tests/ActionsTests/Out/Modify/FitMarioModifyCommandInActionWithCommandThatHasPointerParameter.pac"));
        }
Esempio n. 18
0
        public void ModifyCommandInSubActionWithDifferentCommandWithSmallerParameterCount()
        {
            PsaMovesetHandler          psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");
            List <PsaCommandParameter> parameters       = new List <PsaCommandParameter>
            {
                new PsaCommandParameter(1, 2400000)
            };

            psaMovesetParser.SubActionsHandler.ModifyCommand(72, 0, 1, new PsaCommand(131328, 68456, parameters));
            psaMovesetParser.PsaFile.SaveFile("./Tests/SubActionsTests/Out/Modify/FitMarioModifyCommandWithDifferentCommandWithSmallerParameterCount.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/SubActionsTests/ComparisonData/Modify/FitMarioModifyCommandWithDifferentCommandWithSmallerParameterCount.pac", "./Tests/SubActionsTests/Out/Modify/FitMarioModifyCommandWithDifferentCommandWithSmallerParameterCount.pac"));
        }
Esempio n. 19
0
        public void ModifyCommandInActionWithPointerParameter(int actionId, int codeBlockId, int commandIndex, string comparisonFileName)
        {
            PsaMovesetHandler          psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");
            List <PsaCommandParameter> parameters       = new List <PsaCommandParameter>
            {
                new PsaCommandParameter(0, 0),
                new PsaCommandParameter(6, 0)
            };

            psaMovesetParser.ActionsHandler.ModifyActionCommand(actionId, codeBlockId, commandIndex, new PsaCommand(33620480, 25788, parameters));
            psaMovesetParser.PsaFile.SaveFile($"./Tests/ActionsTests/Out/Modify/{comparisonFileName}");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical($"./Tests/ActionsTests/ComparisonData/Modify/{comparisonFileName}", $"./Tests/ActionsTests/Out/Modify/{comparisonFileName}"));
        }
Esempio n. 20
0
        public void ModifyCommandInSubActionWithNoParametersToCommandWithParameters()
        {
            PsaMovesetHandler          psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");
            List <PsaCommandParameter> parameters       = new List <PsaCommandParameter>
            {
                new PsaCommandParameter(0, 0),
                new PsaCommandParameter(6, 0)
            };

            psaMovesetParser.SubActionsHandler.ModifyCommand(72, 0, 5, new PsaCommand(33620480, 0, parameters));
            psaMovesetParser.PsaFile.SaveFile("./Tests/SubActionsTests/Out/Modify/FitMarioModifyCommandWithNoParametersToCommandWithParameters.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/SubActionsTests/ComparisonData/Modify/FitMarioModifyCommandWithNoParametersToCommandWithParameters.pac", "./Tests/SubActionsTests/Out/Modify/FitMarioModifyCommandWithNoParametersToCommandWithParameters.pac"));
        }
Esempio n. 21
0
        public void ModifyCommandInSubActionWithIdenticalCommandWithDifferentParameterTypes()
        {
            PsaMovesetHandler          psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");
            List <PsaCommandParameter> parameters       = new List <PsaCommandParameter>
            {
                new PsaCommandParameter(1, 39),
                new PsaCommandParameter(5, 2)
            };

            psaMovesetParser.SubActionsHandler.ModifyCommand(93, 0, 3, new PsaCommand(101188096, 73880, parameters));
            psaMovesetParser.PsaFile.SaveFile("./Tests/SubActionsTests/Out/Modify/FitMarioModifyCommandWithIdenticalCommandWithDifferentParameterTypes.pac");
            Assert.IsTrue(WriteTestsHelper.AreFilesIdentical("./Tests/SubActionsTests/ComparisonData/Modify/FitMarioModifyCommandWithIdenticalCommandWithDifferentParameterTypes.pac", "./Tests/SubActionsTests/Out/Modify/FitMarioModifyCommandWithIdenticalCommandWithDifferentParameterTypes.pac"));
        }
Esempio n. 22
0
File: Form1.cs Progetto: a-r-t/psa2
        private void Form1_Load(object sender, EventArgs e)
        {
            //PsaFileParser psaFileParser = new PsaFileParser("data/FitRidley.pac");
            //PsaFileParser psaFileParser = new PsaFileParser("E:/Hobby Stuff/Super Smash Bros Brawl Hacking/Workbench/decompile psac/testmoveset/FitRidley-DataSection.pac");
            //PsaFileParser psaFileParser = new PsaFileParser("E:/Hobby Stuff/Super Smash Bros Brawl Hacking/Workbench/decompile psac/testmoveset/FitRidleyOversized.pac");
            //PsaFileParser psaFileParser = new PsaFileParser("E:/Hobby Stuff/Super Smash Bros Brawl Hacking/Workbench/decompile psac/testmoveset/FitRidley-CodeModified.pac");
            //PsaFileParser psaFileParser = new PsaFileParser("E:/Hobby Stuff/Super Smash Bros Brawl Hacking/Workbench/decompile psac/testmoveset/FitSnake.pac");
            //PsaFileParser psaFileParser = new PsaFileParser("E:/Hobby Stuff/Super Smash Bros Brawl Hacking/Workbench/decompile psac/testmoveset/FitMetaKnight.pac");
            //PsaFileParser psaFileParser = new PsaFileParser("E:/Hobby Stuff/Super Smash Bros Brawl Hacking/Workbench/decompile psac/testmoveset/FitWario.pac");
            PsaFileParser psaFileParser = new PsaFileParser("E:/Hobby Stuff/Super Smash Bros Brawl Hacking/Brawl File Partition/Clean Fighters/mario/FitMario.pac");

            PsaMovesetHandler psaMovesetParser = psaFileParser.ParseMovesetFile();
        }
Esempio n. 23
0
        public void ReadPsaCommandsFromSubAction()
        {
            PsaMovesetHandler psaMovesetParser = WriteTestsHelper.GetPsaMovesetParser("./Tests/Data/FitMario.pac");
            Animation         animation        = psaMovesetParser.SubActionsHandler.GetSubActionAnimationData(80);

            Assert.AreEqual("AttackS3S", animation.AnimationName);
            Assert.AreEqual(0, animation.AnimationFlags.InTransition);
            Assert.AreEqual(0, animation.AnimationFlags.NoOutTransition);
            Assert.AreEqual(0, animation.AnimationFlags.Loop);
            Assert.AreEqual(4, animation.AnimationFlags.MovesCharacter);
            Assert.AreEqual(0, animation.AnimationFlags.Unknown3);
            Assert.AreEqual(0, animation.AnimationFlags.Unknown4);
            Assert.AreEqual(0, animation.AnimationFlags.Unknown5);
            Assert.AreEqual(0, animation.AnimationFlags.TransitionOutFromStart);
            Assert.AreEqual(0, animation.AnimationFlags.Unknown7);
        }