Add ITargetManager (#1277)

Co-authored-by: goat <16760685+goaaats@users.noreply.github.com>
This commit is contained in:
MidoriKami 2023-06-24 23:55:18 -07:00 committed by GitHub
parent 8f971934f3
commit fe46fd33dc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 69 additions and 19 deletions

View file

@ -0,0 +1,44 @@
using Dalamud.Game.ClientState.Objects.Types;
namespace Dalamud.Game.ClientState.Objects;
/// <summary>
/// Get and set various kinds of targets for the player.
/// </summary>
public interface ITargetManager
{
/// <summary>
/// Gets the address of the target manager.
/// </summary>
public nint Address { get; }
/// <summary>
/// Gets or sets the current target.
/// Set to null to clear the target.
/// </summary>
public GameObject? Target { get; set; }
/// <summary>
/// Gets or sets the mouseover target.
/// Set to null to clear the target.
/// </summary>
public GameObject? MouseOverTarget { get; set; }
/// <summary>
/// Gets or sets the focus target.
/// Set to null to clear the target.
/// </summary>
public GameObject? FocusTarget { get; set; }
/// <summary>
/// Gets or sets the previous target.
/// Set to null to clear the target.
/// </summary>
public GameObject? PreviousTarget { get; set; }
/// <summary>
/// Gets or sets the soft target.
/// Set to null to clear the target.
/// </summary>
public GameObject? SoftTarget { get; set; }
}