diff options
Diffstat (limited to 'TimeHACK.Main/OS')
| -rw-r--r-- | TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.Designer.cs | 364 | ||||
| -rw-r--r-- | TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.cs | 214 | ||||
| -rw-r--r-- | TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.resx | 244 | ||||
| -rw-r--r-- | TimeHACK.Main/OS/Win95/Win95.cs | 734 | ||||
| -rw-r--r-- | TimeHACK.Main/OS/Win95/Win95Apps/Story/Hack1.cs | 24 | ||||
| -rw-r--r-- | TimeHACK.Main/OS/Win95/Win95Apps/WebChat1998.cs | 398 |
6 files changed, 996 insertions, 982 deletions
diff --git a/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.Designer.cs b/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.Designer.cs index 7688ca0..e580b9c 100644 --- a/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.Designer.cs +++ b/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.Designer.cs @@ -1,182 +1,182 @@ -namespace TimeHACK.OS.Win2K.Win2KApps -{ - partial class SurviveTheDay - { - /// <summary> - /// Required designer variable. - /// </summary> - private System.ComponentModel.IContainer components = null; - - /// <summary> - /// Clean up any resources being used. - /// </summary> - /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Component Designer generated code - - /// <summary> - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// </summary> - private void InitializeComponent() - { - this.components = new System.ComponentModel.Container(); - this.words = new System.Windows.Forms.Label(); - this.time = new System.Windows.Forms.Label(); - this.button1 = new System.Windows.Forms.Button(); - this.button2 = new System.Windows.Forms.Button(); - this.button3 = new System.Windows.Forms.Button(); - this.button4 = new System.Windows.Forms.Button(); - this.button5 = new System.Windows.Forms.Button(); - this.gameoverlbl = new System.Windows.Forms.Label(); - this.timer1 = new System.Windows.Forms.Timer(this.components); - this.SuspendLayout(); - // - // words - // - this.words.Font = new System.Drawing.Font("Courier New", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.words.ForeColor = System.Drawing.Color.White; - this.words.Location = new System.Drawing.Point(35, 35); - this.words.Name = "words"; - this.words.Size = new System.Drawing.Size(568, 149); - this.words.TabIndex = 2; - this.words.Text = "Welcome to Survive The Day.\r\nYour goal is simple.\r\nMake it from 4 AM to midnight " + - "without dying.\r\nThe time will be displayed in the bottom right corner.\r\nGood luc" + - "k... you WILL need it."; - // - // time - // - this.time.Font = new System.Drawing.Font("Courier New", 12F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.time.ForeColor = System.Drawing.Color.Red; - this.time.Location = new System.Drawing.Point(514, 409); - this.time.Name = "time"; - this.time.Size = new System.Drawing.Size(89, 19); - this.time.TabIndex = 3; - this.time.Text = "--:-- --"; - this.time.TextAlign = System.Drawing.ContentAlignment.MiddleRight; - // - // button1 - // - this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button1.Font = new System.Drawing.Font("Courier New", 12F); - this.button1.ForeColor = System.Drawing.Color.White; - this.button1.Location = new System.Drawing.Point(35, 227); - this.button1.Name = "button1"; - this.button1.Size = new System.Drawing.Size(568, 28); - this.button1.TabIndex = 4; - this.button1.Tag = "start"; - this.button1.Text = "Play"; - this.button1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.button1.UseVisualStyleBackColor = true; - this.button1.Click += new System.EventHandler(this.choice_click); - // - // button2 - // - this.button2.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button2.Font = new System.Drawing.Font("Courier New", 12F); - this.button2.ForeColor = System.Drawing.Color.White; - this.button2.Location = new System.Drawing.Point(35, 261); - this.button2.Name = "button2"; - this.button2.Size = new System.Drawing.Size(568, 28); - this.button2.TabIndex = 5; - this.button2.Text = "--"; - this.button2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.button2.UseVisualStyleBackColor = true; - this.button2.Visible = false; - this.button2.Click += new System.EventHandler(this.choice_click); - // - // button3 - // - this.button3.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button3.Font = new System.Drawing.Font("Courier New", 12F); - this.button3.ForeColor = System.Drawing.Color.White; - this.button3.Location = new System.Drawing.Point(35, 295); - this.button3.Name = "button3"; - this.button3.Size = new System.Drawing.Size(568, 28); - this.button3.TabIndex = 6; - this.button3.Text = "--"; - this.button3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.button3.UseVisualStyleBackColor = true; - this.button3.Visible = false; - this.button3.Click += new System.EventHandler(this.choice_click); - // - // button4 - // - this.button4.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button4.Font = new System.Drawing.Font("Courier New", 12F); - this.button4.ForeColor = System.Drawing.Color.White; - this.button4.Location = new System.Drawing.Point(35, 329); - this.button4.Name = "button4"; - this.button4.Size = new System.Drawing.Size(568, 28); - this.button4.TabIndex = 7; - this.button4.Text = "--"; - this.button4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.button4.UseVisualStyleBackColor = true; - this.button4.Visible = false; - this.button4.Click += new System.EventHandler(this.choice_click); - // - // button5 - // - this.button5.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.button5.Font = new System.Drawing.Font("Courier New", 12F); - this.button5.ForeColor = System.Drawing.Color.White; - this.button5.Location = new System.Drawing.Point(35, 363); - this.button5.Name = "button5"; - this.button5.Size = new System.Drawing.Size(568, 28); - this.button5.TabIndex = 8; - this.button5.Text = "--"; - this.button5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - this.button5.UseVisualStyleBackColor = true; - this.button5.Visible = false; - this.button5.Click += new System.EventHandler(this.choice_click); - // - // gameoverlbl - // - this.gameoverlbl.Font = new System.Drawing.Font("Courier New", 12F, System.Drawing.FontStyle.Bold); - this.gameoverlbl.ForeColor = System.Drawing.Color.Red; - this.gameoverlbl.Location = new System.Drawing.Point(35, 192); - this.gameoverlbl.Name = "gameoverlbl"; - this.gameoverlbl.Size = new System.Drawing.Size(568, 21); - this.gameoverlbl.TabIndex = 10; - this.gameoverlbl.Text = "GAME OVER: No death, this shouldn\'t show in game!"; - this.gameoverlbl.Visible = false; - // - // SurviveTheDay - // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.BackColor = System.Drawing.Color.Black; - this.Controls.Add(this.gameoverlbl); - this.Controls.Add(this.button5); - this.Controls.Add(this.button4); - this.Controls.Add(this.button3); - this.Controls.Add(this.button2); - this.Controls.Add(this.button1); - this.Controls.Add(this.time); - this.Controls.Add(this.words); - this.Name = "SurviveTheDay"; - this.Size = new System.Drawing.Size(635, 459); - this.ResumeLayout(false); - - } - - #endregion - private System.Windows.Forms.Label words; - private System.Windows.Forms.Label time; - private System.Windows.Forms.Button button1; - private System.Windows.Forms.Button button2; - private System.Windows.Forms.Button button3; - private System.Windows.Forms.Button button4; - private System.Windows.Forms.Button button5; - private System.Windows.Forms.Label gameoverlbl; - private System.Windows.Forms.Timer timer1; - } -} +namespace TimeHACK.OS.Win2K.Win2KApps
+{
+ partial class SurviveTheDay
+ {
+ /// <summary>
+ /// Required designer variable.
+ /// </summary>
+ private System.ComponentModel.IContainer components = null;
+
+ /// <summary>
+ /// Clean up any resources being used.
+ /// </summary>
+ /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Component Designer generated code
+
+ /// <summary>
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ /// </summary>
+ private void InitializeComponent()
+ {
+ this.components = new System.ComponentModel.Container();
+ this.words = new System.Windows.Forms.Label();
+ this.time = new System.Windows.Forms.Label();
+ this.button1 = new System.Windows.Forms.Button();
+ this.button2 = new System.Windows.Forms.Button();
+ this.button3 = new System.Windows.Forms.Button();
+ this.button4 = new System.Windows.Forms.Button();
+ this.button5 = new System.Windows.Forms.Button();
+ this.gameoverlbl = new System.Windows.Forms.Label();
+ this.timer1 = new System.Windows.Forms.Timer(this.components);
+ this.SuspendLayout();
+ //
+ // words
+ //
+ this.words.Font = new System.Drawing.Font("Courier New", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.words.ForeColor = System.Drawing.Color.White;
+ this.words.Location = new System.Drawing.Point(35, 35);
+ this.words.Name = "words";
+ this.words.Size = new System.Drawing.Size(568, 149);
+ this.words.TabIndex = 2;
+ this.words.Text = "Welcome to Survive The Day.\r\nYour goal is simple.\r\nMake it from 4 AM to midnight " +
+ "without dying.\r\nThe time will be displayed in the bottom right corner.\r\nGood luc" +
+ "k... you WILL need it.";
+ //
+ // time
+ //
+ this.time.Font = new System.Drawing.Font("Courier New", 12F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.time.ForeColor = System.Drawing.Color.Red;
+ this.time.Location = new System.Drawing.Point(514, 409);
+ this.time.Name = "time";
+ this.time.Size = new System.Drawing.Size(89, 19);
+ this.time.TabIndex = 3;
+ this.time.Text = "--:-- --";
+ this.time.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+ //
+ // button1
+ //
+ this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
+ this.button1.Font = new System.Drawing.Font("Courier New", 12F);
+ this.button1.ForeColor = System.Drawing.Color.White;
+ this.button1.Location = new System.Drawing.Point(35, 227);
+ this.button1.Name = "button1";
+ this.button1.Size = new System.Drawing.Size(568, 28);
+ this.button1.TabIndex = 4;
+ this.button1.Tag = "start";
+ this.button1.Text = "Play";
+ this.button1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+ this.button1.UseVisualStyleBackColor = true;
+ this.button1.Click += new System.EventHandler(this.choice_click);
+ //
+ // button2
+ //
+ this.button2.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
+ this.button2.Font = new System.Drawing.Font("Courier New", 12F);
+ this.button2.ForeColor = System.Drawing.Color.White;
+ this.button2.Location = new System.Drawing.Point(35, 261);
+ this.button2.Name = "button2";
+ this.button2.Size = new System.Drawing.Size(568, 28);
+ this.button2.TabIndex = 5;
+ this.button2.Text = "--";
+ this.button2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+ this.button2.UseVisualStyleBackColor = true;
+ this.button2.Visible = false;
+ this.button2.Click += new System.EventHandler(this.choice_click);
+ //
+ // button3
+ //
+ this.button3.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
+ this.button3.Font = new System.Drawing.Font("Courier New", 12F);
+ this.button3.ForeColor = System.Drawing.Color.White;
+ this.button3.Location = new System.Drawing.Point(35, 295);
+ this.button3.Name = "button3";
+ this.button3.Size = new System.Drawing.Size(568, 28);
+ this.button3.TabIndex = 6;
+ this.button3.Text = "--";
+ this.button3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+ this.button3.UseVisualStyleBackColor = true;
+ this.button3.Visible = false;
+ this.button3.Click += new System.EventHandler(this.choice_click);
+ //
+ // button4
+ //
+ this.button4.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
+ this.button4.Font = new System.Drawing.Font("Courier New", 12F);
+ this.button4.ForeColor = System.Drawing.Color.White;
+ this.button4.Location = new System.Drawing.Point(35, 329);
+ this.button4.Name = "button4";
+ this.button4.Size = new System.Drawing.Size(568, 28);
+ this.button4.TabIndex = 7;
+ this.button4.Text = "--";
+ this.button4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+ this.button4.UseVisualStyleBackColor = true;
+ this.button4.Visible = false;
+ this.button4.Click += new System.EventHandler(this.choice_click);
+ //
+ // button5
+ //
+ this.button5.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
+ this.button5.Font = new System.Drawing.Font("Courier New", 12F);
+ this.button5.ForeColor = System.Drawing.Color.White;
+ this.button5.Location = new System.Drawing.Point(35, 363);
+ this.button5.Name = "button5";
+ this.button5.Size = new System.Drawing.Size(568, 28);
+ this.button5.TabIndex = 8;
+ this.button5.Text = "--";
+ this.button5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+ this.button5.UseVisualStyleBackColor = true;
+ this.button5.Visible = false;
+ this.button5.Click += new System.EventHandler(this.choice_click);
+ //
+ // gameoverlbl
+ //
+ this.gameoverlbl.Font = new System.Drawing.Font("Courier New", 12F, System.Drawing.FontStyle.Bold);
+ this.gameoverlbl.ForeColor = System.Drawing.Color.Red;
+ this.gameoverlbl.Location = new System.Drawing.Point(35, 192);
+ this.gameoverlbl.Name = "gameoverlbl";
+ this.gameoverlbl.Size = new System.Drawing.Size(568, 21);
+ this.gameoverlbl.TabIndex = 10;
+ this.gameoverlbl.Text = "GAME OVER: No death, this shouldn\'t show in game!";
+ this.gameoverlbl.Visible = false;
+ //
+ // SurviveTheDay
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.BackColor = System.Drawing.Color.Black;
+ this.Controls.Add(this.gameoverlbl);
+ this.Controls.Add(this.button5);
+ this.Controls.Add(this.button4);
+ this.Controls.Add(this.button3);
+ this.Controls.Add(this.button2);
+ this.Controls.Add(this.button1);
+ this.Controls.Add(this.time);
+ this.Controls.Add(this.words);
+ this.Name = "SurviveTheDay";
+ this.Size = new System.Drawing.Size(635, 459);
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+ private System.Windows.Forms.Label words;
+ private System.Windows.Forms.Label time;
+ private System.Windows.Forms.Button button1;
+ private System.Windows.Forms.Button button2;
+ private System.Windows.Forms.Button button3;
+ private System.Windows.Forms.Button button4;
+ private System.Windows.Forms.Button button5;
+ private System.Windows.Forms.Label gameoverlbl;
+ private System.Windows.Forms.Timer timer1;
+ }
+}
diff --git a/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.cs b/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.cs index 7c8bbe7..f4b199f 100644 --- a/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.cs +++ b/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.cs @@ -1,107 +1,107 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Drawing; -using System.Data; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; -using System.Media; -using System.Threading; -using Newtonsoft.Json.Linq; - -namespace TimeHACK.OS.Win2K.Win2KApps -{ - public partial class SurviveTheDay : UserControl - { - public SurviveTheDay() - { - InitializeComponent(); - } - - private void typer(string newtxt, string overtxt, bool over) - { - SoundPlayer beep = new SoundPlayer(Properties.Resources.std_beep); - SoundPlayer overbeep = new SoundPlayer(Properties.Resources.std_gobeep); - this.Invoke(new Action(() => - { - words.Text = ""; - gameoverlbl.Text = ""; - gameoverlbl.Show(); - })); - - foreach (char c in newtxt) - { - this.Invoke(new Action(() => - { - words.Text += c; - })); - beep.Play(); - Thread.Sleep(40); - } - - if (over) - { - Thread.Sleep(200); - foreach (char c in overtxt) - { - this.Invoke(new Action(() => - { - gameoverlbl.Text += c; - })); - overbeep.Play(); - Thread.Sleep(150); - } - } - this.Invoke(new Action(() => - { - if ((string)button1.Tag != "") button1.Show(); - if ((string)button2.Tag != "") button2.Show(); - if ((string)button3.Tag != "") button3.Show(); - if ((string)button4.Tag != "") button4.Show(); - if ((string)button5.Tag != "") button5.Show(); - })); - } - - private void choice_click(object sender, EventArgs e) - { - Button btn = sender as Button; - - if (btn.Tag == null | (string)btn.Tag == "") return; - if ((string)btn.Tag == "quit") - { - this.ParentForm.Close(); - return; - } - - JObject story = JObject.Parse(Properties.Resources.std_story); - JToken path = story[(string)btn.Tag]; - - button1.Text = (string)path["btn1txt"]; - button1.Tag = (string)path["btn1tag"]; - button1.Hide(); - button2.Text = (string)path["btn2txt"]; - button2.Tag = (string)path["btn2tag"]; - button2.Hide(); - button3.Text = (string)path["btn3txt"]; - button3.Tag = (string)path["btn3tag"]; - button3.Hide(); - button4.Text = (string)path["btn4txt"]; - button4.Tag = (string)path["btn4tag"]; - button4.Hide(); - button5.Text = (string)path["btn5txt"]; - button5.Tag = (string)path["btn5tag"]; - button5.Hide(); - - time.Text = (string)path["time"]; - - var t = new Thread(new ThreadStart(() => - { - typer((string)path["txt"], (string)path["overtxt"], (bool)path["over"]); - })); - t.IsBackground = true; - t.Start(); - } - } -} +using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Data;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Media;
+using System.Threading;
+using Newtonsoft.Json.Linq;
+
+namespace TimeHACK.OS.Win2K.Win2KApps
+{
+ public partial class SurviveTheDay : UserControl
+ {
+ public SurviveTheDay()
+ {
+ InitializeComponent();
+ }
+
+ private void typer(string newtxt, string overtxt, bool over)
+ {
+ SoundPlayer beep = new SoundPlayer(Properties.Resources.std_beep);
+ SoundPlayer overbeep = new SoundPlayer(Properties.Resources.std_gobeep);
+ this.Invoke(new Action(() =>
+ {
+ words.Text = "";
+ gameoverlbl.Text = "";
+ gameoverlbl.Show();
+ }));
+
+ foreach (char c in newtxt)
+ {
+ this.Invoke(new Action(() =>
+ {
+ words.Text += c;
+ }));
+ beep.Play();
+ Thread.Sleep(40);
+ }
+
+ if (over)
+ {
+ Thread.Sleep(200);
+ foreach (char c in overtxt)
+ {
+ this.Invoke(new Action(() =>
+ {
+ gameoverlbl.Text += c;
+ }));
+ overbeep.Play();
+ Thread.Sleep(150);
+ }
+ }
+ this.Invoke(new Action(() =>
+ {
+ if ((string)button1.Tag != "") button1.Show();
+ if ((string)button2.Tag != "") button2.Show();
+ if ((string)button3.Tag != "") button3.Show();
+ if ((string)button4.Tag != "") button4.Show();
+ if ((string)button5.Tag != "") button5.Show();
+ }));
+ }
+
+ private void choice_click(object sender, EventArgs e)
+ {
+ Button btn = sender as Button;
+
+ if (btn.Tag == null | (string)btn.Tag == "") return;
+ if ((string)btn.Tag == "quit")
+ {
+ this.ParentForm.Close();
+ return;
+ }
+
+ JObject story = JObject.Parse(Properties.Resources.std_story);
+ JToken path = story[(string)btn.Tag];
+
+ button1.Text = (string)path["btn1txt"];
+ button1.Tag = (string)path["btn1tag"];
+ button1.Hide();
+ button2.Text = (string)path["btn2txt"];
+ button2.Tag = (string)path["btn2tag"];
+ button2.Hide();
+ button3.Text = (string)path["btn3txt"];
+ button3.Tag = (string)path["btn3tag"];
+ button3.Hide();
+ button4.Text = (string)path["btn4txt"];
+ button4.Tag = (string)path["btn4tag"];
+ button4.Hide();
+ button5.Text = (string)path["btn5txt"];
+ button5.Tag = (string)path["btn5tag"];
+ button5.Hide();
+
+ time.Text = (string)path["time"];
+
+ var t = new Thread(new ThreadStart(() =>
+ {
+ typer((string)path["txt"], (string)path["overtxt"], (bool)path["over"]);
+ }));
+ t.IsBackground = true;
+ t.Start();
+ }
+ }
+}
diff --git a/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.resx b/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.resx index 1f666f2..aac33d5 100644 --- a/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.resx +++ b/TimeHACK.Main/OS/Win2K/Win2KApps/SurviveTheDay.resx @@ -1,123 +1,123 @@ -<?xml version="1.0" encoding="utf-8"?> -<root> - <!-- - Microsoft ResX Schema - - Version 2.0 - - The primary goals of this format is to allow a simple XML format - that is mostly human readable. The generation and parsing of the - various data types are done through the TypeConverter classes - associated with the data types. - - Example: - - ... ado.net/XML headers & schema ... - <resheader name="resmimetype">text/microsoft-resx</resheader> - <resheader name="version">2.0</resheader> - <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> - <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> - <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> - <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> - <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> - <value>[base64 mime encoded serialized .NET Framework object]</value> - </data> - <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> - <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> - <comment>This is a comment</comment> - </data> - - There are any number of "resheader" rows that contain simple - name/value pairs. - - Each data row contains a name, and value. The row also contains a - type or mimetype. Type corresponds to a .NET class that support - text/value conversion through the TypeConverter architecture. - Classes that don't support this are serialized and stored with the - mimetype set. - - The mimetype is used for serialized objects, and tells the - ResXResourceReader how to depersist the object. This is currently not - extensible. For a given mimetype the value must be set accordingly: - - Note - application/x-microsoft.net.object.binary.base64 is the format - that the ResXResourceWriter will generate, however the reader can - read any of the formats listed below. - - mimetype: application/x-microsoft.net.object.binary.base64 - value : The object must be serialized with - : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter - : and then encoded with base64 encoding. - - mimetype: application/x-microsoft.net.object.soap.base64 - value : The object must be serialized with - : System.Runtime.Serialization.Formatters.Soap.SoapFormatter - : and then encoded with base64 encoding. - - mimetype: application/x-microsoft.net.object.bytearray.base64 - value : The object must be serialized into a byte array - : using a System.ComponentModel.TypeConverter - : and then encoded with base64 encoding. - --> - <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> - <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> - <xsd:element name="root" msdata:IsDataSet="true"> - <xsd:complexType> - <xsd:choice maxOccurs="unbounded"> - <xsd:element name="metadata"> - <xsd:complexType> - <xsd:sequence> - <xsd:element name="value" type="xsd:string" minOccurs="0" /> - </xsd:sequence> - <xsd:attribute name="name" use="required" type="xsd:string" /> - <xsd:attribute name="type" type="xsd:string" /> - <xsd:attribute name="mimetype" type="xsd:string" /> - <xsd:attribute ref="xml:space" /> - </xsd:complexType> - </xsd:element> - <xsd:element name="assembly"> - <xsd:complexType> - <xsd:attribute name="alias" type="xsd:string" /> - <xsd:attribute name="name" type="xsd:string" /> - </xsd:complexType> - </xsd:element> - <xsd:element name="data"> - <xsd:complexType> - <xsd:sequence> - <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> - <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> - </xsd:sequence> - <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> - <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> - <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> - <xsd:attribute ref="xml:space" /> - </xsd:complexType> - </xsd:element> - <xsd:element name="resheader"> - <xsd:complexType> - <xsd:sequence> - <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> - </xsd:sequence> - <xsd:attribute name="name" type="xsd:string" use="required" /> - </xsd:complexType> - </xsd:element> - </xsd:choice> - </xsd:complexType> - </xsd:element> - </xsd:schema> - <resheader name="resmimetype"> - <value>text/microsoft-resx</value> - </resheader> - <resheader name="version"> - <value>2.0</value> - </resheader> - <resheader name="reader"> - <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> - </resheader> - <resheader name="writer"> - <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> - </resheader> - <metadata name="timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> - <value>17, 17</value> - </metadata> +<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 2.0
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">2.0</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>[base64 mime encoded serialized .NET Framework object]</value>
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+ <comment>This is a comment</comment>
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used for serialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="metadata">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" />
+ </xsd:sequence>
+ <xsd:attribute name="name" use="required" type="xsd:string" />
+ <xsd:attribute name="type" type="xsd:string" />
+ <xsd:attribute name="mimetype" type="xsd:string" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="assembly">
+ <xsd:complexType>
+ <xsd:attribute name="alias" type="xsd:string" />
+ <xsd:attribute name="name" type="xsd:string" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>2.0</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <metadata name="timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>17, 17</value>
+ </metadata>
</root>
\ No newline at end of file diff --git a/TimeHACK.Main/OS/Win95/Win95.cs b/TimeHACK.Main/OS/Win95/Win95.cs index 155214e..8b272ec 100644 --- a/TimeHACK.Main/OS/Win95/Win95.cs +++ b/TimeHACK.Main/OS/Win95/Win95.cs @@ -1,367 +1,367 @@ -using System; -using System.Collections.Generic; -using System.Drawing; -using System.IO; -using System.Media; -using System.Windows.Forms; -using TimeHACK.Engine; -using TimeHACK.Engine.Template; -using TimeHACK.Engine.Template.Taskbars; -using TimeHACK.OS.Win95.Win95Apps; -using TimeHACK.WinClassicForms; -using TimeHACK.OS.Win95.Win95Apps.Story; - -namespace TimeHACK.OS.Win95 -{ - public partial class Windows95 : Form - { - private SoundPlayer startsound; - private SoundPlayer stopsound; - public WindowManager wm = new WindowManager(); - - public List<WinClassic> nonimportantapps = new List<WinClassic>(); - public WinClassic webchat; - public WinClassic ie; - public TaskBarController tb = new TaskBarController(); - - public int currentappcount = 0; - - public bool webchatInstalled = false; - - public bool hiddenpadamsFound = false; - - // Init the form - public Windows95() - { - InitializeComponent(); - } - - // When New Game is clicked in TitleScreen.cs - private void Desktop_Load(object sender, EventArgs e) - { - // Make Font Mandatory - fontLoad(); - - // Play Windows 95 Start Sound - Stream audio = Properties.Resources.Win95Start; - startsound = new SoundPlayer(audio); - startsound.Play(); - - // Hide the Startmenu - startmenu.Hide(); - - // Check for and set VM Mode - if (this.FormBorderStyle != FormBorderStyle.None) - { - this.Text = "TimeHACK - VM Mode"; - } - - // Start the ClockTimer - clockTimer.Start(); - - // Set the StartMenu seperator - startmenuitems.Items.Insert(6, new ToolStripSeparator()); - - //nonimportantapps.Capacity = 100; - this.SendToBack(); - - // Update the taskbar - UpdateTaskbar(); - - // Bring to this the front - this.BringToFront(); - } - - private void fontLoad() - { - this.taskbartime.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); - this.ProgramsToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); - this.DocumentsToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); - this.SettingsToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); - this.FindToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); - this.HelpToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); - this.RunToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); - this.SuspendToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); - this.ShutdownToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); - this.desktopicons.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); - } - - #region StartMenu - - // Paint StartMenu - private void startmenu_Paint(object sender, PaintEventArgs e) - { - // Paint the StartMenu - ControlPaint.DrawBorder(e.Graphics, startmenu.ClientRectangle, - SystemColors.ControlLightLight, 2, ButtonBorderStyle.Outset, - SystemColors.ControlLightLight, 2, ButtonBorderStyle.Outset, - SystemColors.ControlLightLight, 2, ButtonBorderStyle.Outset, - SystemColors.ControlLightLight, 2, ButtonBorderStyle.Outset); - } - - // StartButton Click - private void startbutton_Click(object sender, EventArgs e) - { - startmenu.Show(); - startmenu.BringToFront(); - } - - // Shutdown button - private void ShutdownToolStripMenuItem_Click(object sender, EventArgs e) - { - startsound.Stop(); - Stream audio = Properties.Resources.tada; - stopsound = new SoundPlayer(audio); - stopsound.Play(); - System.Threading.Thread.Sleep(1500); - Application.Exit(); - } - - #endregion //Region - - // When add new folder is clicked - private void FolderToolStripMenuItem_Click(object sender, EventArgs e) - { - desktopicons.Items.Add("New Folder"); - } - - // Give Year Code - NYI - private void taskbartime_Click(object sender, EventArgs e) - { - //TODO: Set Up Save System - } - - // Set the Clock - private void clockTimer_Tick(object sender, EventArgs e) - { - taskbartime.Text = DateTime.Now.ToString("h:mm tt"); - } - - // On Desktop MouseDown - private void desktop_mousedown(object sender, MouseEventArgs e) - { - if (e.Button == MouseButtons.Right) - { - rightclickbackproperties.Show(); - rightclickbackproperties.BringToFront(); - rightclickbackproperties.Location = MousePosition; - } - - // If - else if (e.Button == MouseButtons.Left) - { - rightclickbackproperties.Hide(); - startmenu.Hide(); - } - - else if (e.Button == MouseButtons.Middle) - { - rightclickbackproperties.Hide(); - } - } - - private void NotePadToolStripMenuItem_Click(object sender, EventArgs e) - { - WinClassicNotepad wp = new WinClassicNotepad(); - WinClassic app = wm.startWin95(wp, "Notepad", Properties.Resources.Win95IconNotepad, true, true); - AddTaskBarItem(app, app.Tag.ToString(), "Notepad", Properties.Resources.Win95IconNotepad); - - nonimportantapps.Add(app); - nonimportantapps[nonimportantapps.Count - 1].BringToFront(); - nonimportantapps[nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(NonImportantApp_Closing); - - app.BringToFront(); - startmenu.Hide(); - } - private void windowManagerTestToolStripMenuItem_Click(object sender, EventArgs e) - { - TestApp test = new TestApp(); - WinClassic app = wm.startWin95(test, "TestApp", null, true, true); - AddTaskBarItem(app, app.Tag.ToString(), "TestApp", null); - app.BringToFront(); - startmenu.Hide(); - } - - private void downloaderTestToolStripMenuItem_Click(object sender, EventArgs e) - { - WinClassicDownloader opendownload = new WinClassicDownloader(); - WinClassic app = wm.startWin95(opendownload, "Downloader", null, false, true); - opendownload.appName.Text = "Downloading: Survive The Day"; - - AddTaskBarItem(app, app.Tag.ToString(), "Downloader", null); - - app.BringToFront(); - startmenu.Hide(); - } - - private void installerTestToolStripMenuItem_Click(object sender, EventArgs e) - { - WinClassicInstaller openinstaller = new WinClassicInstaller(); - WinClassic app = wm.startWin95(openinstaller, "Installer", null, false, true); - - AddTaskBarItem(app, app.Tag.ToString(), "Installer", null); - - app.BringToFront(); - startmenu.Hide(); - } - - private void InternetExplorerToolStripMenuItem_Click(object sender, EventArgs e) - { - if (ie != null) { wm.startInfobox95("Error Opening Internet Explorer", "An instance of Internet Explorer 4 is already open.", Properties.Resources.Win95Warning); return; } - ie = wm.startWin95(new WinClassicIE4(), "Internet Explorer 4", Properties.Resources.Win95IconIE4, true, true); - AddTaskBarItem(ie, ie.Tag.ToString(), "Internet Explorer 4", Properties.Resources.Win95IconIE4); - ie.BringToFront(); - ie.FormClosing += new FormClosingEventHandler(InternetExplorer4_Closing); - startmenu.Hide(); - } - - private void desktopicons_Click(object sender, EventArgs e) - { - Point objDrawingPoint = desktopicons.PointToClient(Cursor.Position); - ListViewItem objListViewItem; - - if (objDrawingPoint != null) - { - objListViewItem = desktopicons.GetItemAt(objDrawingPoint.X, objDrawingPoint.Y); - if (objListViewItem != null) - { - if (objListViewItem.Text == "Internet Explorer") - { - if (ie != null) { wm.startInfobox95("Error Opening Internet Explorer", "An instance of Internet Explorer 4 is already open.", Properties.Resources.Win95Warning); return; } - ie = wm.startWin95(new WinClassicIE4(), "Internet Explorer 4", Properties.Resources.Win95IconIE4, true, true); - AddTaskBarItem(ie, ie.Tag.ToString(), "Internet Explorer 4", Properties.Resources.Win95IconIE4); - ie.BringToFront(); - ie.FormClosing += new FormClosingEventHandler(InternetExplorer4_Closing); - startmenu.Hide(); - } else if (objListViewItem.Text == "Web Chat Setup") - { - WinClassicInstaller inst = new WinClassicInstaller(); - inst.installname.Text = "Web Chat 1998"; - WinClassic app = wm.startWin95(inst, "Web Chat Setup", null, true, true); - AddTaskBarItem(app, app.Tag.ToString(), "Web Chat Setup", null); - app.BringToFront(); - startmenu.Hide(); - } - } - } - } - - private void infoboxTestToolStripMenuItem_Click(object sender, EventArgs e) - { - WinClassic app = wm.startInfobox95("AShifter's Infobox", "This is the very first TimeHACK Infobox. It's really easy to call, too! \n Just use wm.startInfobox95(String title, String text, Image erroricon)!", Properties.Resources.Win95Info); - - app.BringToFront(); - startmenu.Hide(); - } - private void WebChatToolStripMenuItem_Click(object sender, EventArgs e) - { - WebChat1998 wc = new WebChat1998(); - WinClassic app = wm.startWin95(wc, "Web Chat 1998", null, true, true); - - AddTaskBarItem(app, app.Tag.ToString(), "Web Chat 1998", null); - - app.BringToFront(); - startmenu.Hide(); - } - public void NonImportantApp_Closing(object sender, FormClosingEventArgs e) - { - nonimportantapps.Remove((WinClassic)sender); - } - private void InternetExplorer4_Closing(object sender, FormClosingEventArgs e) - { - ie = null; - } - - private void WordPadToolStripMenuItem_Click(object sender, EventArgs e) - { - WinClassicWordPad wp = new WinClassicWordPad(); - WinClassic app = wm.startWin95(wp, "Wordpad", Properties.Resources.Win95IconWordpad, true, true); - AddTaskBarItem(app, app.Tag.ToString(), "Wordpad", Properties.Resources.Win95IconWordpad); - - nonimportantapps.Add(app); - nonimportantapps[nonimportantapps.Count - 1].BringToFront(); - nonimportantapps[nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(NonImportantApp_Closing); - - app.BringToFront(); - startmenu.Hide(); - } - - public void AddTaskBarItem(Form Application, string ApplicationID, string ApplicationName, Image ApplicationIcon) - { - taskbarItems = tb.AddTaskbarItem95(ApplicationID, ApplicationName, ApplicationIcon, (UserControl)new Win95TaskBarItem(), taskbarItems); - Application.FormClosed += new FormClosedEventHandler(UpdateTaskbarFromClosedApplication); - } - - public void UpdateTaskbarFromClosedApplication(object sender, FormClosedEventArgs e) - { - UpdateTaskbar(); - } - - public void UpdateTaskbar() - { - // Clears out all the items on the taskbar - taskbarItems.Controls.Clear(); - - // Loops through all the Applications which are open - - foreach (Form form in tb.GetAllOpenApps()) - { - // Calls that "AddToTaskbar" thing - taskbarItems = tb.AddTaskbarItem95(form.Tag.ToString(), form.Text.ToString(), (Image)form.Icon.ToBitmap(), (UserControl)new Win95TaskBarItem(), taskbarItems); - } - } - - private void AddressBookToolStripMenuItem_Click(object sender, EventArgs e) - { - WinClassicAddressBook ab = new WinClassicAddressBook(); - WinClassic app = wm.startWin95(ab, "Address Book", Properties.Resources.WinClassicAddressBook, true, true); - AddTaskBarItem(app, app.Tag.ToString(), "Address Book", Properties.Resources.WinClassicAddressBook); - - nonimportantapps.Add(app); - nonimportantapps[nonimportantapps.Count - 1].BringToFront(); - nonimportantapps[nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(NonImportantApp_Closing); - - app.BringToFront(); - startmenu.Hide(); - } - - private void WindowsExplorerToolStripMenuItem1_Click(object sender, EventArgs e) - { - FileDialogBoxManager.IsInOpenDialog = false; - FileDialogBoxManager.IsInSaveDialog = false; - WinClassicWindowsExplorer we = new WinClassicWindowsExplorer(); - WinClassic app = wm.startWin95(we, "Windows Explorer", Properties.Resources.WinClassicFileExplorer, true, true); - AddTaskBarItem(app, app.Tag.ToString(), "Windows Explorer", Properties.Resources.WinClassicFileExplorer); - - nonimportantapps.Add(app); - nonimportantapps[nonimportantapps.Count - 1].BringToFront(); - nonimportantapps[nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(NonImportantApp_Closing); - - app.BringToFront(); - startmenu.Hide(); - } - - private void storyTest1ToolStripMenuItem_Click(object sender, EventArgs e) - { - Win95Apps.Story.Hack1 story = new Win95Apps.Story.Hack1(); - story.startObjective(); - } - - private void temp_for_std(object sender, EventArgs e) - { - Win2K.Win2KApps.SurviveTheDay std = new Win2K.Win2KApps.SurviveTheDay(); - WinClassic app = wm.startWin95(std, "Survive The Day", null, false, false); - AddTaskBarItem(app, app.Tag.ToString(), "Survive The Day", null); - - nonimportantapps.Add(app); - nonimportantapps[nonimportantapps.Count - 1].BringToFront(); - nonimportantapps[nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(NonImportantApp_Closing); - - app.BringToFront(); - startmenu.Hide(); - } - - //TODO: Add Outlook Express 4 - } -} - +using System;
+using System.Collections.Generic;
+using System.Drawing;
+using System.IO;
+using System.Media;
+using System.Windows.Forms;
+using TimeHACK.Engine;
+using TimeHACK.Engine.Template;
+using TimeHACK.Engine.Template.Taskbars;
+using TimeHACK.OS.Win95.Win95Apps;
+using TimeHACK.WinClassicForms;
+using TimeHACK.OS.Win95.Win95Apps.Story;
+
+namespace TimeHACK.OS.Win95
+{
+ public partial class Windows95 : Form
+ {
+ private SoundPlayer startsound;
+ private SoundPlayer stopsound;
+ public WindowManager wm = new WindowManager();
+
+ public List<WinClassic> nonimportantapps = new List<WinClassic>();
+ public WinClassic webchat;
+ public WinClassic ie;
+ public TaskBarController tb = new TaskBarController();
+
+ public int currentappcount = 0;
+
+ public bool webchatInstalled = false;
+
+ public bool hiddenpadamsFound = false;
+
+ // Init the form
+ public Windows95()
+ {
+ InitializeComponent();
+ }
+
+ // When New Game is clicked in TitleScreen.cs
+ private void Desktop_Load(object sender, EventArgs e)
+ {
+ // Make Font Mandatory
+ fontLoad();
+
+ // Play Windows 95 Start Sound
+ Stream audio = Properties.Resources.Win95Start;
+ startsound = new SoundPlayer(audio);
+ startsound.Play();
+
+ // Hide the Startmenu
+ startmenu.Hide();
+
+ // Check for and set VM Mode
+ if (this.FormBorderStyle != FormBorderStyle.None)
+ {
+ this.Text = "TimeHACK - VM Mode";
+ }
+
+ // Start the ClockTimer
+ clockTimer.Start();
+
+ // Set the StartMenu seperator
+ startmenuitems.Items.Insert(6, new ToolStripSeparator());
+
+ //nonimportantapps.Capacity = 100;
+ this.SendToBack();
+
+ // Update the taskbar
+ UpdateTaskbar();
+
+ // Bring to this the front
+ this.BringToFront();
+ }
+
+ private void fontLoad()
+ {
+ this.taskbartime.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
+ this.ProgramsToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
+ this.DocumentsToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
+ this.SettingsToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
+ this.FindToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
+ this.HelpToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
+ this.RunToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
+ this.SuspendToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
+ this.ShutdownToolStripMenuItem.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
+ this.desktopicons.Font = new Font(TitleScreen.pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
+ }
+
+ #region StartMenu
+
+ // Paint StartMenu
+ private void startmenu_Paint(object sender, PaintEventArgs e)
+ {
+ // Paint the StartMenu
+ ControlPaint.DrawBorder(e.Graphics, startmenu.ClientRectangle,
+ SystemColors.ControlLightLight, 2, ButtonBorderStyle.Outset,
+ SystemColors.ControlLightLight, 2, ButtonBorderStyle.Outset,
+ SystemColors.ControlLightLight, 2, ButtonBorderStyle.Outset,
+ SystemColors.ControlLightLight, 2, ButtonBorderStyle.Outset);
+ }
+
+ // StartButton Click
+ private void startbutton_Click(object sender, EventArgs e)
+ {
+ startmenu.Show();
+ startmenu.BringToFront();
+ }
+
+ // Shutdown button
+ private void ShutdownToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ startsound.Stop();
+ Stream audio = Properties.Resources.tada;
+ stopsound = new SoundPlayer(audio);
+ stopsound.Play();
+ System.Threading.Thread.Sleep(1500);
+ Application.Exit();
+ }
+
+ #endregion //Region
+
+ // When add new folder is clicked
+ private void FolderToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ desktopicons.Items.Add("New Folder");
+ }
+
+ // Give Year Code - NYI
+ private void taskbartime_Click(object sender, EventArgs e)
+ {
+ //TODO: Set Up Save System
+ }
+
+ // Set the Clock
+ private void clockTimer_Tick(object sender, EventArgs e)
+ {
+ taskbartime.Text = DateTime.Now.ToString("h:mm tt");
+ }
+
+ // On Desktop MouseDown
+ private void desktop_mousedown(object sender, MouseEventArgs e)
+ {
+ if (e.Button == MouseButtons.Right)
+ {
+ rightclickbackproperties.Show();
+ rightclickbackproperties.BringToFront();
+ rightclickbackproperties.Location = MousePosition;
+ }
+
+ // If
+ else if (e.Button == MouseButtons.Left)
+ {
+ rightclickbackproperties.Hide();
+ startmenu.Hide();
+ }
+
+ else if (e.Button == MouseButtons.Middle)
+ {
+ rightclickbackproperties.Hide();
+ }
+ }
+
+ private void NotePadToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ WinClassicNotepad wp = new WinClassicNotepad();
+ WinClassic app = wm.startWin95(wp, "Notepad", Properties.Resources.Win95IconNotepad, true, true);
+ AddTaskBarItem(app, app.Tag.ToString(), "Notepad", Properties.Resources.Win95IconNotepad);
+
+ nonimportantapps.Add(app);
+ nonimportantapps[nonimportantapps.Count - 1].BringToFront();
+ nonimportantapps[nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(NonImportantApp_Closing);
+
+ app.BringToFront();
+ startmenu.Hide();
+ }
+ private void windowManagerTestToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ TestApp test = new TestApp();
+ WinClassic app = wm.startWin95(test, "TestApp", null, true, true);
+ AddTaskBarItem(app, app.Tag.ToString(), "TestApp", null);
+ app.BringToFront();
+ startmenu.Hide();
+ }
+
+ private void downloaderTestToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ WinClassicDownloader opendownload = new WinClassicDownloader();
+ WinClassic app = wm.startWin95(opendownload, "Downloader", null, false, true);
+ opendownload.appName.Text = "Downloading: Survive The Day";
+
+ AddTaskBarItem(app, app.Tag.ToString(), "Downloader", null);
+
+ app.BringToFront();
+ startmenu.Hide();
+ }
+
+ private void installerTestToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ WinClassicInstaller openinstaller = new WinClassicInstaller();
+ WinClassic app = wm.startWin95(openinstaller, "Installer", null, false, true);
+
+ AddTaskBarItem(app, app.Tag.ToString(), "Installer", null);
+
+ app.BringToFront();
+ startmenu.Hide();
+ }
+
+ private void InternetExplorerToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ if (ie != null) { wm.startInfobox95("Error Opening Internet Explorer", "An instance of Internet Explorer 4 is already open.", Properties.Resources.Win95Warning); return; }
+ ie = wm.startWin95(new WinClassicIE4(), "Internet Explorer 4", Properties.Resources.Win95IconIE4, true, true);
+ AddTaskBarItem(ie, ie.Tag.ToString(), "Internet Explorer 4", Properties.Resources.Win95IconIE4);
+ ie.BringToFront();
+ ie.FormClosing += new FormClosingEventHandler(InternetExplorer4_Closing);
+ startmenu.Hide();
+ }
+
+ private void desktopicons_Click(object sender, EventArgs e)
+ {
+ Point objDrawingPoint = desktopicons.PointToClient(Cursor.Position);
+ ListViewItem objListViewItem;
+
+ if (objDrawingPoint != null)
+ {
+ objListViewItem = desktopicons.GetItemAt(objDrawingPoint.X, objDrawingPoint.Y);
+ if (objListViewItem != null)
+ {
+ if (objListViewItem.Text == "Internet Explorer")
+ {
+ if (ie != null) { wm.startInfobox95("Error Opening Internet Explorer", "An instance of Internet Explorer 4 is already open.", Properties.Resources.Win95Warning); return; }
+ ie = wm.startWin95(new WinClassicIE4(), "Internet Explorer 4", Properties.Resources.Win95IconIE4, true, true);
+ AddTaskBarItem(ie, ie.Tag.ToString(), "Internet Explorer 4", Properties.Resources.Win95IconIE4);
+ ie.BringToFront();
+ ie.FormClosing += new FormClosingEventHandler(InternetExplorer4_Closing);
+ startmenu.Hide();
+ } else if (objListViewItem.Text == "Web Chat Setup")
+ {
+ WinClassicInstaller inst = new WinClassicInstaller();
+ inst.installname.Text = "Web Chat 1998";
+ WinClassic app = wm.startWin95(inst, "Web Chat Setup", null, true, true);
+ AddTaskBarItem(app, app.Tag.ToString(), "Web Chat Setup", null);
+ app.BringToFront();
+ startmenu.Hide();
+ }
+ }
+ }
+ }
+
+ private void infoboxTestToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ WinClassic app = wm.startInfobox95("AShifter's Infobox", "This is the very first TimeHACK Infobox. It's really easy to call, too! \n Just use wm.startInfobox95(String title, String text, Image erroricon)!", Properties.Resources.Win95Info);
+
+ app.BringToFront();
+ startmenu.Hide();
+ }
+ private void WebChatToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ WebChat1998 wc = new WebChat1998();
+ WinClassic app = wm.startWin95(wc, "Web Chat 1998", null, true, true);
+
+ AddTaskBarItem(app, app.Tag.ToString(), "Web Chat 1998", null);
+
+ app.BringToFront();
+ startmenu.Hide();
+ }
+ public void NonImportantApp_Closing(object sender, FormClosingEventArgs e)
+ {
+ nonimportantapps.Remove((WinClassic)sender);
+ }
+ private void InternetExplorer4_Closing(object sender, FormClosingEventArgs e)
+ {
+ ie = null;
+ }
+
+ private void WordPadToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ WinClassicWordPad wp = new WinClassicWordPad();
+ WinClassic app = wm.startWin95(wp, "Wordpad", Properties.Resources.Win95IconWordpad, true, true);
+ AddTaskBarItem(app, app.Tag.ToString(), "Wordpad", Properties.Resources.Win95IconWordpad);
+
+ nonimportantapps.Add(app);
+ nonimportantapps[nonimportantapps.Count - 1].BringToFront();
+ nonimportantapps[nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(NonImportantApp_Closing);
+
+ app.BringToFront();
+ startmenu.Hide();
+ }
+
+ public void AddTaskBarItem(Form Application, string ApplicationID, string ApplicationName, Image ApplicationIcon)
+ {
+ taskbarItems = tb.AddTaskbarItem95(ApplicationID, ApplicationName, ApplicationIcon, (UserControl)new Win95TaskBarItem(), taskbarItems);
+ Application.FormClosed += new FormClosedEventHandler(UpdateTaskbarFromClosedApplication);
+ }
+
+ public void UpdateTaskbarFromClosedApplication(object sender, FormClosedEventArgs e)
+ {
+ UpdateTaskbar();
+ }
+
+ public void UpdateTaskbar()
+ {
+ // Clears out all the items on the taskbar
+ taskbarItems.Controls.Clear();
+
+ // Loops through all the Applications which are open
+
+ foreach (Form form in tb.GetAllOpenApps())
+ {
+ // Calls that "AddToTaskbar" thing
+ taskbarItems = tb.AddTaskbarItem95(form.Tag.ToString(), form.Text.ToString(), (Image)form.Icon.ToBitmap(), (UserControl)new Win95TaskBarItem(), taskbarItems);
+ }
+ }
+
+ private void AddressBookToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ WinClassicAddressBook ab = new WinClassicAddressBook();
+ WinClassic app = wm.startWin95(ab, "Address Book", Properties.Resources.WinClassicAddressBook, true, true);
+ AddTaskBarItem(app, app.Tag.ToString(), "Address Book", Properties.Resources.WinClassicAddressBook);
+
+ nonimportantapps.Add(app);
+ nonimportantapps[nonimportantapps.Count - 1].BringToFront();
+ nonimportantapps[nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(NonImportantApp_Closing);
+
+ app.BringToFront();
+ startmenu.Hide();
+ }
+
+ private void WindowsExplorerToolStripMenuItem1_Click(object sender, EventArgs e)
+ {
+ FileDialogBoxManager.IsInOpenDialog = false;
+ FileDialogBoxManager.IsInSaveDialog = false;
+ WinClassicWindowsExplorer we = new WinClassicWindowsExplorer();
+ WinClassic app = wm.startWin95(we, "Windows Explorer", Properties.Resources.WinClassicFileExplorer, true, true);
+ AddTaskBarItem(app, app.Tag.ToString(), "Windows Explorer", Properties.Resources.WinClassicFileExplorer);
+
+ nonimportantapps.Add(app);
+ nonimportantapps[nonimportantapps.Count - 1].BringToFront();
+ nonimportantapps[nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(NonImportantApp_Closing);
+
+ app.BringToFront();
+ startmenu.Hide();
+ }
+
+ private void storyTest1ToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ Win95Apps.Story.Hack1 story = new Win95Apps.Story.Hack1();
+ story.startObjective();
+ }
+
+ private void temp_for_std(object sender, EventArgs e)
+ {
+ Win2K.Win2KApps.SurviveTheDay std = new Win2K.Win2KApps.SurviveTheDay();
+ WinClassic app = wm.startWin95(std, "Survive The Day", null, false, false);
+ AddTaskBarItem(app, app.Tag.ToString(), "Survive The Day", null);
+
+ nonimportantapps.Add(app);
+ nonimportantapps[nonimportantapps.Count - 1].BringToFront();
+ nonimportantapps[nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(NonImportantApp_Closing);
+
+ app.BringToFront();
+ startmenu.Hide();
+ }
+
+ //TODO: Add Outlook Express 4
+ }
+}
+
diff --git a/TimeHACK.Main/OS/Win95/Win95Apps/Story/Hack1.cs b/TimeHACK.Main/OS/Win95/Win95Apps/Story/Hack1.cs index 4a2c988..a8a1323 100644 --- a/TimeHACK.Main/OS/Win95/Win95Apps/Story/Hack1.cs +++ b/TimeHACK.Main/OS/Win95/Win95Apps/Story/Hack1.cs @@ -7,6 +7,7 @@ using System.Media; using System.Text; using System.Threading; using System.Threading.Tasks; +using System.Windows.Forms; using TimeHACK.Engine; namespace TimeHACK.OS.Win95.Win95Apps.Story @@ -21,20 +22,33 @@ namespace TimeHACK.OS.Win95.Win95Apps.Story // This is the very first story script! public void startObjective() { - + Thread terminalThread = new Thread(main); + terminalThread.Start(); + } + + public void main() + { wm.startWin95(term, "MS-DOS Prompt", null, true, true); term.WriteLine("192.168.0.1 Connecting..."); + + term.Invalidate(); + Application.DoEvents(); + Thread soundThread = new Thread(dialup_sound_play); soundThread.Start(); - soundThread.Join(); + soundThread.Join(); + term.WriteLine("192.168.0.1 Connected."); - } + Application.DoEvents(); + Boolean ended = false; + while (!ended) { + } + } public void dialup_sound_play() { - SoundPlayer dialup_sound; - + SoundPlayer dialup_sound; // Play Dial-up Sound Stream audio = Properties.Resources.modem_dial; dialup_sound = new SoundPlayer(audio); diff --git a/TimeHACK.Main/OS/Win95/Win95Apps/WebChat1998.cs b/TimeHACK.Main/OS/Win95/Win95Apps/WebChat1998.cs index f191a77..5c18285 100644 --- a/TimeHACK.Main/OS/Win95/Win95Apps/WebChat1998.cs +++ b/TimeHACK.Main/OS/Win95/Win95Apps/WebChat1998.cs @@ -1,199 +1,199 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Drawing; -using System.Data; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; -using TimeHACK.Engine; -using System.Threading; -using System.Media; -using System.IO; -using TimeHACK.Engine.Template; - -namespace TimeHACK.OS.Win95.Win95Apps -{ - public partial class WebChat1998 : UserControl - { - int chat_index = 0; - WindowManager wm = new WindowManager(); - MessageParser wcmp = new MessageParser(); - bool correctname = false; - bool guessing = false; - - bool wimponclose = false; - - SoundPlayer join = new SoundPlayer(Properties.Resources.AIMbuddyjoin); - SoundPlayer leave = new SoundPlayer(Properties.Resources.AIMbuddyleave); - SoundPlayer send = new SoundPlayer(Properties.Resources.AIMmessagesent); - SoundPlayer receive = new SoundPlayer(Properties.Resources.AIMmessagereceived); - SoundPlayer file = new SoundPlayer(Properties.Resources.AIMfile); - - BSODCreator bc = new BSODCreator(); - Win9XBSOD bsod = null; - Win9XBSOD bsod2 = null; - - public WebChat1998() - { - InitializeComponent(); - bsod = bc.throw9XBSOD(false, BSODCreator.BSODCauses.WimpEnding); - bsod2 = bc.throw9XBSOD(false, BSODCreator.BSODCauses.PiracyEnding); - bsod.Hide(); - bsod2.Hide(); - } - private void WebChat1998_Load(object sender, EventArgs e) - { - button5.Hide(); - button4.Hide(); - button3.Hide(); - label5.Hide(); - } - private void Button1_Click(object sender, EventArgs e) - { - if (txtscreenname.Text == "") { wm.startInfobox95("Invalid Username", "Your username cannot be blank.", Properties.Resources.Win95Warning); return; } - if (txtscreenname.Text.Length > 12) { wm.startInfobox95("Invalid Username", "Your username needs to be less than 12 characters.", Properties.Resources.Win95Warning); return; } - if (txtscreenname.Text.Contains(" ")) { wm.startInfobox95("Invalid Username", "Your username cannot contain spaces.", Properties.Resources.Win95Warning); return; } - if (txtscreenname.Text == "SkyHigh" | txtscreenname.Text == "rain49" | txtscreenname.Text == "12padams") { wm.startInfobox95("Invalid Username", "That username is already taken.", Properties.Resources.Win95Warning); return; } - ParentForm.AcceptButton = button2; - TitleScreen.username = txtscreenname.Text; - login.Hide(); - listBox1.Items.Add(TitleScreen.username); - history.AppendText("System: " + TitleScreen.username + " has joined the chat." + Environment.NewLine); - join.Play(); - Chat.Start(); - } - - private void Chat_Tick(object sender, EventArgs e) - { - if (!guessing) - { - history.AppendText(wcmp.ParseMessage(resources.GetString("convo"), chat_index, TitleScreen.username) + Environment.NewLine); - switch (wcmp.GetSpecial(resources.GetString("convo"), chat_index)) - { - case "addsh": - listBox1.Items.Add("SkyHigh"); - join.Play(); - this.ParentForm.FormClosing += WebChatClosing; - wimponclose = true; - break; - case "nameguess": - typechat.Hide(); - button2.Hide(); - button3.Show(); - button4.Show(); - Chat.Stop(); - guessing = true; - receive.Play(); - break; - case "addrain": - listBox1.Items.Add("rain49"); - join.Play(); - break; - case "addfile": - label5.Show(); - button5.Show(); - file.Play(); - break; - case "addpadams": - listBox1.Items.Add("12padams"); - join.Play(); - ((WinClassic)this.ParentForm).closeDisabled = true; - TitleScreen.frm95.startbutton.Enabled = false; - TitleScreen.frm95.startmenu.Hide(); - break; - case "nostart": - TitleScreen.frm95.startbutton.Hide(); - TitleScreen.frm95.startmenu.Hide(); - receive.Play(); - break; - case "removerain": - listBox1.Items.Remove("rain49"); - leave.Play(); - break; - case "iconsded": - TitleScreen.frm95.desktopicons.Enabled = false; - receive.Play(); - break; - case "taskbarded": - TitleScreen.frm95.taskbar.Hide(); - receive.Play(); - break; - case "iconsgone": - TitleScreen.frm95.desktopicons.Hide(); - receive.Play(); - break; - case "bigtext": - history.Font = new Font("Arial", 12F, FontStyle.Regular, GraphicsUnit.Point, ((0))); - ((WinClassic)this.ParentForm).maximizebutton.Enabled = false; - ((WinClassic)this.ParentForm).WindowState = FormWindowState.Maximized; - receive.Play(); - break; - case "notopbar": - ((WinClassic)this.ParentForm).programtopbar = null; - receive.Play(); - break; // TODO: Finish WebChat 1998 - default: - receive.Play(); - break; - } - if (TitleScreen.username == "devspeed") Chat.Interval = wcmp.GetMessageDelay(resources.GetString("convo"), chat_index) / 2; - else Chat.Interval = wcmp.GetMessageDelay(resources.GetString("convo"), chat_index); - } - else - { - if (correctname) - { - history.AppendText("SkyHigh: yay you got it right!" + Environment.NewLine); - } - else - { - history.AppendText("SkyHigh: sorry, my name is actually bill" + Environment.NewLine); - } - guessing = false; - receive.Play(); - Chat.Interval = wcmp.GetMessageDelay(resources.GetString("convo"), chat_index); - } - chat_index++; - } - - private void WebChatClosing(object sender, FormClosingEventArgs e) - { - if (wimponclose) - { - bsod.FormClosing += new FormClosingEventHandler(Program.title.BSODRewind); - bsod.Show(); - bsod.BringToFront(); - bsod2.Close(); - } - } - - private void Button2_Click(object sender, EventArgs e) - { - if (typechat.Text != "") history.AppendText(TitleScreen.username + ": " + typechat.Text + Environment.NewLine); - typechat.Text = ""; - send.Play(); - } - - private void Button3_Click(object sender, EventArgs e) - { - correctname = false; - button2.Show(); - button3.Hide(); - button4.Hide(); - typechat.Show(); - Chat.Start(); - } - - private void Button4_Click(object sender, EventArgs e) - { - correctname = true; - button2.Show(); - button3.Hide(); - button4.Hide(); - typechat.Show(); - Chat.Start(); - } - } -} +using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Data;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using TimeHACK.Engine;
+using System.Threading;
+using System.Media;
+using System.IO;
+using TimeHACK.Engine.Template;
+
+namespace TimeHACK.OS.Win95.Win95Apps
+{
+ public partial class WebChat1998 : UserControl
+ {
+ int chat_index = 0;
+ WindowManager wm = new WindowManager();
+ MessageParser wcmp = new MessageParser();
+ bool correctname = false;
+ bool guessing = false;
+
+ bool wimponclose = false;
+
+ SoundPlayer join = new SoundPlayer(Properties.Resources.AIMbuddyjoin);
+ SoundPlayer leave = new SoundPlayer(Properties.Resources.AIMbuddyleave);
+ SoundPlayer send = new SoundPlayer(Properties.Resources.AIMmessagesent);
+ SoundPlayer receive = new SoundPlayer(Properties.Resources.AIMmessagereceived);
+ SoundPlayer file = new SoundPlayer(Properties.Resources.AIMfile);
+
+ BSODCreator bc = new BSODCreator();
+ Win9XBSOD bsod = null;
+ Win9XBSOD bsod2 = null;
+
+ public WebChat1998()
+ {
+ InitializeComponent();
+ bsod = bc.throw9XBSOD(false, BSODCreator.BSODCauses.WimpEnding);
+ bsod2 = bc.throw9XBSOD(false, BSODCreator.BSODCauses.PiracyEnding);
+ bsod.Hide();
+ bsod2.Hide();
+ }
+ private void WebChat1998_Load(object sender, EventArgs e)
+ {
+ button5.Hide();
+ button4.Hide();
+ button3.Hide();
+ label5.Hide();
+ }
+ private void Button1_Click(object sender, EventArgs e)
+ {
+ if (txtscreenname.Text == "") { wm.startInfobox95("Invalid Username", "Your username cannot be blank.", Properties.Resources.Win95Warning); return; }
+ if (txtscreenname.Text.Length > 12) { wm.startInfobox95("Invalid Username", "Your username needs to be less than 12 characters.", Properties.Resources.Win95Warning); return; }
+ if (txtscreenname.Text.Contains(" ")) { wm.startInfobox95("Invalid Username", "Your username cannot contain spaces.", Properties.Resources.Win95Warning); return; }
+ if (txtscreenname.Text == "SkyHigh" | txtscreenname.Text == "rain49" | txtscreenname.Text == "12padams") { wm.startInfobox95("Invalid Username", "That username is already taken.", Properties.Resources.Win95Warning); return; }
+ ParentForm.AcceptButton = button2;
+ TitleScreen.username = txtscreenname.Text;
+ login.Hide();
+ listBox1.Items.Add(TitleScreen.username);
+ history.AppendText("System: " + TitleScreen.username + " has joined the chat." + Environment.NewLine);
+ join.Play();
+ Chat.Start();
+ }
+
+ private void Chat_Tick(object sender, EventArgs e)
+ {
+ if (!guessing)
+ {
+ history.AppendText(wcmp.ParseMessage(resources.GetString("convo"), chat_index, TitleScreen.username) + Environment.NewLine);
+ switch (wcmp.GetSpecial(resources.GetString("convo"), chat_index))
+ {
+ case "addsh":
+ listBox1.Items.Add("SkyHigh");
+ join.Play();
+ this.ParentForm.FormClosing += WebChatClosing;
+ wimponclose = true;
+ break;
+ case "nameguess":
+ typechat.Hide();
+ button2.Hide();
+ button3.Show();
+ button4.Show();
+ Chat.Stop();
+ guessing = true;
+ receive.Play();
+ break;
+ case "addrain":
+ listBox1.Items.Add("rain49");
+ join.Play();
+ break;
+ case "addfile":
+ label5.Show();
+ button5.Show();
+ file.Play();
+ break;
+ case "addpadams":
+ listBox1.Items.Add("12padams");
+ join.Play();
+ ((WinClassic)this.ParentForm).closeDisabled = true;
+ TitleScreen.frm95.startbutton.Enabled = false;
+ TitleScreen.frm95.startmenu.Hide();
+ break;
+ case "nostart":
+ TitleScreen.frm95.startbutton.Hide();
+ TitleScreen.frm95.startmenu.Hide();
+ receive.Play();
+ break;
+ case "removerain":
+ listBox1.Items.Remove("rain49");
+ leave.Play();
+ break;
+ case "iconsded":
+ TitleScreen.frm95.desktopicons.Enabled = false;
+ receive.Play();
+ break;
+ case "taskbarded":
+ TitleScreen.frm95.taskbar.Hide();
+ receive.Play();
+ break;
+ case "iconsgone":
+ TitleScreen.frm95.desktopicons.Hide();
+ receive.Play();
+ break;
+ case "bigtext":
+ history.Font = new Font("Arial", 12F, FontStyle.Regular, GraphicsUnit.Point, ((0)));
+ ((WinClassic)this.ParentForm).maximizebutton.Enabled = false;
+ ((WinClassic)this.ParentForm).WindowState = FormWindowState.Maximized;
+ receive.Play();
+ break;
+ case "notopbar":
+ ((WinClassic)this.ParentForm).programtopbar = null;
+ receive.Play();
+ break; // TODO: Finish WebChat 1998
+ default:
+ receive.Play();
+ break;
+ }
+ if (TitleScreen.username == "devspeed") Chat.Interval = wcmp.GetMessageDelay(resources.GetString("convo"), chat_index) / 2;
+ else Chat.Interval = wcmp.GetMessageDelay(resources.GetString("convo"), chat_index);
+ }
+ else
+ {
+ if (correctname)
+ {
+ history.AppendText("SkyHigh: yay you got it right!" + Environment.NewLine);
+ }
+ else
+ {
+ history.AppendText("SkyHigh: sorry, my name is actually bill" + Environment.NewLine);
+ }
+ guessing = false;
+ receive.Play();
+ Chat.Interval = wcmp.GetMessageDelay(resources.GetString("convo"), chat_index);
+ }
+ chat_index++;
+ }
+
+ private void WebChatClosing(object sender, FormClosingEventArgs e)
+ {
+ if (wimponclose)
+ {
+ bsod.FormClosing += new FormClosingEventHandler(Program.title.BSODRewind);
+ bsod.Show();
+ bsod.BringToFront();
+ bsod2.Close();
+ }
+ }
+
+ private void Button2_Click(object sender, EventArgs e)
+ {
+ if (typechat.Text != "") history.AppendText(TitleScreen.username + ": " + typechat.Text + Environment.NewLine);
+ typechat.Text = "";
+ send.Play();
+ }
+
+ private void Button3_Click(object sender, EventArgs e)
+ {
+ correctname = false;
+ button2.Show();
+ button3.Hide();
+ button4.Hide();
+ typechat.Show();
+ Chat.Start();
+ }
+
+ private void Button4_Click(object sender, EventArgs e)
+ {
+ correctname = true;
+ button2.Show();
+ button3.Hide();
+ button4.Hide();
+ typechat.Show();
+ Chat.Start();
+ }
+ }
+}
|
