aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlempamo <[email protected]>2017-08-05 21:14:30 -0400
committerlempamo <[email protected]>2017-08-05 21:14:30 -0400
commita66494723ce44ed7eb38ebef83f59468b7279c2d (patch)
treea043441698b1c75f505de6ffed1ab866feed96bd
parentbc8577b76162054e47e93f0ada8b2fedf95cd80a (diff)
downloadhistacom2-a66494723ce44ed7eb38ebef83f59468b7279c2d.tar.gz
histacom2-a66494723ce44ed7eb38ebef83f59468b7279c2d.tar.bz2
histacom2-a66494723ce44ed7eb38ebef83f59468b7279c2d.zip
added real achievements
-rw-r--r--TimeHACK.Engine/SaveSystem.cs8
-rw-r--r--TimeHACK.Main/AchievementBox.Designer.cs67
-rw-r--r--TimeHACK.Main/AchievementBox.cs59
-rw-r--r--TimeHACK.Main/AchievementBox.resx120
-rw-r--r--TimeHACK.Main/AchievementScreen.Designer.cs62
-rw-r--r--TimeHACK.Main/AchievementScreen.cs3
-rw-r--r--TimeHACK.Main/AchievementScreen.resx52
-rw-r--r--TimeHACK.Main/OS/Win95/Win95Apps/MineSweeper/WinClassicMinesweeper.cs17
-rw-r--r--TimeHACK.Main/OS/Win95/Win95Apps/Win95WindowsExplorer.cs5
-rw-r--r--TimeHACK.Main/Properties/Resources.Designer.cs30
-rw-r--r--TimeHACK.Main/Properties/Resources.resx9
-rw-r--r--TimeHACK.Main/Resources/AchievementMines.pngbin0 -> 1944 bytes
-rw-r--r--TimeHACK.Main/Resources/EndingDestruction.pngbin0 -> 2031 bytes
-rw-r--r--TimeHACK.Main/Resources/EndingPiracy.pngbin0 -> 2144 bytes
-rw-r--r--TimeHACK.Main/Resources/WinClassic/WinClassicEndingsLocked.pngbin444 -> 439 bytes
-rw-r--r--TimeHACK.Main/TimeHACK.Main.csproj12
16 files changed, 401 insertions, 43 deletions
diff --git a/TimeHACK.Engine/SaveSystem.cs b/TimeHACK.Engine/SaveSystem.cs
index 5a90902..6ebdf12 100644
--- a/TimeHACK.Engine/SaveSystem.cs
+++ b/TimeHACK.Engine/SaveSystem.cs
@@ -23,7 +23,6 @@ namespace TimeHACK.Engine
public static class SaveSystem
{
public static Save CurrentSave { get; set; }
- public static FileSystemFolderInfo filesystemflinfo { get; set; }
public static bool DevMode = false;
public static Form troubleshooter;
@@ -598,6 +597,13 @@ namespace TimeHACK.Engine
return byt;
}
+ public static void SaveAchievement(int achievementID)
+ {
+ byte[] byt = File.ReadAllBytes(Path.Combine(DataDirectory, "achieved.thack"));
+ byt[achievementID] = 1;
+ File.WriteAllBytes(Path.Combine(DataDirectory, "achieved.thack"), byt);
+ }
+
public static void SetTheme()
{
switch (CurrentSave.ThemeName)
diff --git a/TimeHACK.Main/AchievementBox.Designer.cs b/TimeHACK.Main/AchievementBox.Designer.cs
new file mode 100644
index 0000000..53b96c8
--- /dev/null
+++ b/TimeHACK.Main/AchievementBox.Designer.cs
@@ -0,0 +1,67 @@
+namespace TimeHACK
+{
+ partial class AchievementBox
+ {
+ /// <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 Windows Form 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.button1 = new System.Windows.Forms.Button();
+ this.SuspendLayout();
+ //
+ // button1
+ //
+ this.button1.BackColor = System.Drawing.Color.Silver;
+ this.button1.FlatAppearance.BorderColor = System.Drawing.Color.Gray;
+ this.button1.FlatAppearance.MouseDownBackColor = System.Drawing.Color.Silver;
+ this.button1.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Silver;
+ this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
+ this.button1.Location = new System.Drawing.Point(128, 59);
+ this.button1.Name = "button1";
+ this.button1.Size = new System.Drawing.Size(68, 35);
+ this.button1.TabIndex = 0;
+ this.button1.Text = "Exit";
+ this.button1.UseVisualStyleBackColor = false;
+ this.button1.Click += new System.EventHandler(this.button1_Click);
+ //
+ // AchievementBox
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.BackgroundImage = global::TimeHACK.Properties.Resources.EndingPiracy;
+ this.ClientSize = new System.Drawing.Size(202, 102);
+ this.Controls.Add(this.button1);
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
+ this.Name = "AchievementBox";
+ this.Text = "Form1";
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Button button1;
+ }
+} \ No newline at end of file
diff --git a/TimeHACK.Main/AchievementBox.cs b/TimeHACK.Main/AchievementBox.cs
new file mode 100644
index 0000000..0d033c6
--- /dev/null
+++ b/TimeHACK.Main/AchievementBox.cs
@@ -0,0 +1,59 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using TimeHACK.Engine;
+
+namespace TimeHACK
+{
+ public partial class AchievementBox : Form
+ {
+ private bool stayOnScreen = false;
+
+ public AchievementBox(int type)
+ {
+ InitializeComponent();
+ switch (type)
+ {
+ case 0: //Piracy Ending
+ BackgroundImage = Properties.Resources.EndingPiracy;
+ stayOnScreen = true;
+ break;
+ case 20:
+ BackgroundImage = Properties.Resources.AchievementMines;
+ break;
+ }
+ Location = new Point(Screen.PrimaryScreen.WorkingArea.Width - 202, -102);
+ while (this.Location.Y != 0)
+ {
+ Thread.Sleep(25);
+ Location = new Point(Location.X, Location.Y + 1);
+ }
+ if (!stayOnScreen)
+ {
+ Thread.Sleep(5000);
+ while (this.Location.Y != -102)
+ {
+ Thread.Sleep(25);
+ Location = new Point(Location.X, Location.Y - 1);
+ }
+ this.Close();
+ }
+ }
+
+ private void button1_Click(object sender, EventArgs e)
+ {
+ Program.title.Show();
+ SaveSystem.CurrentSave = null;
+ SaveSystem.currentTheme = null;
+ foreach (Form f in Application.OpenForms) if (!(f is TitleScreen) && !(f is AchievementBox)) f.Close();
+ this.Close();
+ }
+ }
+}
diff --git a/TimeHACK.Main/AchievementBox.resx b/TimeHACK.Main/AchievementBox.resx
new file mode 100644
index 0000000..1af7de1
--- /dev/null
+++ b/TimeHACK.Main/AchievementBox.resx
@@ -0,0 +1,120 @@
+<?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>
+</root> \ No newline at end of file
diff --git a/TimeHACK.Main/AchievementScreen.Designer.cs b/TimeHACK.Main/AchievementScreen.Designer.cs
index 586db8e..337c33a 100644
--- a/TimeHACK.Main/AchievementScreen.Designer.cs
+++ b/TimeHACK.Main/AchievementScreen.Designer.cs
@@ -32,25 +32,30 @@
System.Windows.Forms.ListViewItem listViewItem1 = new System.Windows.Forms.ListViewItem("??? Ending", 1);
System.Windows.Forms.ListViewItem listViewItem2 = new System.Windows.Forms.ListViewItem("??? Ending", "WinClassicEndingsLocked.png");
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AchievementScreen));
+ System.Windows.Forms.ListViewItem listViewItem3 = new System.Windows.Forms.ListViewItem("Mines Swept Away", 1);
+ System.Windows.Forms.ListViewItem listViewItem4 = new System.Windows.Forms.ListViewItem("Time Hacked", "WinClassicEndingsLocked.png");
this.listView1 = new System.Windows.Forms.ListView();
this.imageList1 = new System.Windows.Forms.ImageList(this.components);
this.button1 = new System.Windows.Forms.Button();
+ this.label1 = new System.Windows.Forms.Label();
+ this.listView2 = new System.Windows.Forms.ListView();
+ this.label2 = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// listView1
//
- this.listView1.BackColor = System.Drawing.Color.Silver;
- this.listView1.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.listView1.BackColor = System.Drawing.Color.White;
+ this.listView1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.listView1.ForeColor = System.Drawing.Color.Black;
listViewItem1.Tag = "piracy";
this.listView1.Items.AddRange(new System.Windows.Forms.ListViewItem[] {
listViewItem1,
listViewItem2});
this.listView1.LargeImageList = this.imageList1;
- this.listView1.Location = new System.Drawing.Point(12, 12);
+ this.listView1.Location = new System.Drawing.Point(12, 24);
this.listView1.MultiSelect = false;
this.listView1.Name = "listView1";
- this.listView1.Size = new System.Drawing.Size(305, 188);
+ this.listView1.Size = new System.Drawing.Size(156, 196);
this.listView1.TabIndex = 0;
this.listView1.TileSize = new System.Drawing.Size(150, 36);
this.listView1.UseCompatibleStateImageBehavior = false;
@@ -73,12 +78,55 @@
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(13, 5);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(45, 13);
+ this.label1.TabIndex = 2;
+ this.label1.Text = "Endings";
+ //
+ // listView2
+ //
+ this.listView2.BackColor = System.Drawing.Color.White;
+ this.listView2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+ this.listView2.ForeColor = System.Drawing.Color.Black;
+ listViewItem3.Tag = "mines";
+ listViewItem3.ToolTipText = "Complete Minesweeper\'s Hard Mode";
+ listViewItem4.ToolTipText = "Complete All Endings";
+ this.listView2.Items.AddRange(new System.Windows.Forms.ListViewItem[] {
+ listViewItem3,
+ listViewItem4});
+ this.listView2.LargeImageList = this.imageList1;
+ this.listView2.Location = new System.Drawing.Point(174, 24);
+ this.listView2.MultiSelect = false;
+ this.listView2.Name = "listView2";
+ this.listView2.ShowItemToolTips = true;
+ this.listView2.Size = new System.Drawing.Size(156, 196);
+ this.listView2.TabIndex = 3;
+ this.listView2.TileSize = new System.Drawing.Size(150, 36);
+ this.listView2.UseCompatibleStateImageBehavior = false;
+ this.listView2.View = System.Windows.Forms.View.Tile;
+ //
+ // label2
+ //
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(174, 5);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(74, 13);
+ this.label2.TabIndex = 4;
+ this.label2.Text = "Achievements";
+ //
// AchievementScreen
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.Silver;
- this.ClientSize = new System.Drawing.Size(329, 261);
+ this.ClientSize = new System.Drawing.Size(343, 261);
+ this.Controls.Add(this.label2);
+ this.Controls.Add(this.listView2);
+ this.Controls.Add(this.label1);
this.Controls.Add(this.button1);
this.Controls.Add(this.listView1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
@@ -86,6 +134,7 @@
this.Text = "Achievements";
this.Load += new System.EventHandler(this.AchievementScreen_Load);
this.ResumeLayout(false);
+ this.PerformLayout();
}
@@ -94,5 +143,8 @@
private System.Windows.Forms.ListView listView1;
private System.Windows.Forms.ImageList imageList1;
private System.Windows.Forms.Button button1;
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.ListView listView2;
+ private System.Windows.Forms.Label label2;
}
} \ No newline at end of file
diff --git a/TimeHACK.Main/AchievementScreen.cs b/TimeHACK.Main/AchievementScreen.cs
index 979ce91..0aafbe0 100644
--- a/TimeHACK.Main/AchievementScreen.cs
+++ b/TimeHACK.Main/AchievementScreen.cs
@@ -30,8 +30,9 @@ namespace TimeHACK
if (achieved[1] == 1)
{
listView1.Items[1].ImageIndex = 0;
- listView1.Items[1].Name = "Netpocalypse Ending";
+ listView1.Items[1].Name = "Destruction Ending";
}
+ if (achieved[20] == 1) listView2.Items[0].ImageIndex = 0;
}
private void button1_Click(object sender, EventArgs e)
diff --git a/TimeHACK.Main/AchievementScreen.resx b/TimeHACK.Main/AchievementScreen.resx
index 7dac302..268b47c 100644
--- a/TimeHACK.Main/AchievementScreen.resx
+++ b/TimeHACK.Main/AchievementScreen.resx
@@ -124,8 +124,8 @@
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
- ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABw
- CwAAAk1TRnQBSQFMAgEBAgEAATABAAEwAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
+ ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACw
+ DAAAAk1TRnQBSQFMAgEBAgEAAUABAAFAAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABgAMAASADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
@@ -153,27 +153,33 @@
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
- AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wEAQAdAAAUHFQMLBxXs
- BgdAAAYHAwMJ+wQDAwENBwPsCf8E7AMABwdAAAkHAgMF+wQDAgETBwLsBf8E7AIACgdAAAsHAgMF+wIB
- FwcC7AX/AgAMB0AADQcBAwL7AQMBARsHAewC/wHsAQAOB0AADQcBAwL7AQMBARsHAewC/wHsAQAOB0AA
- DQcBAwL7AQMBARsHAewC/wHsAQAOB0AADQcBAwL7AQMBARsHAewC/wHsAQAOB0AADQcBAwL7AQMBARsH
- AewC/wHsAQAOB0AADQcBAwL7AQMBARsHAewC/wHsAQAOB0AADQcBAwL7AQMBARsHAewC/wHsAQAOB0AA
- DAcBAwP7AQMB+wEBGQcB7AP/AewB/wEADQdAAAUHAgMEBwEDBPsCAwH7AQEEBwIDCwcC7AQHAewE/wLs
- Af8BAAQHAuwGB0AABAcBAwIHAQMCBwEDBvsCAwH7AQECBwEDAgcBAwkHAewCBwHsAgcB7Ab/AuwB/wEA
- AgcB7AIHAewFB0AABAcBAwIHAQMBBwEDCPsCAwH7AQEBBwEDAgcBAwkHAewCBwHsAQcB7Aj/AuwB/wEA
- AQcB7AIHAewFB0AABQcBAwEHAQMBBwEDCPsCAwH7AQEBBwEDAQcBAwsHAewBBwHsAQcB7Aj/AuwB/wEA
- AQcB7AEHAewGB0AABwcCAwr7AgMB+wEBAQMPBwLsCv8C7AH/AQAB7AgHQAAGBwEDAfsBAwr7AgMB+wEB
- AfsBAw0HAewB/wHsCv8C7AH/AQAB/wHsBwdAAAUHAQMB+wEHAQMK+wIDAfsBAQEHAfsBAwsHAewB/wEH
- AewK/wLsAf8BAAEHAf8B7AYHQAAEBwEDAfsCBwEDCvsCAwH7AQECBwH7AQMJBwHsAf8CBwHsCv8C7AH/
- AQACBwH/AewFB0AAAwcBAwH7AwcBAwr7AgMB+wEBAwcB+wEDBwcB7AH/AwcB7Ar/AuwB/wEAAwcB/wHs
- BAdAAAIHAQMB+wQHAQMK+wIDAfsBAQQHAfsBAwUHAewB/wQHAewK/wLsAf8BAAQHAf8B7AMHQAABBwED
- AfsFBwEDCvsCAwH7AQEFBwH7AQMDBwHsAf8FBwHsCv8C7AH/AQAFBwH/AewCB0AAAQcBAwH7AgcBAwIH
- AQMK+wIDAfsBAQIHAQMCBwH7AQMDBwHsAf8CBwHsAgcB7Ar/AuwB/wEAAgcB7AIHAf8B7AIHQAABBwED
- AfsBBwEDAfsBAwEHAQMK+wIDAfsBAQEHAQMB+wEDAQcB+wEDAwcB7AH/AQcB7AH/AewBBwHsCv8C7AH/
- AQABBwHsAf8B7AEHAf8B7AIHQAACBwEDA/sBAwEHAQMK+wIDAfsBAQEHAQMD+wEDBQcB7AP/AewBBwHs
- Cv8C7AH/AQABBwHsA/8B7AMHQAADBwMDAgcBAwn7AwMB+wEBAgcDAwcHA+wCBwHsCf8D7AH/AQACBwPs
- BAdAAAYHBgMF+wQDAwEBAw0HBuwF/wTsAwAB7AcHQAAFBwEDE/sBAwsHAewT/wHsBgdAAAYHEwMNBxPs
- BwdAAEAHQAABQgFNAT4HAAE+AwABKAMAAYADAAEgAwABAQEAAQEGAAECFgAD//8A/wADAAs=
+ AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/4YAFQMLABX4TAADAwn7
+ BAMDAQ0AA/gJ/wT4UwACAwX7BAMCARMAAvgF/wT4VwACAwX7AgEXAAL4Bf9bAAEDAvsBAwEBGwAB+AL/
+ AfhcAAEDAvsBAwEBGwAB+AL/AfhcAAEDAvsBAwEBGwAB+AL/AfhcAAEDAvsBAwEBGwAB+AL/AfhcAAED
+ AvsBAwEBGwAB+AL/AfhcAAEDAvsBAwEBGwAB+AL/AfhcAAEDAvsBAwEBGwAB+AL/AfhbAAEDA/sBAwH7
+ AQEZAAH4A/8B+AH/UwACAwQAAQME+wIDAfsBAQQAAgMLAAL4BAAB+AT/AvgB/wUAAvhKAAEDAgABAwIA
+ AQMG+wIDAfsBAQIAAQMCAAEDCQAB+AIAAfgCAAH4Bv8C+AH/AwAB+AIAAfhJAAEDAgABAwEAAQMI+wID
+ AfsBAQEAAQMCAAEDCQAB+AIAAfgBAAH4CP8C+AH/AgAB+AIAAfhKAAEDAQABAwEAAQMI+wIDAfsBAQEA
+ AQMBAAEDCwAB+AEAAfgBAAH4CP8C+AH/AgAB+AEAAfhNAAIDCvsCAwH7AQEBAw8AAvgK/wL4Af8BAAH4
+ TgABAwH7AQMK+wIDAfsBAQH7AQMNAAH4Af8B+Ar/AvgB/wEAAf8B+EwAAQMB+wEAAQMK+wIDAfsBAQEA
+ AfsBAwsAAfgB/wEAAfgK/wL4Af8CAAH/AfhKAAEDAfsCAAEDCvsCAwH7AQECAAH7AQMJAAH4Af8CAAH4
+ Cv8C+AH/AwAB/wH4SAABAwH7AwABAwr7AgMB+wEBAwAB+wEDBwAB+AH/AwAB+Ar/AvgB/wQAAf8B+EYA
+ AQMB+wQAAQMK+wIDAfsBAQQAAfsBAwUAAfgB/wQAAfgK/wL4Af8FAAH/AfhEAAEDAfsFAAEDCvsCAwH7
+ AQEFAAH7AQMDAAH4Af8FAAH4Cv8C+AH/BgAB/wH4QwABAwH7AgABAwIAAQMK+wIDAfsBAQIAAQMCAAH7
+ AQMDAAH4Af8CAAH4AgAB+Ar/AvgB/wMAAfgCAAH/AfhDAAEDAfsBAAEDAfsBAwEAAQMK+wIDAfsBAQEA
+ AQMB+wEDAQAB+wEDAwAB+AH/AQAB+AH/AfgBAAH4Cv8C+AH/AgAB+AH/AfgBAAH/AfhEAAEDA/sBAwEA
+ AQMK+wIDAfsBAQEAAQMD+wEDBQAB+AP/AfgBAAH4Cv8C+AH/AgAB+AP/AfhGAAMDAgABAwn7AwMB+wEB
+ AgADAwcAA/gCAAH4Cf8D+AH/AwAD+EoABgMF+wQDAwEBAw0ABvgF/wT4AwAB+EwAAQMT+wEDCwAB+BP/
+ AfhMABMDDQAT+McAAUIBTQE+BwABPgMAASgDAAGAAwABIAMAAQEBAAEBBgABAhYAA/8BAAj/CAAB+AIA
+ AT8B+AIAAT8IAAH8AgABfwH8AgABfwgAAf8BgAEDAv8BgAEDAf8IAAH/AeABDwL/AeABDwH/CAAB/wH4
+ AT8C/wH4AT8B/wgAAf8B+AE/Av8B+AE/Af8IAAH/AfgBPwL/AfgBPwH/CAAB/wH4AT8C/wH4AT8B/wgA
+ Af8B+AE/Av8B+AE/Af8IAAH/AfgBPwL/AfgBPwH/CAAB/wH4AT8C/wH4AT8B/wgAAf8B8AEfAv8B8AEf
+ Af8IAAH5AeABDwE/AfkB4AEPAT8IAAH2AcABBgHfAfYBwAEGAd8IAAH2AYABAgHfAfYBgAECAd8IAAH6
+ AYABAgG/AfoBgAECAb8IAAH+AgAB/wH+AgAB/wgAAfwCAAF/AfwCAAF/CAAB+QEAAQEBPwH5AQABAQE/
+ CAAB8wEAAQEBnwHzAQABAQGfCAAB5wEAAQEBzwHnAQABAQHPCAABzwEAAQEB5wHPAQABAQHnCAABnwEA
+ AQEB8wGfAQABAQHzCAABmwEAAQEBswGbAQABAQGzCAABkQEAAQEBEwGRAQABAQETCAABwQEAAQEBBwHB
+ AQABAQEHCAAB4wEAAQEBjwHjAQABAQGPCAAB/AIAAX8B/AIAAX8IAAH4AgABPwH4AgABPwgAAfwCAAF/
+ AfwCAAF/CAAI/wgACw==
</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
diff --git a/TimeHACK.Main/OS/Win95/Win95Apps/MineSweeper/WinClassicMinesweeper.cs b/TimeHACK.Main/OS/Win95/Win95Apps/MineSweeper/WinClassicMinesweeper.cs
index 8714b65..aa1aeaa 100644
--- a/TimeHACK.Main/OS/Win95/Win95Apps/MineSweeper/WinClassicMinesweeper.cs
+++ b/TimeHACK.Main/OS/Win95/Win95Apps/MineSweeper/WinClassicMinesweeper.cs
@@ -102,22 +102,15 @@ namespace TimeHACK.OS.Win95.Win95Apps
switch (level)
{
case ("easy"):
- if (SaveSystem.CurrentSave.mineSweepE > _game.Time)
- {
- SaveSystem.CurrentSave.mineSweepE = _game.Time;
- }
+ if (SaveSystem.CurrentSave.mineSweepE > _game.Time) SaveSystem.CurrentSave.mineSweepE = _game.Time;
break;
case ("medium"):
- if (SaveSystem.CurrentSave.mineSweepI > _game.Time)
- {
- SaveSystem.CurrentSave.mineSweepI = _game.Time;
- }
+ if (SaveSystem.CurrentSave.mineSweepI > _game.Time) SaveSystem.CurrentSave.mineSweepI = _game.Time;
break;
case ("hard"):
- if (SaveSystem.CurrentSave.mineSweepH > _game.Time)
- {
- SaveSystem.CurrentSave.mineSweepH = _game.Time;
- }
+ if (SaveSystem.CurrentSave.mineSweepH > _game.Time) SaveSystem.CurrentSave.mineSweepH = _game.Time;
+ SaveSystem.SaveAchievement(20);
+ AchievementBox ab = new AchievementBox(20);
break;
}
diff --git a/TimeHACK.Main/OS/Win95/Win95Apps/Win95WindowsExplorer.cs b/TimeHACK.Main/OS/Win95/Win95Apps/Win95WindowsExplorer.cs
index 4cba8db..daa0ea8 100644
--- a/TimeHACK.Main/OS/Win95/Win95Apps/Win95WindowsExplorer.cs
+++ b/TimeHACK.Main/OS/Win95/Win95Apps/Win95WindowsExplorer.cs
@@ -295,7 +295,10 @@ namespace TimeHACK.OS.Win95.Win95Apps
break;
case "time distorter setup":
Win95Installer instTd = new Win95Installer("Time Distorter 0.1");
- instTd.InstallCompleted += (sendr, args) => TitleScreen.frm95.TimeDistorterToolStripMenuItem.Visible = true;
+ instTd.InstallCompleted += (sendr, args) =>
+ {
+ TitleScreen.frm95.TimeDistorterToolStripMenuItem.Visible = true;
+ };
WinClassic appTd = wm.StartWin95(instTd, "Time Distorter Setup", null, true, true);
Program.AddTaskbarItem(appTd, appTd.Tag.ToString(), "Time Distorter Setup", null);
appTd.BringToFront();
diff --git a/TimeHACK.Main/Properties/Resources.Designer.cs b/TimeHACK.Main/Properties/Resources.Designer.cs
index fb32fc2..d4f62fa 100644
--- a/TimeHACK.Main/Properties/Resources.Designer.cs
+++ b/TimeHACK.Main/Properties/Resources.Designer.cs
@@ -81,6 +81,16 @@ namespace TimeHACK.Properties {
}
/// <summary>
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ /// </summary>
+ internal static System.Drawing.Bitmap AchievementMines {
+ get {
+ object obj = ResourceManager.GetObject("AchievementMines", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ /// <summary>
/// Looks up a localized resource of type System.IO.UnmanagedMemoryStream similar to System.IO.MemoryStream.
/// </summary>
internal static System.IO.UnmanagedMemoryStream AIMbuddyjoin {
@@ -138,6 +148,26 @@ namespace TimeHACK.Properties {
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
+ internal static System.Drawing.Bitmap EndingDestruction {
+ get {
+ object obj = ResourceManager.GetObject("EndingDestruction", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ /// </summary>
+ internal static System.Drawing.Bitmap EndingPiracy {
+ get {
+ object obj = ResourceManager.GetObject("EndingPiracy", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ /// </summary>
internal static System.Drawing.Bitmap Exit {
get {
object obj = ResourceManager.GetObject("Exit", resourceCulture);
diff --git a/TimeHACK.Main/Properties/Resources.resx b/TimeHACK.Main/Properties/Resources.resx
index 7163ace..b893582 100644
--- a/TimeHACK.Main/Properties/Resources.resx
+++ b/TimeHACK.Main/Properties/Resources.resx
@@ -708,6 +708,15 @@
<data name="MinesweepNumBox" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\MinesweepNumBox.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
+ <data name="AchievementMines" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\AchievementMines.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="EndingDestruction" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\EndingDestruction.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="EndingPiracy" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\EndingPiracy.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
<data name="Lemon_s_LCD" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\resources\lemon's lcd.ttf;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
diff --git a/TimeHACK.Main/Resources/AchievementMines.png b/TimeHACK.Main/Resources/AchievementMines.png
new file mode 100644
index 0000000..b655153
--- /dev/null
+++ b/TimeHACK.Main/Resources/AchievementMines.png
Binary files differ
diff --git a/TimeHACK.Main/Resources/EndingDestruction.png b/TimeHACK.Main/Resources/EndingDestruction.png
new file mode 100644
index 0000000..2b57930
--- /dev/null
+++ b/TimeHACK.Main/Resources/EndingDestruction.png
Binary files differ
diff --git a/TimeHACK.Main/Resources/EndingPiracy.png b/TimeHACK.Main/Resources/EndingPiracy.png
new file mode 100644
index 0000000..fd3ec35
--- /dev/null
+++ b/TimeHACK.Main/Resources/EndingPiracy.png
Binary files differ
diff --git a/TimeHACK.Main/Resources/WinClassic/WinClassicEndingsLocked.png b/TimeHACK.Main/Resources/WinClassic/WinClassicEndingsLocked.png
index f4c799c..af402bb 100644
--- a/TimeHACK.Main/Resources/WinClassic/WinClassicEndingsLocked.png
+++ b/TimeHACK.Main/Resources/WinClassic/WinClassicEndingsLocked.png
Binary files differ
diff --git a/TimeHACK.Main/TimeHACK.Main.csproj b/TimeHACK.Main/TimeHACK.Main.csproj
index 75777d5..658cc68 100644
--- a/TimeHACK.Main/TimeHACK.Main.csproj
+++ b/TimeHACK.Main/TimeHACK.Main.csproj
@@ -126,6 +126,12 @@
<Compile Include="AchievementScreen.Designer.cs">
<DependentUpon>AchievementScreen.cs</DependentUpon>
</Compile>
+ <Compile Include="AchievementBox.cs">
+ <SubType>Form</SubType>
+ </Compile>
+ <Compile Include="AchievementBox.Designer.cs">
+ <DependentUpon>AchievementBox.cs</DependentUpon>
+ </Compile>
<Compile Include="OS\BIOS\BIOS.cs">
<SubType>Form</SubType>
</Compile>
@@ -344,6 +350,9 @@
<EmbeddedResource Include="AchievementScreen.resx">
<DependentUpon>AchievementScreen.cs</DependentUpon>
</EmbeddedResource>
+ <EmbeddedResource Include="AchievementBox.resx">
+ <DependentUpon>AchievementBox.cs</DependentUpon>
+ </EmbeddedResource>
<EmbeddedResource Include="OS\BIOS\BIOS.resx">
<DependentUpon>BIOS.cs</DependentUpon>
</EmbeddedResource>
@@ -492,6 +501,9 @@
<None Include="Resources\XCross.png" />
<None Include="Resources\XCross_highlighted.png" />
<None Include="Resources\DCTheme_BG.JPG" />
+ <None Include="Resources\EndingDestruction.png" />
+ <None Include="Resources\EndingPiracy.png" />
+ <None Include="Resources\AchievementMines.png" />
<Content Include="Resources\Icon128x.ico" />
<None Include="Resources\ICTheme_BG.jpg" />
<Content Include="Resources\IE4\google.jpg" />