muffin v7.4

This commit is contained in:
alydev 2025-12-18 00:49:57 +10:00
parent 8a7847ff37
commit a4175abacd
54 changed files with 95984 additions and 123967 deletions

View file

@ -107,32 +107,32 @@ internal sealed class AlliedSocietyJournalComponent
ImGui.TextColored(in col, text);
ImGui.SameLine();
col = ImGuiColors.DalamudGrey3;
text = new ImU8String(13, 1);
text.AppendLiteral("(Resets in: ");
text.AppendFormatted(value2);
text.AppendLiteral(")");
ImGui.TextColored(in col, text);
ImU8String text2 = new ImU8String(13, 1);
text2.AppendLiteral("(Resets in: ");
text2.AppendFormatted(value2);
text2.AppendLiteral(")");
ImGui.TextColored(in col, text2);
if (ImGui.IsItemHovered())
{
ImGui.BeginTooltip();
ImGui.TextUnformatted("Shared across all allied societies");
text = new ImU8String(12, 1);
text.AppendLiteral("Used today: ");
text.AppendFormatted(value);
ImGui.TextUnformatted(text);
ImU8String text3 = new ImU8String(12, 1);
text3.AppendLiteral("Used today: ");
text3.AppendFormatted(value);
ImGui.TextUnformatted(text3);
ImGui.Spacing();
ImGui.Separator();
ImGui.Spacing();
col = ImGuiColors.DalamudGrey3;
text = new ImU8String(12, 1);
text.AppendLiteral("Next reset: ");
text.AppendFormatted(item, "g");
ImGui.TextColored(in col, text);
ImU8String text4 = new ImU8String(12, 1);
text4.AppendLiteral("Next reset: ");
text4.AppendFormatted(item, "g");
ImGui.TextColored(in col, text4);
col = ImGuiColors.DalamudGrey3;
text = new ImU8String(18, 1);
text.AppendLiteral("Time until reset: ");
text.AppendFormatted(value2);
ImGui.TextColored(in col, text);
ImU8String text5 = new ImU8String(18, 1);
text5.AppendLiteral("Time until reset: ");
text5.AppendFormatted(value2);
ImGui.TextColored(in col, text5);
ImGui.EndTooltip();
}
ImGui.Spacing();
@ -317,130 +317,125 @@ internal sealed class AlliedSocietyJournalComponent
ImGui.BeginTooltip();
if (remainingAllowances == 0)
{
ImU8String text;
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudRed))
{
text = new ImU8String(0, 1);
ImU8String text = new ImU8String(0, 1);
text.AppendFormatted(SeIconChar.Cross.ToIconString());
ImGui.Text(text);
ImGui.SameLine();
ImGui.TextUnformatted("No daily allowances remaining");
}
Vector4 col = ImGuiColors.DalamudGrey3;
text = new ImU8String(44, 1);
text.AppendLiteral("You've used all ");
text.AppendFormatted(12);
text.AppendLiteral(" shared allowances for today");
ImGui.TextColored(in col, text);
ImU8String text2 = new ImU8String(44, 1);
text2.AppendLiteral("You've used all ");
text2.AppendFormatted(12);
text2.AppendLiteral(" shared allowances for today");
ImGui.TextColored(in col, text2);
}
else if (questsToAddCount == remainingAllowances && questsToAddCount < availableCount)
{
ImU8String text;
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.ParsedGreen))
{
text = new ImU8String(0, 1);
text.AppendFormatted(SeIconChar.QuestSync.ToIconString());
ImGui.Text(text);
ImU8String text3 = new ImU8String(0, 1);
text3.AppendFormatted(SeIconChar.QuestSync.ToIconString());
ImGui.Text(text3);
ImGui.SameLine();
text = new ImU8String(5, 2);
text.AppendLiteral("Add ");
text.AppendFormatted(questsToAddCount);
text.AppendLiteral(" ");
text.AppendFormatted((questsToAddCount == 1) ? "quest" : "quests");
ImGui.TextUnformatted(text);
ImU8String text4 = new ImU8String(5, 2);
text4.AppendLiteral("Add ");
text4.AppendFormatted(questsToAddCount);
text4.AppendLiteral(" ");
text4.AppendFormatted((questsToAddCount == 1) ? "quest" : "quests");
ImGui.TextUnformatted(text4);
}
Vector4 col = ImGuiColors.DalamudGrey3;
text = new ImU8String(44, 2);
text.AppendLiteral("You can complete ");
text.AppendFormatted(remainingAllowances);
text.AppendLiteral(" more allied society ");
text.AppendFormatted((remainingAllowances == 1) ? "quest" : "quests");
text.AppendLiteral(" today");
ImGui.TextColored(in col, text);
ImU8String text5 = new ImU8String(44, 2);
text5.AppendLiteral("You can complete ");
text5.AppendFormatted(remainingAllowances);
text5.AppendLiteral(" more allied society ");
text5.AppendFormatted((remainingAllowances == 1) ? "quest" : "quests");
text5.AppendLiteral(" today");
ImGui.TextColored(in col, text5);
ImGui.Spacing();
ImGui.TextColored(ImGuiColors.DalamudGrey3, "Prioritises highest rank quests first");
}
else if (questsToAddCount == dailyLimit)
{
ImU8String text;
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.ParsedGreen))
{
text = new ImU8String(0, 1);
text.AppendFormatted(SeIconChar.QuestSync.ToIconString());
ImGui.Text(text);
ImU8String text6 = new ImU8String(0, 1);
text6.AppendFormatted(SeIconChar.QuestSync.ToIconString());
ImGui.Text(text6);
ImGui.SameLine();
text = new ImU8String(11, 1);
text.AppendLiteral("Add ");
text.AppendFormatted(dailyLimit);
text.AppendLiteral(" quests");
ImGui.TextUnformatted(text);
ImU8String text7 = new ImU8String(11, 1);
text7.AppendLiteral("Add ");
text7.AppendFormatted(dailyLimit);
text7.AppendLiteral(" quests");
ImGui.TextUnformatted(text7);
}
Vector4 col = ImGuiColors.DalamudGrey3;
text = new ImU8String(51, 2);
text.AppendLiteral("This will use ");
text.AppendFormatted(dailyLimit);
text.AppendLiteral(" of your ");
text.AppendFormatted(remainingAllowances);
text.AppendLiteral(" remaining shared allowances");
ImGui.TextColored(in col, text);
ImU8String text8 = new ImU8String(51, 2);
text8.AppendLiteral("This will use ");
text8.AppendFormatted(dailyLimit);
text8.AppendLiteral(" of your ");
text8.AppendFormatted(remainingAllowances);
text8.AppendLiteral(" remaining shared allowances");
ImGui.TextColored(in col, text8);
ImGui.Spacing();
ImGui.TextColored(ImGuiColors.DalamudGrey3, "Prioritises highest rank quests first");
}
else if (questsToAddCount == availableCount)
{
ImU8String text;
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.ParsedGreen))
{
text = new ImU8String(0, 1);
text.AppendFormatted(SeIconChar.QuestSync.ToIconString());
ImGui.Text(text);
ImU8String text9 = new ImU8String(0, 1);
text9.AppendFormatted(SeIconChar.QuestSync.ToIconString());
ImGui.Text(text9);
ImGui.SameLine();
text = new ImU8String(20, 3);
text.AppendLiteral("Add all ");
text.AppendFormatted(questsToAddCount);
text.AppendLiteral(" available ");
text.AppendFormatted(alliedSociety);
text.AppendLiteral(" ");
text.AppendFormatted((questsToAddCount == 1) ? "quest" : "quests");
ImGui.TextUnformatted(text);
ImU8String text10 = new ImU8String(20, 3);
text10.AppendLiteral("Add all ");
text10.AppendFormatted(questsToAddCount);
text10.AppendLiteral(" available ");
text10.AppendFormatted(alliedSociety);
text10.AppendLiteral(" ");
text10.AppendFormatted((questsToAddCount == 1) ? "quest" : "quests");
ImGui.TextUnformatted(text10);
}
Vector4 col = ImGuiColors.DalamudGrey3;
text = new ImU8String(37, 2);
text.AppendLiteral("Uses ");
text.AppendFormatted(questsToAddCount);
text.AppendLiteral(" of ");
text.AppendFormatted(remainingAllowances);
text.AppendLiteral(" shared allowances remaining");
ImGui.TextColored(in col, text);
ImU8String text11 = new ImU8String(37, 2);
text11.AppendLiteral("Uses ");
text11.AppendFormatted(questsToAddCount);
text11.AppendLiteral(" of ");
text11.AppendFormatted(remainingAllowances);
text11.AppendLiteral(" shared allowances remaining");
ImGui.TextColored(in col, text11);
ImGui.Spacing();
ImGui.TextColored(ImGuiColors.DalamudGrey3, "Prioritises highest rank quests first");
}
else
{
ImU8String text;
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudYellow))
{
text = new ImU8String(0, 1);
text.AppendFormatted(SeIconChar.BoxedLetterQ.ToIconString());
ImGui.Text(text);
ImU8String text12 = new ImU8String(0, 1);
text12.AppendFormatted(SeIconChar.BoxedLetterQ.ToIconString());
ImGui.Text(text12);
ImGui.SameLine();
text = new ImU8String(6, 3);
text.AppendLiteral("Add ");
text.AppendFormatted(questsToAddCount);
text.AppendLiteral(" ");
text.AppendFormatted(alliedSociety);
text.AppendLiteral(" ");
text.AppendFormatted((questsToAddCount == 1) ? "quest" : "quests");
ImGui.TextUnformatted(text);
ImU8String text13 = new ImU8String(6, 3);
text13.AppendLiteral("Add ");
text13.AppendFormatted(questsToAddCount);
text13.AppendLiteral(" ");
text13.AppendFormatted(alliedSociety);
text13.AppendLiteral(" ");
text13.AppendFormatted((questsToAddCount == 1) ? "quest" : "quests");
ImGui.TextUnformatted(text13);
}
Vector4 col = ImGuiColors.DalamudGrey3;
text = new ImU8String(55, 2);
text.AppendLiteral("Limited by available quests (");
text.AppendFormatted(availableCount);
text.AppendLiteral(") and shared allowances (");
text.AppendFormatted(remainingAllowances);
text.AppendLiteral(")");
ImGui.TextColored(in col, text);
ImU8String text14 = new ImU8String(55, 2);
text14.AppendLiteral("Limited by available quests (");
text14.AppendFormatted(availableCount);
text14.AppendLiteral(") and shared allowances (");
text14.AppendFormatted(remainingAllowances);
text14.AppendLiteral(")");
ImGui.TextColored(in col, text14);
ImGui.Spacing();
ImGui.TextColored(ImGuiColors.DalamudGrey3, "Prioritises highest rank quests first");
}
@ -452,89 +447,86 @@ internal sealed class AlliedSocietyJournalComponent
ImGui.BeginTooltip();
if (availableCount > remainingAllowances)
{
ImU8String text;
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudOrange))
{
text = new ImU8String(0, 1);
ImU8String text = new ImU8String(0, 1);
text.AppendFormatted(SeIconChar.Cross.ToIconString());
ImGui.Text(text);
ImGui.SameLine();
ImGui.TextUnformatted("Warning: Exceeds remaining allowances");
}
ImGui.Spacing();
text = new ImU8String(54, 1);
text.AppendLiteral("This adds all ");
text.AppendFormatted(availableCount);
text.AppendLiteral(" available quests to your priority list,");
ImGui.TextUnformatted(text);
text = new ImU8String(37, 2);
text.AppendLiteral("but you only have ");
text.AppendFormatted(remainingAllowances);
text.AppendLiteral(" shared ");
text.AppendFormatted((remainingAllowances == 1) ? "allowance" : "allowances");
text.AppendLiteral(" remaining.");
ImGui.TextUnformatted(text);
ImU8String text2 = new ImU8String(54, 1);
text2.AppendLiteral("This adds all ");
text2.AppendFormatted(availableCount);
text2.AppendLiteral(" available quests to your priority list,");
ImGui.TextUnformatted(text2);
ImU8String text3 = new ImU8String(37, 2);
text3.AppendLiteral("but you only have ");
text3.AppendFormatted(remainingAllowances);
text3.AppendLiteral(" shared ");
text3.AppendFormatted((remainingAllowances == 1) ? "allowance" : "allowances");
text3.AppendLiteral(" remaining.");
ImGui.TextUnformatted(text3);
ImGui.Spacing();
ImGui.TextColored(ImGuiColors.DalamudGrey3, "The excess quests won't be completable until tomorrow.");
}
else if (availableCount > dailyLimit)
{
ImU8String text;
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudOrange))
{
text = new ImU8String(0, 1);
text.AppendFormatted(SeIconChar.Cross.ToIconString());
ImGui.Text(text);
ImU8String text4 = new ImU8String(0, 1);
text4.AppendFormatted(SeIconChar.Cross.ToIconString());
ImGui.Text(text4);
ImGui.SameLine();
ImGui.TextUnformatted("Warning: Exceeds daily optimal amount");
}
ImGui.Spacing();
text = new ImU8String(32, 1);
text.AppendLiteral("This adds all ");
text.AppendFormatted(availableCount);
text.AppendLiteral(" available quests,");
ImGui.TextUnformatted(text);
text = new ImU8String(48, 1);
text.AppendLiteral("using more than the typical ");
text.AppendFormatted(3);
text.AppendLiteral(" quests per society.");
ImGui.TextUnformatted(text);
ImU8String text5 = new ImU8String(32, 1);
text5.AppendLiteral("This adds all ");
text5.AppendFormatted(availableCount);
text5.AppendLiteral(" available quests,");
ImGui.TextUnformatted(text5);
ImU8String text6 = new ImU8String(48, 1);
text6.AppendLiteral("using more than the typical ");
text6.AppendFormatted(3);
text6.AppendLiteral(" quests per society.");
ImGui.TextUnformatted(text6);
ImGui.Spacing();
Vector4 col = ImGuiColors.ParsedGreen;
text = new ImU8String(37, 1);
text.AppendLiteral("You have ");
text.AppendFormatted(remainingAllowances);
text.AppendLiteral(" shared allowances remaining");
ImGui.TextColored(in col, text);
ImU8String text7 = new ImU8String(37, 1);
text7.AppendLiteral("You have ");
text7.AppendFormatted(remainingAllowances);
text7.AppendLiteral(" shared allowances remaining");
ImGui.TextColored(in col, text7);
ImGui.TextColored(ImGuiColors.DalamudGrey3, "You may want to save allowances for other societies.");
}
else
{
ImU8String text;
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.ParsedGreen))
{
text = new ImU8String(0, 1);
text.AppendFormatted(SeIconChar.QuestSync.ToIconString());
ImGui.Text(text);
ImU8String text8 = new ImU8String(0, 1);
text8.AppendFormatted(SeIconChar.QuestSync.ToIconString());
ImGui.Text(text8);
ImGui.SameLine();
text = new ImU8String(20, 3);
text.AppendLiteral("Add all ");
text.AppendFormatted(availableCount);
text.AppendLiteral(" available ");
text.AppendFormatted(alliedSociety);
text.AppendLiteral(" ");
text.AppendFormatted((availableCount == 1) ? "quest" : "quests");
ImGui.TextUnformatted(text);
ImU8String text9 = new ImU8String(20, 3);
text9.AppendLiteral("Add all ");
text9.AppendFormatted(availableCount);
text9.AppendLiteral(" available ");
text9.AppendFormatted(alliedSociety);
text9.AppendLiteral(" ");
text9.AppendFormatted((availableCount == 1) ? "quest" : "quests");
ImGui.TextUnformatted(text9);
}
ImGui.Spacing();
Vector4 col = ImGuiColors.DalamudGrey3;
text = new ImU8String(27, 2);
text.AppendLiteral("Uses ");
text.AppendFormatted(availableCount);
text.AppendLiteral(" of ");
text.AppendFormatted(remainingAllowances);
text.AppendLiteral(" shared allowances");
ImGui.TextColored(in col, text);
ImU8String text10 = new ImU8String(27, 2);
text10.AppendLiteral("Uses ");
text10.AppendFormatted(availableCount);
text10.AppendLiteral(" of ");
text10.AppendFormatted(remainingAllowances);
text10.AppendLiteral(" shared allowances");
ImGui.TextColored(in col, text10);
ImGui.TextColored(ImGuiColors.DalamudGrey3, "All can be completed today");
}
ImGui.EndTooltip();
@ -571,18 +563,18 @@ internal sealed class AlliedSocietyJournalComponent
{
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.ParsedGreen))
{
text = new ImU8String(0, 1);
text.AppendFormatted(SeIconChar.QuestSync.ToIconString());
ImGui.Text(text);
ImU8String text2 = new ImU8String(0, 1);
text2.AppendFormatted(SeIconChar.QuestSync.ToIconString());
ImGui.Text(text2);
ImGui.SameLine();
text = new ImU8String(17, 3);
text.AppendLiteral("Uses ");
text.AppendFormatted(availableQuests.Count);
text.AppendLiteral(" of ");
text.AppendFormatted(remainingAllowances);
text.AppendLiteral(" shared ");
text.AppendFormatted((remainingAllowances == 1) ? "allowance" : "allowances");
ImGui.TextUnformatted(text);
ImU8String text3 = new ImU8String(17, 3);
text3.AppendLiteral("Uses ");
text3.AppendFormatted(availableQuests.Count);
text3.AppendLiteral(" of ");
text3.AppendFormatted(remainingAllowances);
text3.AppendLiteral(" shared ");
text3.AppendFormatted((remainingAllowances == 1) ? "allowance" : "allowances");
ImGui.TextUnformatted(text3);
}
ImGui.TextColored(ImGuiColors.DalamudGrey3, "All can be completed today");
}
@ -590,15 +582,15 @@ internal sealed class AlliedSocietyJournalComponent
{
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudOrange))
{
text = new ImU8String(0, 1);
text.AppendFormatted(SeIconChar.Cross.ToIconString());
ImGui.Text(text);
ImU8String text4 = new ImU8String(0, 1);
text4.AppendFormatted(SeIconChar.Cross.ToIconString());
ImGui.Text(text4);
ImGui.SameLine();
text = new ImU8String(31, 1);
text.AppendLiteral("Exceeds remaining allowances (");
text.AppendFormatted(remainingAllowances);
text.AppendLiteral(")");
ImGui.TextUnformatted(text);
ImU8String text5 = new ImU8String(31, 1);
text5.AppendLiteral("Exceeds remaining allowances (");
text5.AppendFormatted(remainingAllowances);
text5.AppendLiteral(")");
ImGui.TextUnformatted(text5);
}
ImGui.TextColored(ImGuiColors.DalamudGrey3, "Some quests won't be completable until tomorrow");
}

