public override bool InitLayer( Mars.Interfaces.Layer.Initialization.TInitData initData, RegisterAgent regHandle, UnregisterAgent unregHandle) { base.InitLayer(initData, regHandle, unregHandle); _Register = regHandle; _Unregister = unregHandle; _InitGrid(initData); _AnimalEnvironment = new SpatialHashEnvironment <Animal>(_dimensionX, _dimensionY, true); _AnimalAgents = Mars.Components.Services.AgentManager.SpawnAgents <Animal>( initData.AgentInitConfigs.First(config => config.Type == typeof(Animal)), regHandle, unregHandle, new List <ILayer> { this }); return(true); }
public override bool InitLayer(LayerInitData layerInitData, RegisterAgent registerAgentHandle, UnregisterAgent unregisterAgentHandle) { var initiated = base.InitLayer(layerInitData, registerAgentHandle, unregisterAgentHandle); DeerEnvironment = new SpatialHashEnvironment <Deer>(Width - 1, Height - 1) { CheckBoundaries = true }; WolfEnvironment = new SpatialHashEnvironment <Wolf>(Width - 1, Height - 1) { CheckBoundaries = true }; AgentManager = layerInitData.Container.Resolve <IAgentManager>(); AgentManager.Spawn <Deer, ForestLayer>().ToList(); return(initiated); }