mirror of
https://github.com/goatcorp/Dalamud.git
synced 2025-12-31 21:03:43 +01:00
Magic the magic happen
This commit is contained in:
parent
84769ae5b7
commit
658eedca37
188 changed files with 10329 additions and 3549 deletions
|
|
@ -34,14 +34,14 @@ namespace Dalamud.Game.ClientState.Actors
|
|||
/// </summary>
|
||||
/// <param name="dalamud">The Dalamud instance.</param>
|
||||
/// <param name="addressResolver">The ClientStateAddressResolver instance.</param>
|
||||
public ActorTable(Dalamud dalamud, ClientStateAddressResolver addressResolver)
|
||||
internal ActorTable(Dalamud dalamud, ClientStateAddressResolver addressResolver)
|
||||
{
|
||||
this.address = addressResolver;
|
||||
this.dalamud = dalamud;
|
||||
|
||||
dalamud.Framework.OnUpdateEvent += this.Framework_OnUpdateEvent;
|
||||
|
||||
Log.Verbose("Actor table address {ActorTable}", this.address.ActorTable);
|
||||
Log.Verbose($"Actor table address 0x{this.address.ActorTable.ToInt64():X}");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ namespace Dalamud.Game.ClientState.Actors.Resolvers
|
|||
/// Initializes a new instance of the <see cref="BaseResolver"/> class.
|
||||
/// </summary>
|
||||
/// <param name="dalamud">The Dalamud instance.</param>
|
||||
public BaseResolver(Dalamud dalamud)
|
||||
internal BaseResolver(Dalamud dalamud)
|
||||
{
|
||||
this.dalamud = dalamud;
|
||||
}
|
||||
|
|
@ -19,6 +19,6 @@ namespace Dalamud.Game.ClientState.Actors.Resolvers
|
|||
/// <summary>
|
||||
/// Gets the Dalamud instance.
|
||||
/// </summary>
|
||||
protected Dalamud Dalamud => this.dalamud;
|
||||
internal Dalamud Dalamud => this.dalamud;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ namespace Dalamud.Game.ClientState.Actors.Resolvers
|
|||
/// </summary>
|
||||
/// <param name="id">The ID of the classJob.</param>
|
||||
/// <param name="dalamud">The Dalamud instance.</param>
|
||||
public ClassJob(byte id, Dalamud dalamud)
|
||||
internal ClassJob(byte id, Dalamud dalamud)
|
||||
: base(dalamud)
|
||||
{
|
||||
this.Id = id;
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ namespace Dalamud.Game.ClientState.Actors.Resolvers
|
|||
/// </summary>
|
||||
/// <param name="id">The ID of the world.</param>
|
||||
/// <param name="dalamud">The Dalamud instance.</param>
|
||||
public World(ushort id, Dalamud dalamud)
|
||||
internal World(ushort id, Dalamud dalamud)
|
||||
: base(dalamud)
|
||||
{
|
||||
this.Id = id;
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using System.Text;
|
||||
|
||||
using Dalamud.Game.ClientState.Structs;
|
||||
using Serilog;
|
||||
|
||||
namespace Dalamud.Game.ClientState.Actors.Types
|
||||
{
|
||||
|
|
@ -22,7 +21,7 @@ namespace Dalamud.Game.ClientState.Actors.Types
|
|||
/// <param name="actorStruct">The memory representation of the base actor.</param>
|
||||
/// <param name="dalamud">A dalamud reference needed to access game data in Resolvers.</param>
|
||||
/// <param name="address">The address of this actor in memory.</param>
|
||||
public Actor(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
internal Actor(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
{
|
||||
this.actorStruct = actorStruct;
|
||||
this.dalamud = dalamud;
|
||||
|
|
@ -94,7 +93,7 @@ namespace Dalamud.Game.ClientState.Actors.Types
|
|||
/// <summary>
|
||||
/// Gets the <see cref="Dalamud"/> backing instance.
|
||||
/// </summary>
|
||||
protected Dalamud Dalamud => this.dalamud;
|
||||
internal Dalamud Dalamud => this.dalamud;
|
||||
|
||||
/// <inheritdoc/>
|
||||
bool IEquatable<Actor>.Equals(Actor other) => this.ActorId == other.ActorId;
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ namespace Dalamud.Game.ClientState.Actors.Types
|
|||
/// <param name="actorStruct">The memory representation of the base actor.</param>
|
||||
/// <param name="dalamud">A dalamud reference needed to access game data in Resolvers.</param>
|
||||
/// <param name="address">The address of this actor in memory.</param>
|
||||
protected Chara(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
internal Chara(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
: base(address, actorStruct, dalamud)
|
||||
{
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ namespace Dalamud.Game.ClientState.Actors.Types.NonPlayer
|
|||
/// <param name="actorStruct">The memory representation of the base actor.</param>
|
||||
/// <param name="dalamud">A dalamud reference needed to access game data in Resolvers.</param>
|
||||
/// <param name="address">The address of this actor in memory.</param>
|
||||
public BattleNpc(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
internal BattleNpc(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
: base(address, actorStruct, dalamud)
|
||||
{
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ namespace Dalamud.Game.ClientState.Actors.Types.NonPlayer
|
|||
/// <param name="actorStruct">The memory representation of the base actor.</param>
|
||||
/// <param name="dalamud">A dalamud reference needed to access game data in Resolvers.</param>
|
||||
/// <param name="address">The address of this actor in memory.</param>
|
||||
public EventObj(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
internal EventObj(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
: base(address, actorStruct, dalamud)
|
||||
{
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ namespace Dalamud.Game.ClientState.Actors.Types.NonPlayer
|
|||
/// <param name="actorStruct">The memory representation of the base actor.</param>
|
||||
/// <param name="dalamud">A dalamud reference needed to access game data in Resolvers.</param>
|
||||
/// <param name="address">The address of this actor in memory.</param>
|
||||
public Npc(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
internal Npc(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
: base(address, actorStruct, dalamud)
|
||||
{
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ namespace Dalamud.Game.ClientState.Actors.Types
|
|||
/// <param name="actorStruct">The memory representation of the base actor.</param>
|
||||
/// <param name="dalamud">A dalamud reference needed to access game data in Resolvers.</param>
|
||||
/// <param name="address">The address of this actor in memory.</param>
|
||||
public PlayerCharacter(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
internal PlayerCharacter(IntPtr address, Structs.Actor actorStruct, Dalamud dalamud)
|
||||
: base(address, actorStruct, dalamud)
|
||||
{
|
||||
var companyTagBytes = new byte[5];
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ namespace Dalamud.Game.ClientState
|
|||
/// <summary>
|
||||
/// This class represents the state of the game client at the time of access.
|
||||
/// </summary>
|
||||
public class ClientState : INotifyPropertyChanged, IDisposable
|
||||
public sealed class ClientState : INotifyPropertyChanged, IDisposable
|
||||
{
|
||||
/// <summary>
|
||||
/// The table of all present actors.
|
||||
|
|
@ -80,7 +80,7 @@ namespace Dalamud.Game.ClientState
|
|||
/// <param name="dalamud">Dalamud instance.</param>
|
||||
/// <param name="startInfo">StartInfo of the current Dalamud launch.</param>
|
||||
/// <param name="scanner">Sig scanner.</param>
|
||||
public ClientState(Dalamud dalamud, DalamudStartInfo startInfo, SigScanner scanner)
|
||||
internal ClientState(Dalamud dalamud, DalamudStartInfo startInfo, SigScanner scanner)
|
||||
{
|
||||
this.dalamud = dalamud;
|
||||
this.address = new ClientStateAddressResolver();
|
||||
|
|
@ -104,7 +104,7 @@ namespace Dalamud.Game.ClientState
|
|||
|
||||
this.Targets = new Targets(dalamud, this.address);
|
||||
|
||||
Log.Verbose("SetupTerritoryType address {SetupTerritoryType}", this.address.SetupTerritoryType);
|
||||
Log.Verbose($"SetupTerritoryType address 0x{this.address.SetupTerritoryType.ToInt64():X}");
|
||||
|
||||
this.setupTerritoryTypeHook = new Hook<SetupTerritoryTypeDelegate>(this.address.SetupTerritoryType, this.SetupTerritoryTypeDetour);
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
using System;
|
||||
using System;
|
||||
|
||||
using Dalamud.Game.ClientState.Structs;
|
||||
using Dalamud.Hooking;
|
||||
|
|
@ -12,7 +12,7 @@ namespace Dalamud.Game.ClientState
|
|||
///
|
||||
/// Will block game's gamepad input if <see cref="ImGuiConfigFlags.NavEnableGamepad"/> is set.
|
||||
/// </summary>
|
||||
public unsafe class GamepadState
|
||||
public unsafe class GamepadState : IDisposable
|
||||
{
|
||||
private readonly Hook<ControllerPoll> gamepadPoll;
|
||||
|
||||
|
|
@ -29,12 +29,8 @@ namespace Dalamud.Game.ClientState
|
|||
/// <param name="resolver">Resolver knowing the pointer to the GamepadPoll function.</param>
|
||||
public GamepadState(ClientStateAddressResolver resolver)
|
||||
{
|
||||
#if DEBUG
|
||||
Log.Verbose("GamepadPoll address {GamepadPoll}", resolver.GamepadPoll);
|
||||
#endif
|
||||
this.gamepadPoll = new Hook<ControllerPoll>(
|
||||
resolver.GamepadPoll,
|
||||
(ControllerPoll)this.GamepadPollDetour);
|
||||
Log.Verbose($"GamepadPoll address 0x{resolver.GamepadPoll.ToInt64():X}");
|
||||
this.gamepadPoll = new Hook<ControllerPoll>(resolver.GamepadPoll, this.GamepadPollDetour);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ namespace Dalamud.Game.ClientState
|
|||
{
|
||||
this.Address = addressResolver;
|
||||
|
||||
Log.Verbose("JobGaugeData address {JobGaugeData}", this.Address.JobGaugeData);
|
||||
Log.Verbose($"JobGaugeData address 0x{this.Address.JobGaugeData.ToInt64():X}");
|
||||
}
|
||||
|
||||
private ClientStateAddressResolver Address { get; }
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ namespace Dalamud.Game.ClientState
|
|||
{
|
||||
this.bufferBase = moduleBaseAddress + Marshal.ReadInt32(addressResolver.KeyboardState);
|
||||
|
||||
Log.Verbose($"Keyboard state buffer address {this.bufferBase}");
|
||||
Log.Verbose($"Keyboard state buffer address 0x{this.bufferBase.ToInt64():X}");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ namespace Dalamud.Game.ClientState
|
|||
/// </summary>
|
||||
/// <param name="dalamud">The Dalamud instance.</param>
|
||||
/// <param name="addressResolver">The ClientStateAddressResolver instance.</param>
|
||||
public PartyList(Dalamud dalamud, ClientStateAddressResolver addressResolver)
|
||||
internal PartyList(Dalamud dalamud, ClientStateAddressResolver addressResolver)
|
||||
{
|
||||
this.address = addressResolver;
|
||||
this.dalamud = dalamud;
|
||||
|
|
|
|||
|
|
@ -32,6 +32,7 @@ namespace Dalamud.Game.ClientState.Structs.JobGauge
|
|||
/// <summary>
|
||||
/// Gets the next step in the current dance.
|
||||
/// </summary>
|
||||
/// <returns>The next dance step action ID.</returns>
|
||||
public ulong NextStep() => (ulong)(15999 + this.stepOrder[this.NumCompleteSteps] - 1);
|
||||
|
||||
/// <summary>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue