예제 #1
0
 public EdgeworkComponentSolver(TwitchModule module) :
     base(module)
 {
     _component = module.BombComponent.GetComponent(ComponentType);
     _buttons   = (KMSelectable[])ButtonsField.GetValue(_component);
     ModInfo    = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "Press an answer using !{0} press left. Answers can be referred to numbered from left to right. They can also be referred to by their position.");
 }
예제 #2
0
 public SeaShellsComponentSolver(TwitchModule module) :
     base(module)
 {
     _component = module.BombComponent.GetComponent(ComponentType);
     _buttons   = (KMSelectable[])ButtonsField.GetValue(_component);
     ModInfo    = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "Press buttons by their labels by typing !{0} label alar llama. You can submit partial text as long it only matches one button. Press buttons by their position using !{0} position 3 5 2 1 4. NOTE: Each button press is separated by a space so typing \"burglar alarm\" will press a button twice.");
 }
 public ForeignExchangeRatesComponentSolver(TwitchModule module) :
     base(module)
 {
     _component = module.BombComponent.GetComponent(ComponentType);
     _buttons   = (MonoBehaviour[])ButtonsField.GetValue(module.BombComponent.GetComponent(ComponentType));
     ModInfo    = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "Solve the module with !{0} press ML. Positions are TL, TM, TR, ML, MM, MR, BL, BM, BR.");
 }
    public SpeakEnglishComponentSolver(TwitchModule module)
        : base(module)
    {
        object component = module.BombComponent.GetComponent(ComponentType);

        _buttons = (List <KMSelectable>)ButtonsField.GetValue(component);
        ModInfo  = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "Press the top button with !{0} press top.");
    }
 public MurderComponentSolver(TwitchModule module) :
     base(module)
 {
     _component = module.BombComponent.GetComponent(ComponentType);
     _buttons   = (KMSelectable[])ButtonsField.GetValue(_component);
     _display   = (TextMesh[])DisplayField.GetValue(_component);
     ModInfo    = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "Cycle the options with !{0} cycle or !{0} cycle people (also weapons and rooms). Make an accusation with !{0} It was Peacock, with the candlestick, in the kitchen. Or you can set the options individually, and accuse with !{0} accuse.");
 }
    public NeedyMathComponentSolver(TwitchModule module)
        : base(module)
    {
        object component = module.BombComponent.GetComponent(ComponentType);

        _buttons = (KMSelectable[])ButtonsField.GetValue(component);
        ModInfo  = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "Submit an answer with !{0} submit -47.");
    }
예제 #7
0
    public FlavorTextComponentSolver(TwitchModule module)
        : base(module)
    {
        object component = module.BombComponent.GetComponent(ComponentType);

        _buttons = (KMSelectable[])ButtonsField.GetValue(component);
        ModInfo  = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "Press the button labeled Y with !{0} y. Press the button labeled N with !{0} n.");
    }
예제 #8
0
    public ErrorCodesComponentSolver(TwitchModule module) :
        base(module)
    {
        object component = module.BombComponent.GetComponent(ComponentType);

        _buttons = (KMSelectable[])ButtonsField.GetValue(component);
        _submit  = (KMSelectable)SendField.GetValue(component);
        ModInfo  = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "Submit a decimal, octal, hexidecimal, or binary value using !{0} submit 00010100.");
    }
    public ThirdBaseComponentSolver(TwitchModule module) :
        base(module)
    {
        object component = module.BombComponent.GetComponent(ComponentType);

        _buttons = (KMSelectable[])ButtonsField.GetValue(component);
        _phrase  = (string[])PhraseField.GetValue(component);
        ModInfo  = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "Press a button with !{0} z0s8. Word must match the button as it would appear if the module was the right way up. Not case sensitive.");
    }
    public TwoBitsComponentSolver(TwitchModule module) :
        base(module)
    {
        _c = module.BombComponent.GetComponent(ComponentSolverType);

        _submit  = (MonoBehaviour)SubmitButtonField.GetValue(_c);
        _query   = (MonoBehaviour)QueryButtonField.GetValue(_c);
        _buttons = (MonoBehaviour[])ButtonsField.GetValue(_c);
        ModInfo  = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "Query the answer with !{0} press K T query. Submit the answer with !{0} press G Z submit.");
    }
    public ShapeShiftComponentSolver(TwitchModule module) :
        base(module)
    {
        _component = module.BombComponent.GetComponent(ComponentType);
        _buttons   = (KMSelectable[])ButtonsField.GetValue(_component);
        ModInfo    = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "Submit your answer with !{0} submit point round. Reset to initial state with !{0} reset. Valid shapes: flat, point, round and ticket.");

        if (module.BombComponent.gameObject.activeInHierarchy)
        {
            module.BombComponent.StartCoroutine(GetDisplay());
        }
    }
    public TranslatedWhosOnFirstComponentSolver(TwitchModule module) :
        base(module)
    {
        Component component = module.BombComponent.GetComponent(ComponentType);

        _buttons = (KMSelectable[])ButtonsField.GetValue(component);
        ModInfo  = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "!{0} what? [press the button that says \"WHAT?\"] | !{0} press 3 [press the third button in english reading order] | The phrase must match exactly | Not case sensitive | If the language used asks for pressing a literally blank button, use \"!{0} literally blank\"").Clone();

        LanguageCode = TranslatedModuleHelper.GetLanguageCode(component, ComponentType);
        ModInfo.moduleDisplayName = $"Who's on First Translated{TranslatedModuleHelper.GetModuleDisplayNameAddon(component, ComponentType)}";
        Module.HeaderText         = ModInfo.moduleDisplayName;
    }
예제 #13
0
 public ExtendedPasswordComponentSolver(TwitchModule module) :
     base(module, "ExtendedPassword")
 {
     ModInfo  = ComponentSolverFactory.GetModuleInfo(GetModuleType(), "!{0} cycle 6 [cycle through the letters in column 6] | !{0} cycle [cycle all columns] | !{0} toggle [move all columns down one letter] | !{0} lambda [try to submit a word]");
     _buttons = (KMSelectable[])ButtonsField.GetValue(module.BombComponent.GetComponent(ComponentType));
 }
 public MurderComponentSolver(TwitchModule module) :
     base(module, "MurderModule", "Cycle the options with !{0} cycle or !{0} cycle people (also weapons and rooms). Make an accusation with !{0} It was Peacock, with the candlestick, in the kitchen. Or you can set the options individually, and accuse with !{0} accuse.")
 {
     _buttons = (KMSelectable[])ButtonsField.GetValue(_component);
     _display = (TextMesh[])DisplayField.GetValue(_component);
 }