View file

@ -44,18 +44,17 @@ internal sealed class QuestJournalUtils
public void ShowContextMenu(IQuestInfo questInfo, Quest? quest, string label)
{
ImU8String strId;
if (ImGui.IsItemClicked(ImGuiMouseButton.Right))
{
strId = new ImU8String(12, 1);
ImU8String strId = new ImU8String(12, 1);
strId.AppendLiteral("##QuestPopup");
strId.AppendFormatted(questInfo.QuestId);
ImGui.OpenPopup(strId);
}
strId = new ImU8String(12, 1);
strId.AppendLiteral("##QuestPopup");
strId.AppendFormatted(questInfo.QuestId);
using ImRaii.IEndObject endObject = ImRaii.Popup(strId);
ImU8String id = new ImU8String(12, 1);
id.AppendLiteral("##QuestPopup");
id.AppendFormatted(questInfo.QuestId);
using ImRaii.IEndObject endObject = ImRaii.Popup(id);
if (!endObject)
{
return;

View file

@ -85,10 +85,10 @@ internal sealed class QuestRewardComponent
using ImRaii.IEndObject endObject = ImRaii.Tooltip();
if (!(!endObject))
{
label2 = new ImU8String(15, 1);
label2.AppendLiteral("Obtained from: ");
label2.AppendFormatted(questInfo.Name);
ImGui.Text(label2);
ImU8String text2 = new ImU8String(15, 1);
text2.AppendLiteral("Obtained from: ");
text2.AppendFormatted(questInfo.Name);
ImGui.Text(text2);
using (ImRaii.PushIndent())
{
_questTooltipComponent.DrawInner(questInfo, showItemRewards: false);