Stop hardcoding Spawn Ids

This commit is contained in:
miniduikboot committed 2024-07-03 21:32:11 +02:00
1 parent 6d1d1f4ad6
commit d7744a2ec6
2 files changed
+4 -2

No files matched your search

+3 -1
View File
@@ -1,11 +1,11 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Impostor.Api;
using Impostor.Api.Innersloth;
using Impostor.Api.Net.Inner;
using Impostor.Api.Unity;
using Impostor.Hazel;
using Impostor.Server.Events.Meeting;
using Impostor.Server.Events.Player;
using Impostor.Server.Net.Inner;
@@ -50,6 +50,8 @@ namespace Impostor.Server.Net.State
[13] = typeof(InnerFungleShipStatus),
};
private static readonly Dictionary<Type, uint> SpawnableObjectIds = SpawnableObjects.ToDictionary((i) => i.Value, (i) => i.Key);
private readonly List<InnerNetObject> _allObjects = new List<InnerNetObject>();
private readonly Dictionary<uint, InnerNetObject> _allObjectsFast = new Dictionary<uint, InnerNetObject>();
@@ -125,7 +125,7 @@ namespace Impostor.Server.Net.State
{
using var writer = StartGameData(targetClientId);
writer.StartMessage((byte)GameDataTag.SpawnFlag);
writer.WritePacked(11u); // TODO don't hardcode
writer.WritePacked(SpawnableObjectIds[obj.GetType()]);
writer.WritePacked(obj.OwnerId);
writer.Write((byte)obj.SpawnFlags);