another refactor

This commit is contained in:
Erik Simon 2022-11-23 18:31:47 +01:00
parent dc8fe0324e
commit 940e23fe39
56 changed files with 289 additions and 211 deletions

View File

@ -1,3 +1,4 @@
[*.{appxmanifest,asax,ascx,aspx,axaml,build,c,c++,cc,cginc,compute,cp,cpp,cs,cshtml,cu,cuh,cxx,dtd,fs,fsi,fsscript,fsx,fx,fxh,h,hh,hlsl,hlsli,hlslinc,hpp,hxx,inc,inl,ino,ipp,master,ml,mli,mpp,mq4,mq5,mqh,nuspec,paml,razor,resw,resx,shader,skin,tpp,usf,ush,vb,xaml,xamlx,xoml,xsd}] [*.{appxmanifest,asax,ascx,aspx,axaml,build,c,c++,cc,cginc,compute,cp,cpp,cs,cshtml,cu,cuh,cxx,dtd,fs,fsi,fsscript,fsx,fx,fxh,h,hh,hlsl,hlsli,hlslinc,hpp,hxx,inc,inl,ino,ipp,master,ml,mli,mpp,mq4,mq5,mqh,nuspec,paml,razor,resw,resx,shader,skin,tpp,usf,ush,vb,xaml,xamlx,xoml,xsd}]
indent_style = space indent_style = space
indent_size = 4 indent_size = 4
@ -21,7 +22,7 @@ dotnet_naming_rule.private_instance_fields_rule.style = lower_camel_case_style
dotnet_naming_rule.private_instance_fields_rule.symbols = private_instance_fields_symbols dotnet_naming_rule.private_instance_fields_rule.symbols = private_instance_fields_symbols
dotnet_naming_rule.private_static_fields_rule.import_to_resharper = as_predefined dotnet_naming_rule.private_static_fields_rule.import_to_resharper = as_predefined
dotnet_naming_rule.private_static_fields_rule.severity = warning dotnet_naming_rule.private_static_fields_rule.severity = warning
dotnet_naming_rule.private_static_fields_rule.style = lower_camel_case_style_1 dotnet_naming_rule.private_static_fields_rule.style = lower_camel_case_style
dotnet_naming_rule.private_static_fields_rule.symbols = private_static_fields_symbols dotnet_naming_rule.private_static_fields_rule.symbols = private_static_fields_symbols
dotnet_naming_rule.private_static_readonly_rule.import_to_resharper = as_predefined dotnet_naming_rule.private_static_readonly_rule.import_to_resharper = as_predefined
dotnet_naming_rule.private_static_readonly_rule.severity = warning dotnet_naming_rule.private_static_readonly_rule.severity = warning
@ -34,8 +35,6 @@ dotnet_naming_rule.unity_serialized_field_rule.severity = warning
dotnet_naming_rule.unity_serialized_field_rule.style = lower_camel_case_style dotnet_naming_rule.unity_serialized_field_rule.style = lower_camel_case_style
dotnet_naming_rule.unity_serialized_field_rule.symbols = unity_serialized_field_symbols dotnet_naming_rule.unity_serialized_field_rule.symbols = unity_serialized_field_symbols
dotnet_naming_style.lower_camel_case_style.capitalization = camel_case dotnet_naming_style.lower_camel_case_style.capitalization = camel_case
dotnet_naming_style.lower_camel_case_style_1.capitalization = camel_case
dotnet_naming_style.lower_camel_case_style_1.required_prefix = _
dotnet_naming_style.upper_camel_case_style.capitalization = pascal_case dotnet_naming_style.upper_camel_case_style.capitalization = pascal_case
dotnet_naming_symbols.private_constants_symbols.applicable_accessibilities = private dotnet_naming_symbols.private_constants_symbols.applicable_accessibilities = private
dotnet_naming_symbols.private_constants_symbols.applicable_kinds = field dotnet_naming_symbols.private_constants_symbols.applicable_kinds = field
@ -57,16 +56,28 @@ dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:none
dotnet_style_parentheses_in_relational_binary_operators = never_if_unnecessary:none dotnet_style_parentheses_in_relational_binary_operators = never_if_unnecessary:none
dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion
dotnet_style_predefined_type_for_member_access = true:suggestion dotnet_style_predefined_type_for_member_access = true:suggestion
dotnet_style_qualification_for_event = false:suggestion dotnet_style_qualification_for_event = true:warning
dotnet_style_qualification_for_field = false:suggestion
dotnet_style_qualification_for_method = false:suggestion
dotnet_style_qualification_for_property = false:suggestion
dotnet_style_require_accessibility_modifiers = for_non_interface_members:suggestion
dotnet_style_qualification_for_field = true:warning dotnet_style_qualification_for_field = true:warning
dotnet_style_qualification_for_method = true:warning dotnet_style_qualification_for_method = true:warning
dotnet_style_qualification_for_property = true:warning dotnet_style_qualification_for_property = true:warning
dotnet_style_qualification_for_event = true:warning dotnet_style_require_accessibility_modifiers = for_non_interface_members:suggestion
csharp_style_unused_value_expression_statement_preference = false
csharp_style_namespace_declarations=file_scoped:warning # ReSharper properties
dotnet_diagnostic.CA1805.severity = none resharper_autodetect_indent_settings = true
resharper_use_indent_from_vs = false
# ReSharper inspection severities
resharper_arrange_redundant_parentheses_highlighting = hint
resharper_arrange_type_member_modifiers_highlighting = hint
resharper_arrange_type_modifiers_highlighting = hint
resharper_built_in_type_reference_style_for_member_access_highlighting = hint
resharper_built_in_type_reference_style_highlighting = hint
resharper_local_variable_hides_member_highlighting = none
resharper_not_accessed_field_local_highlighting = hint
resharper_parameter_hides_member_highlighting = none
resharper_suggest_var_or_type_built_in_types_highlighting = hint
resharper_suggest_var_or_type_elsewhere_highlighting = hint
resharper_suggest_var_or_type_simple_types_highlighting = hint
resharper_web_config_module_not_resolved_highlighting = warning
resharper_web_config_type_not_resolved_highlighting = warning
resharper_web_config_wrong_module_highlighting = warning

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RiderProjectSettingsUpdater">
<option name="vcsConfiguration" value="2" />
</component>
</project>

