private static Bot CreateBot(DeviceMessenger msg, DeviceType type) { switch (type) { case DeviceType.NintendoSwitch: return(new BotSwitch(msg)); case DeviceType.Nintendo3DS: return(new Bot3DS(msg)); default: return(null); } }
public static object GetTranslator(DeviceMessenger msg) { switch (msg) { case NTRMessenger n: return(new NTRTranslator(n)); case AMSMessenger a: return(new AMSTranslator(a)); case CitraMessenger c: return(new CitraTranslator(c)); default: throw new ArgumentException($"{nameof(msg.GetType)} does not have a C# communication API."); } }
public AMSTranslator(DeviceMessenger m) => Messenger = (AMSMessenger)m;
public NTRTranslator(DeviceMessenger m) { Messenger = (NTRMessenger)m; Log = Messenger.Logger; }
public Bot3DS(DeviceMessenger msg) : base(msg) { Log($"Created new {nameof(Bot3DS)} from {msg.Summary}"); }
protected Bot(DeviceMessenger msg) { Messenger = msg; Translator = MessengerUtil.GetTranslator(msg); }
public CitraTranslator(DeviceMessenger m) => Messenger = m;