Updates, (Somehow) works now

This commit is contained in:
CreepyCrafter24 2019-09-14 14:00:28 +02:00
parent d91348275b
commit f80fe9e644
22 changed files with 705 additions and 262 deletions

2
1/1.cs
View File

@ -137,7 +137,7 @@ namespace LaptopSimulator2015.Levels
buffer.Render();
buffer.Dispose();
}
catch (Exception ex) { if (ex.InnerException?.Message == "0717750f-3508-4bc2-841e-f3b077c676fe") throw new Exception(ex.Message); else Console.WriteLine(ex.ToString()); }
catch (Exception ex) { if (ex.InnerException?.Message == "0717750f-3508-4bc2-841e-f3b077c676fe") Misc.closeGameWindow.Invoke(); else Console.WriteLine(ex.ToString()); }
}
public void initGame(Graphics g, Panel minigamePanel, Timer minigameTimer)

2
2/2.cs
View File

@ -122,7 +122,7 @@ namespace LaptopSimulator2015.Levels
buffer.Render();
buffer.Dispose();
}
catch (Exception ex) { if (ex.InnerException?.Message == "0717750f-3508-4bc2-841e-f3b077c676fe") throw new Exception(ex.Message); else Console.WriteLine(ex.ToString()); }
catch (Exception ex) { if (ex.InnerException?.Message == "0717750f-3508-4bc2-841e-f3b077c676fe") Misc.closeGameWindow.Invoke(); else Console.WriteLine(ex.ToString()); }
}
public void initGame(Graphics g, Panel minigamePanel, Timer minigameTimer)

2
3/3.cs
View File

@ -156,7 +156,7 @@ namespace LaptopSimulator2015.Levels
buffer.Render();
buffer.Dispose();
}
catch (Exception ex) { if (ex.InnerException?.Message == "0717750f-3508-4bc2-841e-f3b077c676fe") throw new Exception(ex.Message); else Console.WriteLine(ex.ToString()); }
catch (Exception ex) { if (ex.InnerException?.Message == "0717750f-3508-4bc2-841e-f3b077c676fe") Misc.closeGameWindow.Invoke(); else Console.WriteLine(ex.ToString()); }
}
public void initGame(Graphics g, Panel minigamePanel, Timer minigameTimer)

235
4/4.cs Normal file

File diff suppressed because one or more lines are too long

