diff --git a/ShiftOS.WinForms/Applications/ShiftLetters.cs b/ShiftOS.WinForms/Applications/ShiftLetters.cs
index b5e9aa4..42e19f8 100644
--- a/ShiftOS.WinForms/Applications/ShiftLetters.cs
+++ b/ShiftOS.WinForms/Applications/ShiftLetters.cs
@@ -38,7 +38,7 @@ namespace ShiftOS.WinForms.Applications
{
[MultiplayerOnly]
[Launcher("ShiftLetters", false, null, "Games")]
- [RequiresUpgrade("shiftletters")]
+ [AppscapeEntry("ShiftLetters", "Let's see how much you know about ShiftOS by playing this tiny little Hangman game! Shiftorium Upgrades exist to allow you to buy different word sets!", 300, 150, null, "Games")]
[WinOpen("shiftletters")]
[DefaultIcon("iconShiftLetters")]
public partial class ShiftLetters : UserControl, IShiftOSWindow
diff --git a/ShiftOS.WinForms/Applications/ShiftSweeper.cs b/ShiftOS.WinForms/Applications/ShiftSweeper.cs
index 72e9062..f23ed73 100644
--- a/ShiftOS.WinForms/Applications/ShiftSweeper.cs
+++ b/ShiftOS.WinForms/Applications/ShiftSweeper.cs
@@ -35,7 +35,7 @@ using ShiftOS.Engine;
namespace ShiftOS.WinForms.Applications {
[Launcher("ShiftSweeper", true, "al_shiftsweeper", "Games")]
- [RequiresUpgrade("shiftsweeper")]
+ [AppscapeEntry("ShiftSweeper", "A simple Minesweeper game built for ShiftOS! Careful, it's a hard one.", 1600, 800, "shiftletters", "Games")]
[MultiplayerOnly]
[WinOpen("shiftsweeper")]
[DefaultIcon("iconShiftSweeper")]
diff --git a/ShiftOS.WinForms/Resources/Shiftorium.txt b/ShiftOS.WinForms/Resources/Shiftorium.txt
index cc68c6f..41b50a7 100644
--- a/ShiftOS.WinForms/Resources/Shiftorium.txt
+++ b/ShiftOS.WinForms/Resources/Shiftorium.txt
@@ -151,13 +151,6 @@
},
// SHIFTLETTERS AND WORDLISTS
- {
- Name: "ShiftLetters",
- Cost: 150,
- Dependencies: null,
- Category: "Applications",
- Description: "Sick and tired of playing Pong? Buy this upgrade to get a whole new game!"
- },
{
Name: "AL ShiftLetters",
Cost: 150,
@@ -1028,13 +1021,6 @@
// SHIFTSWEEPER
- {
- Name: "ShiftSweeper",
- Cost: 800,
- Dependencies: "shiftletters",
- Category: "Applications",
- Description: "Getting bored with Pong and ShiftLetters? Try this BRAND NEW game called ShiftSweeper!"
- },
{
Name: "AL ShiftSweeper",
Cost: 100,
diff --git a/ShiftOS.WinForms/ShiftOS.WinForms.csproj b/ShiftOS.WinForms/ShiftOS.WinForms.csproj
index da8eafc..9844657 100644
--- a/ShiftOS.WinForms/ShiftOS.WinForms.csproj
+++ b/ShiftOS.WinForms/ShiftOS.WinForms.csproj
@@ -382,6 +382,12 @@
MainHomepage.cs
+
+ UserControl
+
+
+ ShiftGames.cs
+
@@ -574,6 +580,9 @@
MainHomepage.cs
+
+ ShiftGames.cs
+
UniteLoginDialog.cs
diff --git a/ShiftOS.WinForms/ShiftnetSites/ShiftGames.Designer.cs b/ShiftOS.WinForms/ShiftnetSites/ShiftGames.Designer.cs
new file mode 100644
index 0000000..3b4bf9e
--- /dev/null
+++ b/ShiftOS.WinForms/ShiftnetSites/ShiftGames.Designer.cs
@@ -0,0 +1,74 @@
+namespace ShiftOS.WinForms.ShiftnetSites
+{
+ partial class ShiftGames
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Component Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ShiftGames));
+ this.label1 = new System.Windows.Forms.Label();
+ this.label2 = new System.Windows.Forms.Label();
+ this.SuspendLayout();
+ //
+ // label1
+ //
+ this.label1.Dock = System.Windows.Forms.DockStyle.Top;
+ this.label1.Location = new System.Drawing.Point(0, 0);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(571, 65);
+ this.label1.TabIndex = 0;
+ this.label1.Tag = "header2";
+ this.label1.Text = "ShiftGames/Minimatch";
+ this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ //
+ // label2
+ //
+ this.label2.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.label2.Location = new System.Drawing.Point(0, 65);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(571, 309);
+ this.label2.TabIndex = 1;
+ this.label2.Text = resources.GetString("label2.Text");
+ this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ //
+ // ShiftGames
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.Controls.Add(this.label2);
+ this.Controls.Add(this.label1);
+ this.Name = "ShiftGames";
+ this.Size = new System.Drawing.Size(571, 374);
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.Label label2;
+ }
+}
diff --git a/ShiftOS.WinForms/ShiftnetSites/ShiftGames.cs b/ShiftOS.WinForms/ShiftnetSites/ShiftGames.cs
new file mode 100644
index 0000000..4ce0435
--- /dev/null
+++ b/ShiftOS.WinForms/ShiftnetSites/ShiftGames.cs
@@ -0,0 +1,39 @@
+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 ShiftOS.Engine;
+using ShiftOS.WinForms.Tools;
+
+namespace ShiftOS.WinForms.ShiftnetSites
+{
+ [ShiftnetSite("shiftnet/main/shiftgames", "ShiftGames (formerly Minimatch)", "The one true Shiftnet site for virus-free, quality games.")]
+ public partial class ShiftGames : UserControl, IShiftnetSite
+ {
+ public ShiftGames()
+ {
+ InitializeComponent();
+ }
+
+ public event Action GoBack;
+ public event Action GoToUrl;
+
+ public void OnSkinLoad()
+ {
+ ControlManager.SetupControls(this);
+ }
+
+ public void OnUpgrade()
+ {
+ }
+
+ public void Setup()
+ {
+ }
+ }
+}
diff --git a/ShiftOS.WinForms/ShiftnetSites/ShiftGames.resx b/ShiftOS.WinForms/ShiftnetSites/ShiftGames.resx
new file mode 100644
index 0000000..ef8aebe
--- /dev/null
+++ b/ShiftOS.WinForms/ShiftnetSites/ShiftGames.resx
@@ -0,0 +1,125 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ ShiftGames has been shut down as of May 2016. We have moved our inventory to the Appscape Repository. Thanks for being with us, and apologies for the inconvenience.
+
+Copyright (c) 2014-2016 Maureen Fenn
+
+
\ No newline at end of file
diff --git a/ShiftOS_TheReturn/SaveSystem.cs b/ShiftOS_TheReturn/SaveSystem.cs
index 24a491d..489b718 100644
--- a/ShiftOS_TheReturn/SaveSystem.cs
+++ b/ShiftOS_TheReturn/SaveSystem.cs
@@ -298,6 +298,32 @@ namespace ShiftOS.Engine
if (CurrentSave.Users == null)
CurrentSave.Users = new List();
+ Console.WriteLine($@"
+ `-:/++++::.`
+ .+ydNMMMMMNNMMMMMNhs/.
+ /yNMMmy+:-` `````.-/ohNMMms-
+ `oNMMh/.`:oydmNMMMMNmhs+- .+dMMm+` Welcome to ShiftOS.
+ `oMMmo``+dMMMMMMMMMMMMMMMMMNh/`.sNMN+
+ :NMN+ -yMMMMMMMNdhyssyyhdmNMMMMNs``sMMd. SYSTEM STATUS:
+ oMMd.`sMMMMMMd+. `/MMMMN+ -mMN: ----------------------
+ oMMh .mMMMMMM/ `-::::-.` :MMMMMMh`.mMM:
+ :MMd .NMMMMMMs .dMMMMMMMMMNddMMMMMMMd`.NMN. Codepoints: {SaveSystem.CurrentSave.Codepoints}
+ mMM. dMMMMMMMo -mMMMMMMMMMMMMMMMMMMMMs /MMy Upgrades: {SaveSystem.CurrentSave.CountUpgrades()} installed
+ :MMh :MMMMMMMMm` .+shmMMMMMMMMMMMMMMMN` NMN` {Shiftorium.GetAvailable().Count()} available
+ oMM+ sMMMMMMMMMN+` `-/smMMMMMMMMMMM: hMM: Filesystems: {Utils.Mounts.Count} filesystems mounted in memory.
+ sMM+ sMMMMMMMMMMMMds/-` .sMMMMMMMMM/ yMM/
+ +MMs +MMMMMMMMMMMMMMMMMmhs:` +MMMMMMMM- dMM- System name: {CurrentSave.SystemName.ToUpper()}
+ .MMm `NMMMMMMMMMMMMMMMMMMMMMo `NMMMMMMd .MMN Users: {Users.Count()} found.
+ hMM+ +MMMMMMmsdNMMMMMMMMMMN/ -MMMMMMN- yMM+
+ `NMN- oMMMMMd `-/+osso+- .mMMMMMN: +MMd
+ -NMN: /NMMMm` :yMMMMMMm- oMMd`
+ -mMMs``sMMMMNdhso++///+oydNMMMMMMNo .hMMh`
+ `yMMm/ .omMMMMMMMMMMMMMMMMMMMMd+``oNMNo
+ -hMMNo. -ohNMMMMMMMMMMMMmy+. -yNMNy`
+ .sNMMms/. `-/+++++/:-` ./yNMMmo`
+ :sdMMMNdyso+++ooshdNMMMdo-
+ `:+yhmNNMMMMNNdhs+-
+ ```` ");
if (CurrentSave.Users.Count == 0)
{