diff --git a/.gitignore b/.gitignore index 9819ba0..cf7029a 100755 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,7 @@ HorseIsleServer/N00BS/obj/* HorseIsleServer/N00BS/bin/* +HorseIsleServer/N00BS/flash.dll.idb HorseIsleServer/HISPCli/obj/* HorseIsleServer/HISPCli/bin/* diff --git a/HorseIsleServer/HISPCli/HISPCli.csproj.user b/HorseIsleServer/HISPCli/HISPCli.csproj.user index 0f14913..c52fb3a 100644 --- a/HorseIsleServer/HISPCli/HISPCli.csproj.user +++ b/HorseIsleServer/HISPCli/HISPCli.csproj.user @@ -1,4 +1,6 @@  - + + <_LastSelectedProfileId>C:\Users\User\Documents\git\HISP\HorseIsleServer\HISPCli\Properties\PublishProfiles\Linux64.pubxml + \ No newline at end of file diff --git a/HorseIsleServer/HISPCli/Program.cs b/HorseIsleServer/HISPCli/Program.cs index b0b3e0c..52d8687 100644 --- a/HorseIsleServer/HISPCli/Program.cs +++ b/HorseIsleServer/HISPCli/Program.cs @@ -21,7 +21,7 @@ namespace HISP.Cli } set { - logFile = value; + logFile = value; if(sw != null) { sw.Flush(); diff --git a/HorseIsleServer/Installer/Installer.vdproj b/HorseIsleServer/Installer/Installer.vdproj index ac54599..520811e 100644 --- a/HorseIsleServer/Installer/Installer.vdproj +++ b/HorseIsleServer/Installer/Installer.vdproj @@ -166,15 +166,15 @@ { "Name" = "8:Microsoft Visual Studio" "ProductName" = "8:HISP-N00BS" - "ProductCode" = "8:{60BA2AF1-4913-4A37-9280-093E8E7DAADE}" - "PackageCode" = "8:{B0F4D2AB-3056-4307-A948-5BE6C191220E}" + "ProductCode" = "8:{6415E694-470B-43CC-8D9A-5955EF0AD4B7}" + "PackageCode" = "8:{B37B11B8-2541-4D08-932B-C44869E4200B}" "UpgradeCode" = "8:{FAD2FB5F-7B7C-4293-BF2D-09384146449E}" "AspNetVersion" = "8:2.0.50727.0" "RestartWWWService" = "11:FALSE" "RemovePreviousVersions" = "11:TRUE" "DetectNewerInstalledVersion" = "11:FALSE" "InstallAllUsers" = "11:TRUE" - "ProductVersion" = "8:1.3.0" + "ProductVersion" = "8:1.3.1" "Manufacturer" = "8:IsleHorse" "ARPHELPTELEPHONE" = "8:" "ARPHELPLINK" = "8:" diff --git a/HorseIsleServer/LibHISP/LibHISP.csproj b/HorseIsleServer/LibHISP/LibHISP.csproj index 177893d..f4e7070 100644 --- a/HorseIsleServer/LibHISP/LibHISP.csproj +++ b/HorseIsleServer/LibHISP/LibHISP.csproj @@ -26,7 +26,7 @@ - + @@ -52,6 +52,8 @@ https://islehorse.com https://github.com/islehorse/HISP git + 3 + 1701;1702;2026 @@ -59,32 +61,24 @@ true x86 OS_WINDOWS;ARCH_X86 - 3 - 1701;1702;2026 win-x64 true x64 OS_WINDOWS;ARCH_X86_64 - 3 - 1701;1702;2026 win-arm true ARM OS_WINDOWS;ARCH_ARM - 3 - 1701;1702;2026 win-arm64 true ARM64 OS_WINDOWS;ARCH_ARM64 - 3 - 1701;1702;2026 @@ -92,16 +86,12 @@ true ARM OS_ANDROID;ARCH_ARM - 3 - 1701;1702;2026 android-arm64 true ARM64 OS_ANDROID;ARCH_ARM64 - 3 - 1701;1702;2026 @@ -110,24 +100,18 @@ true x64 OS_LINUX;ARCH_X86_64 - 3 - 1701;1702;2026 linux-arm ARM true OS_LINUX;ARCH_ARM - 3 - 1701;1702;2026 linux-arm64 ARM64 true OS_LINUX;ARCH_ARM64 - 3 - 1701;1702;2026 @@ -135,15 +119,12 @@ true x64 OS_MACOS;ARCH_X86_64 - 3 - 1701;1702;2026 + osx-arm64 true OS_MACOS;ARCH_ARM64 - 3 - 1701;1702;2026 @@ -159,8 +140,6 @@ ARM False DEBUG;TRACE;OS_DEBUG;ARCH_ARM - 3 - 1701;1702;2026 @@ -168,78 +147,58 @@ ARM64 False DEBUG;TRACE;OS_DEBUG;ARCH_ARM64 - 3 - 1701;1702;2026 False DEBUG;TRACE;OS_DEBUG;ARCH_X86_64 - 3 - 1701;1702;2026 False DEBUG;TRACE;OS_DEBUG;ARCH_X86 - 3 - 1701;1702;2026 True OS_MACOS;ARCH_X86 - 3 - 1701;1702;2026 True OS_LINUX;ARCH_X86 - 3 - 1701;1702;2026 False OS_LINUX;ARCH_ANYCPU - 3 - 1701;1702;2026 False OS_WINDOWS;ARCH_ANYCPU - 3 - 1701;1702;2026 False OS_MACOS;ARCH_ANYCPU - 3 - 1701;1702;2026 True OS_MACOS;ARCH_ARM - 3 - 1701;1702;2026 - 3 - 1701;1702;2026 False diff --git a/HorseIsleServer/LibHISP/Server/GameServer.cs b/HorseIsleServer/LibHISP/Server/GameServer.cs index 6cb45ee..52b23a4 100644 --- a/HorseIsleServer/LibHISP/Server/GameServer.cs +++ b/HorseIsleServer/LibHISP/Server/GameServer.cs @@ -18,7 +18,6 @@ using HISP.Game.SwfModules; using HISP.Game.Horse; using HISP.Game.Events; using HISP.Game.Items; -using System.Diagnostics; namespace HISP.Server { @@ -8276,7 +8275,7 @@ namespace HISP.Server gameTimer = new Timer(new TimerCallback(onGameTick), null, gameTickSpeed, gameTickSpeed); minuteTimer = new Timer(new TimerCallback(onMinuteTick), null, oneMinute, oneMinute); Logger.InfoPrint("Binding to ip: " + ConfigReader.BindIP + " On port: " + ConfigReader.Port.ToString()); - + SocketAsyncEventArgs e = new SocketAsyncEventArgs(); e.Completed += GameClient.CreateClient; GameClient.CreateClient(null, e); diff --git a/HorseIsleServer/N00BS/MpOrSp.Designer.cs b/HorseIsleServer/N00BS/MpOrSp.Designer.cs new file mode 100644 index 0000000..def81cb --- /dev/null +++ b/HorseIsleServer/N00BS/MpOrSp.Designer.cs @@ -0,0 +1,82 @@ +namespace HISP +{ + partial class MpOrSp + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MpOrSp)); + this.Singleplayer = new System.Windows.Forms.Button(); + this.Multiplayer = new System.Windows.Forms.Button(); + this.SuspendLayout(); + // + // Singleplayer + // + this.Singleplayer.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.Singleplayer.Location = new System.Drawing.Point(11, 12); + this.Singleplayer.Name = "Singleplayer"; + this.Singleplayer.Size = new System.Drawing.Size(581, 32); + this.Singleplayer.TabIndex = 0; + this.Singleplayer.Text = "Play Singleplayer"; + this.Singleplayer.UseVisualStyleBackColor = true; + this.Singleplayer.Click += new System.EventHandler(this.Singleplayer_Click); + // + // Multiplayer + // + this.Multiplayer.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.Multiplayer.Location = new System.Drawing.Point(11, 50); + this.Multiplayer.Name = "Multiplayer"; + this.Multiplayer.Size = new System.Drawing.Size(581, 32); + this.Multiplayer.TabIndex = 1; + this.Multiplayer.Text = "Play Multiplayer"; + this.Multiplayer.UseVisualStyleBackColor = true; + this.Multiplayer.Click += new System.EventHandler(this.Multiplayer_Click); + // + // MpOrSp + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(604, 94); + this.Controls.Add(this.Multiplayer); + this.Controls.Add(this.Singleplayer); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MaximizeBox = false; + this.MinimumSize = new System.Drawing.Size(620, 133); + this.Name = "MpOrSp"; + this.Text = "Select Mode"; + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Button Singleplayer; + private System.Windows.Forms.Button Multiplayer; + } +} \ No newline at end of file diff --git a/HorseIsleServer/N00BS/MpOrSp.cs b/HorseIsleServer/N00BS/MpOrSp.cs new file mode 100644 index 0000000..b825151 --- /dev/null +++ b/HorseIsleServer/N00BS/MpOrSp.cs @@ -0,0 +1,35 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace HISP +{ + public partial class MpOrSp : Form + { + public bool Mutliplayer = false; + + public MpOrSp() + { + InitializeComponent(); + } + + private void Singleplayer_Click(object sender, EventArgs e) + { + Mutliplayer = false; + DialogResult = DialogResult.OK; + } + + private void Multiplayer_Click(object sender, EventArgs e) + { + Mutliplayer = true; + DialogResult = DialogResult.OK; + } + + } +} diff --git a/HorseIsleServer/N00BS/MpOrSp.resx b/HorseIsleServer/N00BS/MpOrSp.resx new file mode 100644 index 0000000..2fb02c8 --- /dev/null +++ b/HorseIsleServer/N00BS/MpOrSp.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + 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 + + + \ No newline at end of file diff --git a/HorseIsleServer/N00BS/N00BS.csproj b/HorseIsleServer/N00BS/N00BS.csproj index 8b748a4..a07178b 100644 --- a/HorseIsleServer/N00BS/N00BS.csproj +++ b/HorseIsleServer/N00BS/N00BS.csproj @@ -1,7 +1,7 @@  WinExe - HISP + HISP.Noobs 10.0 true diff --git a/HorseIsleServer/N00BS/N00BS.csproj.user b/HorseIsleServer/N00BS/N00BS.csproj.user index a02acd6..eaa0197 100644 --- a/HorseIsleServer/N00BS/N00BS.csproj.user +++ b/HorseIsleServer/N00BS/N00BS.csproj.user @@ -1,15 +1,21 @@ - - - - - - Form - - - Form - - - Form - - + + + + + + Form + + + Form + + + Form + + + Form + + + Form + + \ No newline at end of file diff --git a/HorseIsleServer/N00BS/Program.cs b/HorseIsleServer/N00BS/Program.cs index 64c5d95..d9bfa91 100644 --- a/HorseIsleServer/N00BS/Program.cs +++ b/HorseIsleServer/N00BS/Program.cs @@ -9,6 +9,7 @@ using HISP.Game.SwfModules; using HISP.Security; using HISP.Server; using HTTP; + using System; using System.Diagnostics; using System.IO; @@ -78,100 +79,118 @@ namespace HISP.Noobs Directory.CreateDirectory(BaseDir); IP = GenIP(); - lfrm = new LoadingForm(); - Task startForm = new Task(StartLRFrm); - startForm.Start(); - - ConfigReader.ConfigurationFileName = Path.Combine(BaseDir, "server.properties"); - ConfigReader.OpenConfig(); - ConfigReader.SqlLite = true; - ConfigReader.LogLevel = 0; - ConfigReader.BindIP = IP; - ConfigReader.CrossDomainPolicyFile = Path.Combine(BaseDir, "CrossDomainPolicy.xml"); - ConfigReader.DatabaseName = Path.Combine(BaseDir, "game1.db"); - - IncrementProgress(); - Database.OpenDatabase(); - IncrementProgress(); - - - if (Database.GetUsers().Length <= 0) - { - RegisterForm rfrm = new RegisterForm(); - if (rfrm.ShowDialog() == DialogResult.Cancel) - GameServer.ShutdownServer(); - - } - // Start Web Server - try{ + try + { cs = new ContentServer(IP); - string[] fileList = Directory.GetFiles(Path.Combine(Directory.GetCurrentDirectory(),"client"), "*", SearchOption.AllDirectories); + string[] fileList = Directory.GetFiles(Path.Combine(Directory.GetCurrentDirectory(), "client"), "*", SearchOption.AllDirectories); foreach (string file in fileList) addToList(file); - }catch(Exception e){ - MessageBox.Show("Web server failed to start: "+e.Message, "Error starting web server", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + catch (Exception e) + { + MessageBox.Show("Web server failed to start: " + e.Message, "Error starting web server", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } - IncrementProgress(); - - // Start HI1 Server - IncrementProgress(); - - Entry.SetShutdownCallback(OnShutdown); - IncrementProgress(); - - CrossDomainPolicy.GetPolicy(); - IncrementProgress(); - - GameDataJson.ReadGamedata(); - IncrementProgress(); - - Map.OpenMap(); - IncrementProgress(); - - World.ReadWorldData(); - IncrementProgress(); - - Treasure.Init(); - IncrementProgress(); - - DroppedItems.Init(); - IncrementProgress(); - - WildHorse.Init(); - IncrementProgress(); - - Drawingroom.LoadAllDrawingRooms(); - IncrementProgress(); - - Brickpoet.LoadPoetryRooms(); - IncrementProgress(); - - Multiroom.CreateMultirooms(); - IncrementProgress(); - - Auction.LoadAllAuctionRooms(); - IncrementProgress(); - - Item.DoSpecialCases(); - IncrementProgress(); - try{ - GameServer.StartServer(); - }catch(Exception e){ - MessageBox.Show("Horse Isle server failed to start: "+e.Message, "Error starting web server", MessageBoxButtons.OK, MessageBoxIcon.Error); + MpOrSp mporsp = new MpOrSp(); + if (mporsp.ShowDialog() != DialogResult.OK) return; + + if (mporsp.Mutliplayer) + { + ServerSelection ssel = new ServerSelection(); + ssel.ShowDialog(); + } + else + { + lfrm = new LoadingForm(); + Task startForm = new Task(StartLRFrm); + startForm.Start(); + + ConfigReader.ConfigurationFileName = Path.Combine(BaseDir, "server.properties"); + ConfigReader.OpenConfig(); + ConfigReader.SqlLite = true; + ConfigReader.LogLevel = 0; + ConfigReader.BindIP = IP; + ConfigReader.CrossDomainPolicyFile = Path.Combine(BaseDir, "CrossDomainPolicy.xml"); + ConfigReader.DatabaseName = Path.Combine(BaseDir, "game1.db"); + + IncrementProgress(); + Database.OpenDatabase(); + IncrementProgress(); + + + if (Database.GetUsers().Length <= 0) + { + RegisterForm rfrm = new RegisterForm(); + if (rfrm.ShowDialog() == DialogResult.Cancel) + GameServer.ShutdownServer(); + + } + + // Start HI1 Server + IncrementProgress(); + + Entry.SetShutdownCallback(OnShutdown); + IncrementProgress(); + + CrossDomainPolicy.GetPolicy(); + IncrementProgress(); + + GameDataJson.ReadGamedata(); + IncrementProgress(); + + Map.OpenMap(); + IncrementProgress(); + + World.ReadWorldData(); + IncrementProgress(); + + Treasure.Init(); + IncrementProgress(); + + DroppedItems.Init(); + IncrementProgress(); + + WildHorse.Init(); + IncrementProgress(); + + Drawingroom.LoadAllDrawingRooms(); + IncrementProgress(); + + Brickpoet.LoadPoetryRooms(); + IncrementProgress(); + + Multiroom.CreateMultirooms(); + IncrementProgress(); + + Auction.LoadAllAuctionRooms(); + IncrementProgress(); + + Item.DoSpecialCases(); + IncrementProgress(); + try + { + GameServer.StartServer(); + } + catch (Exception e) + { + MessageBox.Show("Horse Isle server failed to start: " + e.Message, "Error starting web server", MessageBoxButtons.OK, MessageBoxIcon.Error); + return; + } + IncrementProgress(); + + lfrm.DialogResult = DialogResult.OK; + + SystemTrayIcon stry = new SystemTrayIcon(); + stry.ShowDialog(); + + // Finally, shutdown server + GameServer.ShutdownServer(); } - IncrementProgress(); - lfrm.DialogResult = DialogResult.OK; - - SystemTrayIcon stry = new SystemTrayIcon(); - stry.ShowDialog(); - // Finally, shutdown server - GameServer.ShutdownServer(); } } } diff --git a/HorseIsleServer/N00BS/ServerSelection.Designer.cs b/HorseIsleServer/N00BS/ServerSelection.Designer.cs new file mode 100644 index 0000000..3e8e1ea --- /dev/null +++ b/HorseIsleServer/N00BS/ServerSelection.Designer.cs @@ -0,0 +1,127 @@ +namespace HISP +{ + partial class ServerSelection + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ServerSelection)); + this.joinServer = new System.Windows.Forms.Button(); + this.label2 = new System.Windows.Forms.Label(); + this.label1 = new System.Windows.Forms.Label(); + this.serverIp = new System.Windows.Forms.TextBox(); + this.portNumber = new System.Windows.Forms.NumericUpDown(); + ((System.ComponentModel.ISupportInitialize)(this.portNumber)).BeginInit(); + this.SuspendLayout(); + // + // joinServer + // + this.joinServer.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.joinServer.Location = new System.Drawing.Point(10, 34); + this.joinServer.Name = "joinServer"; + this.joinServer.Size = new System.Drawing.Size(576, 31); + this.joinServer.TabIndex = 0; + this.joinServer.Text = "Join Server"; + this.joinServer.UseVisualStyleBackColor = true; + this.joinServer.Click += new System.EventHandler(this.joinServer_Click); + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(12, 9); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(55, 15); + this.label2.TabIndex = 3; + this.label2.Text = "Server IP:"; + // + // label1 + // + this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(389, 9); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(73, 15); + this.label1.TabIndex = 4; + this.label1.Text = "Server PORT:"; + // + // severIp + // + this.serverIp.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.serverIp.Location = new System.Drawing.Point(73, 6); + this.serverIp.Name = "severIp"; + this.serverIp.Size = new System.Drawing.Size(310, 23); + this.serverIp.TabIndex = 5; + this.serverIp.Text = "game.islehorse.com"; + // + // portNumber + // + this.portNumber.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.portNumber.Location = new System.Drawing.Point(468, 6); + this.portNumber.Maximum = new decimal(new int[] { + 65565, + 0, + 0, + 0}); + this.portNumber.Name = "portNumber"; + this.portNumber.Size = new System.Drawing.Size(120, 23); + this.portNumber.TabIndex = 6; + this.portNumber.Value = new decimal(new int[] { + 12321, + 0, + 0, + 0}); + // + // ServerSelection + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(598, 77); + this.Controls.Add(this.portNumber); + this.Controls.Add(this.serverIp); + this.Controls.Add(this.label1); + this.Controls.Add(this.label2); + this.Controls.Add(this.joinServer); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MinimumSize = new System.Drawing.Size(614, 116); + this.Name = "ServerSelection"; + this.Text = "Server Selection"; + ((System.ComponentModel.ISupportInitialize)(this.portNumber)).EndInit(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.Button joinServer; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.TextBox serverIp; + private System.Windows.Forms.NumericUpDown portNumber; + } +} \ No newline at end of file diff --git a/HorseIsleServer/N00BS/ServerSelection.cs b/HorseIsleServer/N00BS/ServerSelection.cs new file mode 100644 index 0000000..98dd23c --- /dev/null +++ b/HorseIsleServer/N00BS/ServerSelection.cs @@ -0,0 +1,53 @@ +using HISP.Noobs; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Diagnostics; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace HISP +{ + public partial class ServerSelection : Form + { + public ServerSelection() + { + InitializeComponent(); + } + + + public void clientExited(object sender, EventArgs e) + { + if (this.InvokeRequired) + { + this.Invoke(() => + { + this.Close(); + }); + } + else + { + this.Close(); + } + } + public void joinServer_Click(object sender, EventArgs e) + { + this.Hide(); + Process clientProcess = new Process(); + clientProcess.StartInfo.FileName = "flash.dll"; + clientProcess.StartInfo.Arguments = "http://" + Program.IP + "/horseisle.swf?SERVER=" + serverIp.Text + "&PORT=" + portNumber.Value.ToString(); + + clientProcess.StartInfo.RedirectStandardOutput = true; + clientProcess.StartInfo.RedirectStandardError = true; + + clientProcess.EnableRaisingEvents = true; + clientProcess.Exited += clientExited; + clientProcess.Start(); + clientProcess.WaitForExit(); + } + } +} diff --git a/HorseIsleServer/N00BS/ServerSelection.resx b/HorseIsleServer/N00BS/ServerSelection.resx new file mode 100644 index 0000000..2fb02c8 --- /dev/null +++ b/HorseIsleServer/N00BS/ServerSelection.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + 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 + + + \ No newline at end of file diff --git a/HorseIsleServer/N00BS/flash.dll b/HorseIsleServer/N00BS/flash.dll index ecbeaef..6e7210d 100644 Binary files a/HorseIsleServer/N00BS/flash.dll and b/HorseIsleServer/N00BS/flash.dll differ