View File

@ -8,16 +8,62 @@
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="647d77fa-e9ab-4317-9087-0d31c3323ae0" name="Changes" comment=""> <list default="true" id="647d77fa-e9ab-4317-9087-0d31c3323ae0" name="Changes" comment="">
<change afterPath="$PROJECT_DIR$/Mine2d/assets/breaking.ase" afterDir="false" /> <change afterPath="$PROJECT_DIR$/.idea/.idea.Mine2d/.idea/indexLayout.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Mine2d/assets/breaking.png" afterDir="false" /> <change afterPath="$PROJECT_DIR$/.idea/.idea.Mine2d/.idea/projectSettingsUpdater.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Mine2d/assets/font.ttf" afterDir="false" /> <change afterPath="$PROJECT_DIR$/Mine2d/game/core/tiles/TileRegistry.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Mine2d/assets/stone.png" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.editorconfig" beforeDir="false" afterPath="$PROJECT_DIR$/.editorconfig" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.Mine2d/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.Mine2d/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/.idea.Mine2d/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.Mine2d/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/Mine2d.csproj" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/Mine2d.csproj" afterDir="false" /> <change beforePath="$PROJECT_DIR$/Folder.DotSettings" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d.sln.DotSettings" afterDir="false" />
<change beforePath="$PROJECT_DIR$/assets/breaking.ase" beforeDir="false" /> <change beforePath="$PROJECT_DIR$/Mine2d/Context.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/Context.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/assets/breaking.png" beforeDir="false" /> <change beforePath="$PROJECT_DIR$/Mine2d/Controls.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/Controls.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/assets/font.ttf" beforeDir="false" /> <change beforePath="$PROJECT_DIR$/Mine2d/Import.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/GlobalUsings.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/assets/stone.png" beforeDir="false" /> <change beforePath="$PROJECT_DIR$/Mine2d/Mine2dGame.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/Mine2dGame.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/Program.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/Program.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/backend/Backend.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/engine/networking/Backend.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/backend/IBackend.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/engine/networking/IBackend.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/backend/Publisher.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/engine/Publisher.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/backend/RemoteBackend.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/engine/networking/RemoteBackend.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/backend/data/Packet.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/backend/data/Packet.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/backend/interactor/Breaking.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/backend/interactor/Breaking.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/backend/interactor/Connect.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/backend/interactor/Connect.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/backend/interactor/Move.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/backend/interactor/Move.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/backend/interactor/WorldGeneration.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/backend/interactor/WorldGeneration.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/Bootstrapper.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/Bootstrapper.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/Camera.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/Camera.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/Constants.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/Constants.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/PlayerEntity.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/PlayerEntity.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/data/Chunk.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/data/Chunk.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/data/STile.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/data/STile.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/data/World.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/data/World.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/extensions/AssemblyExtensions.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/extensions/AssemblyExtensions.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/extensions/TypeExtensions.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/extensions/TypeExtensions.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/tiles/OreTile.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/tiles/OreTile.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/tiles/TextureCache.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/tiles/TextureCache.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/tiles/Tile.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/tiles/Tile.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/tiles/TileRegistry.cs" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/core/world/ChunkGenerator.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/core/world/ChunkGenerator.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/engine/PacketUtils.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/engine/networking/PacketUtils.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/engine/Shapes.cs" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/engine/TextureFactory.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/engine/TextureFactory.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/EventPublisher.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/engine/EventPublisher.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/EventService.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/engine/EventService.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/Frontend.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/engine/networking/Frontend.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/IFrontend.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/engine/networking/IFrontend.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/events/Exit.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/frontend/events/Exit.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/events/Fullscreen.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/frontend/events/Fullscreen.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/events/PlayerBreakInput.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/frontend/events/PlayerBreakInput.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/events/PlayerInput.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/frontend/events/PlayerInput.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/events/Resize.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/frontend/events/Resize.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/renderer/BackgroundRenderer.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/frontend/renderer/BackgroundRenderer.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/renderer/GameRenderer.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/frontend/renderer/GameRenderer.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/renderer/IRenderer.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/engine/IRenderer.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/renderer/PlayerRenderer.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/frontend/renderer/PlayerRenderer.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/renderer/WorldCursorRenderer.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/frontend/renderer/WorldCursorRenderer.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/frontend/renderer/WorldRenderer.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/frontend/renderer/WorldRenderer.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/network/Converter.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/backend/network/Converter.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/network/PacketException.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/backend/network/PacketException.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/state/GameState.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/state/GameState.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mine2d/state/Player.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Mine2d/game/state/Player.cs" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -25,9 +71,16 @@
<option name="LAST_RESOLUTION" value="IGNORE" /> <option name="LAST_RESOLUTION" value="IGNORE" />
</component> </component>
<component name="HighlightingSettingsPerFile"> <component name="HighlightingSettingsPerFile">
<setting file="mock:///Dummy.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="mock:///Dummy.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/48db0d883a624d62aa8ff0ff392ea93517600/62/b09add12/WatsonTcpClient.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/48db0d883a624d62aa8ff0ff392ea93517600/62/b09add12/WatsonTcpClient.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Mine2d/engine/Game.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Mine2d/engine/Renderer.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Mine2d/engine/networking/Backend.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Mine2d/engine/networking/Frontend.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Mine2d/engine/networking/IBackend.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Mine2d/engine/networking/IFrontend.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Mine2d/game/Context.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Mine2d/game/backend/network/Converter.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Mine2d/game/core/tiles/Tile.cs" root0="FORCE_HIGHLIGHTING" />
</component> </component>
<component name="MacroExpansionManager"> <component name="MacroExpansionManager">
<option name="directoryName" value="sqwxszt3" /> <option name="directoryName" value="sqwxszt3" />
@ -49,13 +102,14 @@
"ASKED_SHARE_PROJECT_CONFIGURATION_FILES": "true", "ASKED_SHARE_PROJECT_CONFIGURATION_FILES": "true",
"RunOnceActivity.OpenProjectViewOnStart": "true", "RunOnceActivity.OpenProjectViewOnStart": "true",
"RunOnceActivity.ShowReadmeOnStart": "true", "RunOnceActivity.ShowReadmeOnStart": "true",
"SHARE_PROJECT_CONFIGURATION_FILES": "true",
"WebServerToolWindowFactoryState": "false", "WebServerToolWindowFactoryState": "false",
"XThreadsFramesViewSplitterKey": "0.5005688",
"last_opened_file_path": "/mnt/storage_01/data/Dev/repos/Mine2d/Mine2d/Mine2d.csproj", "last_opened_file_path": "/mnt/storage_01/data/Dev/repos/Mine2d/Mine2d/Mine2d.csproj",
"node.js.detected.package.eslint": "true", "node.js.detected.package.eslint": "true",
"node.js.detected.package.tslint": "true", "node.js.detected.package.tslint": "true",
"node.js.selected.package.eslint": "(autodetect)", "node.js.selected.package.eslint": "(autodetect)",
"node.js.selected.package.tslint": "(autodetect)", "node.js.selected.package.tslint": "(autodetect)",
"settings.editor.selected.configurable": "preferences.sourceCode.C#",
"vue.rearranger.settings.migration": "true" "vue.rearranger.settings.migration": "true"
} }
}]]></component> }]]></component>
@ -109,7 +163,10 @@
<option name="number" value="Default" /> <option name="number" value="Default" />
<option name="presentableId" value="Default" /> <option name="presentableId" value="Default" />
<updated>1668298144432</updated> <updated>1668298144432</updated>
<workItem from="1668298147381" duration="717000" /> <workItem from="1668298147381" duration="4112000" />
<workItem from="1669217635437" duration="1866000" />
<workItem from="1669223179688" duration="19000" />
<workItem from="1669223234527" duration="1396000" />
</task> </task>
<servers /> <servers />
</component> </component>

