mirror of
https://github.com/space-wizards/RobustToolboxTemplate.git
synced 2026-02-10 16:24:49 -05:00
ohno
This commit is contained in:
parent
5bec4a5921
commit
50c6173d91
14 changed files with 261 additions and 8 deletions
12
Content.Client/ClientContentIoC.cs
Normal file
12
Content.Client/ClientContentIoC.cs
Normal 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.
|
||||
}
|
||||
}
|
||||
}
|
||||
55
Content.Client/EntryPoint.cs
Normal file
55
Content.Client/EntryPoint.cs
Normal 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.
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
9
Content.Client/IgnoredComponents.cs
Normal file
9
Content.Client/IgnoredComponents.cs
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
namespace Content.Client
|
||||
{
|
||||
public static class IgnoredComponents
|
||||
{
|
||||
public static string[] List => new string[] {
|
||||
// Stick components you want ignored here.
|
||||
};
|
||||
}
|
||||
}
|
||||
9
Content.Client/IgnoredPrototypes.cs
Normal file
9
Content.Client/IgnoredPrototypes.cs
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
namespace Content.Client
|
||||
{
|
||||
public static class IgnoredPrototypes
|
||||
{
|
||||
public static string[] List => new string[] {
|
||||
// Stick prototypes you want ignored here.
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
@ -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
15
Content.Client/app.config
Normal 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>
|
||||
41
Content.Server/EntryPoint.cs
Normal file
41
Content.Server/EntryPoint.cs
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
using Robust.Shared.ContentPack;
|
||||
using Robust.Shared.Interfaces.GameObjects;
|
||||
using Robust.Shared.IoC;
|
||||
using Robust.Shared.Timing;
|
||||
|
||||
namespace Content.Server
|
||||
{
|
||||
public class EntryPoint: GameServer
|
||||
{
|
||||
public override void Init() {
|
||||
base.Init();
|
||||
|
||||
var factory = IoCManager.Resolve<IComponentFactory>();
|
||||
|
||||
factory.DoAutoRegistrations();
|
||||
|
||||
foreach (var ignoreName in IgnoredComponents.List)
|
||||
{
|
||||
factory.RegisterIgnore(ignoreName);
|
||||
}
|
||||
|
||||
ServerContentIoC.Register();
|
||||
|
||||
IoCManager.BuildGraph();
|
||||
|
||||
// DEVNOTE: This is generally where you'll be setting up the IoCManager further.
|
||||
}
|
||||
|
||||
public override void PostInit()
|
||||
{
|
||||
base.PostInit();
|
||||
// DEVNOTE: Can also initialize IoC stuff more here.
|
||||
}
|
||||
|
||||
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.
|
||||
}
|
||||
}
|
||||
}
|
||||
9
Content.Server/IgnoredComponents.cs
Normal file
9
Content.Server/IgnoredComponents.cs
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
namespace Content.Server
|
||||
{
|
||||
public static class IgnoredComponents
|
||||
{
|
||||
public static string[] List => new string[] {
|
||||
// Stick components you want ignored here.
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
@ -4,9 +4,6 @@ namespace Content.Server
|
|||
{
|
||||
internal static class Program
|
||||
{
|
||||
public static void Main(string[] args)
|
||||
{
|
||||
ContentStart.Start(args);
|
||||
}
|
||||
public static void Main(string[] args) => ContentStart.Start(args);
|
||||
}
|
||||
}
|
||||
12
Content.Server/ServerContentIoC.cs
Normal file
12
Content.Server/ServerContentIoC.cs
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
using Robust.Shared.IoC;
|
||||
|
||||
namespace Content.Server
|
||||
{
|
||||
internal static class ServerContentIoC
|
||||
{
|
||||
public static void Register()
|
||||
{
|
||||
// DEVNOTE: IoCManager registrations for the server go here and only here.
|
||||
}
|
||||
}
|
||||
}
|
||||
15
Content.Server/app.config
Normal file
15
Content.Server/app.config
Normal 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>
|
||||
46
Content.Shared/EntryPoint.cs
Normal file
46
Content.Shared/EntryPoint.cs
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using Robust.Shared.ContentPack;
|
||||
using Robust.Shared.IoC;
|
||||
using Robust.Shared.Localization;
|
||||
using Robust.Shared.Localization.Macros;
|
||||
using Robust.Shared.Prototypes;
|
||||
|
||||
namespace Content.Shared
|
||||
{
|
||||
public class EntryPoint: GameShared
|
||||
{
|
||||
// See line 25. Controls the default game culture and language.
|
||||
// Robust calls this culture, but you might find it more fitting to call it the game
|
||||
// language. Robust doesn't support changing this mid-game. Load your config file early
|
||||
// if you want that.
|
||||
private const string Culture = "en-US";
|
||||
|
||||
public override void PreInit()
|
||||
{
|
||||
Console.WriteLine("BLUH");
|
||||
IoCManager.InjectDependencies(this);
|
||||
var textMacroFactory = IoCManager.Resolve<ITextMacroFactory>();
|
||||
textMacroFactory.DoAutoRegistrations();
|
||||
|
||||
// Default to en-US.
|
||||
// DEVNOTE: If you want your game to be multiregional at runtime, you'll need to
|
||||
// do something more complicated here.
|
||||
Loc.LoadCulture(new CultureInfo(Culture));
|
||||
// TODO: Document what else you might want to put here
|
||||
}
|
||||
|
||||
public override void Init()
|
||||
{
|
||||
// TODO: Document what you put here
|
||||
}
|
||||
|
||||
public override void PostInit()
|
||||
{
|
||||
base.PostInit();
|
||||
// DEVNOTE: You might want to put special init handlers for, say, tiles here.
|
||||
// TODO: Document what else you might want to put here
|
||||
}
|
||||
}
|
||||
}
|
||||
21
Content.Shared/GameConfigVars.cs
Normal file
21
Content.Shared/GameConfigVars.cs
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
using Robust.Shared;
|
||||
using Robust.Shared.Configuration;
|
||||
|
||||
namespace Content.Shared
|
||||
{
|
||||
// DEVNOTE: This is the same as SS14's CCVars. Except it's not named CCVars as that name is
|
||||
// hot garbage.
|
||||
[CVarDefs]
|
||||
public sealed class GameConfigVars: CVars
|
||||
{
|
||||
// Declare persistent game config variables here.
|
||||
// ```
|
||||
// public static readonly CVarDef<SerializableType>
|
||||
// VariableName = CVarDef.Create("namespace.varname", default_value, CVar.TYPE | CVar.OTHERTYPE)
|
||||
// ```
|
||||
// This is a good spot to store your database config, among other things.
|
||||
|
||||
public static readonly CVarDef<bool>
|
||||
DummyCVarForTemplate = CVarDef.Create("dummy.whydoineedthis", true, CVar.ARCHIVE);
|
||||
}
|
||||
}
|
||||
15
Content.Shared/app.config
Normal file
15
Content.Shared/app.config
Normal 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>
|
||||
Loading…
Add table
Add a link
Reference in a new issue