using System.Text.Json.Serialization;
using SptCommon.Annotations;
namespace Core.Helpers;
[Injectable]
public class ContainerHelper
{
///
/// Finds a slot for an item in a given 2D container map
///
/// List of container with slots filled/free
/// Width of item
/// Height of item
/// Location to place item in container
public FindSlotResult FindSlotForItem(List> container2D, int itemWidth, int itemHeight)
{
throw new NotImplementedException();
}
///
/// Find a slot inside a container an item can be placed in
///
/// Container to find space in
/// Container x size
/// Container y size
/// ???
/// ???
/// Items width
/// Items height
/// True - slot found
protected bool LocateSlot(
List> container2D,
int containerX,
int containerY,
int x,
int y,
int itemW,
int itemH)
{
throw new NotImplementedException();
}
///
/// Find a free slot for an item to be placed at
///
/// Container to place item in
/// Container x size
/// Container y size
/// Items width
/// Items height
/// is item rotated
public void FillContainerMapWithItem(
List> container2D,
int x,
int y,
int itemW,
int itemH,
bool rotate)
{
throw new NotImplementedException();
}
}
public class FindSlotResult
{
[JsonPropertyName("success")]
public bool? Success { get; set; }
[JsonPropertyName("x")]
public double? X { get; set; }
[JsonPropertyName("y")]
public double? Y { get; set; }
[JsonPropertyName("rotation")]
public bool? Rotation { get; set; }
}