View File

@ -1,2 +1,2 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation"> <wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/UserDictionary/Words/=trimmable/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary> <s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=SDL/@EntryIndexedValue">SDL</s:String></wpf:ResourceDictionary>

View File

@ -1,4 +1,6 @@
namespace Mine2d; using Mine2d.game;
namespace Mine2d;
public class Program public class Program
{ {

View File

@ -1,29 +0,0 @@
namespace Mine2d.core.tiles;
public enum Tiles
{
Stone = 1,
Ore1 = 2,
Ore2 = 3,
Ore3 = 4,
Ore4 = 5,
}
public class TileRegistry
{
public Dictionary<int, Tile> Tiles { get; set; } = new();
public void RegisterTile()
{
this.Tiles.Add(1, new Tile("stone", "stone", 5));
this.Tiles.Add(2, new OreTile("ore1", new string[] { "stone", "ore1" }, 5));
this.Tiles.Add(3, new OreTile("ore2", new string[] { "stone", "ore2" }, 7));
this.Tiles.Add(4, new OreTile("ore3", new string[] { "stone", "ore3" }, 8));
this.Tiles.Add(5, new OreTile("ore4", new string[] { "stone", "ore4" }, 10));
}
public Tile GetTile(int id)
{
return this.Tiles[id];
}
}

View File

@ -1,13 +1,13 @@
using Mine2d.core.extensions;
using Mine2d.engine.system; using Mine2d.engine.system;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
using Mine2d.game.core.extensions;
namespace Mine2d.frontend; namespace Mine2d.engine;
internal struct EventAction internal struct EventAction
{ {
public EventPriority priority; public EventPriority Priority;
public Delegate del; public Delegate Del;
} }
public class EventPublisher public class EventPublisher
@ -48,8 +48,8 @@ public class EventPublisher
); );
this.eventListeners[eventType].Add(new EventAction this.eventListeners[eventType].Add(new EventAction
{ {
priority = ((EventListenerAttribute)attributes[0]).Priority, Priority = ((EventListenerAttribute)attributes[0]).Priority,
del = del Del = del
}); });
} }
} }
@ -57,7 +57,7 @@ public class EventPublisher
foreach (var (_, value) in this.eventListeners) foreach (var (_, value) in this.eventListeners)
{ {
value.Sort((a, b) => a.priority.CompareTo(b.priority)); value.Sort((a, b) => a.Priority.CompareTo(b.Priority));
} }
} }
@ -68,7 +68,7 @@ public class EventPublisher
Console.WriteLine(eventType); Console.WriteLine(eventType);
foreach (var action in this.eventListeners[eventType]) foreach (var action in this.eventListeners[eventType])
{ {
Console.WriteLine(action.del.Method.Name); Console.WriteLine(action.Del.Method.Name);
} }
} }
} }
@ -81,13 +81,13 @@ public class EventPublisher
{ {
foreach (var action in this.eventListeners[eventType]) foreach (var action in this.eventListeners[eventType])
{ {
if (action.del.Method.GetParameters().Length == 0) if (action.Del.Method.GetParameters().Length == 0)
{ {
action.del.DynamicInvoke(); action.Del.DynamicInvoke();
} }
else else
{ {
action.del.DynamicInvoke(e); action.Del.DynamicInvoke(e);
} }
} }
} }

