Skip to content

Commit c807746

Browse files
committed
Fixed CreateHints, Added UpdateHint
1 parent 8c474ed commit c807746

File tree

8 files changed

+209
-125
lines changed

8 files changed

+209
-125
lines changed

Archipelago.MultiClient.Net.Tests/ArchipelagoSessionFixture.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ static ArchipelagoSession CreateTestSession(IArchipelagoSocketHelper socket,
193193
var roomState = new RoomStateHelper(socket, locations);
194194
var dataStorage = new DataStorageHelper(socket, connectionInfo);
195195
var messageLog = new MessageLogHelper(socket, itemInfoResolver, players, connectionInfo);
196-
var createHints = new CreateHintsHelper(socket, players, locations, roomState);
196+
var createHints = new HintsHelper(socket, players, locations, roomState, dataStorage);
197197

198198
return new ArchipelagoSession(socket, items, locations, players, roomState, connectionInfo, dataStorage, messageLog, createHints);
199199
}

Archipelago.MultiClient.Net/Archipelago.MultiClient.Net.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@
1010
<PackageReadmeFile>README.md</PackageReadmeFile>
1111
<RepositoryUrl>https://github.com/ArchipelagoMW/Archipelago.MultiClient.Net</RepositoryUrl>
1212
<RepositoryType>git</RepositoryType>
13-
<AssemblyVersion>6.6.2.0</AssemblyVersion>
14-
<FileVersion>6.6.2.0</FileVersion>
15-
<Version>6.6.2</Version>
13+
<AssemblyVersion>6.7.0.0</AssemblyVersion>
14+
<FileVersion>6.7.0.0</FileVersion>
15+
<Version>6.7.0</Version>
1616
<PackageLicenseExpression>MIT</PackageLicenseExpression>
1717
<PackageRequireLicenseAcceptance>False</PackageRequireLicenseAcceptance>
1818
<PackageIcon>blue-icon.png</PackageIcon>

Archipelago.MultiClient.Net/ArchipelagoSession.cs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,11 @@ public interface IArchipelagoSession : IArchipelagoSessionActions
5757
/// </summary>
5858
IMessageLogHelper MessageLog { get; }
5959

60+
/// <summary>
61+
/// Provides methods to interact with the hints system
62+
/// </summary>
63+
IHintsHelper Hints { get; }
64+
6065
#if !NET35
6166
/// <summary>
6267
/// Connect the websocket to the server
@@ -146,7 +151,7 @@ public partial class ArchipelagoSession : IArchipelagoSession
146151
public IMessageLogHelper MessageLog { get; }
147152

148153
/// <inheritdoc/>
149-
public ICreateHintsHelper CreateHints { get; }
154+
public IHintsHelper Hints { get; }
150155

151156
#if NET35
152157
volatile bool awaitingRoomInfo;
@@ -165,7 +170,7 @@ internal ArchipelagoSession(IArchipelagoSocketHelper socket,
165170
ConnectionInfoHelper connectionInfoHelper,
166171
IDataStorageHelper dataStorage,
167172
IMessageLogHelper messageLog,
168-
ICreateHintsHelper createHints)
173+
IHintsHelper createHints)
169174
{
170175
Socket = socket;
171176
Items = items;
@@ -175,7 +180,7 @@ internal ArchipelagoSession(IArchipelagoSocketHelper socket,
175180
connectionInfo = connectionInfoHelper;
176181
DataStorage = dataStorage;
177182
MessageLog = messageLog;
178-
CreateHints = createHints;
183+
Hints = createHints;
179184

180185
socket.PacketReceived += Socket_PacketReceived;
181186
}

Archipelago.MultiClient.Net/ArchipelagoSessionFactory.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public static ArchipelagoSession CreateSession(Uri uri)
2727
var roomState = new RoomStateHelper(socket, locations);
2828
var dataStorage = new DataStorageHelper(socket, connectionInfo);
2929
var messageLog = new MessageLogHelper(socket, itemInfoResolver, players, connectionInfo);
30-
var createHints = new CreateHintsHelper(socket, players, locations, roomState);
30+
var createHints = new HintsHelper(socket, players, locations, roomState, dataStorage);
3131

3232
return new ArchipelagoSession(socket, items, locations, players, roomState, connectionInfo, dataStorage, messageLog, createHints);
3333
}

