Ejemplo n.º 1
0
            public void Synchronize(SynchronizeTag tag, byte playerId)
            {
                if (!dic.ContainsKey(tag))
                {
                    dic[tag] = 0;
                }

                dic[tag] |= (ulong)1 << playerId;
            }
Ejemplo n.º 2
0
        public static void Synchronize(SynchronizeTag tag, byte playerId)
        {
            MessageWriter writer = AmongUsClient.Instance.StartRpcImmediately(PlayerControl.LocalPlayer.NetId, (byte)CustomRPC.Synchronize, Hazel.SendOption.Reliable, -1);

            writer.Write(playerId);
            writer.Write((int)tag);
            AmongUsClient.Instance.FinishRpcImmediately(writer);
            RPCProcedure.synchronize(playerId, (int)tag);
        }
Ejemplo n.º 3
0
            public bool Align(SynchronizeTag tag, bool withGhost, bool withSurvivor = true)
            {
                bool result = true;

                ulong value = 0;

                dic.TryGetValue(tag, out value);

                foreach (PlayerControl pc in PlayerControl.AllPlayerControls)
                {
                    if (pc.Data.IsDead ? withGhost : withSurvivor)
                    {
                        result &= ((value & ((ulong)1 << pc.PlayerId)) != 0);
                    }
                }

                return(result);
            }
Ejemplo n.º 4
0
 public void Reset(SynchronizeTag tag)
 {
     dic[tag] = 0;
 }