forked from Impostor/Impostor
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
19 changed files
with
378 additions
and
67 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
using System.Collections.Generic; | ||
using System.Linq; | ||
using System.Numerics; | ||
using Impostor.Api.Innersloth.Maps.Vents; | ||
|
||
namespace Impostor.Api.Innersloth.Maps | ||
{ | ||
public class AirshipData : MapData | ||
{ | ||
public AirshipData() | ||
{ | ||
Vents = new[] | ||
{ | ||
new AirshipVent(AirshipVent.Ids.Vault, new Vector2(-12.6322f, 8.4735f)), | ||
new AirshipVent(AirshipVent.Ids.Cockpit, new Vector2(-22.099f, -1.512f)), | ||
new AirshipVent(AirshipVent.Ids.ViewingDeck, new Vector2(-15.659f, -11.6991f)), | ||
new AirshipVent(AirshipVent.Ids.EngineRoom, new Vector2(0.203f, -2.5361f)), | ||
new AirshipVent(AirshipVent.Ids.Kitchen, new Vector2(-2.6019f, -9.338f)), | ||
new AirshipVent(AirshipVent.Ids.MainHallBottom, new Vector2(7.021f, -3.730999f)), | ||
new AirshipVent(AirshipVent.Ids.GapRight, new Vector2(9.814f, 3.206f)), | ||
new AirshipVent(AirshipVent.Ids.GapLeft, new Vector2(12.663f, 5.922f)), | ||
new AirshipVent(AirshipVent.Ids.MainHallTop, new Vector2(3.605f, 6.923f)), | ||
new AirshipVent(AirshipVent.Ids.Showers, new Vector2(23.9869f, -1.386f)), | ||
new AirshipVent(AirshipVent.Ids.Records, new Vector2(23.2799f, 8.259998f)), | ||
new AirshipVent(AirshipVent.Ids.CargoBay, new Vector2(30.4409f, -3.577f)), | ||
}.ToDictionary(x => x.Id, x => (Vent)x); | ||
|
||
ConnectVents(AirshipVent.Ids.Vault, left: AirshipVent.Ids.Cockpit); | ||
ConnectVents(AirshipVent.Ids.Cockpit, left: AirshipVent.Ids.Vault, right: AirshipVent.Ids.ViewingDeck); | ||
ConnectVents(AirshipVent.Ids.ViewingDeck, left: AirshipVent.Ids.Cockpit); | ||
ConnectVents(AirshipVent.Ids.EngineRoom, left: AirshipVent.Ids.Kitchen, right: AirshipVent.Ids.MainHallBottom); | ||
ConnectVents(AirshipVent.Ids.Kitchen, left: AirshipVent.Ids.EngineRoom, right: AirshipVent.Ids.MainHallBottom); | ||
ConnectVents(AirshipVent.Ids.MainHallBottom, left: AirshipVent.Ids.EngineRoom, right: AirshipVent.Ids.Kitchen); | ||
ConnectVents(AirshipVent.Ids.GapRight, left: AirshipVent.Ids.MainHallTop, right: AirshipVent.Ids.GapLeft); | ||
ConnectVents(AirshipVent.Ids.GapLeft, left: AirshipVent.Ids.MainHallTop, right: AirshipVent.Ids.GapRight); | ||
ConnectVents(AirshipVent.Ids.MainHallTop, left: AirshipVent.Ids.GapLeft, right: AirshipVent.Ids.GapRight); | ||
ConnectVents(AirshipVent.Ids.Showers, left: AirshipVent.Ids.Records, right: AirshipVent.Ids.CargoBay); | ||
ConnectVents(AirshipVent.Ids.Records, left: AirshipVent.Ids.Showers, right: AirshipVent.Ids.CargoBay); | ||
ConnectVents(AirshipVent.Ids.CargoBay, left: AirshipVent.Ids.Showers, right: AirshipVent.Ids.Records); | ||
} | ||
|
||
public override IReadOnlyDictionary<int, Vent> Vents { get; } | ||
|
||
private void ConnectVents(AirshipVent.Ids vent, AirshipVent.Ids? left = null, AirshipVent.Ids? center = null, AirshipVent.Ids? right = null) | ||
{ | ||
ConnectVents((int)vent, (int?)left, (int?)center, (int?)right); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
using System.Collections.Generic; | ||
|
||
namespace Impostor.Api.Innersloth.Maps | ||
{ | ||
public abstract class MapData | ||
{ | ||
public static IReadOnlyDictionary<MapTypes, MapData> Maps { get; } = new Dictionary<MapTypes, MapData> | ||
{ | ||
[MapTypes.Skeld] = new SkeldData(), | ||
[MapTypes.MiraHQ] = new MiraData(), | ||
[MapTypes.Polus] = new PolusData(), | ||
[MapTypes.Airship] = new AirshipData(), | ||
}; | ||
|
||
public abstract IReadOnlyDictionary<int, Vent> Vents { get; } | ||
|
||
protected void ConnectVents(int vent, int? left = null, int? center = null, int? right = null) | ||
{ | ||
Vents[vent].Left = left != null ? Vents[left.Value] : null; | ||
Vents[vent].Center = center != null ? Vents[center.Value] : null; | ||
Vents[vent].Right = right != null ? Vents[right.Value] : null; | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
using System.Collections.Generic; | ||
using System.Linq; | ||
using System.Numerics; | ||
using Impostor.Api.Innersloth.Maps.Vents; | ||
|
||
namespace Impostor.Api.Innersloth.Maps | ||
{ | ||
public class MiraData : MapData | ||
{ | ||
public MiraData() | ||
{ | ||
Vents = new[] | ||
{ | ||
new MiraVent(MiraVent.Ids.Balcony, new Vector2(23.77f, -1.94f)), | ||
new MiraVent(MiraVent.Ids.Cafeteria, new Vector2(23.9f, 7.18f)), | ||
new MiraVent(MiraVent.Ids.Reactor, new Vector2(0.4800001f, 10.697f)), | ||
new MiraVent(MiraVent.Ids.Laboratory, new Vector2(11.606f, 13.816f)), | ||
new MiraVent(MiraVent.Ids.Office, new Vector2(13.28f, 20.13f)), | ||
new MiraVent(MiraVent.Ids.Admin, new Vector2(22.39f, 17.23f)), | ||
new MiraVent(MiraVent.Ids.Greenhouse, new Vector2(17.85f, 25.23f)), | ||
new MiraVent(MiraVent.Ids.Medbay, new Vector2(15.41f, -1.82f)), | ||
new MiraVent(MiraVent.Ids.Decontamination, new Vector2(6.83f, 3.145f)), | ||
new MiraVent(MiraVent.Ids.LockerRoom, new Vector2(4.29f, 0.5299997f)), | ||
new MiraVent(MiraVent.Ids.Launchpad, new Vector2(-6.18f, 3.56f)), | ||
}.ToDictionary(x => x.Id, x => (Vent)x); | ||
|
||
ConnectVents(MiraVent.Ids.Balcony, left: MiraVent.Ids.Medbay, right: MiraVent.Ids.Cafeteria); | ||
ConnectVents(MiraVent.Ids.Cafeteria, left: MiraVent.Ids.Admin, right: MiraVent.Ids.Balcony); | ||
ConnectVents(MiraVent.Ids.Reactor, left: MiraVent.Ids.Laboratory, center: MiraVent.Ids.Decontamination, right: MiraVent.Ids.Launchpad); | ||
ConnectVents(MiraVent.Ids.Laboratory, left: MiraVent.Ids.Reactor, center: MiraVent.Ids.Decontamination, right: MiraVent.Ids.Office); | ||
ConnectVents(MiraVent.Ids.Office, left: MiraVent.Ids.Laboratory, center: MiraVent.Ids.Admin, right: MiraVent.Ids.Greenhouse); | ||
ConnectVents(MiraVent.Ids.Admin, left: MiraVent.Ids.Greenhouse, center: MiraVent.Ids.Cafeteria, right: MiraVent.Ids.Office); | ||
ConnectVents(MiraVent.Ids.Greenhouse, left: MiraVent.Ids.Admin, right: MiraVent.Ids.Office); | ||
ConnectVents(MiraVent.Ids.Medbay, left: MiraVent.Ids.Balcony, right: MiraVent.Ids.LockerRoom); | ||
ConnectVents(MiraVent.Ids.Decontamination, left: MiraVent.Ids.Reactor, center: MiraVent.Ids.LockerRoom, right: MiraVent.Ids.Laboratory); | ||
ConnectVents(MiraVent.Ids.LockerRoom, left: MiraVent.Ids.Medbay, center: MiraVent.Ids.Launchpad, right: MiraVent.Ids.Decontamination); | ||
ConnectVents(MiraVent.Ids.Launchpad, left: MiraVent.Ids.Reactor, right: MiraVent.Ids.LockerRoom); | ||
} | ||
|
||
public override IReadOnlyDictionary<int, Vent> Vents { get; } | ||
|
||
private void ConnectVents(MiraVent.Ids vent, MiraVent.Ids? left = null, MiraVent.Ids? center = null, MiraVent.Ids? right = null) | ||
{ | ||
ConnectVents((int)vent, (int?)left, (int?)center, (int?)right); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
using System.Collections.Generic; | ||
using System.Linq; | ||
using System.Numerics; | ||
using Impostor.Api.Innersloth.Maps.Vents; | ||
|
||
namespace Impostor.Api.Innersloth.Maps | ||
{ | ||
public class PolusData : MapData | ||
{ | ||
public PolusData() | ||
{ | ||
Vents = new[] | ||
{ | ||
new PolusVent(PolusVent.Ids.Security, new Vector2(1.929f, -9.558001f)), | ||
new PolusVent(PolusVent.Ids.Electrical, new Vector2(6.9f, -14.41f)), | ||
new PolusVent(PolusVent.Ids.O2, new Vector2(3.51f, -16.58f)), | ||
new PolusVent(PolusVent.Ids.Communications, new Vector2(12.304f, -18.898f)), | ||
new PolusVent(PolusVent.Ids.Office, new Vector2(16.379f, -19.599f)), | ||
new PolusVent(PolusVent.Ids.Admin, new Vector2(20.089f, -25.517f)), | ||
new PolusVent(PolusVent.Ids.Laboratory, new Vector2(32.963f, -9.526f)), | ||
new PolusVent(PolusVent.Ids.Lava, new Vector2(30.907f, -11.86f)), | ||
new PolusVent(PolusVent.Ids.Storage, new Vector2(22f, -12.19f)), | ||
new PolusVent(PolusVent.Ids.RightStabilizer, new Vector2(24.02f, -8.39f)), | ||
new PolusVent(PolusVent.Ids.LeftStabilizer, new Vector2(9.64f, -7.72f)), | ||
new PolusVent(PolusVent.Ids.OutsideAdmin, new Vector2(18.93f, -24.85f)), | ||
}.ToDictionary(x => x.Id, x => (Vent)x); | ||
|
||
ConnectVents(PolusVent.Ids.Security, left: PolusVent.Ids.O2, right: PolusVent.Ids.Electrical); | ||
ConnectVents(PolusVent.Ids.Electrical, left: PolusVent.Ids.O2, right: PolusVent.Ids.Security); | ||
ConnectVents(PolusVent.Ids.O2, left: PolusVent.Ids.Electrical, right: PolusVent.Ids.Security); | ||
ConnectVents(PolusVent.Ids.Communications, left: PolusVent.Ids.Storage, right: PolusVent.Ids.Office); | ||
ConnectVents(PolusVent.Ids.Office, left: PolusVent.Ids.Communications, right: PolusVent.Ids.Storage); | ||
ConnectVents(PolusVent.Ids.Admin, left: PolusVent.Ids.OutsideAdmin, right: PolusVent.Ids.Lava); | ||
ConnectVents(PolusVent.Ids.Laboratory, right: PolusVent.Ids.Lava); | ||
ConnectVents(PolusVent.Ids.Lava, left: PolusVent.Ids.Laboratory, right: PolusVent.Ids.Admin); | ||
ConnectVents(PolusVent.Ids.Storage, left: PolusVent.Ids.Communications, right: PolusVent.Ids.Office); | ||
ConnectVents(PolusVent.Ids.RightStabilizer, left: PolusVent.Ids.LeftStabilizer); | ||
ConnectVents(PolusVent.Ids.LeftStabilizer, left: PolusVent.Ids.RightStabilizer); | ||
ConnectVents(PolusVent.Ids.OutsideAdmin, right: PolusVent.Ids.Admin); | ||
} | ||
|
||
public override IReadOnlyDictionary<int, Vent> Vents { get; } | ||
|
||
private void ConnectVents(PolusVent.Ids vent, PolusVent.Ids? left = null, PolusVent.Ids? center = null, PolusVent.Ids? right = null) | ||
{ | ||
ConnectVents((int)vent, (int?)left, (int?)center, (int?)right); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
using System.Collections.Generic; | ||
using System.Linq; | ||
using System.Numerics; | ||
using Impostor.Api.Innersloth.Maps.Vents; | ||
|
||
namespace Impostor.Api.Innersloth.Maps | ||
{ | ||
public class SkeldData : MapData | ||
{ | ||
public SkeldData() | ||
{ | ||
Vents = new[] | ||
{ | ||
new SkeldVent(SkeldVent.Ids.Admin, new Vector2(2.544f, -9.955201f)), | ||
new SkeldVent(SkeldVent.Ids.RightHallway, new Vector2(9.384f, -6.438f)), | ||
new SkeldVent(SkeldVent.Ids.Cafeteria, new Vector2(4.2588f, -0.276f)), | ||
new SkeldVent(SkeldVent.Ids.Electrical, new Vector2(-9.7764f, -8.034f)), | ||
new SkeldVent(SkeldVent.Ids.UpperEngine, new Vector2(-15.288f, 2.52f)), | ||
new SkeldVent(SkeldVent.Ids.Security, new Vector2(-12.534f, -6.9492f)), | ||
new SkeldVent(SkeldVent.Ids.Medbay, new Vector2(-10.608f, -4.176f)), | ||
new SkeldVent(SkeldVent.Ids.Weapons, new Vector2(8.820001f, 3.324f)), | ||
new SkeldVent(SkeldVent.Ids.LowerReactor, new Vector2(-20.796f, -6.9528f)), | ||
new SkeldVent(SkeldVent.Ids.LowerEngine, new Vector2(-15.2508f, -13.656f)), | ||
new SkeldVent(SkeldVent.Ids.Shields, new Vector2(9.5232f, -14.3376f)), | ||
new SkeldVent(SkeldVent.Ids.UpperReactor, new Vector2(-21.876f, -3.0516f)), | ||
new SkeldVent(SkeldVent.Ids.UpperNavigation, new Vector2(16.008f, -3.168f)), | ||
new SkeldVent(SkeldVent.Ids.LowerNavigation, new Vector2(16.008f, -6.384f)), | ||
}.ToDictionary(x => x.Id, x => (Vent)x); | ||
|
||
ConnectVents(SkeldVent.Ids.Admin, left: SkeldVent.Ids.Cafeteria, right: SkeldVent.Ids.RightHallway); | ||
ConnectVents(SkeldVent.Ids.RightHallway, left: SkeldVent.Ids.Admin, right: SkeldVent.Ids.Cafeteria); | ||
ConnectVents(SkeldVent.Ids.Cafeteria, left: SkeldVent.Ids.Admin, right: SkeldVent.Ids.RightHallway); | ||
ConnectVents(SkeldVent.Ids.Electrical, left: SkeldVent.Ids.Security, right: SkeldVent.Ids.Medbay); | ||
ConnectVents(SkeldVent.Ids.UpperEngine, left: SkeldVent.Ids.UpperReactor); | ||
ConnectVents(SkeldVent.Ids.Security, left: SkeldVent.Ids.Medbay, right: SkeldVent.Ids.Electrical); | ||
ConnectVents(SkeldVent.Ids.Medbay, left: SkeldVent.Ids.Security, right: SkeldVent.Ids.Electrical); | ||
ConnectVents(SkeldVent.Ids.Weapons, right: SkeldVent.Ids.UpperNavigation); | ||
ConnectVents(SkeldVent.Ids.LowerReactor, left: SkeldVent.Ids.LowerEngine); | ||
ConnectVents(SkeldVent.Ids.LowerEngine, left: SkeldVent.Ids.LowerReactor); | ||
ConnectVents(SkeldVent.Ids.Shields, left: SkeldVent.Ids.LowerNavigation); | ||
ConnectVents(SkeldVent.Ids.UpperReactor, left: SkeldVent.Ids.UpperEngine); | ||
ConnectVents(SkeldVent.Ids.UpperNavigation, right: SkeldVent.Ids.Weapons); | ||
ConnectVents(SkeldVent.Ids.LowerNavigation, right: SkeldVent.Ids.Shields); | ||
} | ||
|
||
public override IReadOnlyDictionary<int, Vent> Vents { get; } | ||
|
||
private void ConnectVents(SkeldVent.Ids vent, SkeldVent.Ids? left = null, SkeldVent.Ids? center = null, SkeldVent.Ids? right = null) | ||
{ | ||
ConnectVents((int)vent, (int?)left, (int?)center, (int?)right); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
using System.Numerics; | ||
|
||
namespace Impostor.Api.Innersloth.Maps.Vents | ||
{ | ||
public class AirshipVent : Vent | ||
{ | ||
internal AirshipVent(Ids id, Vector2 position) : base((int)id, id.ToString(), position) | ||
{ | ||
} | ||
|
||
public enum Ids | ||
{ | ||
Vault = 0, | ||
Cockpit = 1, | ||
ViewingDeck = 2, | ||
EngineRoom = 3, | ||
Kitchen = 4, | ||
MainHallBottom = 5, | ||
GapRight = 6, | ||
GapLeft = 7, | ||
MainHallTop = 8, | ||
Showers = 9, | ||
Records = 10, | ||
CargoBay = 11, | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
using System.Numerics; | ||
|
||
namespace Impostor.Api.Innersloth.Maps.Vents | ||
{ | ||
public class MiraVent : Vent | ||
{ | ||
internal MiraVent(Ids id, Vector2 position) : base((int)id, id.ToString(), position) | ||
{ | ||
} | ||
|
||
public enum Ids | ||
{ | ||
Balcony = 1, | ||
Cafeteria = 2, | ||
Reactor = 3, | ||
Laboratory = 4, | ||
Office = 5, | ||
Admin = 6, | ||
Greenhouse = 7, | ||
Medbay = 8, | ||
Decontamination = 9, | ||
LockerRoom = 10, | ||
Launchpad = 11, | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
using System.Numerics; | ||
|
||
namespace Impostor.Api.Innersloth.Maps.Vents | ||
{ | ||
public class PolusVent : Vent | ||
{ | ||
internal PolusVent(Ids id, Vector2 position) : base((int)id, id.ToString(), position) | ||
{ | ||
} | ||
|
||
public enum Ids | ||
{ | ||
Security = 0, | ||
Electrical = 1, | ||
O2 = 2, | ||
Communications = 3, | ||
Office = 4, | ||
Admin = 5, | ||
Laboratory = 6, | ||
Lava = 7, | ||
Storage = 8, | ||
RightStabilizer = 9, | ||
LeftStabilizer = 10, | ||
OutsideAdmin = 11, | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
using System.Numerics; | ||
|
||
namespace Impostor.Api.Innersloth.Maps.Vents | ||
{ | ||
public class SkeldVent : Vent | ||
{ | ||
internal SkeldVent(Ids id, Vector2 position) : base((int)id, id.ToString(), position) | ||
{ | ||
} | ||
|
||
public enum Ids | ||
{ | ||
Admin = 0, | ||
RightHallway = 1, | ||
Cafeteria = 2, | ||
Electrical = 3, | ||
UpperEngine = 4, | ||
Security = 5, | ||
Medbay = 6, | ||
Weapons = 7, | ||
LowerReactor = 8, | ||
LowerEngine = 9, | ||
Shields = 10, | ||
UpperReactor = 11, | ||
UpperNavigation = 12, | ||
LowerNavigation = 13, | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
using System.Numerics; | ||
|
||
namespace Impostor.Api.Innersloth | ||
{ | ||
public abstract class Vent | ||
{ | ||
internal Vent(int id, string name, Vector2 position) | ||
{ | ||
Id = id; | ||
Name = name; | ||
Position = position; | ||
} | ||
|
||
public int Id { get; } | ||
|
||
public string Name { get; } | ||
|
||
public Vector2 Position { get; } | ||
|
||
public Vent? Left { get; internal set; } | ||
|
||
public Vent? Center { get; internal set; } | ||
|
||
public Vent? Right { get; internal set; } | ||
} | ||
} |
Oops, something went wrong.