Archipelago.MultiClient.Net/Converters/ArchipelagoPacketConverter.cs

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ namespace Archipelago.MultiClient.Net.Converters
1313
public class ArchipelagoPacketConverter : JsonConverter
1414
{
1515
static readonly Dictionary<ArchipelagoPacketType, Func<JObject, ArchipelagoPacketBase>> PacketDeserializationMap =
16-
new Dictionary<ArchipelagoPacketType, Func<JObject, ArchipelagoPacketBase>>(23)
16+
new Dictionary<ArchipelagoPacketType, Func<JObject, ArchipelagoPacketBase>>(25)
1717
{
1818
[ArchipelagoPacketType.RoomInfo] = obj => obj.ToObject<RoomInfoPacket>(),
1919
[ArchipelagoPacketType.ConnectionRefused] = obj => obj.ToObject<ConnectionRefusedPacket>(),
@@ -30,16 +30,19 @@ public class ArchipelagoPacketConverter : JsonConverter
3030
[ArchipelagoPacketType.StatusUpdate] = obj => obj.ToObject<StatusUpdatePacket>(),
3131
[ArchipelagoPacketType.Say] = obj => obj.ToObject<SayPacket>(),
3232
[ArchipelagoPacketType.GetDataPackage] = obj => obj.ToObject<GetDataPackagePacket>(),
33-
[ArchipelagoPacketType.DataPackage] = obj => obj.ToObject<DataPackagePacket>(),
34-
[ArchipelagoPacketType.Bounce] = obj => obj.ToObject<BouncePacket>(),
35-
[ArchipelagoPacketType.Bounced] = obj => obj.ToObject<BouncedPacket>(),
36-
[ArchipelagoPacketType.InvalidPacket] = obj => obj.ToObject<InvalidPacketPacket>(),
33+
[ArchipelagoPacketType.DataPackage] = obj => obj.ToObject<DataPackagePacket>(),
34+
[ArchipelagoPacketType.Sync] = obj => obj.ToObject<SyncPacket>(),
35+
[ArchipelagoPacketType.Bounced] = obj => obj.ToObject<BouncedPacket>(),
36+
[ArchipelagoPacketType.Bounce] = obj => obj.ToObject<BouncePacket>(),
37+
[ArchipelagoPacketType.InvalidPacket] = obj => obj.ToObject<InvalidPacketPacket>(),
3738
[ArchipelagoPacketType.Get] = obj => obj.ToObject<GetPacket>(),
3839
[ArchipelagoPacketType.Retrieved] = obj => obj.ToObject<RetrievedPacket>(),
3940
[ArchipelagoPacketType.Set] = obj => obj.ToObject<SetPacket>(),
4041
[ArchipelagoPacketType.SetNotify] = obj => obj.ToObject<SetNotifyPacket>(),
41-
[ArchipelagoPacketType.SetReply] = obj => obj.ToObject<SetReplyPacket>(),
42-
};
42+
[ArchipelagoPacketType.SetReply] = obj => obj.ToObject<SetReplyPacket>(),
43+
[ArchipelagoPacketType.SetNotify] = obj => obj.ToObject<SetNotifyPacket>(),
44+
[ArchipelagoPacketType.UpdateHint] = obj => obj.ToObject<UpdateHintPacket>(),
45+
};
4346

4447
/// <inheritdoc/>
4548
public override bool CanWrite => false;
@@ -111,8 +114,7 @@ static ArchipelagoPacketBase DeserializePrintJsonPacket(JObject obj)
111114

112115
return obj.ToObject<PrintJsonPacket>();
113116
}
114-
115-
117+
116118
static bool EnumTryParse<TEnum>(string value, out TEnum result) where TEnum : struct, IConvertible
117119
{
118120
#if NET35

Archipelago.MultiClient.Net/Helpers/CreateHintsHelper.cs

Lines changed: 0 additions & 107 deletions
This file was deleted.

0 commit comments

Comments
 (0)