- Refer to various aspects of "IMMORTAL: Gates of Pyre" from this external reference!
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Device/_Imports.razor b/Device/_Imports.razor
index 30af911..aeaf0e9 100644
--- a/Device/_Imports.razor
+++ b/Device/_Imports.razor
@@ -5,7 +5,9 @@
@using Microsoft.AspNetCore.Components.Web.Virtualization
@using Microsoft.JSInterop
@using Device
-@using Device.Pages
+@using IGP.Pages
+@using IGP.Pages.Home
+@using IGP.Pages.Home.Parts
@using Components.Display
@using Components.Feedback
diff --git a/IGP.sln b/IGP.sln
index f2425ae..7c042e7 100644
--- a/IGP.sln
+++ b/IGP.sln
@@ -19,6 +19,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "API", "API\API.csproj", "{6
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Device", "Device\Device.csproj", "{FF07C814-9757-48B5-8450-CFA4958EC42D}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Pages", "Pages\Pages.csproj", "{3BFCB341-D41D-4F23-B867-EB4A8F58BB14}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -125,6 +127,18 @@ Global
{FF07C814-9757-48B5-8450-CFA4958EC42D}.Release|x64.Build.0 = Release|Any CPU
{FF07C814-9757-48B5-8450-CFA4958EC42D}.Release|x86.ActiveCfg = Release|Any CPU
{FF07C814-9757-48B5-8450-CFA4958EC42D}.Release|x86.Build.0 = Release|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Debug|x64.Build.0 = Debug|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Debug|x86.Build.0 = Debug|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Release|x64.ActiveCfg = Release|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Release|x64.Build.0 = Release|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Release|x86.ActiveCfg = Release|Any CPU
+ {3BFCB341-D41D-4F23-B867-EB4A8F58BB14}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/Model/Website/Data/EntityData.cs b/Model/Website/Data/EntityData.cs
index 3740b3c..5c9a7b1 100644
--- a/Model/Website/Data/EntityData.cs
+++ b/Model/Website/Data/EntityData.cs
@@ -9,7 +9,7 @@ public class WebsiteData
* Flag for content generated by the AI. Can contain UI that makes no sense, or more importantly,
* game data that is not real. Fun to look at, but needs to be thoroughly vetted before it can ever go live.
*/
- public static bool allowSlopData { get; set; } = false;
+ public static bool allowSlopData { get; set; } = true;
private static bool IsPageAllowed(WebPageModel page)
{
diff --git a/Web/App.razor b/Web/App.razor
index b3b2722..1280714 100644
--- a/Web/App.razor
+++ b/Web/App.razor
@@ -7,7 +7,7 @@
@if (isLoaded)
{
-
+
}
diff --git a/Web/Localizations.Designer.cs b/Web/Localizations.Designer.cs
deleted file mode 100644
index 4d28fc6..0000000
--- a/Web/Localizations.Designer.cs
+++ /dev/null
@@ -1,114 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace IGP {
- using System;
-
-
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
- [System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class Localizations {
-
- private static System.Resources.ResourceManager resourceMan;
-
- private static System.Globalization.CultureInfo resourceCulture;
-
- [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
- internal Localizations() {
- }
-
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static System.Resources.ResourceManager ResourceManager {
- get {
- if (object.Equals(null, resourceMan)) {
- System.Resources.ResourceManager temp = new System.Resources.ResourceManager("IGP.Localizations", typeof(Localizations).Assembly);
- resourceMan = temp;
- }
- return resourceMan;
- }
- }
-
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static System.Globalization.CultureInfo Culture {
- get {
- return resourceCulture;
- }
- set {
- resourceCulture = value;
- }
- }
-
- internal static string Greeting {
- get {
- return ResourceManager.GetString("Greeting", resourceCulture);
- }
- }
-
- internal static string Tooltip_Chart_Info {
- get {
- return ResourceManager.GetString("Tooltip Chart Info", resourceCulture);
- }
- }
-
- internal static string Tooltip_Filter_Info {
- get {
- return ResourceManager.GetString("Tooltip Filter Info", resourceCulture);
- }
- }
-
- internal static string Tooltip_Entity_Info {
- get {
- return ResourceManager.GetString("Tooltip Entity Info", resourceCulture);
- }
- }
-
- internal static string Tooltip_Bank_Info {
- get {
- return ResourceManager.GetString("Tooltip Bank Info", resourceCulture);
- }
- }
-
- internal static string Tooltip_Army_Info {
- get {
- return ResourceManager.GetString("Tooltip Army Info", resourceCulture);
- }
- }
-
- internal static string Tooltip_Highlights_Info {
- get {
- return ResourceManager.GetString("Tooltip Highlights Info", resourceCulture);
- }
- }
-
- internal static string Tooltip_BuildOrder_Info {
- get {
- return ResourceManager.GetString("Tooltip BuildOrder Info", resourceCulture);
- }
- }
-
- internal static string Tooltip_Timing_Info {
- get {
- return ResourceManager.GetString("Tooltip Timing Info", resourceCulture);
- }
- }
-
- internal static string Tooltip_Hotkey_Info {
- get {
- return ResourceManager.GetString("Tooltip Hotkey Info", resourceCulture);
- }
- }
-
- internal static string Tooltip_Options_Info {
- get {
- return ResourceManager.GetString("Tooltip Options Info", resourceCulture);
- }
- }
- }
-}
diff --git a/Web/Localizations.resx b/Web/Localizations.resx
deleted file mode 100644
index 2ebc420..0000000
--- a/Web/Localizations.resx
+++ /dev/null
@@ -1,68 +0,0 @@
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 1.3
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
- PublicKeyToken=b77a5c561934e089
-
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
- PublicKeyToken=b77a5c561934e089
-
-
-
- Hello
-
-
-
- Shows economy at each game interval. Use to determine if spending additional resources on harvesters will help or hinder overall timing attack.
-
-
-
- Select build details, such as Faction and Immortal.
-
-Affects entities you can build.
-
-
- Summary of the entity you just selected.
-
-
- Bank at time of last requested action. Use this section to determine if your build is floating too much alloy or ether.
-
-
- Overview of current army, and when it will be ready to begin an attack.
-
-
- Timeline highlights of your build order. Shows when you start a new action and when the action is done.
-
-
- Some raw JSON data to represent your build order.
-
-
- Enter build details.
-
-
- Click on the desired entity to build it. <i>You cannot build entities you cannot afford, construct an ether extractor before spending ether.</i>
-
-You can also use the default Immortal hotkeys, but the above hotkey UI must have focus for this to work. <i>I.e. click on it if hotkeys aren't working, and a white border should appear after key input to indicate focus.</i>
-
-Additionally, more entities will appear as you build the required technology. You can click or press ` to remove the last made entity. <i>But you cannot remove the starting entities at interval 0.</i>
-
-
- Misc calculator controls.
-
-
\ No newline at end of file
diff --git a/Web/Pages/AboutPage.razor b/Web/Pages/AboutPage.razor
deleted file mode 100644
index eb8a994..0000000
--- a/Web/Pages/AboutPage.razor
+++ /dev/null
@@ -1,52 +0,0 @@
-@layout PageLayout
-
-@inherits BasePage
-
-@inject IDataCollectionService DataCollectionService
-
-
-@page "/about"
-
-
- About
-
-
-
-
- What is this website for?
-
-
- This is just a "yet another third-party tool" website for a video game. If you played a game like Path
- of Exile, you are probably already used to seeing a bunch of said tools.
-
-
-
-
- So what is this specific tool for?
-
-
- Ideally, this website will be a casual reference, for getting started with understanding the themes and
- game patterns of IMMORTAL: Gates of Pyre. That said, this tool is currently not near to achieving said
- goal. In the meantime, you can check out the simple calculator and database tools on this website.
-
-
-
-
- The game hasn't even been released. Isn't it a bit early for publishing community tools?
-
-
- Maybe 🙂
-
-
-
-
- Any disclaimers?
-
-
- This website has no association with "SunSpear Games." Beyond that, any game data displayed on this
- website for "IMMORTAL: Gates of Pyre" may be inaccurate due to my own human error and time limitations.
- Use with caution.
-
-
-
-
\ No newline at end of file
diff --git a/Web/Pages/BasePage.razor b/Web/Pages/BasePage.razor
deleted file mode 100644
index 5608935..0000000
--- a/Web/Pages/BasePage.razor
+++ /dev/null
@@ -1,37 +0,0 @@
-@using Services.Website
-@inject IDataCollectionService DataCollectionService
-@inject NavigationManager NavigationManager
-
-
-@code {
-
- protected override void OnInitialized()
- {
- base.OnInitialized();
-
- CollectLoadedPage();
- }
-
- private void CollectLoadedPage()
- {
- var skipBaseUri = NavigationManager.Uri.Substring(NavigationManager.BaseUri.Length,
- NavigationManager.Uri.Length - NavigationManager.BaseUri.Length);
-
- var splitData = skipBaseUri.Split("/");
-
- var rootUrl = splitData.First();
- if (rootUrl.Trim().Equals(""))
- {
- rootUrl = "home";
- }
-
- var eventData = new Dictionary { { "page", rootUrl } };
- if (splitData.Length > 1)
- {
- eventData["inner-page"] = splitData.Last();
- }
-
- DataCollectionService.SendEvent(DataCollectionKeys.PageInitialized, eventData);
- }
-
-}
\ No newline at end of file
diff --git a/Web/Pages/BuildCalculator/BuildCalculatorPage.razor b/Web/Pages/BuildCalculator/BuildCalculatorPage.razor
deleted file mode 100644
index 1a60739..0000000
--- a/Web/Pages/BuildCalculator/BuildCalculatorPage.razor
+++ /dev/null
@@ -1,296 +0,0 @@
-@layout PageLayout
-
-@inherits BasePage
-
-@inject IStringLocalizer Locale
-
-@inject IKeyService KeyService
-@inject IImmortalSelectionService FilterService
-@inject IBuildOrderService BuildOrderService
-@inject IEconomyService EconomyService
-@inject IToastService ToastService
-@inject ITimingService TimingService
-@inject IDataCollectionService DataCollectionService
-
-@page "/build-calculator"
-@using IGP.Pages.BuildCalculator.Parts.Cosmetic
-@using Services.Website
-@implements IDisposable
-
-
- Build Calculator
-
-
-
-
-
-
-
-
-
-
-
- What is this tool?
-
-
- This is a calculator to determine build timings. Mostly so someone can quickly try out a few build
- orders to see if they somewhat make sense.
-
-
-
-
-
- How does it work?
-
-
- The tool calculates every second of game time. So if you attempt to build a Legion Hall as
- your first action, the tool will scan every second, until you get to one where the request can be
- made. In this case, that is interval 58.
-
-
- If you then build 2 Apostle of Bindings a Soul Foundry and a 3 Absolvers you
- should see yourself roughly floating 500 alloy, with barely having any ether. Which means you could
- of gotten an Acropolis and a Zentari without hurting your build.
-
-
- Try building Apostle of Bindings before the Legion Hall and see how that changes the
- timing of your 3 Absolvers. (Spoiler:
- your Absolvers will be built much faster, and you won't be floating so
- much alloy.
-
- )
-
-
-
-
-
- What is CONTROL key for?
-
-
- Economy and tech related upgrades for townhalls.
-
-
-
-
-
- What is SHIFT key for?
-
-
- Misc building related upgrades. (Omnivores)
-
-
-
-
-
- What is 2 key for?
-
-
- It will be for Pyre camps. Currently not implemented.
-
-
-
-
-
-
-
-
-
-
-@code {
-
- protected override void OnInitialized()
- {
- base.OnInitialized();
-
- EconomyService.Calculate(BuildOrderService, TimingService, 0);
-
- KeyService.Subscribe(HandleClick);
-
- DataCollectionService.SendEvent(
- DataCollectionKeys.PageInitialized,
- new Dictionary { { "page", "build-calculator" } }
- );
- }
-
- void IDisposable.Dispose()
- {
- KeyService.Unsubscribe(HandleClick);
- }
-
- private void OnResetClicked()
- {
- ToastService.AddToast(new ToastModel
- {
- SeverityType = SeverityType.Success,
- Message = "Build order has been cleared.",
- Title = "Reset"
- });
-
- BuildOrderService.Reset();
- }
-
-
- private void HandleClick()
- {
- var hotkey = KeyService.GetHotkey();
-
- if (hotkey == "")
- {
- return;
- }
-
- if (hotkey == "`")
- {
- BuildOrderService.RemoveLast();
- EconomyService.Calculate(BuildOrderService, TimingService, BuildOrderService.GetLastRequestInterval());
- return;
- }
-
- var hotkeyGroup = KeyService.GetHotkeyGroup();
- var isHoldSpace = KeyService.IsHoldingSpace();
- var faction = FilterService.GetFaction();
- var immortal = FilterService.GetImmortal();
-
- var entity = EntityModel.GetFrom(hotkey!, hotkeyGroup, isHoldSpace, faction, immortal);
-
- if (entity == null)
- {
- return;
- }
-
- if (BuildOrderService.Add(entity, EconomyService))
- {
- EconomyService.Calculate(BuildOrderService, TimingService, BuildOrderService.GetLastRequestInterval());
- }
- }
-
-}
\ No newline at end of file
diff --git a/Web/Pages/BuildCalculator/Parts/ArmyComponent.razor b/Web/Pages/BuildCalculator/Parts/ArmyComponent.razor
deleted file mode 100644
index 95c515f..0000000
--- a/Web/Pages/BuildCalculator/Parts/ArmyComponent.razor
+++ /dev/null
@@ -1,156 +0,0 @@
-@inject IJSRuntime jsRuntime
-
-@inject IBuildOrderService buildOrder
-@inject ITimingService timingService
-
-@implements IDisposable
-
-
-
-
-
-
- @lastInterval | T @Interval.ToTime(lastInterval)
-
-
- @(lastInterval + timingService.GetTravelTime()) |
- T @Interval.ToTime(lastInterval + timingService.GetTravelTime())
-
-
- @foreach (var chart in charts)
- {
- var takenPixels = new Dictionary();
-
-
-
- @foreach (var point in chart.Points)
- {
- var x = int.Parse(point.GetInterval(chart.HighestIntervalPoint, chart.IntervalDisplayMax));
- if (takenPixels.ContainsKey(x)) continue;
-
- takenPixels.Add(x, true);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- What is this tool for?
-
-
- Compare two economies together to determine best attack timing windows.
-
-
-
-
-
-@code {
-
- protected override void OnInitialized()
- {
- base.OnInitialized();
- EconomyComparisonService.Subscribe(StateHasChanged);
- }
-
- void IDisposable.Dispose()
- {
- EconomyComparisonService.Unsubscribe(StateHasChanged);
- }
-
-}
\ No newline at end of file
diff --git a/Web/Pages/EconomyComparison/Parts/ChartComponent.razor b/Web/Pages/EconomyComparison/Parts/ChartComponent.razor
deleted file mode 100644
index 4902908..0000000
--- a/Web/Pages/EconomyComparison/Parts/ChartComponent.razor
+++ /dev/null
@@ -1,200 +0,0 @@
-@inject IEconomyComparisonService economyComparisonService
-@inject IJSRuntime jsRuntime;
-@using Model.BuildOrders
-@implements IDisposable
-
-
-
- @{
- var index = 0;
- }
- @foreach (var chart in charts)
- {
- index++;
-
-
-
- @foreach (var point in chart.Points)
- {
- var xCoord = point.GetInterval(chart.HighestIntervalPoint, chart.IntervalDisplayMax);
-
- var show = int.Parse(xCoord) / 6 % 2;
- var player = index - 1;
-
- if (show == player)
- {
-
-
-
-
-
-
-
-
-
-
-
- What is this tool?
-
-
- The Harass Calculator allows you to calculate damage done to an enemy alloy line. For example, if you
- were to attack with Ichors, and kill 6 enemy workers, you can set the
-
- Number of workers lost to
- harass
- to 6. This would determine a loss of @ExampleTotalAlloyLoss
- alloy. Quite
- the large number.
-
-
-
-
-
- What can I learn from this?
-
-
- Well, let's assume you lost a full alloy line of workers, and have to take that
- @ExampleTotalAlloyLoss alloy cost (@ExampleWorkerCost
- to rebuy the workers, and @ExampleMiningTimeCost in lost mining
- time.)
-
- If you were to set the Number of townhalls you have to 2, the calculator will consider worker
- transfer micro. Allowing you to cut the total cost by roughly
- @ExampleTotalAlloyLossDifference alloy. However, that
- number isn't
- entirely accurate, you are also going to have to bump up the Worker travel time to alloy to
- account for the time it takes the transferred workers to arrive at the decimated alloy line.
-
- Let's say it takes 10 seconds for workers to transfer from your second base. Let's enter that for the
- second base travel time for the more accurate loss of
-
- @ExampleTotalAlloyLossAccurate
- alloy
- (saving you @ExampleTotalAlloyLossAccurateDifference alloy.)
-
- Which is
- much better than not transferring workers!
-
-
-
-
-
-
- Can I see the formula for the calculation?
-
-
- The Harass Calculator is based on the following calculation.
-
-
-
- Refer to various aspects of "IMMORTAL: Gates of Pyre" from this external reference!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Web/Pages/Home/Parts/ContentHighlightComponent.razor b/Web/Pages/Home/Parts/ContentHighlightComponent.razor
deleted file mode 100644
index b71b0d7..0000000
--- a/Web/Pages/Home/Parts/ContentHighlightComponent.razor
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
- @Title
-
-
-
- @Description
-
-
-
-
-
-
-@code {
-
- [Parameter] public string Href { get; set; } = default!;
-
- [Parameter] public string Title { get; set; } = default!;
-
- [Parameter] public string Description { get; set; } = default!;
-
- [Parameter] public string ImageHref { get; set; } = default!;
-
-
-}
\ No newline at end of file
diff --git a/Web/Pages/MemoryTester/MemoryTesterPage.razor b/Web/Pages/MemoryTester/MemoryTesterPage.razor
deleted file mode 100644
index bfdc722..0000000
--- a/Web/Pages/MemoryTester/MemoryTesterPage.razor
+++ /dev/null
@@ -1,48 +0,0 @@
-@layout PageLayout
-
-@inherits BasePage
-
-@page "/memory-tester"
-
-
- Memory Tester
-
-
-
-
-
-
-
-
-
-
- What is this tool?
-
-
- A tool to test your memory of unit stats. Look at the first unit given, and fill in the remaining stats
- based on how they should compare.
-
-
- For example, if the first unit you see is the Masked Hunter of range 400, do you remember the range of
- the Scepter? Are they the same? Does the Scepter have double the range of the Masked Hunter? Less range
- than it? Well, enter your guess and submit!
- The range is 200 longer, so if you remember that, you know you are going to need
- more than Masked Hunters to deal with hard to reach enemy Scepters.
-
-
-
-
-
-
- Why is this tool here?
-
-
- It was just a tool to quickly develop for fun when I didn't want to cover something larger on the
- 02/27/2022 live coding stream.
-
- It may get expanded upon later.
-
-
-
-
-
\ No newline at end of file
diff --git a/Web/Pages/MemoryTester/Parts/UnitMemory.razor b/Web/Pages/MemoryTester/Parts/UnitMemory.razor
deleted file mode 100644
index cc2282c..0000000
--- a/Web/Pages/MemoryTester/Parts/UnitMemory.razor
+++ /dev/null
@@ -1,129 +0,0 @@
-@implements IDisposable;
-@inject IMemoryTesterService MemoryTesterService;
-
-
-
-
-
-@code {
-
- [Parameter] public List Notes { get; set; } = default!;
-
- [Parameter] public List Connections { get; set; } = default!;
-
-}
\ No newline at end of file
diff --git a/Web/Pages/PermissionsPage.razor b/Web/Pages/PermissionsPage.razor
deleted file mode 100644
index 013a66b..0000000
--- a/Web/Pages/PermissionsPage.razor
+++ /dev/null
@@ -1,132 +0,0 @@
-@page "/permissions"
-
-@inject IPermissionService PermissionService
-@layout PageLayout
-
-@inject IMyDialogService MyDialogService
-
-@inherits BasePage
-@using Services.Website
-@implements IDisposable
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- What's this page?
- This page has options to enable and disable certain permissions settings. Such as
- Storage and Data Collection.
-
-
-
-
- What does this website store?
- This website usages storage to track user defined default on the Storage page.
-
-
-
-
- Why would I enable storage?
- Enable storage if you want to website to remeber past settings whenever you visit the
- website on the same web browser.
-
-
-
-
- What data does this website collect?
-
- This website usages Google Analytics to collect data on usage of this website.
-
- Items include: if people use keyboard or mouse in build calculator, what pages people visit, and other
- usages.
-
-
-
-
- Why would I enable data collection?
- Enable data tracking if you want the website maintainer to know how your using the
- website.
-
-
-
-
-
-
-@code {
- private bool _storageEnabled;
- private bool _dataCollectionEnabled;
-
- protected override void OnInitialized()
- {
- PermissionService.Subscribe(Update);
-
- Update();
- }
-
- void Update()
- {
- _storageEnabled = PermissionService.GetIsStorageEnabled();
- _dataCollectionEnabled = PermissionService.GetIsDataCollectionEnabled();
- StateHasChanged();
- }
-
- void IDisposable.Dispose()
- {
- PermissionService.Unsubscribe(Update);
- }
-
- private void StoragePermissionChanged(ChangeEventArgs obj)
- {
- PermissionService.SetIsStorageEnabled(!PermissionService.GetIsStorageEnabled());
- }
-
-
- private void DataCollectionPermissionChanged(ChangeEventArgs obj)
- {
- void OnDataCollectionConfirmClicked(MouseEventArgs mouseEventArgs)
- {
- PermissionService.SetIsDataCollectionEnabled(!PermissionService.GetIsDataCollectionEnabled());
- MyDialogService.Hide();
- }
-
- void OnDataCollectionCancelClicked(MouseEventArgs mouseEventArgs)
- {
- MyDialogService.Hide();
- }
-
- if (_storageEnabled && !PermissionService.GetIsDataCollectionEnabled())
- {
- MyDialogService.Show(new DialogContents
- {
- Title = "Permission Request",
- Message = "Are you sure you want to enable data collection? This feature is implemented with Google Analytics, and your data will be used to gauge interests, find bugs, and optimize updates in IGP Fan Reference.",
- OnConfirm = new EventCallback(this, OnDataCollectionConfirmClicked),
- OnCancel = new EventCallback(this, OnDataCollectionCancelClicked),
- ConfirmButtonLabel = "Enable Data Collection"
- });
- }
- else
- {
- PermissionService.SetIsDataCollectionEnabled(!PermissionService.GetIsDataCollectionEnabled());
- }
- }
-
-}
\ No newline at end of file
diff --git a/Web/Pages/RawDatabase.razor b/Web/Pages/RawDatabase.razor
deleted file mode 100644
index cfbcfe7..0000000
--- a/Web/Pages/RawDatabase.razor
+++ /dev/null
@@ -1,15 +0,0 @@
-@inherits BasePage
-
-@page "/raw-database"
-
-
-
- Placeholders and Speculative
- The data I am using contains placeholders and speculation on future mechanics. Ignore said data when
- using this JSON.
-
-
-
- @EntityData.AsJson()
-
-
- Feel free to jump into the stream to ask questions or make feature requests for the website.
-
-
-
-
- Why should you watch these streams?
-
- You shouldn't. By nature of being live coding streams, I think they will have little entertainment and
- educational value.
-
- The most reason (that comes to mind) is to see a coding day of one software developer. Although please
- note that I stream content that I think is easy (to look smart), so it's not a "truly random" coding
- day. For example, you won't find any vods of the five-week sprint where I (figuratively) bash my head
- against the table trying to get SQL working in Blazor WASM before giving up and moving on.
-
-
-
- Anything else I should know?
- I'll be streaming under the "Twitch,
- Software and Game Development" category. If you are looking to see some actual IGP gameplay,
- there are better and more focused streamers to provide said content. Check out the "Twitch, IMMORTAL: Gates of Pyre" category for some examples.
-
-
-
-
\ No newline at end of file
diff --git a/Web/Pages/TechTree/TechTreePage.razor b/Web/Pages/TechTree/TechTreePage.razor
deleted file mode 100644
index 9e34418..0000000
--- a/Web/Pages/TechTree/TechTreePage.razor
+++ /dev/null
@@ -1,223 +0,0 @@
-@layout PageLayout
-@inherits BasePage
-@inject TechTreeService techTreeService
-@inject IEntityDialogService entityDialogService
-@inject NavigationManager NavigationManager
-
-@page "/tech-tree"
-
-
- Tech Tree
-
-
-
- Faction:
-
- @foreach (var faction in factions)
- {
- var factionName = GetFactionName(faction);
-
- }
-