Private
Public Access
1
0
Files
OrekiWoofsBeehives/OrekiWoofsBees.Common/IPlantPositionRegistry.cs

36 lines
1011 B
C#

using System;
using System.Collections.Generic;
using Vintagestory.API.Common;
using Vintagestory.API.MathTools;
namespace OrekiWoofsBees.Common;
public interface IPlantPositionRegistry
{
ICoreAPI? Api { get; }
event Action<BlockPos, int>? CropEvent;
event Action<BlockPos, int>? FlowerEvent;
void AddPlantPosition(BlockPos pos, Block block);
int CountBeehivesInRadius(BlockPos pos, int radius);
(
int FlowerCount,
int CropCount,
float InitialScanProgress,
float RescanProgress
)
GetPlantCountsNearPosition(BlockPos hivePos, int radius);
(float InitialScanProgress, float RescanProgress) GetPlantsNearPosition(BlockPos hivePos, int radius, List<StructVec3i> flowerPositionsBuffer, List<StructVec3i> cropPositionsBuffer);
void RegisterBeehive(BlockPos pos, int radius);
void UpdateBeehiveRadius(BlockPos pos, int radius);
void RemovePlantPosition(BlockPos pos, Block block);
void UnregisterBeehive(BlockPos pos);
}