Skip to content

Commit 535f89c

Browse files
authored
Merge pull request #136 from Raicuparta/dev
2 parents 9a35309 + 1451a87 commit 535f89c

File tree

6 files changed

+31
-27
lines changed

6 files changed

+31
-27
lines changed

QSB/PlayerRegistry.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public static class PlayerRegistry
1212
public static List<PlayerInfo> PlayerList { get; } = new List<PlayerInfo>();
1313

1414
public static List<TransformSync.TransformSync> TransformSyncs { get; } = new List<TransformSync.TransformSync>();
15-
public static List<TransformSync.TransformSync> LocalTransformSyncs => TransformSyncs.Where(t => t.hasAuthority).ToList();
15+
public static List<TransformSync.TransformSync> LocalTransformSyncs => TransformSyncs.Where(t => t != null && t.hasAuthority).ToList();
1616

1717
public static List<AnimationSync> AnimationSyncs { get; } = new List<AnimationSync>();
1818

@@ -50,12 +50,12 @@ public static void HandleFullStateMessage(FullStateMessage message)
5050

5151
public static TransformSync.TransformSync GetTransformSync(uint id)
5252
{
53-
return TransformSyncs.Single(x => x.netId.Value == id);
53+
return TransformSyncs.First(x => x != null && x.netId.Value == id);
5454
}
5555

5656
public static AnimationSync GetAnimationSync(uint id)
5757
{
58-
return AnimationSyncs.SingleOrDefault(x => x.netId.Value == id);
58+
return AnimationSyncs.FirstOrDefault(x => x != null && x.netId.Value == id);
5959
}
6060

6161
}

QSB/QSB.csproj

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -38,37 +38,37 @@
3838
<HintPath>$(GameDir)\OuterWilds_Data\Managed\Assembly-CSharp.dll</HintPath>
3939
</Reference>
4040
<Reference Include="NAudio-Unity, Version=2.0.0.0, Culture=neutral, processorArchitecture=MSIL">
41-
<HintPath>..\packages\OWML.0.7.1\lib\net35\NAudio-Unity.dll</HintPath>
41+
<HintPath>..\packages\OWML.0.7.2\lib\net35\NAudio-Unity.dll</HintPath>
4242
</Reference>
4343
<Reference Include="Newtonsoft.Json, Version=9.0.0.0, Culture=neutral, processorArchitecture=MSIL">
4444
<HintPath>..\packages\Json.Net.Unity3D.9.0.1\lib\net35\Newtonsoft.Json.dll</HintPath>
4545
</Reference>
4646
<Reference Include="OWML, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
47-
<HintPath>..\packages\OWML.0.7.1\lib\net35\OWML.dll</HintPath>
47+
<HintPath>..\packages\OWML.0.7.2\lib\net35\OWML.dll</HintPath>
4848
</Reference>
4949
<Reference Include="OWML.Common, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
50-
<HintPath>..\packages\OWML.0.7.1\lib\net35\OWML.Common.dll</HintPath>
50+
<HintPath>..\packages\OWML.0.7.2\lib\net35\OWML.Common.dll</HintPath>
5151
</Reference>
5252
<Reference Include="OWML.Logging, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
53-
<HintPath>..\packages\OWML.0.7.1\lib\net35\OWML.Logging.dll</HintPath>
53+
<HintPath>..\packages\OWML.0.7.2\lib\net35\OWML.Logging.dll</HintPath>
5454
</Reference>
5555
<Reference Include="OWML.ModHelper, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
56-
<HintPath>..\packages\OWML.0.7.1\lib\net35\OWML.ModHelper.dll</HintPath>
56+
<HintPath>..\packages\OWML.0.7.2\lib\net35\OWML.ModHelper.dll</HintPath>
5757
</Reference>
5858
<Reference Include="OWML.ModHelper.Assets, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
59-
<HintPath>..\packages\OWML.0.7.1\lib\net35\OWML.ModHelper.Assets.dll</HintPath>
59+
<HintPath>..\packages\OWML.0.7.2\lib\net35\OWML.ModHelper.Assets.dll</HintPath>
6060
</Reference>
6161
<Reference Include="OWML.ModHelper.Events, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
62-
<HintPath>..\packages\OWML.0.7.1\lib\net35\OWML.ModHelper.Events.dll</HintPath>
62+
<HintPath>..\packages\OWML.0.7.2\lib\net35\OWML.ModHelper.Events.dll</HintPath>
6363
</Reference>
6464
<Reference Include="OWML.ModHelper.Input, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
65-
<HintPath>..\packages\OWML.0.7.1\lib\net35\OWML.ModHelper.Input.dll</HintPath>
65+
<HintPath>..\packages\OWML.0.7.2\lib\net35\OWML.ModHelper.Input.dll</HintPath>
6666
</Reference>
6767
<Reference Include="OWML.ModHelper.Interaction, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
68-
<HintPath>..\packages\OWML.0.7.1\lib\net35\OWML.ModHelper.Interaction.dll</HintPath>
68+
<HintPath>..\packages\OWML.0.7.2\lib\net35\OWML.ModHelper.Interaction.dll</HintPath>
6969
</Reference>
7070
<Reference Include="OWML.ModHelper.Menus, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
71-
<HintPath>..\packages\OWML.0.7.1\lib\net35\OWML.ModHelper.Menus.dll</HintPath>
71+
<HintPath>..\packages\OWML.0.7.2\lib\net35\OWML.ModHelper.Menus.dll</HintPath>
7272
</Reference>
7373
<Reference Include="System" />
7474
<Reference Include="System.Core" />

