# Conflicts: # .github/workflows/publish.yml # Content.Client/Clothing/ClientClothingSystem.cs # Content.Client/Clothing/Systems/ChameleonClothingSystem.cs # Content.Client/Fax/UI/FaxWindow.xaml # Content.Client/Ghost/GhostSystem.cs # Content.Client/Holiday/HolidaySystem.cs # Content.Client/Humanoid/HumanoidAppearanceSystem.cs # Content.Client/Lobby/UI/Loadouts/LoadoutWindow.xaml.cs # Content.Client/Lobby/UI/LobbyGui.xaml # Content.Client/Lobby/UI/LobbyGui.xaml.cs # Content.Client/Mech/MechSystem.cs # Content.Client/Stealth/StealthSystem.cs # Content.Client/Weapons/Ranged/Systems/GunSystem.cs # Content.Server.Database/Migrations/Sqlite/SqliteServerDbContextModelSnapshot.cs # Content.Server/Bed/BedSystem.cs # Content.Server/Body/Systems/BodySystem.cs # Content.Server/Body/Systems/RespiratorSystem.cs # Content.Server/Cargo/Systems/CargoSystem.Orders.cs # Content.Server/Communications/CommunicationsConsoleComponent.cs # Content.Server/EntityEffects/Effects/AreaReactionEffect.cs # Content.Server/EntityEffects/Effects/MakeSentient.cs # Content.Server/EntityEffects/Effects/PlantMetabolism/PlantAdjustPests.cs # Content.Server/EntityEffects/Effects/PlantMetabolism/PlantAdjustToxins.cs # Content.Server/EntityEffects/Effects/PlantMetabolism/PlantAdjustWeeds.cs # Content.Server/EntityEffects/Effects/PlantMutateGases.cs # Content.Server/Fluids/EntitySystems/AbsorbentSystem.cs # Content.Server/GameTicking/GameTicker.Spawning.cs # Content.Server/GameTicking/Rules/NukeopsRuleSystem.cs # Content.Server/IoC/ServerContentIoC.cs # Content.Server/Nutrition/EntitySystems/FoodSystem.cs # Content.Server/Power/EntitySystems/PowerNetSystem.cs # Content.Server/Preferences/Managers/ServerPreferencesManager.cs # Content.Server/RoundEnd/RoundEndSystem.cs # Content.Server/Shuttles/Systems/EmergencyShuttleSystem.cs # Content.Server/Station/Systems/StationSpawningSystem.cs # Content.Server/VoiceMask/VoiceMaskSystem.cs # Content.Server/Weapons/Ranged/Systems/GunSystem.cs # Content.Shared/Bed/Components/HealOnBuckleComponent.cs # Content.Shared/Clothing/EntitySystems/ClothingSystem.cs # Content.Shared/EntityEffects/Effects/ExplosionReactionEffect.cs # Content.Shared/Inventory/InventorySystem.Relay.cs # Content.Shared/Item/ItemToggle/Components/ComponentTogglerComponent.cs # Content.Shared/Preferences/HumanoidCharacterProfile.cs # Content.Shared/Preferences/Loadouts/RoleLoadout.cs # Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs # Content.Shared/Wieldable/SharedWieldableSystem.cs # Resources/Audio/Machines/attributions.yml # Resources/Locale/en-US/_strings/atmos/plaque-component.ftl # Resources/Locale/en-US/_strings/chat/chat-channel.ftl # Resources/Locale/en-US/_strings/components/screen-component.ftl # Resources/Locale/en-US/_strings/inventory/components/slot-block-component.ftl # Resources/Locale/en-US/_strings/mass-media/news-discord.ftl # Resources/Locale/en-US/_strings/objectives/commands/stripall.ftl # Resources/Locale/en-US/_strings/salvage/job-board.ftl # Resources/Locale/en-US/_strings/ui/spray-painter-window.ftl # Resources/Locale/en-US/_strings/ui/turret-controls.ftl # Resources/Maps/_Sunrise/Station/box.yml # Resources/Prototypes/Access/misc.yml # Resources/Prototypes/Catalog/Fills/Boxes/emergency.yml # Resources/Prototypes/Catalog/Fills/Lockers/engineer.yml # Resources/Prototypes/Catalog/Fills/Lockers/heads.yml # Resources/Prototypes/Catalog/Fills/Lockers/service.yml # Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml # Resources/Prototypes/Entities/Clothing/Head/helmets.yml # Resources/Prototypes/Entities/Clothing/Masks/masks.yml # Resources/Prototypes/Entities/Clothing/OuterClothing/hardsuits.yml # Resources/Prototypes/Entities/Markers/Spawners/mobs.yml # Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml # Resources/Prototypes/Entities/Mobs/NPCs/animals.yml # Resources/Prototypes/Entities/Mobs/NPCs/regalrat.yml # Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml # Resources/Prototypes/Entities/Mobs/Player/dragon.yml # Resources/Prototypes/Entities/Mobs/Player/silicon.yml # Resources/Prototypes/Entities/Mobs/Species/arachnid.yml # Resources/Prototypes/Entities/Mobs/Species/moth.yml # Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml # Resources/Prototypes/Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml # Resources/Prototypes/LootTables/suspicion_loot_table.yml # Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml # Resources/Prototypes/Reagents/medicine.yml # Resources/Prototypes/Recipes/Lathes/Packs/science.yml # Resources/Prototypes/Recipes/Lathes/medical.yml # Resources/Prototypes/SoundCollections/NukeMusic.yml # Resources/ServerInfo/Guidebook/Cargo/Salvage.xml # Resources/Textures/Clothing/Hands/Gloves/KnuckleDusters/brassknuckleduster.rsi/equipped-OUTERCLOTHING-reptilian.png # Resources/Textures/Clothing/OuterClothing/Hardsuits/basic.rsi/meta.json # Resources/Textures/Clothing/OuterClothing/Suits/eva.rsi/meta.json # Resources/Textures/Clothing/OuterClothing/Suits/eva_emergency.rsi/meta.json # Resources/Textures/Clothing/OuterClothing/Suits/eva_prisoner.rsi/meta.json # Resources/Textures/Effects/speech.rsi/alien3.png # Resources/Textures/Effects/speech.rsi/alienroyal3.png # Resources/Textures/Effects/speech.rsi/default3.png # Resources/Textures/Effects/speech.rsi/guardian3.png # Resources/Textures/Effects/speech.rsi/holo3.png # Resources/Textures/Effects/speech.rsi/lawyer3.png # Resources/Textures/Effects/speech.rsi/lizard3.png # Resources/Textures/Effects/speech.rsi/meta.json # Resources/Textures/Effects/speech.rsi/moth3.png # Resources/Textures/Effects/speech.rsi/robot3.png # Resources/Textures/Effects/speech.rsi/slime3.png # Resources/Textures/Effects/speech.rsi/spider3.png # Resources/Textures/Effects/speech.rsi/syndibot3.png # Resources/Textures/Interface/Misc/job_icons.rsi/meta.json # Resources/Textures/Mobs/Silicon/chassis.rsi/meta.json # Resources/Textures/Mobs/Species/Reptilian/parts.rsi/head_f.png # Resources/Textures/Mobs/Species/Reptilian/parts.rsi/head_m.png # Resources/Textures/Objects/Misc/id_cards.rsi/meta.json # Resources/Textures/Structures/Doors/Airlocks/Glass/external.rsi/emergency_unlit.png # Resources/Textures/Structures/Piping/disposal.rsi/meta.json # Resources/Textures/Tiles/attributions.yml # Resources/Textures/Tiles/steel_dirty.png # Resources/migration.yml # runclient-Tools.bat # runclient.bat
138 lines
7.5 KiB
C#
138 lines
7.5 KiB
C#
using Content.Shared.Input;
|
|
using Robust.Shared.Input;
|
|
|
|
namespace Content.Client.Input
|
|
{
|
|
/// <summary>
|
|
/// Contains a helper function for setting up all content
|
|
/// contexts, and modifying existing engine ones.
|
|
/// </summary>
|
|
public static class ContentContexts
|
|
{
|
|
public static void SetupContexts(IInputContextContainer contexts)
|
|
{
|
|
var common = contexts.GetContext("common");
|
|
common.AddFunction(ContentKeyFunctions.FocusChat);
|
|
common.AddFunction(ContentKeyFunctions.FocusLocalChat);
|
|
common.AddFunction(ContentKeyFunctions.FocusEmote);
|
|
common.AddFunction(ContentKeyFunctions.FocusWhisperChat);
|
|
common.AddFunction(ContentKeyFunctions.FocusRadio);
|
|
common.AddFunction(ContentKeyFunctions.FocusLOOC);
|
|
common.AddFunction(ContentKeyFunctions.FocusOOC);
|
|
common.AddFunction(ContentKeyFunctions.FocusAdminChat);
|
|
common.AddFunction(ContentKeyFunctions.FocusConsoleChat);
|
|
common.AddFunction(ContentKeyFunctions.FocusDeadChat);
|
|
common.AddFunction(ContentKeyFunctions.CycleChatChannelForward);
|
|
common.AddFunction(ContentKeyFunctions.CycleChatChannelBackward);
|
|
common.AddFunction(ContentKeyFunctions.EscapeContext);
|
|
common.AddFunction(ContentKeyFunctions.ExamineEntity);
|
|
common.AddFunction(ContentKeyFunctions.OpenAHelp);
|
|
common.AddFunction(ContentKeyFunctions.TakeScreenshot);
|
|
common.AddFunction(ContentKeyFunctions.TakeScreenshotNoUI);
|
|
common.AddFunction(ContentKeyFunctions.ToggleFullscreen);
|
|
common.AddFunction(ContentKeyFunctions.MoveStoredItem);
|
|
common.AddFunction(ContentKeyFunctions.RotateStoredItem);
|
|
common.AddFunction(ContentKeyFunctions.SaveItemLocation);
|
|
common.AddFunction(ContentKeyFunctions.Point);
|
|
common.AddFunction(ContentKeyFunctions.ZoomOut);
|
|
common.AddFunction(ContentKeyFunctions.ZoomIn);
|
|
common.AddFunction(ContentKeyFunctions.ResetZoom);
|
|
common.AddFunction(ContentKeyFunctions.InspectEntity);
|
|
common.AddFunction(ContentKeyFunctions.ToggleRoundEndSummaryWindow);
|
|
|
|
// Not in engine, because engine cannot check for sanbox/admin status before starting placement.
|
|
common.AddFunction(ContentKeyFunctions.EditorCopyObject);
|
|
|
|
// Not in engine because the engine doesn't understand what a flipped object is
|
|
common.AddFunction(ContentKeyFunctions.EditorFlipObject);
|
|
|
|
// Not in engine so that the RCD can rotate objects
|
|
common.AddFunction(EngineKeyFunctions.EditorRotateObject);
|
|
|
|
var human = contexts.GetContext("human");
|
|
human.AddFunction(EngineKeyFunctions.MoveUp);
|
|
human.AddFunction(EngineKeyFunctions.MoveDown);
|
|
human.AddFunction(EngineKeyFunctions.MoveLeft);
|
|
human.AddFunction(EngineKeyFunctions.MoveRight);
|
|
human.AddFunction(EngineKeyFunctions.Walk);
|
|
human.AddFunction(ContentKeyFunctions.SwapHands);
|
|
human.AddFunction(ContentKeyFunctions.SwapHandsReverse);
|
|
human.AddFunction(ContentKeyFunctions.Drop);
|
|
human.AddFunction(ContentKeyFunctions.UseItemInHand);
|
|
human.AddFunction(ContentKeyFunctions.AltUseItemInHand);
|
|
human.AddFunction(ContentKeyFunctions.OpenCharacterMenu);
|
|
human.AddFunction(ContentKeyFunctions.OpenEmotesMenu);
|
|
human.AddFunction(ContentKeyFunctions.ActivateItemInWorld);
|
|
human.AddFunction(ContentKeyFunctions.ThrowItemInHand);
|
|
human.AddFunction(ContentKeyFunctions.AltActivateItemInWorld);
|
|
human.AddFunction(ContentKeyFunctions.TryPullObject);
|
|
human.AddFunction(ContentKeyFunctions.MovePulledObject);
|
|
human.AddFunction(ContentKeyFunctions.ReleasePulledObject);
|
|
human.AddFunction(ContentKeyFunctions.OpenCraftingMenu);
|
|
human.AddFunction(ContentKeyFunctions.OpenInventoryMenu);
|
|
human.AddFunction(ContentKeyFunctions.SmartEquipBackpack);
|
|
human.AddFunction(ContentKeyFunctions.SmartEquipBelt);
|
|
human.AddFunction(ContentKeyFunctions.OpenBackpack);
|
|
human.AddFunction(ContentKeyFunctions.OpenBelt);
|
|
human.AddFunction(ContentKeyFunctions.MouseMiddle);
|
|
human.AddFunction(ContentKeyFunctions.RotateObjectClockwise);
|
|
human.AddFunction(ContentKeyFunctions.RotateObjectCounterclockwise);
|
|
human.AddFunction(ContentKeyFunctions.FlipObject);
|
|
human.AddFunction(ContentKeyFunctions.ArcadeUp);
|
|
human.AddFunction(ContentKeyFunctions.ArcadeDown);
|
|
human.AddFunction(ContentKeyFunctions.ArcadeLeft);
|
|
human.AddFunction(ContentKeyFunctions.ArcadeRight);
|
|
human.AddFunction(ContentKeyFunctions.Arcade1);
|
|
human.AddFunction(ContentKeyFunctions.Arcade2);
|
|
human.AddFunction(ContentKeyFunctions.Arcade3);
|
|
|
|
// Sunrise-Start
|
|
human.AddFunction(ContentKeyFunctions.ToggleStanding);
|
|
human.AddFunction(ContentKeyFunctions.CockGun);
|
|
human.AddFunction(ContentKeyFunctions.Jump);
|
|
human.AddFunction(ContentKeyFunctions.Reloading);
|
|
// Sunrise-End
|
|
|
|
// actions should be common (for ghosts, mobs, etc)
|
|
common.AddFunction(ContentKeyFunctions.OpenActionsMenu);
|
|
|
|
foreach (var boundKey in ContentKeyFunctions.GetHotbarBoundKeys())
|
|
{
|
|
common.AddFunction(boundKey);
|
|
}
|
|
|
|
var aghost = contexts.New("aghost", "common");
|
|
aghost.AddFunction(EngineKeyFunctions.MoveUp);
|
|
aghost.AddFunction(EngineKeyFunctions.MoveDown);
|
|
aghost.AddFunction(EngineKeyFunctions.MoveLeft);
|
|
aghost.AddFunction(EngineKeyFunctions.MoveRight);
|
|
aghost.AddFunction(EngineKeyFunctions.Walk);
|
|
aghost.AddFunction(ContentKeyFunctions.SwapHands);
|
|
aghost.AddFunction(ContentKeyFunctions.SwapHandsReverse);
|
|
aghost.AddFunction(ContentKeyFunctions.Drop);
|
|
aghost.AddFunction(ContentKeyFunctions.UseItemInHand);
|
|
aghost.AddFunction(ContentKeyFunctions.CockGun);
|
|
aghost.AddFunction(ContentKeyFunctions.AltUseItemInHand);
|
|
aghost.AddFunction(ContentKeyFunctions.ActivateItemInWorld);
|
|
aghost.AddFunction(ContentKeyFunctions.ThrowItemInHand);
|
|
aghost.AddFunction(ContentKeyFunctions.AltActivateItemInWorld);
|
|
aghost.AddFunction(ContentKeyFunctions.TryPullObject);
|
|
aghost.AddFunction(ContentKeyFunctions.MovePulledObject);
|
|
aghost.AddFunction(ContentKeyFunctions.ReleasePulledObject);
|
|
|
|
var ghost = contexts.New("ghost", "human");
|
|
ghost.AddFunction(EngineKeyFunctions.MoveUp);
|
|
ghost.AddFunction(EngineKeyFunctions.MoveDown);
|
|
ghost.AddFunction(EngineKeyFunctions.MoveLeft);
|
|
ghost.AddFunction(EngineKeyFunctions.MoveRight);
|
|
ghost.AddFunction(EngineKeyFunctions.Walk);
|
|
|
|
common.AddFunction(ContentKeyFunctions.OpenEntitySpawnWindow);
|
|
common.AddFunction(ContentKeyFunctions.OpenSandboxWindow);
|
|
common.AddFunction(ContentKeyFunctions.OpenTileSpawnWindow);
|
|
common.AddFunction(ContentKeyFunctions.OpenDecalSpawnWindow);
|
|
common.AddFunction(ContentKeyFunctions.OpenAdminMenu);
|
|
common.AddFunction(ContentKeyFunctions.OpenGuidebook);
|
|
}
|
|
}
|
|
}
|