namespace EDPlayerJournal.Entries;
public class ReceiveTextEntry : Entry {
///
/// From whom this message is
///
public string? From { get; set; }
///
/// The message, if it is just an NPC text, it will be a message ID
///
public string? Message { get; set; }
///
/// Message localised
///
public string? MessageLocalised { get; set; }
///
/// On what channel this was received.
///
public string? Channel { get; set; }
public bool HasNPCCategory {
get {
if (From == null) {
return false;
}
if (From.Contains(';') && From.StartsWith("$")) {
return true;
}
return false;
}
}
///
/// Returns the NPC's category, if it has one.
///
public string? NPCCategory {
get {
if (!HasNPCCategory || From == null) {
return null;
}
string[] parts = From.Split(";", StringSplitOptions.TrimEntries);
if (parts.Length < 2) {
return null;
}
return string.Format("{0};", parts[0]);
}
}
///
/// Returns the NPC's category, if it has one.
///
public string? NPCName {
get {
if (!HasNPCCategory || From == null) {
return null;
}
string[] parts = From.Split(";", StringSplitOptions.TrimEntries);
if (parts.Length < 2) {
return null;
}
return parts[1];
}
}
protected override void Initialise() {
From = JSON.Value("From");
Message = JSON.Value("Message");
MessageLocalised = JSON.Value("Message_localised");
Channel = JSON.Value("Channel");
}
}