Add reaction list

ty @Lusamine
This commit is contained in:
Kurt 2020-05-07 21:41:14 -07:00
parent f6aab41872
commit 8d695cd8ed
3 changed files with 81 additions and 5 deletions

View File

@ -14,13 +14,13 @@ public struct GSavePlayerManpu
/// List of known Reaction IDs
/// </summary>
[field: MarshalAs(UnmanagedType.ByValArray, SizeConst = MaxCount)]
public byte[] ManpuBit { get; set; }
public Reaction[] ManpuBit { get; set; }
/// <summary>
/// Emotions that are currently bound to the Reaction Wheel.
/// </summary>
[field: MarshalAs(UnmanagedType.ByValArray, SizeConst = WheelCount)]
public byte[] UIList { get; set; }
public Reaction[] UIList { get; set; }
/// <summary>
/// Flags indicating if an Reaction (at the same index?) is newly learned or not.

View File

@ -0,0 +1,65 @@
namespace NHSE.Core
{
public enum Reaction : byte
{
None,
Happiness, // Smiling
Laughter, // Laughing
Joy, // HappyFlower
Love, // Love
Glee, // HappyDance
UNUSED_6,
Aggravation, // Outraged
UNUSED_8,
Worry, // Worried
Sighing, // Sighing
Thought, // Thinking
Sadness, // SadSpiral
Distress, // Frantic
Sorrow, // Crying
Amazed, // Shocked
Surprise, // Aha
UNUSED_17,
Shocked, // Surprised
Cold_Chill, // ColdChill
Fearful, // Shaking
Agreement, // Nodding
Inspiration, // IdeaBulb
Curiosity, // QuestionMark
Heartbreak, // BrokenHeart
Sleepy, // Sleepy
Bashfulness, // Blushing
Resignation, // OhGeez
Mischief, // Scheming
Delight, // Clapping
Sneezing, // Sneezing
Encouraging, // Cheering
Greetings, // Greeting
Pride, // SmugFace
UNUSED_34,
Smirking, // Grin
Sheepishness, // WrySmile
UNUSED_37,
UNUSED_38,
Shyness, // Hesitate
Disagreement, // Negative
Mistaken, // Oops
Flourish, // Dance
Daydreaming, // AbsentMindedness
Showmanship, // Shaki
Dozing, // Sleep
UNUSED_46,
Intense, // Silent
Pleased, // Hello
UNUSED_49,
UNUSED_50,
UNUSED_51,
UNUSED_52,
UNUSED_53,
Apologetic, // Apologize
Confident, // Assent
UNUSED_56,
UNUSED_57,
Bewilderment, // Pardon
}
}

View File

@ -1,4 +1,6 @@
using System.Diagnostics;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
namespace NHSE.Parsing
@ -6,6 +8,15 @@ namespace NHSE.Parsing
public static class MSBTUtil
{
public static void DebugDumpLines(this MSBT obj)
{
var lines = obj.GetOrderedLines();
foreach (var line in lines)
Debug.WriteLine(line);
}
public static IEnumerable<string> GetOrderedLines(string path, int indexBias = 0) => new MSBT(File.ReadAllBytes(path)).GetOrderedLines(indexBias);
public static IEnumerable<string> GetOrderedLines(this MSBT obj, int indexBias = 0)
{
var sorted = obj.LBL1.Labels
.Where(z => !z.Name.EndsWith("_pl"))
@ -15,9 +26,9 @@ public static void DebugDumpLines(this MSBT obj)
{
var index = x.Index;
var name = x.Name;
var data = obj.TXT2.Strings[(int) index];
var data = obj.TXT2.Strings[(int)index];
var line = data.ToString(obj.FileEncoding).TrimEnd('\0');
Debug.WriteLine($"{index}\t{name}\t{line}");
yield return $"{line} = {index + indexBias}, // {name}";
}
}
}