mirror of
https://github.com/Gurge44/EndlessHostRoles.git
synced 2026-10-19 15:51:58 +00:00
Start working on Custom Team Assignment
This commit is contained in:
1 parent
8da90a828a
commit
7357debdd1
18 files changed
+1430
-386
No files matched your search
@@ -0,0 +1,9 @@
|
||||
<Application x:Class="CustomTeamAssigner.App"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:local="clr-namespace:CustomTeamAssigner"
|
||||
StartupUri="MainWindow.xaml">
|
||||
<Application.Resources>
|
||||
|
||||
</Application.Resources>
|
||||
</Application>
|
||||
@@ -0,0 +1,14 @@
|
||||
using System.Configuration;
|
||||
using System.Data;
|
||||
using System.Windows;
|
||||
|
||||
namespace CustomTeamAssigner
|
||||
{
|
||||
/// <summary>
|
||||
/// Interaction logic for App.xaml
|
||||
/// </summary>
|
||||
public partial class App : Application
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
using System.Windows;
|
||||
|
||||
[assembly: ThemeInfo(
|
||||
ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
|
||||
//(used if a resource is not found in the page,
|
||||
// or application resource dictionaries)
|
||||
ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
|
||||
//(used if a resource is not found in the page,
|
||||
// app, or any theme specific resource dictionaries)
|
||||
)]
|
||||
@@ -0,0 +1,388 @@
|
||||
|
||||
namespace EHR;
|
||||
|
||||
public enum CustomRoles
|
||||
{
|
||||
//Default
|
||||
Crewmate = 0,
|
||||
|
||||
//Impostors (Vanilla)
|
||||
Impostor,
|
||||
Shapeshifter,
|
||||
|
||||
// Vanilla Remakes
|
||||
ImpostorTOHE,
|
||||
ShapeshifterTOHE,
|
||||
|
||||
//Impostors
|
||||
|
||||
Hacker, // Anonymous
|
||||
AntiAdminer,
|
||||
Sans, // Arrogance
|
||||
Bard,
|
||||
Blackmailer,
|
||||
Bomber,
|
||||
BountyHunter,
|
||||
OverKiller, // Butcher
|
||||
Camouflager,
|
||||
Capitalism,
|
||||
Cantankerous,
|
||||
Changeling,
|
||||
Chronomancer,
|
||||
Cleaner,
|
||||
Commander,
|
||||
EvilDiviner, // Consigliere
|
||||
Consort,
|
||||
Councillor,
|
||||
Crewpostor,
|
||||
CursedWolf,
|
||||
Deathpact,
|
||||
Devourer,
|
||||
Disperser,
|
||||
Duellist,
|
||||
Dazzler,
|
||||
Escapee,
|
||||
Eraser,
|
||||
EvilGuesser,
|
||||
EvilTracker,
|
||||
FireWorks,
|
||||
Freezer,
|
||||
Gambler,
|
||||
Gangster,
|
||||
Godfather,
|
||||
Greedier,
|
||||
Hangman,
|
||||
Hitman,
|
||||
Inhibitor,
|
||||
Kamikaze,
|
||||
Kidnapper,
|
||||
Minimalism, // Killing Machine
|
||||
BallLightning, // Lightning
|
||||
Librarian,
|
||||
Lurker,
|
||||
Mafioso,
|
||||
Mastermind,
|
||||
Mafia, // Nemesis
|
||||
SerialKiller, // Mercenary
|
||||
Miner,
|
||||
Morphling,
|
||||
Assassin, // Ninja
|
||||
Nuker,
|
||||
Nullifier,
|
||||
Parasite,
|
||||
Penguin,
|
||||
Puppeteer,
|
||||
QuickShooter,
|
||||
Refugee,
|
||||
RiftMaker,
|
||||
Saboteur,
|
||||
Sapper,
|
||||
Scavenger,
|
||||
Silencer,
|
||||
Sniper,
|
||||
ImperiusCurse, // Soul Catcher
|
||||
Swapster,
|
||||
Swiftclaw,
|
||||
Swooper,
|
||||
Stealth,
|
||||
TimeThief,
|
||||
BoobyTrap, // Trapster
|
||||
Trickster,
|
||||
Twister,
|
||||
Underdog,
|
||||
Undertaker,
|
||||
Vampire,
|
||||
Vindicator,
|
||||
Visionary,
|
||||
Warlock,
|
||||
Wildling,
|
||||
Witch,
|
||||
YinYanger,
|
||||
Zombie,
|
||||
|
||||
//Crewmates (Vanilla)
|
||||
Engineer,
|
||||
GuardianAngel,
|
||||
Scientist,
|
||||
|
||||
// Vanilla Remakes
|
||||
CrewmateTOHE,
|
||||
EngineerTOHE,
|
||||
GuardianAngelTOHE,
|
||||
ScientistTOHE,
|
||||
|
||||
// Crewmate
|
||||
|
||||
Addict,
|
||||
Aid,
|
||||
Alchemist,
|
||||
Altruist,
|
||||
Analyzer,
|
||||
Autocrat,
|
||||
Beacon,
|
||||
Benefactor,
|
||||
Bodyguard,
|
||||
CameraMan,
|
||||
CyberStar, // Celebrity
|
||||
Chameleon,
|
||||
Cleanser,
|
||||
Convener,
|
||||
CopyCat,
|
||||
Bloodhound, // Coroner
|
||||
Crusader,
|
||||
Demolitionist,
|
||||
Deputy,
|
||||
Detective,
|
||||
Detour,
|
||||
Dictator,
|
||||
Doctor,
|
||||
DonutDelivery,
|
||||
Doormaster,
|
||||
DovesOfNeace,
|
||||
Drainer,
|
||||
Druid,
|
||||
Electric,
|
||||
Enigma,
|
||||
Escort,
|
||||
Express,
|
||||
Farseer,
|
||||
Divinator, // Fortune Teller
|
||||
Gaulois,
|
||||
Grenadier,
|
||||
GuessManagerRole,
|
||||
Guardian,
|
||||
Ignitor,
|
||||
Insight,
|
||||
ParityCop, // Inspector
|
||||
Jailor,
|
||||
Judge,
|
||||
Needy, // Lazy Guy
|
||||
Lighter,
|
||||
Lookout,
|
||||
Luckey,
|
||||
Markseeker,
|
||||
Marshall,
|
||||
Mathematician,
|
||||
Mayor,
|
||||
SabotageMaster, // Mechanic
|
||||
Medic,
|
||||
Mediumshiper,
|
||||
Merchant,
|
||||
Monitor,
|
||||
Mole,
|
||||
Monarch,
|
||||
Mortician,
|
||||
NiceEraser,
|
||||
NiceGuesser,
|
||||
NiceHacker,
|
||||
NiceSwapper,
|
||||
Nightmare,
|
||||
Observer,
|
||||
Oracle,
|
||||
Paranoia,
|
||||
Perceiver,
|
||||
Philantropist,
|
||||
Psychic,
|
||||
Rabbit,
|
||||
Randomizer,
|
||||
Ricochet,
|
||||
Sentinel,
|
||||
SecurityGuard,
|
||||
Sheriff,
|
||||
Shiftguard,
|
||||
Snitch,
|
||||
Spiritualist,
|
||||
Speedrunner,
|
||||
SpeedBooster,
|
||||
Spy,
|
||||
SuperStar,
|
||||
TaskManager,
|
||||
Tether,
|
||||
TimeManager,
|
||||
TimeMaster,
|
||||
Tornado,
|
||||
Tracker,
|
||||
Transmitter,
|
||||
Transporter,
|
||||
Tracefinder,
|
||||
Tunneler,
|
||||
Ventguard,
|
||||
Veteran,
|
||||
SwordsMan, // Vigilante
|
||||
Witness,
|
||||
|
||||
//Neutrals
|
||||
|
||||
Agitater,
|
||||
Amnesiac,
|
||||
Arsonist,
|
||||
Bandit,
|
||||
BloodKnight,
|
||||
Bubble,
|
||||
Collector,
|
||||
Deathknight,
|
||||
Gamer, // Demon
|
||||
Doppelganger,
|
||||
Doomsayer,
|
||||
Eclipse,
|
||||
Enderman,
|
||||
Executioner,
|
||||
Totocalcio, // Follower
|
||||
Glitch,
|
||||
God,
|
||||
FFF, // Hater
|
||||
HeadHunter,
|
||||
HexMaster,
|
||||
Hookshot,
|
||||
Imitator,
|
||||
Impartial,
|
||||
Innocent,
|
||||
Jackal,
|
||||
Jester,
|
||||
Jinx,
|
||||
Juggernaut,
|
||||
Konan,
|
||||
Lawyer,
|
||||
Magician,
|
||||
Mario,
|
||||
Maverick,
|
||||
Medusa,
|
||||
Mycologist,
|
||||
Necromancer,
|
||||
Opportunist,
|
||||
Pelican,
|
||||
Pestilence,
|
||||
Phantom,
|
||||
Pickpocket,
|
||||
PlagueBearer,
|
||||
PlagueDoctor,
|
||||
Poisoner,
|
||||
Postman,
|
||||
Predator,
|
||||
Provocateur,
|
||||
Pursuer,
|
||||
Pyromaniac,
|
||||
Reckless,
|
||||
Revolutionist,
|
||||
Ritualist,
|
||||
Romantic,
|
||||
RuthlessRomantic,
|
||||
NSerialKiller, // Serial Killer
|
||||
Sidekick,
|
||||
SoulHunter,
|
||||
Spiritcaller,
|
||||
Sprayer,
|
||||
DarkHide, // Stalker
|
||||
Succubus,
|
||||
Sunnyboy,
|
||||
Terrorist,
|
||||
Tiger,
|
||||
Traitor,
|
||||
Vengeance,
|
||||
VengefulRomantic,
|
||||
Virus,
|
||||
Vulture,
|
||||
Wraith,
|
||||
Werewolf,
|
||||
WeaponMaster,
|
||||
Workaholic,
|
||||
|
||||
//SoloKombat
|
||||
KB_Normal,
|
||||
|
||||
//FFA
|
||||
Killer,
|
||||
|
||||
//MoveAndStop
|
||||
Tasker,
|
||||
|
||||
//HotPotato
|
||||
Potato,
|
||||
|
||||
//H&S
|
||||
Hider,
|
||||
Seeker,
|
||||
Fox,
|
||||
Troll,
|
||||
|
||||
//GM
|
||||
GM,
|
||||
|
||||
// ????
|
||||
Convict,
|
||||
|
||||
|
||||
// Sub-role after 500
|
||||
NotAssigned = 500,
|
||||
Antidote,
|
||||
Asthmatic,
|
||||
Autopsy,
|
||||
Avanger,
|
||||
Bait,
|
||||
Busy,
|
||||
Trapper, // Beartrap
|
||||
Bewilder,
|
||||
Bloodlust,
|
||||
Charmed,
|
||||
Circumvent,
|
||||
Cleansed,
|
||||
Clumsy,
|
||||
Contagious,
|
||||
Damocles,
|
||||
DeadlyQuota,
|
||||
Disco,
|
||||
Diseased,
|
||||
Unreportable, // Disregarded
|
||||
DoubleShot,
|
||||
Egoist,
|
||||
EvilSpirit,
|
||||
Flashman,
|
||||
Fool,
|
||||
Giant,
|
||||
Glow,
|
||||
Gravestone,
|
||||
Guesser,
|
||||
Haste,
|
||||
Haunter, // Ghost role
|
||||
Knighted,
|
||||
LastImpostor,
|
||||
Lazy,
|
||||
Lovers,
|
||||
Loyal,
|
||||
Lucky,
|
||||
Madmate,
|
||||
Magnet,
|
||||
Mare,
|
||||
Mimic,
|
||||
Minion, // Ghost role
|
||||
Mischievous,
|
||||
Necroview,
|
||||
Ntr, // Neptune
|
||||
Nimble,
|
||||
Oblivious,
|
||||
Onbound,
|
||||
Specter, // Ghost role
|
||||
Physicist,
|
||||
Rascal,
|
||||
Reach,
|
||||
Recruit,
|
||||
Rogue,
|
||||
DualPersonality, // Schizophrenic
|
||||
Seer,
|
||||
Sleuth,
|
||||
Stained,
|
||||
Taskcounter,
|
||||
TicketsStealer, // Stealer
|
||||
Stressed,
|
||||
Swift,
|
||||
Sunglasses,
|
||||
Brakar, // Tiebreaker
|
||||
Torch,
|
||||
Truant,
|
||||
Undead,
|
||||
Unlucky,
|
||||
Warden, // Ghost role
|
||||
Watcher,
|
||||
Workhorse,
|
||||
Youtuber
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<TargetFramework>net8.0-windows</TargetFramework>
|
||||
<Nullable>enable</Nullable>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<UseWPF>true</UseWPF>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Remove="bg.jpg" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Resource Include="bg.jpg">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
@@ -0,0 +1,25 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.10.34707.107
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CustomTeamAssigner", "CustomTeamAssigner.csproj", "{B0932EFD-5233-4DF0-BB93-1C9AE176B3B9}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{B0932EFD-5233-4DF0-BB93-1C9AE176B3B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B0932EFD-5233-4DF0-BB93-1C9AE176B3B9}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B0932EFD-5233-4DF0-BB93-1C9AE176B3B9}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B0932EFD-5233-4DF0-BB93-1C9AE176B3B9}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {7D0AF6B5-F7EA-440B-BEFF-CA295AF3CA1D}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
@@ -0,0 +1,76 @@
|
||||
<Window x:Class="CustomTeamAssigner.MainWindow"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
mc:Ignorable="d"
|
||||
Title="Custom Team Assigner" Height="720" Width="1280" FontSize="20" ResizeMode="CanMinimize" WindowStyle="None">
|
||||
|
||||
<!--Create a default style for the buttons (modern style)-->
|
||||
<Window.Resources>
|
||||
<Style TargetType="Button">
|
||||
<Setter Property="Background" Value="LightGray"/>
|
||||
<Setter Property="Foreground" Value="Black"/>
|
||||
<Setter Property="FontSize" Value="30"/>
|
||||
<Setter Property="FontFamily" Value="Arial"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Padding" Value="10"/>
|
||||
<Setter Property="Margin" Value="10"/>
|
||||
<Setter Property="Width" Value="440"/>
|
||||
<Setter Property="Height" Value="100"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="Button">
|
||||
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="10">
|
||||
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="Gray"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsPressed" Value="True">
|
||||
<Setter Property="Background" Value="DarkGray"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Window.Resources>
|
||||
|
||||
<Grid Name="MainGrid">
|
||||
<Grid.Background>
|
||||
<ImageBrush ImageSource="bg.jpg"/>
|
||||
</Grid.Background>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition/>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<!--Create a Frame for navigating between Pages-->
|
||||
<Frame Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" Grid.RowSpan="10" Name="Navigator" NavigationUIVisibility="Hidden"/>
|
||||
|
||||
<Label Content="Custom Team Assigner" Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="3" Grid.RowSpan="2" FontSize="70" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Foreground="LightGray"/>
|
||||
|
||||
<Button Content="Create New Play-Set" Grid.Column="1" Grid.Row="3" Click="CreateNewPlaySet"/>
|
||||
<Button Content="Import Play-Set" Grid.Column="1" Grid.Row="5" Click="ImportPlaySet"/>
|
||||
|
||||
<Button Content="Exit" Grid.Column="1" Grid.Row="8" Click="Exit"/>
|
||||
</Grid>
|
||||
</Window>
|
||||
@@ -0,0 +1,49 @@
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using Microsoft.Win32;
|
||||
|
||||
namespace CustomTeamAssigner
|
||||
{
|
||||
public partial class MainWindow : Window
|
||||
{
|
||||
public static MainWindow Instance { get; private set; } = null!;
|
||||
|
||||
public MainWindow()
|
||||
{
|
||||
InitializeComponent();
|
||||
Instance = this;
|
||||
}
|
||||
|
||||
void ImportPlaySet(object sender, RoutedEventArgs e)
|
||||
{
|
||||
OpenFileDialog ofd = new()
|
||||
{
|
||||
Filter = "Text files (*.txt)|*.txt",
|
||||
RestoreDirectory = true
|
||||
};
|
||||
|
||||
if (ofd.ShowDialog() == true)
|
||||
{
|
||||
File.ReadAllLines(ofd.FileName).Do(line => new Team(line.Split(';')[0]).Import(line));
|
||||
|
||||
Navigator.NavigationService.Navigate(new PlaySetListerPage());
|
||||
MainGrid.Visibility = Visibility.Collapsed;
|
||||
}
|
||||
}
|
||||
|
||||
void CreateNewPlaySet(object sender, RoutedEventArgs e)
|
||||
{
|
||||
}
|
||||
|
||||
void Exit(object sender, RoutedEventArgs e) => Close();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,146 @@
|
||||
<Page x:Class="CustomTeamAssigner.PlaySetListerPage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="450" d:DesignWidth="800"
|
||||
Title="Play-Set Lister">
|
||||
|
||||
<Page.Resources>
|
||||
<Style TargetType="Button">
|
||||
<Setter Property="Background" Value="LightGray"/>
|
||||
<Setter Property="Foreground" Value="Black"/>
|
||||
<Setter Property="FontSize" Value="30"/>
|
||||
<Setter Property="FontFamily" Value="Arial"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Padding" Value="10"/>
|
||||
<Setter Property="Margin" Value="10"/>
|
||||
<Setter Property="Width" Value="440"/>
|
||||
<Setter Property="Height" Value="100"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="Button">
|
||||
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="10">
|
||||
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="Gray"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsPressed" Value="True">
|
||||
<Setter Property="Background" Value="DarkGray"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Background" Value="DarkGray"/>
|
||||
<Setter Property="Foreground" Value="Gray"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="ListBoxItem">
|
||||
<Setter Property="Background" Value="Black"/>
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Setter Property="FontSize" Value="30"/>
|
||||
<Setter Property="FontFamily" Value="Arial"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Padding" Value="10"/>
|
||||
<Setter Property="Margin" Value="10"/>
|
||||
<Setter Property="Width" Value="440"/>
|
||||
<Setter Property="Height" Value="100"/>
|
||||
<Setter Property="HorizontalContentAlignment" Value="Center"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="ListBoxItem">
|
||||
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="10">
|
||||
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="Gray"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsSelected" Value="True">
|
||||
<Setter Property="Background" Value="DarkGray"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="ScrollViewer">
|
||||
<Setter Property="Background" Value="DarkGray"/>
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Padding" Value="0"/>
|
||||
<Setter Property="Margin" Value="0"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Left"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="ScrollViewer">
|
||||
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="10">
|
||||
<ScrollContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="ListBox">
|
||||
<Setter Property="Background" Value="LightGray"/>
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Setter Property="FontSize" Value="30"/>
|
||||
<Setter Property="FontFamily" Value="Arial"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="HorizontalContentAlignment" Value="Center"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="ListBox">
|
||||
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="10">
|
||||
<ItemsPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</Page.Resources>
|
||||
|
||||
<Grid>
|
||||
<Grid.Background>
|
||||
<ImageBrush ImageSource="bg.jpg"/>
|
||||
</Grid.Background>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="3*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<ScrollViewer Grid.RowSpan="7">
|
||||
<ListBox Name="TeamListBox" d:ItemsSource="{d:SampleData ItemCount=20}"/>
|
||||
</ScrollViewer>
|
||||
<Button Grid.Row="1" Grid.Column="1" Content="Add Team" Click="AddNewTeam"/>
|
||||
<Button Grid.Row="2" Grid.Column="1" Content="Edit Team" Click="EditTeam" IsEnabled="False"/>
|
||||
<Button Grid.Row="3" Grid.Column="1" Content="Delete Team" Click="DeleteTeam" IsEnabled="False"/>
|
||||
<Button Grid.Row="4" Grid.Column="1" Content="Save" Click="SavePlaySet"/>
|
||||
<Button Grid.Row="6" Grid.Column="1" Content="Go Back" Click="Back"/>
|
||||
</Grid>
|
||||
</Page>
|
||||
@@ -0,0 +1,28 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
|
||||
namespace CustomTeamAssigner
|
||||
{
|
||||
public partial class PlaySetListerPage : Page
|
||||
{
|
||||
public PlaySetListerPage()
|
||||
{
|
||||
InitializeComponent();
|
||||
TeamListBox.ItemsSource = Utils.Teams.Select(x => x.TeamName);
|
||||
}
|
||||
|
||||
void Back(object sender, RoutedEventArgs e) => MainWindow.Instance.Navigator.NavigationService.GoBack();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using EHR;
|
||||
|
||||
namespace CustomTeamAssigner
|
||||
{
|
||||
internal class Team(string teamName)
|
||||
{
|
||||
public string RoleRevealScreenTitle { get; set; } = "*";
|
||||
|
||||
public string RoleRevealScreenSubtitle { get; set; } = "*";
|
||||
|
||||
public string RoleRevealScreenBackgroundColor { get; set; } = "*";
|
||||
|
||||
public string TeamName
|
||||
{
|
||||
get => teamName;
|
||||
set => teamName = value;
|
||||
}
|
||||
|
||||
public List<CustomRoles> TeamMembers { get; set; } = [];
|
||||
|
||||
public void Import(string line)
|
||||
{
|
||||
try
|
||||
{
|
||||
string[] parts = line.Split(';')[1..];
|
||||
|
||||
string title = parts[0];
|
||||
string subtitle = parts[1];
|
||||
string bgColor = parts[2];
|
||||
|
||||
TeamMembers = parts[3].Split(',').Select(member => Enum.Parse<CustomRoles>(member, true)).ToList();
|
||||
|
||||
RoleRevealScreenTitle = title;
|
||||
RoleRevealScreenSubtitle = subtitle;
|
||||
RoleRevealScreenBackgroundColor = bgColor;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
switch (e)
|
||||
{
|
||||
case NullReferenceException:
|
||||
MessageBox.Show("The file is empty.", "Error while importing", MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
break;
|
||||
case InvalidOperationException:
|
||||
case IndexOutOfRangeException:
|
||||
MessageBox.Show("The file is not formatted correctly.", "Error while importing", MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
break;
|
||||
case ArgumentException:
|
||||
MessageBox.Show("A team member role could not be recognized from the given string.", "Error while importing", MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
break;
|
||||
default:
|
||||
MessageBox.Show(e.Message, "Error while importing", MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
break;
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
Utils.Teams.Add(this);
|
||||
}
|
||||
}
|
||||
|
||||
public string Export
|
||||
{
|
||||
get
|
||||
{
|
||||
StringBuilder sb = new();
|
||||
sb.Append(RoleRevealScreenTitle);
|
||||
sb.Append(';');
|
||||
sb.Append(RoleRevealScreenSubtitle);
|
||||
sb.Append(';');
|
||||
sb.Append(RoleRevealScreenBackgroundColor);
|
||||
sb.Append(';');
|
||||
sb.Append(string.Join(",", TeamMembers));
|
||||
return sb.ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,127 @@
|
||||
<Page x:Class="CustomTeamAssigner.TeamEditorPage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="450" d:DesignWidth="800" FontSize="18"
|
||||
Title="Team Editor">
|
||||
|
||||
<Page.Resources>
|
||||
<Style TargetType="Button">
|
||||
<Setter Property="Background" Value="LightGray"/>
|
||||
<Setter Property="Foreground" Value="Black"/>
|
||||
<Setter Property="FontFamily" Value="Arial"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Padding" Value="10"/>
|
||||
<Setter Property="Margin" Value="10"/>
|
||||
<Setter Property="Width" Value="440"/>
|
||||
<Setter Property="Height" Value="100"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="Button">
|
||||
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="10">
|
||||
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="Gray"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsPressed" Value="True">
|
||||
<Setter Property="Background" Value="DarkGray"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Background" Value="DarkGray"/>
|
||||
<Setter Property="Foreground" Value="Gray"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="CheckBox">
|
||||
<Setter Property="Foreground" Value="LightGray"/>
|
||||
<Setter Property="FontFamily" Value="Arial"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Margin" Value="10"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="TextBlock">
|
||||
<Setter Property="FontFamily" Value="Arial"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Margin" Value="10"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="TextBox">
|
||||
<Setter Property="FontFamily" Value="Arial"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Margin" Value="10"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="ComboBox">
|
||||
<Setter Property="FontFamily" Value="Arial"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Margin" Value="10"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="Label">
|
||||
<Setter Property="Foreground" Value="LightGray"/>
|
||||
<Setter Property="FontFamily" Value="Arial"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Margin" Value="10"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
</Style>
|
||||
</Page.Resources>
|
||||
|
||||
<Grid>
|
||||
<Grid.Background>
|
||||
<ImageBrush ImageSource="bg.jpg"/>
|
||||
</Grid.Background>
|
||||
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="3*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<!-- Team Name -->
|
||||
<Label Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Content="Team Name" FontWeight="Bold" Margin="10" HorizontalAlignment="Left" VerticalAlignment="Center"/>
|
||||
<TextBox Grid.Row="0" Grid.Column="2" x:Name="TeamNameTextBox" Text="Really Cool Team" Width="512" FontWeight="Bold" Margin="10" HorizontalAlignment="Left" VerticalAlignment="Center" MaxLines="1"/>
|
||||
|
||||
<!-- Team Color (with a CheckBox deciding whether to override this) -->
|
||||
<CheckBox Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" x:Name="OverrideColorCheckBox" Content=" Override Team Color" FontWeight="Bold" Margin="10" HorizontalAlignment="Left" VerticalAlignment="Center" Checked="OverrideColorCheck" Unchecked="OverrideColorCheck"/>
|
||||
<TextBox Grid.Row="1" Grid.Column="2" x:Name="TeamColorTextBox" Text="#00ffa5" Width="128" FontWeight="Bold" Margin="10" HorizontalAlignment="Left" VerticalAlignment="Center" IsEnabled="False" MaxLength="9" MaxLines="1"/>
|
||||
|
||||
<!-- Team Display Title (with a CheckBox deciding whether to override this) -->
|
||||
<CheckBox Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" x:Name="OverrideTitleCheckBox" Content=" Override Team Display Title" FontWeight="Bold" Margin="10" HorizontalAlignment="Left" VerticalAlignment="Center" Checked="OverrideTitleCheck" Unchecked="OverrideTitleCheck"/>
|
||||
<TextBox Grid.Row="2" Grid.Column="2" x:Name="TeamTitleTextBox" Text="Teamed" Width="512" FontWeight="Bold" Margin="10" HorizontalAlignment="Left" VerticalAlignment="Center" IsEnabled="False" MaxLines="1"/>
|
||||
|
||||
<!-- Team Display SubTitle (with a CheckBox deciding whether to override this) -->
|
||||
<CheckBox Grid.Row="3" Grid.Column="0" Grid.ColumnSpan="2" x:Name="OverrideSubTitleCheckBox" Content=" Override Team Display Subtitle" FontWeight="Bold" Margin="10" HorizontalAlignment="Left" VerticalAlignment="Center" Checked="OverrideSubTitleCheck" Unchecked="OverrideSubTitleCheck"/>
|
||||
<TextBox Grid.Row="3" Grid.Column="2" x:Name="TeamSubTitleTextBox" Text="You're in a Custom Team!" Width="512" FontWeight="Bold" Margin="10" HorizontalAlignment="Left" VerticalAlignment="Center" IsEnabled="False" MaxLines="1"/>
|
||||
</Grid>
|
||||
</Page>
|
||||
@@ -0,0 +1,29 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
|
||||
namespace CustomTeamAssigner
|
||||
{
|
||||
public partial class TeamEditorPage : Page
|
||||
{
|
||||
public TeamEditorPage()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
void OverrideColorCheck(object sender, RoutedEventArgs e) => TeamColorTextBox.IsEnabled = OverrideColorCheckBox.IsChecked == true;
|
||||
void OverrideTitleCheck(object sender, RoutedEventArgs e) => TeamTitleTextBox.IsEnabled = OverrideTitleCheckBox.IsChecked == true;
|
||||
void OverrideSubTitleCheck(object sender, RoutedEventArgs e) => TeamSubTitleTextBox.IsEnabled = OverrideSubTitleCheckBox.IsChecked == true;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Media;
|
||||
|
||||
namespace CustomTeamAssigner
|
||||
{
|
||||
internal static class Utils
|
||||
{
|
||||
public static HashSet<Team> Teams = [];
|
||||
|
||||
public const string OutputFileName = "CTA_Data.txt";
|
||||
|
||||
public static Color ToColor(this string htmlColor) => (Color)ColorConverter.ConvertFromString(htmlColor);
|
||||
|
||||
public static void Do<T>(this IEnumerable<T> enumerable, Action<T> action)
|
||||
{
|
||||
foreach (var item in enumerable)
|
||||
{
|
||||
action(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.5 MiB |
+388
@@ -0,0 +1,388 @@
|
||||
|
||||
namespace EHR;
|
||||
|
||||
public enum CustomRoles
|
||||
{
|
||||
//Default
|
||||
Crewmate = 0,
|
||||
|
||||
//Impostors (Vanilla)
|
||||
Impostor,
|
||||
Shapeshifter,
|
||||
|
||||
// Vanilla Remakes
|
||||
ImpostorTOHE,
|
||||
ShapeshifterTOHE,
|
||||
|
||||
//Impostors
|
||||
|
||||
Hacker, // Anonymous
|
||||
AntiAdminer,
|
||||
Sans, // Arrogance
|
||||
Bard,
|
||||
Blackmailer,
|
||||
Bomber,
|
||||
BountyHunter,
|
||||
OverKiller, // Butcher
|
||||
Camouflager,
|
||||
Capitalism,
|
||||
Cantankerous,
|
||||
Changeling,
|
||||
Chronomancer,
|
||||
Cleaner,
|
||||
Commander,
|
||||
EvilDiviner, // Consigliere
|
||||
Consort,
|
||||
Councillor,
|
||||
Crewpostor,
|
||||
CursedWolf,
|
||||
Deathpact,
|
||||
Devourer,
|
||||
Disperser,
|
||||
Duellist,
|
||||
Dazzler,
|
||||
Escapee,
|
||||
Eraser,
|
||||
EvilGuesser,
|
||||
EvilTracker,
|
||||
FireWorks,
|
||||
Freezer,
|
||||
Gambler,
|
||||
Gangster,
|
||||
Godfather,
|
||||
Greedier,
|
||||
Hangman,
|
||||
Hitman,
|
||||
Inhibitor,
|
||||
Kamikaze,
|
||||
Kidnapper,
|
||||
Minimalism, // Killing Machine
|
||||
BallLightning, // Lightning
|
||||
Librarian,
|
||||
Lurker,
|
||||
Mafioso,
|
||||
Mastermind,
|
||||
Mafia, // Nemesis
|
||||
SerialKiller, // Mercenary
|
||||
Miner,
|
||||
Morphling,
|
||||
Assassin, // Ninja
|
||||
Nuker,
|
||||
Nullifier,
|
||||
Parasite,
|
||||
Penguin,
|
||||
Puppeteer,
|
||||
QuickShooter,
|
||||
Refugee,
|
||||
RiftMaker,
|
||||
Saboteur,
|
||||
Sapper,
|
||||
Scavenger,
|
||||
Silencer,
|
||||
Sniper,
|
||||
ImperiusCurse, // Soul Catcher
|
||||
Swapster,
|
||||
Swiftclaw,
|
||||
Swooper,
|
||||
Stealth,
|
||||
TimeThief,
|
||||
BoobyTrap, // Trapster
|
||||
Trickster,
|
||||
Twister,
|
||||
Underdog,
|
||||
Undertaker,
|
||||
Vampire,
|
||||
Vindicator,
|
||||
Visionary,
|
||||
Warlock,
|
||||
Wildling,
|
||||
Witch,
|
||||
YinYanger,
|
||||
Zombie,
|
||||
|
||||
//Crewmates (Vanilla)
|
||||
Engineer,
|
||||
GuardianAngel,
|
||||
Scientist,
|
||||
|
||||
// Vanilla Remakes
|
||||
CrewmateTOHE,
|
||||
EngineerTOHE,
|
||||
GuardianAngelTOHE,
|
||||
ScientistTOHE,
|
||||
|
||||
// Crewmate
|
||||
|
||||
Addict,
|
||||
Aid,
|
||||
Alchemist,
|
||||
Altruist,
|
||||
Analyzer,
|
||||
Autocrat,
|
||||
Beacon,
|
||||
Benefactor,
|
||||
Bodyguard,
|
||||
CameraMan,
|
||||
CyberStar, // Celebrity
|
||||
Chameleon,
|
||||
Cleanser,
|
||||
Convener,
|
||||
CopyCat,
|
||||
Bloodhound, // Coroner
|
||||
Crusader,
|
||||
Demolitionist,
|
||||
Deputy,
|
||||
Detective,
|
||||
Detour,
|
||||
Dictator,
|
||||
Doctor,
|
||||
DonutDelivery,
|
||||
Doormaster,
|
||||
DovesOfNeace,
|
||||
Drainer,
|
||||
Druid,
|
||||
Electric,
|
||||
Enigma,
|
||||
Escort,
|
||||
Express,
|
||||
Farseer,
|
||||
Divinator, // Fortune Teller
|
||||
Gaulois,
|
||||
Grenadier,
|
||||
GuessManagerRole,
|
||||
Guardian,
|
||||
Ignitor,
|
||||
Insight,
|
||||
ParityCop, // Inspector
|
||||
Jailor,
|
||||
Judge,
|
||||
Needy, // Lazy Guy
|
||||
Lighter,
|
||||
Lookout,
|
||||
Luckey,
|
||||
Markseeker,
|
||||
Marshall,
|
||||
Mathematician,
|
||||
Mayor,
|
||||
SabotageMaster, // Mechanic
|
||||
Medic,
|
||||
Mediumshiper,
|
||||
Merchant,
|
||||
Monitor,
|
||||
Mole,
|
||||
Monarch,
|
||||
Mortician,
|
||||
NiceEraser,
|
||||
NiceGuesser,
|
||||
NiceHacker,
|
||||
NiceSwapper,
|
||||
Nightmare,
|
||||
Observer,
|
||||
Oracle,
|
||||
Paranoia,
|
||||
Perceiver,
|
||||
Philantropist,
|
||||
Psychic,
|
||||
Rabbit,
|
||||
Randomizer,
|
||||
Ricochet,
|
||||
Sentinel,
|
||||
SecurityGuard,
|
||||
Sheriff,
|
||||
Shiftguard,
|
||||
Snitch,
|
||||
Spiritualist,
|
||||
Speedrunner,
|
||||
SpeedBooster,
|
||||
Spy,
|
||||
SuperStar,
|
||||
TaskManager,
|
||||
Tether,
|
||||
TimeManager,
|
||||
TimeMaster,
|
||||
Tornado,
|
||||
Tracker,
|
||||
Transmitter,
|
||||
Transporter,
|
||||
Tracefinder,
|
||||
Tunneler,
|
||||
Ventguard,
|
||||
Veteran,
|
||||
SwordsMan, // Vigilante
|
||||
Witness,
|
||||
|
||||
//Neutrals
|
||||
|
||||
Agitater,
|
||||
Amnesiac,
|
||||
Arsonist,
|
||||
Bandit,
|
||||
BloodKnight,
|
||||
Bubble,
|
||||
Collector,
|
||||
Deathknight,
|
||||
Gamer, // Demon
|
||||
Doppelganger,
|
||||
Doomsayer,
|
||||
Eclipse,
|
||||
Enderman,
|
||||
Executioner,
|
||||
Totocalcio, // Follower
|
||||
Glitch,
|
||||
God,
|
||||
FFF, // Hater
|
||||
HeadHunter,
|
||||
HexMaster,
|
||||
Hookshot,
|
||||
Imitator,
|
||||
Impartial,
|
||||
Innocent,
|
||||
Jackal,
|
||||
Jester,
|
||||
Jinx,
|
||||
Juggernaut,
|
||||
Konan,
|
||||
Lawyer,
|
||||
Magician,
|
||||
Mario,
|
||||
Maverick,
|
||||
Medusa,
|
||||
Mycologist,
|
||||
Necromancer,
|
||||
Opportunist,
|
||||
Pelican,
|
||||
Pestilence,
|
||||
Phantom,
|
||||
Pickpocket,
|
||||
PlagueBearer,
|
||||
PlagueDoctor,
|
||||
Poisoner,
|
||||
Postman,
|
||||
Predator,
|
||||
Provocateur,
|
||||
Pursuer,
|
||||
Pyromaniac,
|
||||
Reckless,
|
||||
Revolutionist,
|
||||
Ritualist,
|
||||
Romantic,
|
||||
RuthlessRomantic,
|
||||
NSerialKiller, // Serial Killer
|
||||
Sidekick,
|
||||
SoulHunter,
|
||||
Spiritcaller,
|
||||
Sprayer,
|
||||
DarkHide, // Stalker
|
||||
Succubus,
|
||||
Sunnyboy,
|
||||
Terrorist,
|
||||
Tiger,
|
||||
Traitor,
|
||||
Vengeance,
|
||||
VengefulRomantic,
|
||||
Virus,
|
||||
Vulture,
|
||||
Wraith,
|
||||
Werewolf,
|
||||
WeaponMaster,
|
||||
Workaholic,
|
||||
|
||||
//SoloKombat
|
||||
KB_Normal,
|
||||
|
||||
//FFA
|
||||
Killer,
|
||||
|
||||
//MoveAndStop
|
||||
Tasker,
|
||||
|
||||
//HotPotato
|
||||
Potato,
|
||||
|
||||
//H&S
|
||||
Hider,
|
||||
Seeker,
|
||||
Fox,
|
||||
Troll,
|
||||
|
||||
//GM
|
||||
GM,
|
||||
|
||||
// ????
|
||||
Convict,
|
||||
|
||||
|
||||
// Sub-role after 500
|
||||
NotAssigned = 500,
|
||||
Antidote,
|
||||
Asthmatic,
|
||||
Autopsy,
|
||||
Avanger,
|
||||
Bait,
|
||||
Busy,
|
||||
Trapper, // Beartrap
|
||||
Bewilder,
|
||||
Bloodlust,
|
||||
Charmed,
|
||||
Circumvent,
|
||||
Cleansed,
|
||||
Clumsy,
|
||||
Contagious,
|
||||
Damocles,
|
||||
DeadlyQuota,
|
||||
Disco,
|
||||
Diseased,
|
||||
Unreportable, // Disregarded
|
||||
DoubleShot,
|
||||
Egoist,
|
||||
EvilSpirit,
|
||||
Flashman,
|
||||
Fool,
|
||||
Giant,
|
||||
Glow,
|
||||
Gravestone,
|
||||
Guesser,
|
||||
Haste,
|
||||
Haunter, // Ghost role
|
||||
Knighted,
|
||||
LastImpostor,
|
||||
Lazy,
|
||||
Lovers,
|
||||
Loyal,
|
||||
Lucky,
|
||||
Madmate,
|
||||
Magnet,
|
||||
Mare,
|
||||
Mimic,
|
||||
Minion, // Ghost role
|
||||
Mischievous,
|
||||
Necroview,
|
||||
Ntr, // Neptune
|
||||
Nimble,
|
||||
Oblivious,
|
||||
Onbound,
|
||||
Specter, // Ghost role
|
||||
Physicist,
|
||||
Rascal,
|
||||
Reach,
|
||||
Recruit,
|
||||
Rogue,
|
||||
DualPersonality, // Schizophrenic
|
||||
Seer,
|
||||
Sleuth,
|
||||
Stained,
|
||||
Taskcounter,
|
||||
TicketsStealer, // Stealer
|
||||
Stressed,
|
||||
Swift,
|
||||
Sunglasses,
|
||||
Brakar, // Tiebreaker
|
||||
Torch,
|
||||
Truant,
|
||||
Undead,
|
||||
Unlucky,
|
||||
Warden, // Ghost role
|
||||
Watcher,
|
||||
Workhorse,
|
||||
Youtuber
|
||||
}
|
||||
@@ -17,6 +17,12 @@
|
||||
<EmbeddedResource Include=".\Resources\**" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Remove="CTA\**" />
|
||||
<EmbeddedResource Remove="CTA\**" />
|
||||
<None Remove="CTA\**" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Remove="Modules\zqihthf4.eqf~" />
|
||||
<None Remove="resources\modnews\english\EHR.v1.2.0.txt" />
|
||||
@@ -47,4 +53,7 @@
|
||||
<Target Name="Copy" AfterTargets="Build" Condition="'$(AmongUs)' != ''">
|
||||
<Copy SourceFiles="$(OutputPath)$(AssemblyName).dll" DestinationFolder="$(AmongUs)/BepInEx/plugins/" />
|
||||
</Target>
|
||||
<Target Name="Copy" AfterTargets="Build">
|
||||
<Copy SourceFiles="CustomRoles.cs" DestinationFolder="CTA/CustomTeamAssigner/" />
|
||||
</Target>
|
||||
</Project>
|
||||
@@ -626,392 +626,6 @@ public enum Team
|
||||
Crewmate = 4
|
||||
}
|
||||
|
||||
public enum CustomRoles
|
||||
{
|
||||
//Default
|
||||
Crewmate = 0,
|
||||
|
||||
//Impostors (Vanilla)
|
||||
Impostor,
|
||||
Shapeshifter,
|
||||
|
||||
// Vanilla Remakes
|
||||
ImpostorTOHE,
|
||||
ShapeshifterTOHE,
|
||||
|
||||
//Impostors
|
||||
|
||||
Hacker, // Anonymous
|
||||
AntiAdminer,
|
||||
Sans, // Arrogance
|
||||
Bard,
|
||||
Blackmailer,
|
||||
Bomber,
|
||||
BountyHunter,
|
||||
OverKiller, // Butcher
|
||||
Camouflager,
|
||||
Capitalism,
|
||||
Cantankerous,
|
||||
Changeling,
|
||||
Chronomancer,
|
||||
Cleaner,
|
||||
Commander,
|
||||
EvilDiviner, // Consigliere
|
||||
Consort,
|
||||
Councillor,
|
||||
Crewpostor,
|
||||
CursedWolf,
|
||||
Deathpact,
|
||||
Devourer,
|
||||
Disperser,
|
||||
Duellist,
|
||||
Dazzler,
|
||||
Escapee,
|
||||
Eraser,
|
||||
EvilGuesser,
|
||||
EvilTracker,
|
||||
FireWorks,
|
||||
Freezer,
|
||||
Gambler,
|
||||
Gangster,
|
||||
Godfather,
|
||||
Greedier,
|
||||
Hangman,
|
||||
Hitman,
|
||||
Inhibitor,
|
||||
Kamikaze,
|
||||
Kidnapper,
|
||||
Minimalism, // Killing Machine
|
||||
BallLightning, // Lightning
|
||||
Librarian,
|
||||
Lurker,
|
||||
Mafioso,
|
||||
Mastermind,
|
||||
Mafia, // Nemesis
|
||||
SerialKiller, // Mercenary
|
||||
Miner,
|
||||
Morphling,
|
||||
Assassin, // Ninja
|
||||
Nuker,
|
||||
Nullifier,
|
||||
Parasite,
|
||||
Penguin,
|
||||
Puppeteer,
|
||||
QuickShooter,
|
||||
Refugee,
|
||||
RiftMaker,
|
||||
Saboteur,
|
||||
Sapper,
|
||||
Scavenger,
|
||||
Silencer,
|
||||
Sniper,
|
||||
ImperiusCurse, // Soul Catcher
|
||||
Swapster,
|
||||
Swiftclaw,
|
||||
Swooper,
|
||||
Stealth,
|
||||
TimeThief,
|
||||
BoobyTrap, // Trapster
|
||||
Trickster,
|
||||
Twister,
|
||||
Underdog,
|
||||
Undertaker,
|
||||
Vampire,
|
||||
Vindicator,
|
||||
Visionary,
|
||||
Warlock,
|
||||
Wildling,
|
||||
Witch,
|
||||
YinYanger,
|
||||
Zombie,
|
||||
|
||||
//Crewmates (Vanilla)
|
||||
Engineer,
|
||||
GuardianAngel,
|
||||
Scientist,
|
||||
|
||||
// Vanilla Remakes
|
||||
CrewmateTOHE,
|
||||
EngineerTOHE,
|
||||
GuardianAngelTOHE,
|
||||
ScientistTOHE,
|
||||
|
||||
// Crewmate
|
||||
|
||||
Addict,
|
||||
Aid,
|
||||
Alchemist,
|
||||
Altruist,
|
||||
Analyzer,
|
||||
Autocrat,
|
||||
Beacon,
|
||||
Benefactor,
|
||||
Bodyguard,
|
||||
CameraMan,
|
||||
CyberStar, // Celebrity
|
||||
Chameleon,
|
||||
Cleanser,
|
||||
Convener,
|
||||
CopyCat,
|
||||
Bloodhound, // Coroner
|
||||
Crusader,
|
||||
Demolitionist,
|
||||
Deputy,
|
||||
Detective,
|
||||
Detour,
|
||||
Dictator,
|
||||
Doctor,
|
||||
DonutDelivery,
|
||||
Doormaster,
|
||||
DovesOfNeace,
|
||||
Drainer,
|
||||
Druid,
|
||||
Electric,
|
||||
Enigma,
|
||||
Escort,
|
||||
Express,
|
||||
Farseer,
|
||||
Divinator, // Fortune Teller
|
||||
Gaulois,
|
||||
Grenadier,
|
||||
GuessManagerRole,
|
||||
Guardian,
|
||||
Ignitor,
|
||||
Insight,
|
||||
ParityCop, // Inspector
|
||||
Jailor,
|
||||
Judge,
|
||||
Needy, // Lazy Guy
|
||||
Lighter,
|
||||
Lookout,
|
||||
Luckey,
|
||||
Markseeker,
|
||||
Marshall,
|
||||
Mathematician,
|
||||
Mayor,
|
||||
SabotageMaster, // Mechanic
|
||||
Medic,
|
||||
Mediumshiper,
|
||||
Merchant,
|
||||
Monitor,
|
||||
Mole,
|
||||
Monarch,
|
||||
Mortician,
|
||||
NiceEraser,
|
||||
NiceGuesser,
|
||||
NiceHacker,
|
||||
NiceSwapper,
|
||||
Nightmare,
|
||||
Observer,
|
||||
Oracle,
|
||||
Paranoia,
|
||||
Perceiver,
|
||||
Philantropist,
|
||||
Psychic,
|
||||
Rabbit,
|
||||
Randomizer,
|
||||
Ricochet,
|
||||
Sentinel,
|
||||
SecurityGuard,
|
||||
Sheriff,
|
||||
Shiftguard,
|
||||
Snitch,
|
||||
Spiritualist,
|
||||
Speedrunner,
|
||||
SpeedBooster,
|
||||
Spy,
|
||||
SuperStar,
|
||||
TaskManager,
|
||||
Tether,
|
||||
TimeManager,
|
||||
TimeMaster,
|
||||
Tornado,
|
||||
Tracker,
|
||||
Transmitter,
|
||||
Transporter,
|
||||
Tracefinder,
|
||||
Tunneler,
|
||||
Ventguard,
|
||||
Veteran,
|
||||
SwordsMan, // Vigilante
|
||||
Witness,
|
||||
|
||||
//Neutrals
|
||||
|
||||
Agitater,
|
||||
Amnesiac,
|
||||
Arsonist,
|
||||
Bandit,
|
||||
BloodKnight,
|
||||
Bubble,
|
||||
Collector,
|
||||
Deathknight,
|
||||
Gamer, // Demon
|
||||
Doppelganger,
|
||||
Doomsayer,
|
||||
Eclipse,
|
||||
Enderman,
|
||||
Executioner,
|
||||
Totocalcio, // Follower
|
||||
Glitch,
|
||||
God,
|
||||
FFF, // Hater
|
||||
HeadHunter,
|
||||
HexMaster,
|
||||
Hookshot,
|
||||
Imitator,
|
||||
Impartial,
|
||||
Innocent,
|
||||
Jackal,
|
||||
Jester,
|
||||
Jinx,
|
||||
Juggernaut,
|
||||
Konan,
|
||||
Lawyer,
|
||||
Magician,
|
||||
Mario,
|
||||
Maverick,
|
||||
Medusa,
|
||||
Mycologist,
|
||||
Necromancer,
|
||||
Opportunist,
|
||||
Pelican,
|
||||
Pestilence,
|
||||
Phantom,
|
||||
Pickpocket,
|
||||
PlagueBearer,
|
||||
PlagueDoctor,
|
||||
Poisoner,
|
||||
Postman,
|
||||
Predator,
|
||||
Provocateur,
|
||||
Pursuer,
|
||||
Pyromaniac,
|
||||
Reckless,
|
||||
Revolutionist,
|
||||
Ritualist,
|
||||
Romantic,
|
||||
RuthlessRomantic,
|
||||
NSerialKiller, // Serial Killer
|
||||
Sidekick,
|
||||
SoulHunter,
|
||||
Spiritcaller,
|
||||
Sprayer,
|
||||
DarkHide, // Stalker
|
||||
Succubus,
|
||||
Sunnyboy,
|
||||
Terrorist,
|
||||
Tiger,
|
||||
Traitor,
|
||||
Vengeance,
|
||||
VengefulRomantic,
|
||||
Virus,
|
||||
Vulture,
|
||||
Wraith,
|
||||
Werewolf,
|
||||
WeaponMaster,
|
||||
Workaholic,
|
||||
|
||||
//SoloKombat
|
||||
KB_Normal,
|
||||
|
||||
//FFA
|
||||
Killer,
|
||||
|
||||
//MoveAndStop
|
||||
Tasker,
|
||||
|
||||
//HotPotato
|
||||
Potato,
|
||||
|
||||
//H&S
|
||||
Hider,
|
||||
Seeker,
|
||||
Fox,
|
||||
Troll,
|
||||
|
||||
//GM
|
||||
GM,
|
||||
|
||||
// ????
|
||||
Convict,
|
||||
|
||||
|
||||
// Sub-role after 500
|
||||
NotAssigned = 500,
|
||||
Antidote,
|
||||
Asthmatic,
|
||||
Autopsy,
|
||||
Avanger,
|
||||
Bait,
|
||||
Busy,
|
||||
Trapper, // Beartrap
|
||||
Bewilder,
|
||||
Bloodlust,
|
||||
Charmed,
|
||||
Circumvent,
|
||||
Cleansed,
|
||||
Clumsy,
|
||||
Contagious,
|
||||
Damocles,
|
||||
DeadlyQuota,
|
||||
Disco,
|
||||
Diseased,
|
||||
Unreportable, // Disregarded
|
||||
DoubleShot,
|
||||
Egoist,
|
||||
EvilSpirit,
|
||||
Flashman,
|
||||
Fool,
|
||||
Giant,
|
||||
Glow,
|
||||
Gravestone,
|
||||
Guesser,
|
||||
Haste,
|
||||
Haunter, // Ghost role
|
||||
Knighted,
|
||||
LastImpostor,
|
||||
Lazy,
|
||||
Lovers,
|
||||
Loyal,
|
||||
Lucky,
|
||||
Madmate,
|
||||
Magnet,
|
||||
Mare,
|
||||
Mimic,
|
||||
Minion, // Ghost role
|
||||
Mischievous,
|
||||
Necroview,
|
||||
Ntr, // Neptune
|
||||
Nimble,
|
||||
Oblivious,
|
||||
Onbound,
|
||||
Specter, // Ghost role
|
||||
Physicist,
|
||||
Rascal,
|
||||
Reach,
|
||||
Recruit,
|
||||
Rogue,
|
||||
DualPersonality, // Schizophrenic
|
||||
Seer,
|
||||
Sleuth,
|
||||
Stained,
|
||||
Taskcounter,
|
||||
TicketsStealer, // Stealer
|
||||
Stressed,
|
||||
Swift,
|
||||
Sunglasses,
|
||||
Brakar, // Tiebreaker
|
||||
Torch,
|
||||
Truant,
|
||||
Undead,
|
||||
Unlucky,
|
||||
Warden, // Ghost role
|
||||
Watcher,
|
||||
Workhorse,
|
||||
Youtuber
|
||||
}
|
||||
|
||||
#pragma warning disable IDE0079 // Remove unnecessary suppression
|
||||
[SuppressMessage("ReSharper", "UnusedMember.Global")]
|
||||
#pragma warning restore IDE0079 // Remove unnecessary suppression
|
||||
|
||||
Reference in new issue
Block a user