コード例 #1
0
        public static void LoadBMS(string file, ref AABase AudioData)
        {
            AAF         = AudioData;               // copy our data into here.
            BMSData     = File.ReadAllBytes(file); // Read the BMS file
            subroutines = new Subroutine[32];      // Initialize subroutine array.
            halts       = new bool[32];
            mutes       = new bool[32];
            updated     = new int[32];

            // mutes[9] = true;
            // mutes[13] = true;

            ChannelManager = new BMSChannelManager();
            bpm            = 1000;                        // Dummy value, should be set by the root track
            ppqn           = 10;                          // Dummmy, ^
            updateTempo();                                // Generate the trick length, also dummy.
            // Initialize first track.
            var root = new Subroutine(ref BMSData, 0x00); // Should always start at 0x000 of our data.

            subroutine_count = 1;
            subroutines[0]   = root; // stuff it into the subroutines array.
            tickTimer        = new Stopwatch();
            Console.WriteLine("start thread?");
            playbackThread = new Thread(new ThreadStart(doPlayback));
            playbackThread.Start(); // go go go
        }
コード例 #2
0
        internal void Update(ShipInfo rpInfo, RawShip rpData)
        {
            FirepowerBase.Update(rpInfo.FirepowerMinimum, rpInfo.FirepowerMaximum, rpData.ModernizedStatus[0]);
            TorpedoBase.Update(rpInfo.TorpedoMinimum, rpInfo.TorpedoMaximum, rpData.ModernizedStatus[1]);
            AABase.Update(rpInfo.AAMinimum, rpInfo.AAMaximum, rpData.ModernizedStatus[2]);
            ArmorBase.Update(rpInfo.ArmorMinimum, rpInfo.ArmorMaximum, rpData.ModernizedStatus[3]);
            LuckBase.Update(rpInfo.LuckMinimum, rpInfo.LuckMaximum, rpData.ModernizedStatus[4]);

            OnPropertyChanged(nameof(Firepower));
            OnPropertyChanged(nameof(Torpedo));
            OnPropertyChanged(nameof(AA));
            OnPropertyChanged(nameof(Armor));
            OnPropertyChanged(nameof(Evasion));
            OnPropertyChanged(nameof(LoS));
            OnPropertyChanged(nameof(ASW));
            OnPropertyChanged(nameof(Luck));
        }
コード例 #3
0
        static void Main(string[] args)
        {
#if DEBUG
            args    = new string[4];
            args[0] = "visu";
            args[1] = "jaiinit.aaf";
            args[2] = "0";
            args[3] = "telesabattle.bms";
#endif


            if (args.Length > 0)
            {
                if (args[0] == "mkjasm")
                {
                    if (args.Length > 2)
                    {
                        var wtf = new JASM.JASMConverter(args[1], args[2]);
                        return;
                    }
                }

                if (args[0] == "play")
                {
                    JAIVersion SequencerVersion = JAIVersion.UNKNOWN;
                    if (args.Length < 3)
                    {
                        Console.WriteLine("You need to specify JAIInitFile and JAIVersion");
                        Console.WriteLine("JaiSeqX.exe play JaiInit.aaf 0 boolossus.bms yes");
                        Environment.Exit(-1);
                    }

                    try
                    {
                        SequencerVersion = (JAIVersion)(Convert.ToUInt16(args[2]));
                    }
                    catch
                    {
                        Console.WriteLine("{0} is not a valid JAIVersion", args[2]);
                    }
                    if (SequencerVersion == JAIVersion.UNKNOWN)
                    {
                        Console.WriteLine("{0} is not a valid JAIVersion", args[2]);
                    }

                    if (SequencerVersion == JAIVersion.ONE)
                    {
                        var b = new AAFFile();
                        b.LoadAAFile(args[1], JAIVersion.ONE);
                        AAData = b;
                    }
                    else
                    {
                        var b = new BAAFile();
                        b.LoadBAAFile(args[1], SequencerVersion);
                        AAData = b;
                    }
                    //

                    if (args.Length < 4)
                    {
                        Console.WriteLine("No BMS file specified.");

                        Environment.Exit(-1);
                    }

                    Player.BMSPlayer.LoadBMS(args[3], ref AAData);
                }

                if (args[0] == "visu")
                {
                    JAIVersion SequencerVersion = JAIVersion.UNKNOWN;
                    if (args.Length < 3)
                    {
                        Console.WriteLine("You need to specify JAIInitFile and JAIVersion");
                        Console.WriteLine("JaiSeqX.exe visu JaiInit.aaf 0 boolossus.bms yes");
                        Environment.Exit(-1);
                    }

                    try
                    {
                        SequencerVersion = (JAIVersion)(Convert.ToUInt16(args[2]));
                    }
                    catch
                    {
                        Console.WriteLine("{0} is not a valid JAIVersion", args[2]);
                    }
                    if (SequencerVersion == JAIVersion.UNKNOWN)
                    {
                        Console.WriteLine("{0} is not a valid JAIVersion", args[2]);
                    }

                    if (SequencerVersion == JAIVersion.ONE)
                    {
                        var b = new AAFFile();
                        b.LoadAAFile(args[1], JAIVersion.ONE);
                        AAData = b;
                    }
                    else
                    {
                        var b = new BAAFile();
                        b.LoadBAAFile(args[1], SequencerVersion);
                        AAData = b;
                    }
                    //

                    if (args.Length < 4)
                    {
                        Console.WriteLine("No BMS file specified.");
                        Environment.Exit(-1);
                    }
                    Player.BMSVisualizer.Init();
                    Player.BMSPlayer.LoadBMS(args[3], ref AAData);
                }
            }
            else
            {
                Console.WriteLine("JaiSeqX [command] <args>");
                Console.WriteLine();
                Console.WriteLine("JaiSeqX mkjasm <file> -  Creates a .JASM (Jai Assembly) file from file.bms");
                Console.WriteLine("\tJaiSeqX mkjasm file.bms\t");
                Console.WriteLine();
                Console.WriteLine("JaiSeqX play <aafFile> <JaiVersion> <BMS file> - Plays a BMS file with the specified JaiInit.aaf and version");
                Console.WriteLine("\tJaiSeqX play JaiInit.aaf 0 file.bms");
                Console.WriteLine("\t For JaiVersion info, see JaiVersion.cs or JV.txt! ");
                Console.WriteLine();
                Console.WriteLine("JaiSeqX visu <aafFile> <JaiVersion> <BMS file> - Plays a BMS file with visualizer, same as command above but with visualizer.");
                Console.WriteLine("\tJaiSeqX play JaiInit.aaf 0 file.bms");
                Console.WriteLine("\t For JaiVersion info, see JaiVersion.cs or JV.txt! ");
            }
        }