60
4/4.csproj Normal file
View File

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{4AA1EF48-BC5E-4FE4-9B7D-BAE6D6AB9529}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>_4</RootNamespace>
<AssemblyName>4</AssemblyName>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="4.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Base\Base.csproj">
<Project>{9a9561a7-dd5f-43a5-a3f5-a95f35da204d}</Project>
<Name>Base</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PostBuildEvent>if not exist "$(SolutionDir)tmp" mkdir "$(SolutionDir)tmp"
copy "$(TargetPath)" "$(SolutionDir)tmp"</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("4")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("4")]
[assembly: AssemblyCopyright("Copyright © 2019")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("4aa1ef48-bc5e-4fe4-9b7d-bae6d6ab9529")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@ -23,7 +23,7 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<DebugType>none</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>

View File

@ -8,6 +8,7 @@ namespace Base
{
public static class Misc
{
public static Action closeGameWindow;
public static float d2f(double input)
{
float result = Convert.ToSingle(input);
@ -25,5 +26,10 @@ namespace Base
public static double f2d(float input) => input;
public static double rad2deg(double input) => (360 * input) / (2 * Math.PI);
public static double deg2rad(double input) => ((2 * Math.PI) * input) / 360;
public static double map(double originalStart, double originalEnd, double newStart, double newEnd, double value)
{
double scale = (newEnd - newStart) / (originalEnd - originalStart);
return newStart + ((value - originalStart) * scale);
}
}
}

View File

@ -7,6 +7,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LaptopSimulator2015", "Lapt
ProjectSection(ProjectDependencies) = postProject
{0965C803-49B2-4311-B62F-1E60DBD9185F} = {0965C803-49B2-4311-B62F-1E60DBD9185F}
{8109040E-9D8D-43E7-A461-83475B2939C9} = {8109040E-9D8D-43E7-A461-83475B2939C9}
{4AA1EF48-BC5E-4FE4-9B7D-BAE6D6AB9529} = {4AA1EF48-BC5E-4FE4-9B7D-BAE6D6AB9529}
{DFA2FB97-D676-4B0D-B281-2685F85781EE} = {DFA2FB97-D676-4B0D-B281-2685F85781EE}
EndProjectSection
EndProject
@ -32,6 +33,13 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "3", "3\3.csproj", "{8109040
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "lv4_t", "lv4_t\lv4_t.csproj", "{22D618C0-F0A4-417F-A815-C760BF4376B2}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "4", "4\4.csproj", "{4AA1EF48-BC5E-4FE4-9B7D-BAE6D6AB9529}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{23D851A7-722E-416A-91F8-0C86349D5BF3}"
ProjectSection(SolutionItems) = preProject
ToDo.txt = ToDo.txt
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -78,6 +86,10 @@ Global
{22D618C0-F0A4-417F-A815-C760BF4376B2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{22D618C0-F0A4-417F-A815-C760BF4376B2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{22D618C0-F0A4-417F-A815-C760BF4376B2}.Release|Any CPU.Build.0 = Release|Any CPU
{4AA1EF48-BC5E-4FE4-9B7D-BAE6D6AB9529}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4AA1EF48-BC5E-4FE4-9B7D-BAE6D6AB9529}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4AA1EF48-BC5E-4FE4-9B7D-BAE6D6AB9529}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4AA1EF48-BC5E-4FE4-9B7D-BAE6D6AB9529}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -92,6 +104,7 @@ Global
{244E68E6-90D2-447D-B380-13CA8DD3D4EC} = {69DC5824-3F89-4B47-BF1A-F25942094195}
{8109040E-9D8D-43E7-A461-83475B2939C9} = {83BF22F9-3A2D-42A3-9DB0-C1E2AA1DD218}
{22D618C0-F0A4-417F-A815-C760BF4376B2} = {69DC5824-3F89-4B47-BF1A-F25942094195}
{4AA1EF48-BC5E-4FE4-9B7D-BAE6D6AB9529} = {83BF22F9-3A2D-42A3-9DB0-C1E2AA1DD218}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {9631F8FF-AFC1-4583-9D27-6C2D97D3A2E9}

View File

@ -36,6 +36,7 @@ namespace LaptopSimulator2015
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FakeDesktop));
this.winKey = new System.Windows.Forms.Button();
this.winMenuPanel = new System.Windows.Forms.Panel();
this.winMenuStart = new System.Windows.Forms.Button();
@ -73,14 +74,14 @@ namespace LaptopSimulator2015
this.optionsWindowLang = new System.Windows.Forms.ComboBox();
this.optionsWindowSubs = new System.Windows.Forms.CheckBox();
this.optionsWindowExit = new System.Windows.Forms.Button();
this.optionsWindowMLG = new System.Windows.Forms.CheckBox();
this.optionsWindowLSD = new System.Windows.Forms.CheckBox();
this.optionsWindowWamLabel = new System.Windows.Forms.Label();
this.optionsWindowWam = new System.Windows.Forms.TrackBar();
this.optionsWindowHeader = new System.Windows.Forms.Panel();
this.optionsWindowHeaderExit = new System.Windows.Forms.Label();
this.optionsWindowIcon = new System.Windows.Forms.Panel();
this.optionsWindowTitle = new System.Windows.Forms.Label();
this.mlgEffectT = new System.Windows.Forms.Timer(this.components);
this.lsdEffectT = new System.Windows.Forms.Timer(this.components);
this.winMenuPanel.SuspendLayout();
this.winTaskbar.SuspendLayout();
this.winDesktop.SuspendLayout();
@ -220,7 +221,7 @@ namespace LaptopSimulator2015
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.options_2.BackColor = System.Drawing.Color.Blue;
this.options_2.BackgroundImage = global::LaptopSimulator2015.Properties.Resources.pcoptimizerpro;
this.options_2.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("options_2.BackgroundImage")));
this.options_2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.options_2.Location = new System.Drawing.Point(2, 2);
this.options_2.Name = "options_2";
@ -292,10 +293,10 @@ namespace LaptopSimulator2015
this.levelWindow2.Controls.Add(this.captchaBox);
this.levelWindow2.Controls.Add(this.captchaPanel);
this.levelWindow2.Controls.Add(this.levelWindowText2);
this.levelWindow2.Location = new System.Drawing.Point(4, 14);
this.levelWindow2.Location = new System.Drawing.Point(4, 19);
this.levelWindow2.Name = "levelWindow2";
this.levelWindow2.Padding = new System.Windows.Forms.Padding(3);
this.levelWindow2.Size = new System.Drawing.Size(494, 230);
this.levelWindow2.Size = new System.Drawing.Size(494, 225);
this.levelWindow2.TabIndex = 1;
this.levelWindow2.UseVisualStyleBackColor = true;
//
@ -332,9 +333,9 @@ namespace LaptopSimulator2015
//
this.levelWindow3.Controls.Add(this.levelWindowProgress);
this.levelWindow3.Controls.Add(this.levelWindowText3);
this.levelWindow3.Location = new System.Drawing.Point(4, 14);
this.levelWindow3.Location = new System.Drawing.Point(4, 19);
this.levelWindow3.Name = "levelWindow3";
this.levelWindow3.Size = new System.Drawing.Size(494, 230);
this.levelWindow3.Size = new System.Drawing.Size(494, 225);
this.levelWindow3.TabIndex = 2;
this.levelWindow3.UseVisualStyleBackColor = true;
//
@ -385,7 +386,6 @@ namespace LaptopSimulator2015
//
// levelWindowIcon
//
this.levelWindowIcon.BackgroundImage = global::LaptopSimulator2015.Properties.Resources.pcoptimizerpro;
this.levelWindowIcon.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.levelWindowIcon.Location = new System.Drawing.Point(0, 0);
this.levelWindowIcon.Name = "levelWindowIcon";
@ -449,7 +449,7 @@ namespace LaptopSimulator2015
this.optionsWindow.Controls.Add(this.optionsWindowLang);
this.optionsWindow.Controls.Add(this.optionsWindowSubs);
this.optionsWindow.Controls.Add(this.optionsWindowExit);
this.optionsWindow.Controls.Add(this.optionsWindowMLG);
this.optionsWindow.Controls.Add(this.optionsWindowLSD);
this.optionsWindow.Controls.Add(this.optionsWindowWamLabel);
this.optionsWindow.Controls.Add(this.optionsWindowWam);
this.optionsWindow.Controls.Add(this.optionsWindowHeader);
@ -501,18 +501,18 @@ namespace LaptopSimulator2015
this.optionsWindowExit.UseVisualStyleBackColor = true;
this.optionsWindowExit.Click += new System.EventHandler(this.OptionsWindowExit_Click);
//
// optionsWindowMLG
// optionsWindowLSD
//
this.optionsWindowMLG.AutoSize = true;
this.optionsWindowMLG.Font = new System.Drawing.Font("Comic Sans MS", 7F);
this.optionsWindowMLG.ForeColor = System.Drawing.Color.Red;
this.optionsWindowMLG.Location = new System.Drawing.Point(17, 64);
this.optionsWindowMLG.Name = "optionsWindowMLG";
this.optionsWindowMLG.Size = new System.Drawing.Size(75, 18);
this.optionsWindowMLG.TabIndex = 3;
this.optionsWindowMLG.Text = "MLG Mode";
this.optionsWindowMLG.UseVisualStyleBackColor = true;
this.optionsWindowMLG.CheckedChanged += new System.EventHandler(this.OptionsWindowMLG_CheckedChanged);
this.optionsWindowLSD.AutoSize = true;
this.optionsWindowLSD.Font = new System.Drawing.Font("Comic Sans MS", 7F);
this.optionsWindowLSD.ForeColor = System.Drawing.Color.Red;
this.optionsWindowLSD.Location = new System.Drawing.Point(17, 64);
this.optionsWindowLSD.Name = "optionsWindowLSD";
this.optionsWindowLSD.Size = new System.Drawing.Size(73, 18);
this.optionsWindowLSD.TabIndex = 3;
this.optionsWindowLSD.Text = "LSD Mode";
this.optionsWindowLSD.UseVisualStyleBackColor = true;
this.optionsWindowLSD.CheckedChanged += new System.EventHandler(this.OptionsWindowLSD_CheckedChanged);
//
// optionsWindowWamLabel
//
@ -529,6 +529,7 @@ namespace LaptopSimulator2015
this.optionsWindowWam.Name = "optionsWindowWam";
this.optionsWindowWam.Size = new System.Drawing.Size(380, 45);
this.optionsWindowWam.TabIndex = 1;
this.optionsWindowWam.Scroll += new System.EventHandler(this.OptionsWindowWam_Scroll);
//
// optionsWindowHeader
//
@ -560,7 +561,7 @@ namespace LaptopSimulator2015
//
// optionsWindowIcon
//
this.optionsWindowIcon.BackgroundImage = global::LaptopSimulator2015.Properties.Resources.pcoptimizerpro;
this.optionsWindowIcon.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("optionsWindowIcon.BackgroundImage")));
this.optionsWindowIcon.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.optionsWindowIcon.Location = new System.Drawing.Point(0, 0);
this.optionsWindowIcon.Name = "optionsWindowIcon";
@ -576,10 +577,10 @@ namespace LaptopSimulator2015
this.optionsWindowTitle.TabIndex = 0;
this.optionsWindowTitle.Text = "PCOptimizerPro";
//
// mlgEffectT
// lsdEffectT
//
this.mlgEffectT.Enabled = true;
this.mlgEffectT.Tick += new System.EventHandler(this.MlgTimer_Tick);
this.lsdEffectT.Enabled = true;
this.lsdEffectT.Tick += new System.EventHandler(this.LsdTimer_Tick);
//
// FakeDesktop
//
@ -662,11 +663,11 @@ namespace LaptopSimulator2015
private System.Windows.Forms.Panel optionsWindowHeader;
private System.Windows.Forms.Panel optionsWindowIcon;
private System.Windows.Forms.Label optionsWindowTitle;
private System.Windows.Forms.CheckBox optionsWindowMLG;
private System.Windows.Forms.CheckBox optionsWindowLSD;
private System.Windows.Forms.Label optionsWindowWamLabel;
private System.Windows.Forms.TrackBar optionsWindowWam;
private System.Windows.Forms.Button optionsWindowExit;
private System.Windows.Forms.Timer mlgEffectT;
private System.Windows.Forms.Timer lsdEffectT;
private System.Windows.Forms.CheckBox optionsWindowSubs;
private System.Windows.Forms.Label subsLabel;
private System.Windows.Forms.ComboBox optionsWindowLang;