View File

@ -1,10 +1,10 @@
using Mine2d.engine.system; using Mine2d.engine.system;
namespace Mine2d.frontend; namespace Mine2d.engine;
public class EventService public class EventService
{ {
private static readonly EventPublisher eventPublisher = new(); private static readonly EventPublisher EventPublisher = new();
public static void PollEvents() public static void PollEvents()
{ {
@ -12,31 +12,31 @@ public class EventService
{ {
if (e.type == SDL_EventType.SDL_QUIT) if (e.type == SDL_EventType.SDL_QUIT)
{ {
eventPublisher.Publish(EventType.Quit, e); EventPublisher.Publish(EventType.Quit, e);
} }
if (e.type == SDL_EventType.SDL_WINDOWEVENT && e.window.windowEvent == SDL_WindowEventID.SDL_WINDOWEVENT_RESIZED) if (e.type == SDL_EventType.SDL_WINDOWEVENT && e.window.windowEvent == SDL_WindowEventID.SDL_WINDOWEVENT_RESIZED)
{ {
eventPublisher.Publish(EventType.WindowResize, e); EventPublisher.Publish(EventType.WindowResize, e);
} }
if (e.type == SDL_EventType.SDL_MOUSEMOTION) if (e.type == SDL_EventType.SDL_MOUSEMOTION)
{ {
eventPublisher.Publish(EventType.MouseMotion, e); EventPublisher.Publish(EventType.MouseMotion, e);
} }
if (e.type == SDL_EventType.SDL_MOUSEBUTTONDOWN && e.button.button == SDL_BUTTON_LEFT) if (e.type == SDL_EventType.SDL_MOUSEBUTTONDOWN && e.button.button == SDL_BUTTON_LEFT)
{ {
eventPublisher.Publish(EventType.MouseButtonDown, e); EventPublisher.Publish(EventType.MouseButtonDown, e);
} }
if (e.type == SDL_EventType.SDL_MOUSEBUTTONUP && e.button.button == SDL_BUTTON_LEFT) if (e.type == SDL_EventType.SDL_MOUSEBUTTONUP && e.button.button == SDL_BUTTON_LEFT)
{ {
eventPublisher.Publish(EventType.MouseButtonUp, e); EventPublisher.Publish(EventType.MouseButtonUp, e);
} }
if (e.type == SDL_EventType.SDL_KEYDOWN) if (e.type == SDL_EventType.SDL_KEYDOWN)
{ {
eventPublisher.Publish(EventType.KeyDown, e); EventPublisher.Publish(EventType.KeyDown, e);
} }
if (e.type == SDL_EventType.SDL_KEYUP) if (e.type == SDL_EventType.SDL_KEYUP)
{ {
eventPublisher.Publish(EventType.KeyUp, e); EventPublisher.Publish(EventType.KeyUp, e);
} }
} }
} }

View File

@ -1,4 +1,4 @@
namespace Mine2d.frontend.renderer; namespace Mine2d.engine;
public interface IRenderer public interface IRenderer
{ {

View File

@ -1,9 +1,9 @@
using System.Reflection; using System.Reflection;
using Mine2d.core.extensions; using Mine2d.engine.networking;
using Mine2d.engine;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
using Mine2d.game.core.extensions;
namespace Mine2d.backend; namespace Mine2d.engine;
public class Publisher public class Publisher
{ {

View File

@ -1,13 +0,0 @@
namespace Mine2d.engine;
public struct Line
{
public Vector2 Start { get; set; }
public Vector2 End { get; set; }
public Line(Vector2 start, Vector2 end)
{
this.Start = start;
this.End = end;
}
}

View File

@ -1,3 +1,5 @@
using Mine2d.game;
namespace Mine2d.engine; namespace Mine2d.engine;
public class TextureFactory public class TextureFactory
@ -14,16 +16,16 @@ public class TextureFactory
public IntPtr CreateTexture(string[] path) public IntPtr CreateTexture(string[] path)
{ {
var target = this.loadTexture(path[0]); var target = this.LoadTexture(path[0]);
for (var i = 1; i < path.Length; i++) for (var i = 1; i < path.Length; i++)
{ {
var t = this.loadTexture(path[i]); var t = this.LoadTexture(path[i]);
target = this.mergeTextures(target, t); target = this.MergeTextures(target, t);
} }
return target; return target;
} }
private IntPtr mergeTextures(IntPtr t1, IntPtr t2) private IntPtr MergeTextures(IntPtr t1, IntPtr t2)
{ {
var (w, h) = this.renderer.GetTextureSize(t1); var (w, h) = this.renderer.GetTextureSize(t1);
var target = SDL_CreateTexture(this.renderer.GetRaw(), SDL_PIXELFORMAT_RGBA8888, (int)SDL_TextureAccess.SDL_TEXTUREACCESS_TARGET, w, h); var target = SDL_CreateTexture(this.renderer.GetRaw(), SDL_PIXELFORMAT_RGBA8888, (int)SDL_TextureAccess.SDL_TEXTUREACCESS_TARGET, w, h);
@ -35,7 +37,7 @@ public class TextureFactory
return target; return target;
} }
private IntPtr loadTexture(string path) private IntPtr LoadTexture(string path)
{ {
if (this.textureCache.TryGetValue(path, out var value)) if (this.textureCache.TryGetValue(path, out var value))
{ {

View File

@ -1,11 +1,12 @@
using System.Text; using System.Text;
using Mine2d.backend.data;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
using Mine2d.network; using Mine2d.game;
using Mine2d.game.backend.data;
using Mine2d.game.backend.network;
using Newtonsoft.Json; using Newtonsoft.Json;
using WatsonTcp; using WatsonTcp;
namespace Mine2d.backend; namespace Mine2d.engine.networking;
public class Backend : IBackend public class Backend : IBackend
{ {

View File

@ -1,7 +1,8 @@
using Mine2d.backend.data; using Mine2d.game;
using Mine2d.frontend.renderer; using Mine2d.game.backend.data;
using Mine2d.game.frontend.renderer;
namespace Mine2d.frontend; namespace Mine2d.engine.networking;
public class Frontend : IFrontend public class Frontend : IFrontend
{ {

View File

@ -1,4 +1,4 @@
namespace Mine2d.backend; namespace Mine2d.engine.networking;
public interface IBackend public interface IBackend
{ {

View File

@ -1,4 +1,4 @@
namespace Mine2d.frontend; namespace Mine2d.engine.networking;
public interface IFrontend public interface IFrontend
{ {

View File

@ -1,6 +1,6 @@
using Mine2d.backend.data; using Mine2d.game.backend.data;
namespace Mine2d.engine; namespace Mine2d.engine.networking;
public static class PacketUtils public static class PacketUtils
{ {

View File

@ -1,19 +1,19 @@
using System.Text; using System.Text;
using Mine2d.backend.data;
using Mine2d.engine;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
using Mine2d.state; using Mine2d.game;
using Mine2d.game.backend.data;
using Mine2d.game.state;
using Newtonsoft.Json; using Newtonsoft.Json;
using WatsonTcp; using WatsonTcp;
namespace Mine2d.backend; namespace Mine2d.engine.networking;
public class RemoteBackend : IBackend public class RemoteBackend : IBackend
{ {
private WatsonTcpClient client; private WatsonTcpClient client;
private Publisher publisher; private Publisher publisher;
private readonly Queue<ValueType> pendingPackets = new(); private readonly Queue<ValueType> pendingPackets = new();
private uint tick = 0; private uint tick;
public void Process(double dt) public void Process(double dt)
{ {

View File

@ -1,10 +1,9 @@
using Mine2d.backend;
using Mine2d.core.tiles;
using Mine2d.engine; using Mine2d.engine;
using Mine2d.frontend; using Mine2d.engine.networking;
using Mine2d.state; using Mine2d.game.core.tiles;
using Mine2d.game.state;
namespace Mine2d; namespace Mine2d.game;
public class Context public class Context
{ {

View File

@ -1,4 +1,4 @@
namespace Mine2d; namespace Mine2d.game;
public enum Control public enum Control
{ {

View File

@ -1,10 +1,9 @@
using Mine2d.backend;
using Mine2d.core;
using Mine2d.engine; using Mine2d.engine;
using Mine2d.frontend; using Mine2d.engine.networking;
using Mine2d.state; using Mine2d.game.core;
using Mine2d.game.state;
namespace Mine2d; namespace Mine2d.game;
public class Mine2dGame : Game public class Mine2dGame : Game
{ {

View File

@ -1,6 +1,6 @@
using Mine2d.core.data; using Mine2d.game.core.data;
namespace Mine2d.backend.data; namespace Mine2d.game.backend.data;
public interface IPacket public interface IPacket
{ {

View File

@ -1,9 +1,9 @@
using Mine2d.backend.data;
using Mine2d.core;
using Mine2d.core.data;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
using Mine2d.game.backend.data;
using Mine2d.game.core;
using Mine2d.game.core.data;
namespace Mine2d.backend.interactor; namespace Mine2d.game.backend.interactor;
[Interactor] [Interactor]
public class Breaking public class Breaking

View File

@ -1,8 +1,8 @@
using Mine2d.backend.data;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
using Mine2d.state; using Mine2d.game.backend.data;
using Mine2d.game.state;
namespace Mine2d.backend.interactor; namespace Mine2d.game.backend.interactor;
[Interactor] [Interactor]
public class Connect public class Connect

View File

@ -1,8 +1,8 @@
using Mine2d.backend.data;
using Mine2d.core;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
using Mine2d.game.backend.data;
using Mine2d.game.core;
namespace Mine2d.backend.interactor; namespace Mine2d.game.backend.interactor;
[Interactor] [Interactor]
public class Move public class Move

View File

@ -1,24 +1,22 @@
using Mine2d.backend.data;
using Mine2d.core.data;
using Mine2d.core.tiles;
using Mine2d.core.world;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
using Mine2d.game.backend.data;
using Mine2d.game.core.data;
using Mine2d.game.core.world;
namespace Mine2d.backend.interactor; namespace Mine2d.game.backend.interactor;
[Interactor] [Interactor]
public class WorldGeneration public class WorldGeneration
{ {
private static Vector2[] directions = new Vector2[] private static readonly Vector2[] Directions = {
{ new(0, 1),
new Vector2(0, 1), new(1, 0),
new Vector2(1, 0), new(0, -1),
new Vector2(0, -1), new(-1, 0),
new Vector2(-1, 0), new(1, 1),
new Vector2(1, 1), new(1, -1),
new Vector2(1, -1), new(-1, -1),
new Vector2(-1, -1), new(-1, 1)
new Vector2(-1, 1)
}; };
[Interaction(InteractorKind.Server, "playerMoved")] [Interaction(InteractorKind.Server, "playerMoved")]
@ -26,7 +24,7 @@ public class WorldGeneration
{ {
var ctx = Context.Get(); var ctx = Context.Get();
var world = ctx.GameState.World; var world = ctx.GameState.World;
foreach (var direction in directions) foreach (var direction in Directions)
{ {
var generationTarget = packet.Target + direction * 16 * 32; var generationTarget = packet.Target + direction * 16 * 32;
var hasChunkGenerated = world.HasChunkAt(generationTarget); var hasChunkGenerated = world.HasChunkAt(generationTarget);

View File

@ -1,9 +1,9 @@
using System.Text; using System.Text;
using Mine2d.backend.data; using Mine2d.game.backend.data;
using Newtonsoft.Json; using Newtonsoft.Json;
using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq;
namespace Mine2d.network; namespace Mine2d.game.backend.network;
public class Converter public class Converter
{ {

View File

@ -1,4 +1,4 @@
namespace Mine2d.network; namespace Mine2d.game.backend.network;
public class PacketException : Exception public class PacketException : Exception
{ {

View File

@ -1,8 +1,8 @@
using Mine2d.core.data; using Mine2d.game.core.data;
using Mine2d.core.tiles; using Mine2d.game.core.tiles;
using Mine2d.core.world; using Mine2d.game.core.world;
namespace Mine2d.core; namespace Mine2d.game.core;
public class Bootstrapper public class Bootstrapper
{ {

View File

@ -1,4 +1,4 @@
namespace Mine2d.core; namespace Mine2d.game.core;
public class Camera public class Camera
{ {

View File

@ -1,4 +1,4 @@
namespace Mine2d.core; namespace Mine2d.game.core;
public class Constants public class Constants
{ {

View File

@ -1,6 +1,6 @@
using Mine2d.state; using Mine2d.game.state;
namespace Mine2d.core; namespace Mine2d.game.core;
public class PlayerEntity public class PlayerEntity
{ {

View File

@ -1,4 +1,4 @@
namespace Mine2d.core.data; namespace Mine2d.game.core.data;
public class Chunk public class Chunk
{ {

View File

@ -1,6 +1,6 @@
using Mine2d.core.tiles; using Mine2d.game.core.tiles;
namespace Mine2d.core.data; namespace Mine2d.game.core.data;
public struct STile public struct STile
{ {

View File

@ -1,4 +1,4 @@
namespace Mine2d.core.data; namespace Mine2d.game.core.data;
public class World public class World
{ {

View File

@ -1,6 +1,6 @@
using System.Reflection; using System.Reflection;
namespace Mine2d.core.extensions; namespace Mine2d.game.core.extensions;
public static class AssemblyExtensions public static class AssemblyExtensions
{ {

View File

@ -1,6 +1,6 @@
using System.Reflection; using System.Reflection;
namespace Mine2d.core.extensions; namespace Mine2d.game.core.extensions;
public static class TypeExtensions public static class TypeExtensions
{ {

View File

@ -1,6 +1,6 @@
using Mine2d.engine; using Mine2d.engine;
namespace Mine2d.core.tiles; namespace Mine2d.game.core.tiles;
public class OreTile : Tile public class OreTile : Tile
{ {

View File

@ -1,7 +1,7 @@
using Mine2d.core.data;
using Mine2d.engine; using Mine2d.engine;
using Mine2d.game.core.data;
namespace Mine2d.core.tiles; namespace Mine2d.game.core.tiles;
public class Tile public class Tile
{ {

View File

@ -0,0 +1,29 @@
namespace Mine2d.game.core.tiles;
public enum Tiles
{
Stone = 1,
Ore1 = 2,
Ore2 = 3,
Ore3 = 4,
Ore4 = 5,
}
public class TileRegistry
{
public Dictionary<int, Tile> Tiles { get; set; } = new();
public void RegisterTile()
{
this.Tiles.Add(1, new Tile("stone", "stone", 5));
this.Tiles.Add(2, new OreTile("ore1", new[] { "stone", "ore1" }, 5));
this.Tiles.Add(3, new OreTile("ore2", new[] { "stone", "ore2" }, 7));
this.Tiles.Add(4, new OreTile("ore3", new[] { "stone", "ore3" }, 8));
this.Tiles.Add(5, new OreTile("ore4", new[] { "stone", "ore4" }, 10));
}
public Tile GetTile(int id)
{
return this.Tiles[id];
}
}

View File

@ -1,7 +1,7 @@
using Mine2d.core.data; using Mine2d.game.core.data;
using Mine2d.core.tiles; using Mine2d.game.core.tiles;
namespace Mine2d.core.world; namespace Mine2d.game.core.world;
public class ChunkGenerator public class ChunkGenerator
{ {

View File

@ -1,18 +1,18 @@
using Mine2d.engine.system; using Mine2d.engine.system;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
namespace Mine2d.frontend.events; namespace Mine2d.game.frontend.events;
public class Exit public class Exit
{ {
[EventListener(EventType.Quit)] [EventListener(EventType.Quit)]
public static void onExit() public static void OnExit()
{ {
Environment.Exit(0); Environment.Exit(0);
} }
[EventListener(EventType.KeyDown)] [EventListener(EventType.KeyDown)]
public static void onKeyDown(SDL_Event e) public static void OnKeyDown(SDL_Event e)
{ {
if (e.key.keysym.scancode == SDL_Scancode.SDL_SCANCODE_ESCAPE) if (e.key.keysym.scancode == SDL_Scancode.SDL_SCANCODE_ESCAPE)
{ {

View File

@ -1,12 +1,12 @@
using Mine2d.engine.system; using Mine2d.engine.system;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
namespace Mine2d.frontend.events; namespace Mine2d.game.frontend.events;
public class Fullscreen public class Fullscreen
{ {
[EventListener(EventType.KeyDown)] [EventListener(EventType.KeyDown)]
public static void onToggleFullscreen(SDL_Event e) public static void OnToggleFullscreen(SDL_Event e)
{ {
if (e.key.keysym.scancode != SDL_Scancode.SDL_SCANCODE_F11) if (e.key.keysym.scancode != SDL_Scancode.SDL_SCANCODE_F11)
{ {

View File

@ -1,13 +1,13 @@
using Mine2d.backend.data;
using Mine2d.engine.system; using Mine2d.engine.system;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
using Mine2d.game.backend.data;
namespace Mine2d.frontend.events; namespace Mine2d.game.frontend.events;
public class PlayerBreakInput public class PlayerBreakInput
{ {
[EventListener(EventType.MouseMotion)] [EventListener(EventType.MouseMotion)]
public static void onBreak(SDL_Event e) public static void OnBreak(SDL_Event e)
{ {
var ctx = Context.Get(); var ctx = Context.Get();
var mousePos = new Vector2(e.motion.x, e.motion.y); var mousePos = new Vector2(e.motion.x, e.motion.y);
@ -23,7 +23,7 @@ public class PlayerBreakInput
} }
[EventListener(EventType.MouseButtonDown)] [EventListener(EventType.MouseButtonDown)]
public static void onMouseDown(SDL_Event e) public static void OnMouseDown(SDL_Event e)
{ {
if (e.button.button != SDL_BUTTON_LEFT) if (e.button.button != SDL_BUTTON_LEFT)
{ {
@ -36,7 +36,7 @@ public class PlayerBreakInput
} }
[EventListener(EventType.MouseButtonUp)] [EventListener(EventType.MouseButtonUp)]
public static void onMouseUp(SDL_Event e) public static void OnMouseUp(SDL_Event e)
{ {
if (e.button.button != SDL_BUTTON_LEFT) if (e.button.button != SDL_BUTTON_LEFT)
{ {

View File

@ -1,16 +1,16 @@
using Mine2d.backend.data;
using Mine2d.engine.system; using Mine2d.engine.system;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
using Mine2d.game.backend.data;
namespace Mine2d.frontend.events; namespace Mine2d.game.frontend.events;
public class PlayerInput public class PlayerInput
{ {
[EventListener(EventType.KeyDown)] [EventListener(EventType.KeyDown)]
public static void move(SDL_Event e) public static void Move(SDL_Event e)
{ {
var ctx = Context.Get(); var ctx = Context.Get();
if (!isMovementKey(e.key.keysym.scancode) || e.key.repeat == 1) if (!IsMovementKey(e.key.keysym.scancode) || e.key.repeat == 1)
{ {
return; return;
} }
@ -32,14 +32,14 @@ public class PlayerInput
movementInput.Y += 1; movementInput.Y += 1;
} }
ctx.FrontendGameState.MovementInput = movementInput; ctx.FrontendGameState.MovementInput = movementInput;
sendMovement(); SendMovement();
} }
[EventListener(EventType.KeyUp)] [EventListener(EventType.KeyUp)]
public static void stopMove(SDL_Event e) public static void StopMove(SDL_Event e)
{ {
var ctx = Context.Get(); var ctx = Context.Get();
if (!isMovementKey(e.key.keysym.scancode) || e.key.repeat == 1) if (!IsMovementKey(e.key.keysym.scancode) || e.key.repeat == 1)
{ {
return; return;
} }
@ -61,10 +61,10 @@ public class PlayerInput
movementInput.Y -= 1; movementInput.Y -= 1;
} }
ctx.FrontendGameState.MovementInput = movementInput; ctx.FrontendGameState.MovementInput = movementInput;
sendMovement(); SendMovement();
} }
private static bool isMovementKey(SDL_Scancode scancode) private static bool IsMovementKey(SDL_Scancode scancode)
{ {
return scancode is SDL_Scancode.SDL_SCANCODE_A return scancode is SDL_Scancode.SDL_SCANCODE_A
or SDL_Scancode.SDL_SCANCODE_D or SDL_Scancode.SDL_SCANCODE_D
@ -72,7 +72,7 @@ public class PlayerInput
or SDL_Scancode.SDL_SCANCODE_S; or SDL_Scancode.SDL_SCANCODE_S;
} }
private static void sendMovement() private static void SendMovement()
{ {
var ctx = Context.Get(); var ctx = Context.Get();
var movement = ctx.FrontendGameState.MovementInput; var movement = ctx.FrontendGameState.MovementInput;

View File

@ -1,12 +1,12 @@
using Mine2d.engine.system; using Mine2d.engine.system;
using Mine2d.engine.system.annotations; using Mine2d.engine.system.annotations;
namespace Mine2d.frontend.events; namespace Mine2d.game.frontend.events;
public class Resize public class Resize
{ {
[EventListener(EventType.WindowResize)] [EventListener(EventType.WindowResize)]
public static void onResize(SDL_Event e) public static void OnResize(SDL_Event e)
{ {
var ctx = Context.Get(); var ctx = Context.Get();
ctx.FrontendGameState.WindowWidth = e.window.data1; ctx.FrontendGameState.WindowWidth = e.window.data1;

View File

@ -1,4 +1,6 @@
namespace Mine2d.frontend.renderer; using Mine2d.engine;
namespace Mine2d.game.frontend.renderer;
public class BackgroundRenderer : IRenderer public class BackgroundRenderer : IRenderer
{ {

View File

@ -1,4 +1,6 @@
namespace Mine2d.frontend.renderer; using Mine2d.engine;
namespace Mine2d.game.frontend.renderer;
public class GameRenderer : IRenderer public class GameRenderer : IRenderer
{ {

View File

@ -1,4 +1,6 @@
namespace Mine2d.frontend.renderer; using Mine2d.engine;
namespace Mine2d.game.frontend.renderer;
public class PlayerRenderer : IRenderer public class PlayerRenderer : IRenderer
{ {

View File

@ -1,6 +1,7 @@
using Mine2d.core; using Mine2d.engine;
using Mine2d.game.core;
namespace Mine2d.frontend.renderer; namespace Mine2d.game.frontend.renderer;
public class WorldCursorRenderer : IRenderer public class WorldCursorRenderer : IRenderer
{ {

View File

@ -1,7 +1,7 @@
using Mine2d.core;
using Mine2d.engine; using Mine2d.engine;
using Mine2d.game.core;
namespace Mine2d.frontend.renderer; namespace Mine2d.game.frontend.renderer;
public class WorldRenderer : IRenderer public class WorldRenderer : IRenderer
{ {
@ -36,7 +36,7 @@ public class WorldRenderer : IRenderer
this.overlayHeight = wh; this.overlayHeight = wh;
} }
clearTexture(this.overlay); ClearTexture(this.overlay);
var renderer = Context.Get().Renderer; var renderer = Context.Get().Renderer;
var scale = ctx.FrontendGameState.Settings.GameScale; var scale = ctx.FrontendGameState.Settings.GameScale;
var camera = Context.Get().FrontendGameState.Camera; var camera = Context.Get().FrontendGameState.Camera;
@ -80,7 +80,7 @@ public class WorldRenderer : IRenderer
Renderer.ProcessStatus(SDL_SetRenderTarget(ctx.Renderer.GetRaw(), IntPtr.Zero)); Renderer.ProcessStatus(SDL_SetRenderTarget(ctx.Renderer.GetRaw(), IntPtr.Zero));
} }
public static void clearTexture(IntPtr texture) public static void ClearTexture(IntPtr texture)
{ {
var ctx = Context.Get(); var ctx = Context.Get();
var renderer = ctx.Renderer; var renderer = ctx.Renderer;

View File

@ -1,7 +1,7 @@
using Mine2d.core; using Mine2d.game.core;
using Mine2d.core.data; using Mine2d.game.core.data;
namespace Mine2d.state; namespace Mine2d.game.state;
public class FrontendGameState public class FrontendGameState
{ {

View File

@ -1,4 +1,4 @@
namespace Mine2d.state; namespace Mine2d.game.state;
public class Player public class Player
{ {