Include Sub builds

master
Liza 2023-10-15 23:14:24 +02:00
parent b2baa1bd37
commit 80764855d2
Signed by: liza
GPG Key ID: 7199F8D727D55F67
8 changed files with 55 additions and 12 deletions

View File

@ -204,6 +204,11 @@ internal sealed class InfluxStatisticsClient : IDisposable
.Tag("fc_name", fc.Name) .Tag("fc_name", fc.Name)
.Tag("sub_id", $"{fc.CharacterId}_{sub.Id}") .Tag("sub_id", $"{fc.CharacterId}_{sub.Id}")
.Tag("sub_name", sub.Name) .Tag("sub_name", sub.Name)
.Tag("part_hull", sub.Hull)
.Tag("part_stern", sub.Stern)
.Tag("part_bow", sub.Bow)
.Tag("part_bridge", sub.Bridge)
.Tag("build", sub.Build)
.Field("level", sub.Level) .Field("level", sub.Level)
.Timestamp(date, WritePrecision.S)); .Timestamp(date, WritePrecision.S));
} }
@ -219,7 +224,7 @@ internal sealed class InfluxStatisticsClient : IDisposable
} }
catch (Exception e) catch (Exception e)
{ {
_chatGui.PrintError(e.ToString()); _chatGui.PrintError(e.Message);
} }
}); });
} }

View File

@ -12,6 +12,6 @@ public record LocalStats
public List<short> ClassJobLevels { get; set; } = new(); public List<short> ClassJobLevels { get; set; } = new();
public byte StartingTown { get; init; } public byte StartingTown { get; init; }
public int MsqCount { get; set; } = -1; public int MsqCount { get; set; } = -1;
public string MsqName { get; set; } public string? MsqName { get; set; }
public uint MsqGenre { get; set; } public uint MsqGenre { get; set; }
} }

View File

@ -127,6 +127,7 @@ internal sealed class LocalStatsCalculator : IDisposable
RowId = startingQuestId, RowId = startingQuestId,
Name = "Coming to ...", Name = "Coming to ...",
PreviousQuestIds = new(), PreviousQuestIds = new(),
Genre = quest.Genre,
}; };
} }

View File

@ -4,8 +4,8 @@ namespace Influx.LocalStatistics;
public class QuestInfo public class QuestInfo
{ {
public uint RowId { get; set; } public required uint RowId { get; init; }
public string Name { get; set; } public required string Name { get; init; }
public List<uint> PreviousQuestIds { get; set; } public required List<uint> PreviousQuestIds { get; init; }
public uint Genre { get; set; } public required uint Genre { get; init; }
} }

View File

@ -0,0 +1,27 @@
using System;
namespace Influx.SubmarineTracker;
public class Build
{
public Build(object @delegate)
{
HullIdentifier =
(string)@delegate.GetType().GetProperty("HullIdentifier")!.GetValue(@delegate)!;
SternIdentifier =
(string)@delegate.GetType().GetProperty("SternIdentifier")!.GetValue(@delegate)!;
BowIdentifier =
(string)@delegate.GetType().GetProperty("BowIdentifier")!.GetValue(@delegate)!;
BridgeIdentifier =
(string)@delegate.GetType().GetProperty("BridgeIdentifier")!.GetValue(@delegate)!;
FullIdentifier =
(string)@delegate.GetType().GetMethod("FullIdentifier")!.Invoke(@delegate, Array.Empty<object>())!;
}
public string HullIdentifier { get; }
public string SternIdentifier { get; }
public string BowIdentifier { get; }
public string BridgeIdentifier { get; }
public string FullIdentifier { get; }
}

View File

@ -2,15 +2,14 @@
public sealed class Submarine public sealed class Submarine
{ {
private readonly object _delegate;
public Submarine(object @delegate) public Submarine(object @delegate)
{ {
_delegate = @delegate; Name = (string)@delegate.GetType().GetProperty("Name")!.GetValue(@delegate)!;
Name = (string)_delegate.GetType().GetProperty("Name")!.GetValue(_delegate)!; Level = (ushort)@delegate.GetType().GetProperty("Rank")!.GetValue(@delegate)!;
Level = (ushort)_delegate.GetType().GetProperty("Rank")!.GetValue(_delegate)!; Build = new Build(@delegate.GetType().GetProperty("Build")!.GetValue(@delegate)!);
} }
public string Name { get; set; } public string Name { get; }
public ushort Level { get; } public ushort Level { get; }
public Build Build { get; }
} }

View File

@ -5,4 +5,10 @@ public sealed class SubmarineStats
public required string Name { get; init; } public required string Name { get; init; }
public required int Id { get; init; } public required int Id { get; init; }
public required ushort Level { get; init; } public required ushort Level { get; init; }
public required string Hull { get; init; }
public required string Stern { get; init; }
public required string Bow { get; init; }
public required string Bridge { get; init; }
public required string Build { get; init; }
} }

View File

@ -39,6 +39,11 @@ internal sealed class SubmarineTrackerIpc
Id = x.Subs.IndexOf(y), Id = x.Subs.IndexOf(y),
Name = y.Name, Name = y.Name,
Level = y.Level, Level = y.Level,
Hull = y.Build.HullIdentifier,
Stern = y.Build.SternIdentifier,
Bow = y.Build.BowIdentifier,
Bridge = y.Build.BridgeIdentifier,
Build = y.Build.FullIdentifier,
}).ToList()); }).ToList());
} }
else else