View File

@ -10,6 +10,8 @@ using System.Reflection;
using System.Diagnostics;
using System.IO;
using System.Drawing.Drawing2D;
using System.Runtime.InteropServices;
using Base;
namespace LaptopSimulator2015
{
@ -17,6 +19,7 @@ namespace LaptopSimulator2015
{
#region Base
List<Level> levels = new List<Level>();
SoundPlayer fans;
bool winShouldClose = false;
enum Mode
@ -39,7 +42,7 @@ namespace LaptopSimulator2015
levelWindowText2.Text = strings.ramInstallerWindowText2;
levelWindowText3.Text = strings.ramInstallerWindowText3;
levelWindowC1.Text = strings._continue;
optionsWindowMLG.Text = strings.optionsWindowMLG;
optionsWindowLSD.Text = strings.optionsWindowLSD;
optionsWindowTitle.Text = strings.optionsWindowTitle;
optionsWindowWamLabel.Text = strings.optionsWindowWam;
levelWindow.Visible = false;
@ -55,10 +58,16 @@ namespace LaptopSimulator2015
if (_mode == Mode.mainMenu)
winMenuStart.Select();
for (int i = 0; i < levels.Count; i++)
levels[i].desktopIcon.Visible = levels[i].LevelNumber <= Settings.Default.level;
levels[i].desktopIcon.Visible = levels[i].LevelNumber <= Settings.level;
}
}
[DllImport("winmm.dll")]
public static extern int waveOutGetVolume(IntPtr hwo, out uint dwVolume);
[DllImport("winmm.dll")]
public static extern int waveOutSetVolume(IntPtr hwo, uint dwVolume);
public FakeDesktop()
{
Directory.SetCurrentDirectory(Path.GetDirectoryName(Application.ExecutablePath));
@ -66,19 +75,23 @@ namespace LaptopSimulator2015
Directory.CreateDirectory("Levels");
InitializeComponent();
levelWindowContents.ItemSize = new Size(0, 1);
optionsWindowLang.Text = Settings.Default.lang.Name;
Thread.CurrentThread.CurrentUICulture = Settings.Default.lang;
optionsWindowWam.Value = Settings.Default.wam;
tmpoptionsmlgcanchange = Settings.Default.mlg;
optionsWindowMLG.Checked = Settings.Default.mlg;
optionsWindowSubs.Checked = Settings.Default.subs;
optionsWindowLang.Text = Settings.lang.Name;
Thread.CurrentThread.CurrentUICulture = Settings.lang;
optionsWindowWam.Value = Settings.wam;
int NewVolume = ((ushort.MaxValue / 10) * Settings.wam);
uint NewVolumeAllChannels = ((uint)NewVolume & 0x0000ffff) | ((uint)NewVolume << 16);
waveOutSetVolume(IntPtr.Zero, NewVolumeAllChannels);
tmpoptionslsdcanchange = Settings.lsd;
optionsWindowLSD.Checked = Settings.lsd;
optionsWindowSubs.Checked = Settings.subs;
Text = strings.fakeDesktopTitle;
winMenuExit.Text = strings.winMenuExit1;
winMenuStart.Text = strings.winMenuStart;
winMenuText.Text = strings.winMenuText;
levelWindowTitle.Text = "";
winTimeLabel.Text = DateTime.Now.Hour.ToString("00") + ":" + DateTime.Now.Minute.ToString("00");
new SoundPlayer(Resources.fans).PlayLooping();
fans = new SoundPlayer(Resources.fans);
fans.PlayLooping();
Control[] controls = getControls(ignore: new List<Control> { minigamePanel }).ToArray();
for (int i = 0; i < controls.Length; i++)
{
@ -101,7 +114,7 @@ namespace LaptopSimulator2015
levels[i].desktopIcon.Size = new Size(50, 50);
levels[i].desktopIcon.BackColor = Color.FromArgb(128, 128, 255);
levels[i].desktopIcon.Name = "lvl" + i.ToString() + "_1";
levels[i].desktopIcon.Visible = levels[i].LevelNumber <= Settings.Default.level;
levels[i].desktopIcon.Visible = levels[i].LevelNumber <= Settings.level;
tmp1.BackColor = Color.Blue;
tmp1.BackgroundImageLayout = ImageLayout.Stretch;
@ -119,6 +132,7 @@ namespace LaptopSimulator2015
levels = levels.OrderBy(lv => lv.LevelNumber).ToList();
mode = Mode.mainMenu;
Program.splash.Close();
Misc.closeGameWindow = new Action(closeLevelWindow);
}
static Assembly AssemblyResolveHandler(object source, ResolveEventArgs e) => Assembly.LoadFrom(e.Name);
@ -258,17 +272,17 @@ namespace LaptopSimulator2015
break;
case 2:
LevelWindowHeaderExit_Click(sender, e);
if (levels[levelInd].LevelNumber >= Settings.Default.level)
if (levels[levelInd].LevelNumber >= Settings.level)
{
int closest = int.MaxValue;
for (int i = 0; i < levels.Count; i++)
if (levels[i].LevelNumber < closest & levels[i].LevelNumber > levels[levelInd].LevelNumber)
closest = levels[i].LevelNumber;
if (closest != int.MaxValue)
Settings.Default.level = closest;
Settings.Default.Save();
Settings.level = closest;
Settings.Save();
for (int i = 0; i < levels.Count; i++)
levels[i].desktopIcon.Visible = levels[i].LevelNumber <= Settings.Default.level;
levels[i].desktopIcon.Visible = levels[i].LevelNumber <= Settings.level;
mode = Mode.game;
}
break;
@ -332,8 +346,11 @@ namespace LaptopSimulator2015
}
}
private void LevelWindowHeaderExit_Click(object sender, EventArgs e)
private void LevelWindowHeaderExit_Click(object sender, EventArgs e) => closeLevelWindow();
private void closeLevelWindow()
{
BackColor = Color.FromArgb(100, 0, 255);
levelWindow.Visible = false;
minigamePanel.Visible = false;
minigamePanel.Enabled = false;
@ -343,6 +360,8 @@ namespace LaptopSimulator2015
levelWindowProgress.Value = 0;
levelWindowProgressT.Enabled = false;
levelWindowC1.Enabled = true;
Thread.Sleep(100);
BackColor = Color.Blue;
}
#region Minigame
@ -381,21 +400,31 @@ namespace LaptopSimulator2015
private void OptionsWindowHeader_MouseUp(object sender, MouseEventArgs e) => optionsWindowMoving = false;
private void OptionsWindowWam_Scroll(object sender, EventArgs e)
{
int NewVolume = ((ushort.MaxValue / 10) * optionsWindowWam.Value);
uint NewVolumeAllChannels = ((uint)NewVolume & 0x0000ffff) | ((uint)NewVolume << 16);
waveOutSetVolume(IntPtr.Zero, NewVolumeAllChannels);
}
private void OptionsWindowExit_Click(object sender, EventArgs e)
{
Settings.Default.wam = optionsWindowWam.Value;
Settings.Default.mlg = optionsWindowMLG.Checked;
Settings.Default.subs = optionsWindowSubs.Checked;
Settings.wam = optionsWindowWam.Value;
Settings.lsd = optionsWindowLSD.Checked;
Settings.subs = optionsWindowSubs.Checked;
int NewVolume = ((ushort.MaxValue / 10) * Settings.wam);
uint NewVolumeAllChannels = ((uint)NewVolume & 0x0000ffff) | ((uint)NewVolume << 16);
waveOutSetVolume(IntPtr.Zero, NewVolumeAllChannels);
bool tmp = false;
if (Settings.Default.lang.Name != optionsWindowLang.Text)
if (Settings.lang.Name != optionsWindowLang.Text)
{
Settings.Default.lang = System.Globalization.CultureInfo.GetCultureInfo(optionsWindowLang.Text);
Settings.lang = System.Globalization.CultureInfo.GetCultureInfo(optionsWindowLang.Text);
tmp = true;
}
winDesktop.Enabled = true;
optionsWindow.Visible = false;
subsLabel.Visible = optionsWindowSubs.Checked;
Settings.Default.Save();
Settings.Save();
if (tmp && MessageBox.Show(strings.langWarning, "LaptopSimulator2015", MessageBoxButtons.YesNo) == DialogResult.Yes)
{
winShouldClose = true;
@ -416,43 +445,43 @@ namespace LaptopSimulator2015
mode = Mode.game;
}
bool tmpoptionsmlgcanchange = false;
private void OptionsWindowMLG_CheckedChanged(object sender, EventArgs e)
bool tmpoptionslsdcanchange = false;
private void OptionsWindowLSD_CheckedChanged(object sender, EventArgs e)
{
if (optionsWindowMLG.Checked)
if (optionsWindowLSD.Checked)
{
if (tmpoptionsmlgcanchange)
if (tmpoptionslsdcanchange)
{
optionsWindowMLG.Checked = true;
tmpoptionsmlgcanchange = false;
optionsWindowLSD.Checked = true;
tmpoptionslsdcanchange = false;
}
else
{
optionsWindowMLG.Checked = false;
optionsWindowLSD.Checked = false;
try
{
if (MessageBox.Show("Are you SURE?\r\n(This will break EVERYTHING!)", "WARNING", MessageBoxButtons.YesNo) == DialogResult.Yes)
{
tmpoptionsmlgcanchange = true;
optionsWindowMLG.Checked = true;
tmpoptionslsdcanchange = true;
optionsWindowLSD.Checked = true;
}
}
catch (Exception e1)
{
Console.WriteLine("MLGThreadException:\r\n" + e1.ToString());
Console.WriteLine("LSDThreadException:\r\n" + e1.ToString());
}
}
}
}
private void MlgTimer_Tick(object sender, EventArgs e)
private void LsdTimer_Tick(object sender, EventArgs e)
{
try
{
Random rndg = new Random();
rndCol = Color.FromArgb(rndg.Next(255), rndg.Next(255), rndg.Next(255));
optionsWindowMLG.ForeColor = rndCol;
if (Settings.Default.mlg)
optionsWindowLSD.ForeColor = rndCol;
if (Settings.lsd)
{
ForeColor = rndCol;
Font = new Font("Comic Sans MS", 7f);
@ -465,7 +494,7 @@ namespace LaptopSimulator2015
}
catch (Exception e1)
{
Console.WriteLine("MLGTimer Failed: \r\n" + e1.ToString());
Console.WriteLine("LSDTimer Failed: \r\n" + e1.ToString());
}
}
@ -473,7 +502,7 @@ namespace LaptopSimulator2015
private void Control_Paint(object sender, PaintEventArgs e)
{
if (Settings.Default.mlg)
if (Settings.lsd)
{
rndCol = Color.FromArgb(128, rndCol.R, rndCol.G, rndCol.B);
e.Graphics.FillRectangle(new SolidBrush(rndCol), new RectangleF(Point.Empty, ((Control)sender).Size));
@ -483,14 +512,14 @@ namespace LaptopSimulator2015
{
if (MessageBox.Show(strings.resetWarning1, "", MessageBoxButtons.YesNo) == DialogResult.Yes && MessageBox.Show(strings.resetWarning2, "", MessageBoxButtons.YesNo) == DialogResult.Yes)
{
Settings.Default.wam = 0;
Settings.Default.mlg = false;
Settings.Default.subs = true;
Settings.Default.level = 1;
Settings.Default.Save();
Settings.wam = 0;
Settings.lsd = false;
Settings.subs = true;
Settings.level = 1;
Settings.Save();
mode = Mode.game;
}
}
#endregion
#endregion
}
}

View File

@ -117,6 +117,87 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="options_2.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
/9j/4AAQSkZJRgABAQEAYABgAAD/4QA6RXhpZgAATU0AKgAAAAgAAwESAAMAAAABAAEAAEAAAAMAAAAB
ABUAAEABAAEAAAABAAAAAAAAAAD/2wBDAAIBAQIBAQICAgICAgICAwUDAwMDAwYEBAMFBwYHBwcGBwcI
CQsJCAgKCAcHCg0KCgsMDAwMBwkODw0MDgsMDAz/2wBDAQICAgMDAwYDAwYMCAcIDAwMDAwMDAwMDAwM
DAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAz/wAARCABkAGQDASIAAhEBAxEB/8QA
HwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh
MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVW
V1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG
x8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQF
BgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV
YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE
hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq
8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9+/m9qPm9qPm9qjnb5eSvQk+w9aAHsaaK434ifHLwv8Knjj1r
Uo4bu4H7iyi3XF5cD1SFAXbt0B6iuRf9qi6nbdZfDj4g3kX8MptILVWHbCSzLIP+BKK0jRlJXRjUxFOH
xHsWKQjNeOD9pvxDJ/qfhZ4yb/fubFf/AGuaG/aB8ZTcx/CvxB/wPUrL+k3FV9XqGaxlLoz2QZA7UY3V
42fjx4+lHy/C68jH/TXWrYA/lmj/AIXn4+6N8NY1Ht4jt1z9OBR9VqMmWOpLc9jPHpSqa8dh/axtdBlV
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
</value>
</data>
<metadata name="levelWindowProgressT.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
@ -126,7 +207,87 @@
<metadata name="minigameClockT.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>320, 17</value>
</metadata>
<metadata name="mlgEffectT.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<data name="optionsWindowIcon.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
/9j/4AAQSkZJRgABAQEAYABgAAD/4QA6RXhpZgAATU0AKgAAAAgAAwESAAMAAAABAAEAAEAAAAMAAAAB
ABUAAEABAAEAAAABAAAAAAAAAAD/2wBDAAIBAQIBAQICAgICAgICAwUDAwMDAwYEBAMFBwYHBwcGBwcI
CQsJCAgKCAcHCg0KCgsMDAwMBwkODw0MDgsMDAz/2wBDAQICAgMDAwYDAwYMCAcIDAwMDAwMDAwMDAwM
DAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAz/wAARCABkAGQDASIAAhEBAxEB/8QA
HwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh
MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVW
V1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG
x8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQF
BgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV
YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE
hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq
8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9+/m9qPm9qPm9qjnb5eSvQk+w9aAHsaaK434ifHLwv8Knjj1r
Uo4bu4H7iyi3XF5cD1SFAXbt0B6iuRf9qi6nbdZfDj4g3kX8MptILVWHbCSzLIP+BKK0jRlJXRjUxFOH
xHsWKQjNeOD9pvxDJ/qfhZ4yb/fubFf/AGuaG/aB8ZTcx/CvxB/wPUrL+k3FV9XqGaxlLoz2QZA7UY3V
42fjx4+lHy/C68jH/TXWrYA/lmj/AIXn4+6N8NY1Ht4jt1z9OBR9VqMmWOpLc9jPHpSqa8dh/axtdBlV
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
</value>
</data>
<metadata name="lsdEffectT.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>462, 17</value>
</metadata>
</root>

View File

@ -25,14 +25,15 @@
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<DebugType>none</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<DebugSymbols>true</DebugSymbols>
<DebugSymbols>false</DebugSymbols>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.VisualBasic" />
@ -61,11 +62,6 @@
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
<DependentUpon>Settings.settings</DependentUpon>
</Compile>
<Compile Include="Settings.cs" />
<Compile Include="Splash.cs">
<SubType>Form</SubType>
@ -107,12 +103,6 @@
<LastGenOutput>strings.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
</ItemGroup>
<ItemGroup>
<None Include="Resources\fans.wav" />
</ItemGroup>

View File

@ -16,16 +16,14 @@ namespace LaptopSimulator2015
public static Splash splash;
static void Main(string[] args)
{
#if !DEBUG
AppDomain.CurrentDomain.UnhandledException += UnhandledExceptionTrapper;
#endif
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Settings.Load();
Console.Title = "LaptopSimulator2015";
splash = new Splash();
splash.Show();
Thread.Sleep(2000);
#if DEBUG
#if !DEBUG
FileStream filestream = new FileStream(".log", FileMode.Create);
StreamWriter streamwriter = new StreamWriter(filestream);
streamwriter.AutoFlush = true;
@ -41,30 +39,5 @@ namespace LaptopSimulator2015
Thread.Sleep(1000);
Console.Clear();
}
#if !DEBUG
static void UnhandledExceptionTrapper(object sender, UnhandledExceptionEventArgs e)
{
for (int i = 0; i < Application.OpenForms.Count; i++)
try { Application.OpenForms[i].Close(); } catch { }
SetForegroundWindow(GetConsoleWindow());
Console.Clear();
Console.BackgroundColor = ConsoleColor.Red;
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine(strings.consoleError + "\r\n");
Console.WriteLine(e.ExceptionObject.ToString());
Console.WriteLine("\r\n" + strings.consolePress);
Thread.Sleep(1000);
Console.ReadKey();
Console.Clear();
Environment.Exit(1);
}
[DllImport("kernel32.dll", ExactSpelling = true)]
public static extern IntPtr GetConsoleWindow();
[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool SetForegroundWindow(IntPtr hWnd);
#endif
}
}

View File

@ -1,86 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace LaptopSimulator2015.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.2.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("0")]
public int wam {
get {
return ((int)(this["wam"]));
}
set {
this["wam"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool mlg {
get {
return ((bool)(this["mlg"]));
}
set {
this["mlg"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool subs {
get {
return ((bool)(this["subs"]));
}
set {
this["subs"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("1")]
public int level {
get {
return ((int)(this["level"]));
}
set {
this["level"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("(Default)")]
public global::System.Globalization.CultureInfo lang {
get {
return ((global::System.Globalization.CultureInfo)(this["lang"]));
}
set {
this["lang"] = value;
}
}
}
}

View File

@ -1,21 +0,0 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="LaptopSimulator2015.Properties" GeneratedClassName="Settings">
<Profiles />
<Settings>
<Setting Name="wam" Type="System.Int32" Scope="User">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="mlg" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="subs" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="level" Type="System.Int32" Scope="User">
<Value Profile="(Default)">1</Value>
</Setting>
<Setting Name="lang" Type="System.Globalization.CultureInfo" Scope="User">
<Value Profile="(Default)">(Default)</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@ -1,28 +1,45 @@
namespace LaptopSimulator2015.Properties {
// This class allows you to handle specific events on the settings class:
// The SettingChanging event is raised before a setting's value is changed.
// The PropertyChanged event is raised after a setting's value is changed.
// The SettingsLoaded event is raised after the setting values are loaded.
// The SettingsSaving event is raised before the setting values are saved.
internal sealed partial class Settings {
public Settings() {
// // To add event handlers for saving and changing settings, uncomment the lines below:
//
// this.SettingChanging += this.SettingChangingEventHandler;
//
// this.SettingsSaving += this.SettingsSavingEventHandler;
//
using System.Globalization;
using System.IO;
using System.Windows.Forms;
using System.Xml.Linq;
namespace LaptopSimulator2015 {
public static class Settings {
static string xmlfile;
public static void Save()
{
XElement xmldoc_temp = new XElement("save");
xmldoc_temp.Add(new XElement("wam", wam));
xmldoc_temp.Add(new XElement("lsd", lsd));
xmldoc_temp.Add(new XElement("subs", subs));
xmldoc_temp.Add(new XElement("level", level));
xmldoc_temp.Add(new XElement("lang", lang));
xmldoc_temp.Save(xmlfile);
}
private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e) {
// Add code to handle the SettingChangingEvent event here.
}
private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e) {
// Add code to handle the SettingsSaving event here.
public static void Load()
{
xmlfile = Path.GetDirectoryName(Application.ExecutablePath) + @"\save.xml";
if (!File.Exists(xmlfile))
{
XElement xmldoc_temp = new XElement("save");
xmldoc_temp.Add(new XElement("wam", 10));
xmldoc_temp.Add(new XElement("lsd", false));
xmldoc_temp.Add(new XElement("subs", true));
xmldoc_temp.Add(new XElement("level", 1));
xmldoc_temp.Add(new XElement("lang", CultureInfo.CurrentCulture));
xmldoc_temp.Save(xmlfile);
}
XElement xmldoc = XElement.Load(xmlfile);
wam = int.Parse(xmldoc.Element("wam").Value);
lsd = bool.Parse(xmldoc.Element("lsd").Value);
subs = bool.Parse(xmldoc.Element("subs").Value);
level = int.Parse(xmldoc.Element("level").Value);
lang = CultureInfo.GetCultureInfo(xmldoc.Element("lang").Value);
}
public static int wam;
public static bool lsd;
public static bool subs;
public static int level;
public static CultureInfo lang;
}
}
}

View File

@ -133,11 +133,11 @@ namespace LaptopSimulator2015 {
}
/// <summary>
/// Looks up a localized string similar to MLG Mode.
/// Looks up a localized string similar to LSD Mode.
/// </summary>
internal static string optionsWindowMLG {
internal static string optionsWindowLSD {
get {
return ResourceManager.GetString("optionsWindowMLG", resourceCulture);
return ResourceManager.GetString("optionsWindowLSD", resourceCulture);
}
}

View File

@ -141,8 +141,8 @@
<data name="langWarning" xml:space="preserve">
<value>WARNUNG: Wir empfehlen, das Spiel nach der Änderung neu zu starten. Neu starten?</value>
</data>
<data name="optionsWindowMLG" xml:space="preserve">
<value>MLG-Modus</value>
<data name="optionsWindowLSD" xml:space="preserve">
<value>LSD-Modus</value>
</data>
<data name="optionsWindowTitle" xml:space="preserve">
<value>Optionen</value>

View File

@ -141,8 +141,8 @@
<data name="langWarning" xml:space="preserve">
<value>WARNING: We recommend you restart your game to apply these changes. Restart?</value>
</data>
<data name="optionsWindowMLG" xml:space="preserve">
<value>MLG Mode</value>
<data name="optionsWindowLSD" xml:space="preserve">
<value>LSD Mode</value>
</data>
<data name="optionsWindowTitle" xml:space="preserve">
<value>PCOptimizerPro</value>

1
ToDo.txt Normal file
View File

@ -0,0 +1 @@
"Boss"-Level after level 3

View File

@ -20,15 +20,17 @@ namespace lv4_t
public MainForm()
{
InitializeComponent();
player = new Vector2(minigamePanel.Width / 2, 0);
player.bounds = new Rectangle(-5, 0, minigamePanel.Width + 10, 0);
player.bounds_wrap = true;
playerV = new Vector2();
playerV.bounds = new Rectangle(-5, -20, 10, 40);
playerV.bounds_wrap = false;
for (int i = 0; i < 5; i++)
for (int j = 0; j < 2; j++)
platforms.Add(new Vector2(rnd.Next(minigamePanel.Width), i * (minigamePanel.Height / 5)));
player = new Vector2(platforms[0].X, -10);
player.bounds = new Rectangle(-5, 0, minigamePanel.Width + 10, 0);
player.bounds_wrap = true;
lazor = player.X;
lazorTime = 50;
}
private void Button1_Click(object sender, EventArgs e) => Application.Exit();
@ -41,8 +43,11 @@ namespace lv4_t
Random rnd = new Random();
Vector2 player = new Vector2();
Vector2 playerV = new Vector2();
double lazor;
double lazorTime;
int jmpj;
List<Vector2> platforms = new List<Vector2>();
private void MinigamePanel_Paint(object sender, PaintEventArgs e)
{
BufferedGraphics buffer = BufferedGraphicsManager.Current.Allocate(e.Graphics, new Rectangle(0, 0, minigamePanel.Width, minigamePanel.Height));
@ -57,14 +62,34 @@ namespace lv4_t
g.FillRectangle(new SolidBrush(Color.White), plat2rect(i));
onPlatform |= isOnPlatform(i);
}
if (lazorTime >= 0 && lazorTime <= 30)
{
g.FillRectangle(new SolidBrush(Color.DarkGray), new RectangleF((float)lazor - 1, 0, 2, minigamePanel.Height));
g.FillRectangle(new SolidBrush(Color.Red), new RectangleF((float)lazor - 1, 0, 2, minigamePanel.Height - (float)Misc.map(0, 30, 0, minigamePanel.Height, lazorTime)));
}
Random random = new Random();
if (minigameTime != minigamePrevTime)
{
lazorTime -= minigameTime - minigamePrevTime;
minigamePrevTime = minigameTime;
if (lazorTime <= 0)
{
g.FillRectangle(new SolidBrush(Color.Red), new RectangleF((float)lazor - 5, 0, 10, minigamePanel.Height));
if (lazorTime <= -2)
{
lazorTime = 40;
lazor = player.X;
}
else
{
if (player.X >= lazor - 5 && player.X <= lazor + 5)
throw new Exception("The VM was shut down to prevent damage to your Machine.", new Exception("0717750f-3508-4bc2-841e-f3b077c676fe"));
}
}
if (onPlatform)
playerV.Y = Math.Min(playerV.Y, 0);
else
playerV.Y += 0.05f + Math.Pow(0.9, Math.Max(playerV.Y + 1, 0));
playerV.Y += 1;
playerV.X /= 1.2f;
if (onPlatform)
jmpj = 10;
@ -73,13 +98,16 @@ namespace lv4_t
jmpj = 0;
if ((onPlatform || jmpj > 0) && Input.Up)
{
playerV.Y -= Math.Sqrt(jmpj);
playerV.Y -= jmpj / 6d + 1.5;
jmpj--;
}
double movementFactor = 15;
if (onPlatform)
movementFactor /= 4;
if (Input.Left)
playerV.X -= 5;
playerV.X -= movementFactor;
if (Input.Right)
playerV.X += 5;
playerV.X += movementFactor;
player.X += playerV.X;
onPlatform = false;
if (playerV.Y < 0)
@ -95,7 +123,7 @@ namespace lv4_t
List<Vector2> platformsToRemove = new List<Vector2>();
for (int i = 0; i < platforms.Count; i++)
{
platforms[i].Y++;
platforms[i].Y += 1.7;
if (platforms[i].Y > minigamePanel.Height)
{
platforms[i].Y = 0;