41 lines
1.3 KiB
C#
41 lines
1.3 KiB
C#
|
using Gamecraft.Damage;
|
|||
|
using RobocraftX.Common;
|
|||
|
using Svelto.ECS;
|
|||
|
|
|||
|
namespace GamecraftModdingAPI
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// Represnts a cluster of blocks in time running mode, meaning blocks that are connected either directly or via joints.
|
|||
|
/// </summary>
|
|||
|
public class Cluster
|
|||
|
{
|
|||
|
public EGID Id { get; }
|
|||
|
|
|||
|
public Cluster(EGID id)
|
|||
|
{
|
|||
|
Id = id;
|
|||
|
}
|
|||
|
|
|||
|
public Cluster(uint id) : this(new EGID(id, CommonExclusiveGroups.SIMULATION_CLUSTERS_GROUP))
|
|||
|
{
|
|||
|
}
|
|||
|
|
|||
|
public float InitialHealth
|
|||
|
{
|
|||
|
get => Block.BlockEngine.GetBlockInfo<HealthEntityComponent>(Id).initialHealth;
|
|||
|
set => Block.BlockEngine.GetBlockInfo<HealthEntityComponent>(Id).initialHealth = value;
|
|||
|
}
|
|||
|
|
|||
|
public float CurrentHealth
|
|||
|
{
|
|||
|
get => Block.BlockEngine.GetBlockInfo<HealthEntityComponent>(Id).currentHealth;
|
|||
|
set => Block.BlockEngine.GetBlockInfo<HealthEntityComponent>(Id).currentHealth = value;
|
|||
|
}
|
|||
|
|
|||
|
public float HealthMultiplier
|
|||
|
{
|
|||
|
get => Block.BlockEngine.GetBlockInfo<HealthEntityComponent>(Id).healthMultiplier;
|
|||
|
set => Block.BlockEngine.GetBlockInfo<HealthEntityComponent>(Id).healthMultiplier = value;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|