This commit is contained in:
moonheart08 2020-10-08 22:00:24 -05:00
parent 5bec4a5921
commit 50c6173d91
14 changed files with 261 additions and 8 deletions

View file

@ -0,0 +1,12 @@
using Robust.Shared.IoC;
namespace Content.Client
{
internal static class ClientContentIoC
{
public static void Register()
{
// DEVNOTE: IoCManager registrations for the client go here and only here.
}
}
}

View file

@ -0,0 +1,55 @@
using Robust.Shared.ContentPack;
using Robust.Shared.Interfaces.Configuration;
using Robust.Shared.Interfaces.GameObjects;
using Robust.Shared.Interfaces.Map;
using Robust.Shared.IoC;
using Robust.Shared.Map;
using Robust.Shared.Prototypes;
using Robust.Shared.Timing;
namespace Content.Client
{
public class EntryPoint: GameClient
{
public override void Init()
{
var factory = IoCManager.Resolve<IComponentFactory>();
var prototypes = IoCManager.Resolve<IPrototypeManager>();
factory.DoAutoRegistrations();
foreach (var ignoreName in IgnoredComponents.List)
{
factory.RegisterIgnore(ignoreName);
}
foreach (var ignoreName in IgnoredPrototypes.List)
{
prototypes.RegisterIgnore(ignoreName);
}
ClientContentIoC.Register();
IoCManager.BuildGraph();
// DEVNOTE: This is generally where you'll be setting up the IoCManager further.
IoCManager.InjectDependencies(this);
}
public override void PostInit()
{
base.PostInit();
// DEVNOTE: Further setup, this is the spot you should start trying to connect to the server from.
}
public override void Update(ModUpdateLevel level, FrameEventArgs frameEventArgs)
{
base.Update(level, frameEventArgs);
// DEVNOTE: Game update loop goes here. Usually you'll want some independent GameTicker.
}
}
}

View file

@ -0,0 +1,9 @@
namespace Content.Client
{
public static class IgnoredComponents
{
public static string[] List => new string[] {
// Stick components you want ignored here.
};
}
}

View file

@ -0,0 +1,9 @@
namespace Content.Client
{
public static class IgnoredPrototypes
{
public static string[] List => new string[] {
// Stick prototypes you want ignored here.
};
}
}

View file

@ -4,9 +4,6 @@ namespace Content.Client
{
internal static class Program
{
public static void Main(string[] args)
{
ContentStart.Start(args);
}
public static void Main(string[] args) => ContentStart.Start(args);
}
}

15
Content.Client/app.config Normal file
View file

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="ICSharpCode.SharpZipLib" publicKeyToken="1b03e6acf1164f73" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-0.86.0.518" newVersion="0.86.0.518" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-11.0.0.0" newVersion="11.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>