1
Fork 0
mirror of https://github.com/redstrate/Auracite.git synced 2025-06-30 01:27:45 +00:00

Add support for extracting unlock link and unlock aetheryte flags

This commit is contained in:
Joshua Goins 2025-06-28 13:14:31 -04:00
parent a6edfd903c
commit 1ade743f82
5 changed files with 16 additions and 0 deletions

View file

@ -17,6 +17,10 @@ public class MiscStep : IStep
Plugin.package.is_novice = PlayerState.Instance()->IsNovice();
Plugin.package.is_returner = PlayerState.Instance()->IsReturner();
Plugin.package.player_commendations = PlayerState.Instance()->PlayerCommendations;
Plugin.package.unlock_flags = new System.Collections.Generic.List<byte>(); // TODO: lol
Plugin.package.unlock_flags.AddRange(UIState.Instance()->UnlockLinkBitmask.ToArray());
Plugin.package.unlock_aetherytes = new System.Collections.Generic.List<byte>(); // TODO: lol
Plugin.package.unlock_aetherytes.AddRange(UIState.Instance()->UnlockedAetherytesBitmask.ToArray());
var localPlayer = Plugin.ClientState.LocalPlayer;
if (localPlayer != null)

View file

@ -113,6 +113,8 @@ public sealed class Plugin : IDalamudPlugin
public InventoryContainer armory_main_hand;
public int voice;
public List<byte> unlock_flags;
public List<byte> unlock_aetherytes;
}
public static Package? package;

View file

@ -164,4 +164,9 @@ pub struct CharacterData {
pub armory_soul_crystal: Option<InventoryContainer>,
#[serde(skip_serializing_if = "Option::is_none")]
pub armory_main_hand: Option<InventoryContainer>,
#[serde(skip_serializing_if = "Option::is_none")]
pub unlock_flags: Option<Vec<u8>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub unlock_aetherytes: Option<Vec<u8>>,
}

View file

@ -259,6 +259,8 @@ pub async fn archive_character(id: u64, use_dalamud: bool) -> Result<Vec<u8>, Ar
char_data.plate_classjob_level = Some(package.plate_class_job_level);
char_data.search_comment = Some(package.search_comment);
char_data.voice = Some(package.voice);
char_data.unlock_flags = Some(package.unlock_flags);
char_data.unlock_aetherytes = Some(package.unlock_aetherytes);
zip.start_file("plate-portrait.png", options)?;
zip.write_all(

View file

@ -88,4 +88,7 @@ pub struct Package {
pub armory_rings: InventoryContainer,
pub armory_soul_crystal: InventoryContainer,
pub armory_main_hand: InventoryContainer,
pub unlock_flags: Vec<u8>,
pub unlock_aetherytes: Vec<u8>,
}