summaryrefslogtreecommitdiff
path: root/Client/Assembly-CSharp/MeetingRoomManager.cs
blob: dcb519f78569fb1dccdce6f769b38ade4909793e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
using System;
using InnerNet;

public class MeetingRoomManager : IDisconnectHandler
{
	public static readonly MeetingRoomManager Instance = new MeetingRoomManager();

	private PlayerControl reporter;

	private GameData.PlayerInfo target;

	public void AssignSelf(PlayerControl reporter, GameData.PlayerInfo target)
	{
		this.reporter = reporter;
		this.target = target;
		AmongUsClient.Instance.DisconnectHandlers.AddUnique(this);
	}

	public void RemoveSelf()
	{
		AmongUsClient.Instance.DisconnectHandlers.Remove(this);
	}

	public void HandleDisconnect(PlayerControl pc, DisconnectReasons reason)
	{
		if (AmongUsClient.Instance.AmHost)
		{
			this.reporter.CmdReportDeadBody(this.target);
		}
	}

	public void HandleDisconnect()
	{
		this.HandleDisconnect(null, DisconnectReasons.ExitGame);
	}
}