From b9742fe8d50d2d74fb258680a232a199eeaf4fbc Mon Sep 17 00:00:00 2001 From: Lako Date: Sat, 2 Jan 2021 00:21:55 -0500 Subject: [PATCH] AS3 loading works --- OpenFK/Form1.Designer.cs | 26 +++++++++---------- OpenFK/Form1.cs | 56 ++++++++++++++++++++++++++-------------- OpenFK/Form1.resx | 28 ++++++++++---------- README.md | 5 ++-- 4 files changed, 66 insertions(+), 49 deletions(-) diff --git a/OpenFK/Form1.Designer.cs b/OpenFK/Form1.Designer.cs index 09d9cf7..51e430a 100644 --- a/OpenFK/Form1.Designer.cs +++ b/OpenFK/Form1.Designer.cs @@ -29,22 +29,12 @@ private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1)); - this.AS2Container = new OpenFK.FlashRightClick(); this.AS3Container = new OpenFK.FlashRightClick(); - ((System.ComponentModel.ISupportInitialize)(this.AS2Container)).BeginInit(); + this.AS2Container = new OpenFK.FlashRightClick(); ((System.ComponentModel.ISupportInitialize)(this.AS3Container)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.AS2Container)).BeginInit(); this.SuspendLayout(); // - // AS2Container - // - this.AS2Container.Dock = System.Windows.Forms.DockStyle.Fill; - this.AS2Container.Enabled = true; - this.AS2Container.Location = new System.Drawing.Point(0, 0); - this.AS2Container.Name = "AS2Container"; - this.AS2Container.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("AS2Container.OcxState"))); - this.AS2Container.Size = new System.Drawing.Size(800, 600); - this.AS2Container.TabIndex = 0; - // // AS3Container // this.AS3Container.Dock = System.Windows.Forms.DockStyle.Fill; @@ -55,6 +45,16 @@ this.AS3Container.Size = new System.Drawing.Size(800, 600); this.AS3Container.TabIndex = 1; // + // AS2Container + // + this.AS2Container.Dock = System.Windows.Forms.DockStyle.Fill; + this.AS2Container.Enabled = true; + this.AS2Container.Location = new System.Drawing.Point(0, 0); + this.AS2Container.Name = "AS2Container"; + this.AS2Container.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("AS2Container.OcxState"))); + this.AS2Container.Size = new System.Drawing.Size(800, 600); + this.AS2Container.TabIndex = 0; + // // Form1 // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; @@ -65,8 +65,8 @@ this.Text = "OpenFK"; this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form_FormClosing); this.Load += new System.EventHandler(this.Form1_Load); - ((System.ComponentModel.ISupportInitialize)(this.AS2Container)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.AS3Container)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.AS2Container)).EndInit(); this.ResumeLayout(false); } diff --git a/OpenFK/Form1.cs b/OpenFK/Form1.cs index 8215e37..97b8415 100644 --- a/OpenFK/Form1.cs +++ b/OpenFK/Form1.cs @@ -102,11 +102,19 @@ namespace OpenFK Debug.WriteLine("Main.swf is Loaded"); AS2Container.FSCommand += new _IShockwaveFlashEvents_FSCommandEventHandler(flashPlayer_FSCommand); //This sets up the FSCommand handler, which CCommunicator likes to use a lot. - AS3Container.Quality = Settings.Default.Quality; - AS3Container.ScaleMode = Settings.Default.ScaleMode; - AS3Container.Movie = Directory.GetCurrentDirectory() + @"\MainAS3.swf"; //Sets MainAS3.swf as the Flash Movie to Play. - Debug.WriteLine("MainAS3.swf is Loaded"); - AS3Container.FlashCall += new _IShockwaveFlashEvents_FlashCallEventHandler(flashPlayerAS3_FlashCall); + try + { + AS3Container.Quality = Settings.Default.Quality; + AS3Container.ScaleMode = Settings.Default.ScaleMode; + AS3Container.Movie = Directory.GetCurrentDirectory() + @"\MainAS3.swf"; //Sets MainAS3.swf as the Flash Movie to Play. + AS3Container.Play(); + Debug.WriteLine("MainAS3.swf is Loaded"); + AS3Container.FlashCall += new _IShockwaveFlashEvents_FlashCallEventHandler(flashPlayerAS3_FlashCall); + } + catch + { + Debug.WriteLine("AS3 Failed to Load! Potentially an older version."); + } //End of Flash initialization //customF Initialization @@ -376,13 +384,13 @@ namespace OpenFK // AS3 LOADING // - if(e.args.Contains(""); - } + setVar(@""); + setVar(@""); + } // // EMD OF AS3 LOADING @@ -532,20 +540,28 @@ namespace OpenFK Encoding iso_8859_1 = Encoding.GetEncoding("iso-8859-1"); string index = ""; string filedata = ""; - if (Settings.Default.RDF == true) + try { - byte[] RDFData = File.ReadAllBytes(Directory.GetCurrentDirectory() + @"\data\" + folder + @"\" + file + ".rdf"); - filedata = RDFTool.decode(iso_8859_1.GetString(RDFData)); - } - else filedata = File.ReadAllText(Directory.GetCurrentDirectory() + @"\data\" + folder + @"\" + file + ".xml"); //Puts XML file to string - index = @"" + filedata + @""; + if (Settings.Default.RDF == true) + { + byte[] RDFData = File.ReadAllBytes(Directory.GetCurrentDirectory() + @"\data\" + folder + @"\" + file + ".rdf"); + filedata = RDFTool.decode(iso_8859_1.GetString(RDFData)); + } + else filedata = File.ReadAllText(Directory.GetCurrentDirectory() + @"\data\" + folder + @"\" + file + ".xml"); //Puts XML file to string + index = @"" + filedata + @""; - if(file == "funkeys") + + if (file == "funkeys") + { + bittyData = new XmlDocument(); + bittyData.LoadXml(filedata); + } + + } + catch { - bittyData = new XmlDocument(); - bittyData.LoadXml(filedata); + index = @""; //I would just let dotNET handle this, but UGLevels needs an error to continue. } - setVar(index.ToString()); //Sends XML data to the game Debug.WriteLine("RDF - Sent " + file); //Debug Output } diff --git a/OpenFK/Form1.resx b/OpenFK/Form1.resx index 8f87587..5f8f6fb 100644 --- a/OpenFK/Form1.resx +++ b/OpenFK/Form1.resx @@ -117,20 +117,6 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w - LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACFTeXN0 - ZW0uV2luZG93cy5Gb3Jtcy5BeEhvc3QrU3RhdGUBAAAABERhdGEHAgIAAAAJAwAAAA8DAAAAewEAAAIB - AAAAAQAAAAAAAAAAAAAAAGYBAABnVWZVAA4AAK9SAAADPgAACAACAAAAAAAIAAQAAAAgAAAACAAEAAAA - IAAAAAgADgAAAFcAaQBuAGQAbwB3AAAACAAGAAAALQAxAAAACAAGAAAALQAxAAAACAAKAAAASABpAGcA - aAAAAAgAAgAAAAAACAAGAAAALQAxAAAACAAAAAAACAAOAAAAYQBsAHcAYQB5AHMAAAAIABAAAABTAGgA - bwB3AEEAbABsAAAACAAEAAAAMAAAAAgABAAAADAAAAAIAAIAAAAAAAgAAAAAAAgAAgAAAAAADQAAAAAA - AAAAAAAAAAAAAAAACAAEAAAAMQAAAAgABAAAADAAAAAIAAAAAAAIAAQAAAAwAAAACAAIAAAAYQBsAGwA - AAAIAAwAAABmAGEAbABzAGUAAAAIAAwAAABmAGEAbABzAGUAAAAIAAQAAAAwAAAACAAMAAAAcwBjAGEA - bABlAAAACAAGAAAALQAxAAAACw== - - AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w @@ -143,6 +129,20 @@ AAAAAAAAAAAAAAAACAAEAAAAMQAAAAgABAAAADAAAAAIAAAAAAAIAAQAAAAwAAAACAAIAAAAYQBsAGwA AAAIAAwAAABmAGEAbABzAGUAAAAIAAwAAABmAGEAbABzAGUAAAAIAAQAAAAwAAAACAAMAAAAcwBjAGEA bABlAAAACAAGAAAALQAxAAAACw== + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACFTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5BeEhvc3QrU3RhdGUBAAAABERhdGEHAgIAAAAJAwAAAA8DAAAAewEAAAIB + AAAAAQAAAAAAAAAAAAAAAGYBAABnVWZVAA4AAK9SAAADPgAACAACAAAAAAAIAAQAAAAgAAAACAAEAAAA + IAAAAAgADgAAAFcAaQBuAGQAbwB3AAAACAAGAAAALQAxAAAACAAGAAAALQAxAAAACAAKAAAASABpAGcA + aAAAAAgAAgAAAAAACAAGAAAALQAxAAAACAAAAAAACAAOAAAAYQBsAHcAYQB5AHMAAAAIABAAAABTAGgA + bwB3AEEAbABsAAAACAAEAAAAMAAAAAgABAAAADAAAAAIAAIAAAAAAAgAAAAAAAgAAgAAAAAADQAAAAAA + AAAAAAAAAAAAAAAACAAEAAAAMQAAAAgABAAAADAAAAAIAAAAAAAIAAQAAAAwAAAACAAIAAAAYQBsAGwA + AAAIAAwAAABmAGEAbABzAGUAAAAIAAwAAABmAGEAbABzAGUAAAAIAAQAAAAwAAAACAAMAAAAcwBjAGEA + bABlAAAACAAGAAAALQAxAAAACw== \ No newline at end of file diff --git a/README.md b/README.md index f6821e1..f3dc334 100644 --- a/README.md +++ b/README.md @@ -8,11 +8,12 @@ OpenFK adds new features while doing the same functions as the executable. | ------------ | ------------ | | File loading via XMLs | Checking updates | | Saving files | ActionScript 3 Elements | -| Fullscreen and Windowed mode | USB connectivity | +| Fullscreen and Windowed mode | | Basic online functionality | | | Mod support | | | Closing the game | | | Native RDF loading | | +| USB connectivity | | ### Installing OpenFK OpenFK requires some manual work to set it up fully. @@ -24,4 +25,4 @@ You will also need to find the Flash.ocx file, it is usually found in the `C:\Wi Be sure to run the 'Configure OpenFK.bat' file to choose from some choices! ### Building OpenFK -You can build OpenFK with anything that can build dotNET 4.5 projects, like Visual Studio. You also need to have the ActiveX version of Adobe Flash Player installed to be able to use the 'Shockwave Flash Object' COM component. +You can build OpenFK with anything that can build dotNET 4.5 projects, like Visual Studio. You also need to have the ActiveX version of Adobe Flash Player installed to be able to use the 'Shockwave Flash Object' COM component. \ No newline at end of file