QSB/TransformSync/SectorMessage.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,20 @@ public class SectorMessage : QSBMessage
88
public override MessageType MessageType => MessageType.Sector;
99

1010
public int SectorId;
11+
public string SectorName;
1112
public uint SenderId;
1213

1314
public override void Deserialize(NetworkReader reader)
1415
{
1516
SectorId = reader.ReadInt32();
17+
SectorName = reader.ReadString();
1618
SenderId = reader.ReadPackedUInt32();
1719
}
1820

1921
public override void Serialize(NetworkWriter writer)
2022
{
2123
writer.Write(SectorId);
24+
writer.Write(SectorName);
2225
writer.Write(SenderId);
2326
}
2427
}

QSB/TransformSync/SectorSync.cs

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -34,30 +34,31 @@ private void OnSceneLoaded(Scene scene, LoadSceneMode mode)
3434
_allSectors = FindObjectsOfType<Sector>();
3535
}
3636

37-
private void SendSector(uint id, Sector.Name sectorName)
37+
private void SendSector(uint id, Sector sector)
3838
{
39-
DebugLog.ToScreen($"Sending sector {sectorName} for id {id}");
39+
DebugLog.ToScreen($"Sending sector {sector.name} for id {id}");
4040

4141
var msg = new SectorMessage
4242
{
43-
SectorId = (int)sectorName,
43+
SectorId = (int)sector.GetName(),
44+
SectorName = sector.name,
4445
SenderId = id
4546
};
4647
_sectorHandler.SendToServer(msg);
4748
}
4849

49-
private Sector FindSectorByName(Sector.Name sectorName)
50+
private Sector FindSectorByName(Sector.Name sectorName, string goName)
5051
{
5152
return _allSectors?
52-
.FirstOrDefault(sector => sectorName == sector.GetName());
53+
.FirstOrDefault(sector => sector.GetName() == sectorName && sector.name == goName);
5354
}
5455

5556
private void OnClientReceiveMessage(SectorMessage message)
5657
{
5758
var sectorName = (Sector.Name)message.SectorId;
58-
DebugLog.ToScreen($"Received sector {sectorName} for id {message.SenderId}");
59+
DebugLog.ToScreen($"Received sector {message.SectorName} for id {message.SenderId}");
5960

60-
var sector = FindSectorByName(sectorName);
61+
var sector = FindSectorByName(sectorName, message.SectorName);
6162

6263
if (sector == null)
6364
{
@@ -97,16 +98,16 @@ private void UpdateTransformSync(TransformSync transformSync)
9798
{
9899
return;
99100
}
100-
SendSector(transformSync.netId.Value, closestSector.GetName());
101+
SendSector(transformSync.netId.Value, closestSector);
101102
transformSync.ReferenceTransform = closestSector.transform;
102103
}
103104

104105
private Sector GetClosestSector(Transform trans)
105106
{
106107
return _allSectors?
107-
.Where(sector => !_sectorBlacklist.Contains(sector.GetName()))
108-
.OrderBy(sector => Vector3.Distance(sector.transform.position, trans.position))
109-
.First();
108+
.Where(sector => !_sectorBlacklist.Contains(sector.GetName()))
109+
.OrderBy(sector => Vector3.Distance(sector.transform.position, trans.position))
110+
.First();
110111
}
111112
}
112113
}

QSB/manifest.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@
44
"name": "Quantum Space Buddies",
55
"description": "Adds online multiplayer to the game.",
66
"uniqueName": "Raicuparta.QuantumSpaceBuddies",
7-
"version": "0.3.0",
8-
"owmlVersion": "0.7.1"
7+
"version": "0.3.1",
8+
"owmlVersion": "0.7.2"
99
}

QSB/packages.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
<packages>
33
<package id="Json.Net.Unity3D" version="9.0.1" targetFramework="net35" />
44
<package id="Lib.Harmony" version="1.2.0.1" targetFramework="net35" />
5-
<package id="OWML" version="0.7.1" targetFramework="net35" />
5+
<package id="OWML" version="0.7.2" targetFramework="net35" />
66
</packages>

0 commit comments

Comments
 (0)