@@ -20,6 +20,7 @@ using Robust.Shared.Interfaces.GameObjects;
|
|||||||
using Robust.Shared.Interfaces.Random;
|
using Robust.Shared.Interfaces.Random;
|
||||||
using Robust.Shared.IoC;
|
using Robust.Shared.IoC;
|
||||||
using Robust.Shared.Localization;
|
using Robust.Shared.Localization;
|
||||||
|
using Robust.Shared.Log;
|
||||||
using Robust.Shared.Maths;
|
using Robust.Shared.Maths;
|
||||||
using Robust.Shared.Players;
|
using Robust.Shared.Players;
|
||||||
using Robust.Shared.Prototypes;
|
using Robust.Shared.Prototypes;
|
||||||
@@ -306,8 +307,18 @@ namespace Content.Server.GameObjects.EntitySystems
|
|||||||
|
|
||||||
private async void HandleStartItemConstruction(TryStartItemConstructionMessage ev, EntitySessionEventArgs args)
|
private async void HandleStartItemConstruction(TryStartItemConstructionMessage ev, EntitySessionEventArgs args)
|
||||||
{
|
{
|
||||||
var constructionPrototype = _prototypeManager.Index<ConstructionPrototype>(ev.PrototypeName);
|
if (!_prototypeManager.TryIndex(ev.PrototypeName, out ConstructionPrototype constructionPrototype))
|
||||||
var constructionGraph = _prototypeManager.Index<ConstructionGraphPrototype>(constructionPrototype.Graph);
|
{
|
||||||
|
Logger.Error($"Tried to start construction of invalid recipe '{ev.PrototypeName}'!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!_prototypeManager.TryIndex(constructionPrototype.Graph, out ConstructionGraphPrototype constructionGraph))
|
||||||
|
{
|
||||||
|
Logger.Error($"Invalid construction graph '{constructionPrototype.Graph}' in recipe '{ev.PrototypeName}'!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
var startNode = constructionGraph.Nodes[constructionPrototype.StartNode];
|
var startNode = constructionGraph.Nodes[constructionPrototype.StartNode];
|
||||||
var targetNode = constructionGraph.Nodes[constructionPrototype.TargetNode];
|
var targetNode = constructionGraph.Nodes[constructionPrototype.TargetNode];
|
||||||
var pathFind = constructionGraph.Path(startNode.Name, targetNode.Name);
|
var pathFind = constructionGraph.Path(startNode.Name, targetNode.Name);
|
||||||
@@ -352,8 +363,20 @@ namespace Content.Server.GameObjects.EntitySystems
|
|||||||
|
|
||||||
private async void HandleStartStructureConstruction(TryStartStructureConstructionMessage ev, EntitySessionEventArgs args)
|
private async void HandleStartStructureConstruction(TryStartStructureConstructionMessage ev, EntitySessionEventArgs args)
|
||||||
{
|
{
|
||||||
var constructionPrototype = _prototypeManager.Index<ConstructionPrototype>(ev.PrototypeName);
|
if (!_prototypeManager.TryIndex(ev.PrototypeName, out ConstructionPrototype constructionPrototype))
|
||||||
var constructionGraph = _prototypeManager.Index<ConstructionGraphPrototype>(constructionPrototype.Graph);
|
{
|
||||||
|
Logger.Error($"Tried to start construction of invalid recipe '{ev.PrototypeName}'!");
|
||||||
|
RaiseNetworkEvent(new AckStructureConstructionMessage(ev.Ack));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!_prototypeManager.TryIndex(constructionPrototype.Graph, out ConstructionGraphPrototype constructionGraph))
|
||||||
|
{
|
||||||
|
Logger.Error($"Invalid construction graph '{constructionPrototype.Graph}' in recipe '{ev.PrototypeName}'!");
|
||||||
|
RaiseNetworkEvent(new AckStructureConstructionMessage(ev.Ack));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
var startNode = constructionGraph.Nodes[constructionPrototype.StartNode];
|
var startNode = constructionGraph.Nodes[constructionPrototype.StartNode];
|
||||||
var targetNode = constructionGraph.Nodes[constructionPrototype.TargetNode];
|
var targetNode = constructionGraph.Nodes[constructionPrototype.TargetNode];
|
||||||
var pathFind = constructionGraph.Path(startNode.Name, targetNode.Name);
|
var pathFind = constructionGraph.Path(startNode.Name, targetNode.Name);
|
||||||
|
|||||||
Reference in New Issue
Block a user