fix: Fixes bug with town crier NPE from random entry (#1106)

This commit is contained in:
Quick 2022-07-02 03:54:58 -05:00 committed by GitHub
parent 7c981b2d10
commit 04c44e2968
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -361,7 +361,8 @@ namespace Server.Mobiles
public TownCrierEntry GetRandomEntry()
{
for (var i = (Entries?.Count ?? 0) - 1; i >= 0; --i)
var count = Entries?.Count ?? 0;
for (var i = count - 1; i >= 0; --i)
{
if (i >= Entries!.Count)
{
@ -377,12 +378,12 @@ namespace Server.Mobiles
}
var entry = GlobalTownCrierEntryList.Instance.GetRandomEntry();
if (entry == null || Entries?.Count > 0 && Utility.RandomBool())
if (count > 0 && entry != null && Utility.RandomBool())
{
entry = Entries.RandomElement();
return entry;
}
return entry;
return Entries.RandomElement();
}
public TownCrierEntry AddEntry(string[] lines, TimeSpan duration)