muffin v7.38.8

This commit is contained in:
alydev 2025-11-30 10:36:46 +10:00
parent 5e2d8f648b
commit 3e10cbbbf2
51 changed files with 2585 additions and 1972 deletions

View file

@ -2,6 +2,7 @@ using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using Dalamud.Game.ClientState.Objects.Types;
using Dalamud.Game.Gui.ContextMenu;
using Dalamud.Game.Text;
using Dalamud.Plugin.Services;
@ -43,9 +44,11 @@ internal sealed class ContextMenuController : IDisposable
private readonly IClientState _clientState;
private readonly IObjectTable _objectTable;
private readonly ILogger<ContextMenuController> _logger;
public ContextMenuController(IContextMenu contextMenu, QuestController questController, GatheringPointRegistry gatheringPointRegistry, GatheringData gatheringData, QuestRegistry questRegistry, QuestData questData, GameFunctions gameFunctions, QuestFunctions questFunctions, IGameGui gameGui, IChatGui chatGui, IClientState clientState, ILogger<ContextMenuController> logger)
public ContextMenuController(IContextMenu contextMenu, QuestController questController, GatheringPointRegistry gatheringPointRegistry, GatheringData gatheringData, QuestRegistry questRegistry, QuestData questData, GameFunctions gameFunctions, QuestFunctions questFunctions, IGameGui gameGui, IChatGui chatGui, IClientState clientState, IObjectTable objectTable, ILogger<ContextMenuController> logger)
{
_contextMenu = contextMenu;
_questController = questController;
@ -58,6 +61,7 @@ internal sealed class ContextMenuController : IDisposable
_gameGui = gameGui;
_chatGui = chatGui;
_clientState = clientState;
_objectTable = objectTable;
_logger = logger;
_contextMenu.OnMenuOpened += MenuOpened;
}
@ -113,7 +117,11 @@ internal sealed class ContextMenuController : IDisposable
private unsafe void AddContextMenuEntry(IMenuOpenedArgs args, uint itemId, uint npcId, EClassJob classJob, string verb)
{
EClassJob rowId = (EClassJob)_clientState.LocalPlayer.ClassJob.RowId;
if (!(_objectTable[0] is ICharacter { ClassJob: var classJob2 }))
{
return;
}
EClassJob rowId = (EClassJob)classJob2.RowId;
bool flag = classJob != rowId;
if (flag)
{