Пример #1
0
 protected void _Init(BeamUserSettings settings)
 {
     fe   = new BeamCliFrontend(settings);
     bgn  = new BeamGameNet(); // TODO: config/settings?
     appl = new BeamApplication(bgn, fe);
     appl.Start(settings.startMode);
 }
Пример #2
0
 // Start is called before the first frame update
 public BeamCliFrontend(BeamUserSettings startupSettings)
 {
     _feModeHelper = new BeamCliModeHelper(this);
     feBikes       = new Dictionary <string, FrontendBike>();
     userSettings  = startupSettings;
     logger        = UniLogger.GetLogger("Frontend");
 }
Пример #3
0
        public object SettingByName(BeamUserSettings s, string name)
        {
            Type      myType = typeof(BeamUserSettings);
            FieldInfo fi     = myType.GetField(name);

            return(fi.GetValue(s));
        }
Пример #4
0
        static void Main(string[] args)
        {
            BeamUserSettings settings = GetSettings(args);

            UniLogger.DefaultLevel = UniLogger.LevelFromName(settings.defaultLogLevel);
            UniLogger.SetupLevels(settings.logLevels);
            CliDriver drv = new CliDriver();

            drv.Run(settings);
        }
Пример #5
0
    // Start is called before the first frame update
    void Start()
    {
        userSettings = UserSettingsMgr.Load(kSettingsFileBaseName);
        //userSettings = BeamUserSettings.CreateDefault();
        userSettings.localPlayerCtrlType = BikeFactory.LocalPlayerCtrl; // Kinda hackly

        mainObj       = BeamMain.GetInstance();
        _feModeHelper = new BeamFeModeHelper(mainObj);
        feBikes       = new Dictionary <string, GameObject>();
        logger        = UniLogger.GetLogger("Frontend");
    }
Пример #6
0
    public void LoadAndShow()
    {
        BeamMain         mainObj  = BeamMain.GetInstance();
        BeamUserSettings settings = mainObj.frontend.GetUserSettings();

        screenNameField.GetComponent <TMP_InputField>().text    = settings.screenName;
        p2pConnectionField.GetComponent <TMP_InputField>().text = settings.p2pConnectionString;
        ethNodeField.GetComponent <TMP_InputField>().text       = settings.ethNodeUrl;
        ethAcctField.GetComponent <TMP_InputField>().text       = settings.ethAcct;
        gameIdField.GetComponent <TMP_InputField>().text        =
            settings.tempSettings.ContainsKey("gameId") ? settings.tempSettings["gameId"] : "";

        UserSettingsMgr.Save(settings);

        moveOnScreen();
    }
Пример #7
0
        protected static BeamUserSettings GetSettings(string[] args)
        {
            BeamUserSettings settings = UserSettingsMgr.Load();

            Parser.Default.ParseArguments <CliOptions>(args)
            .WithParsed <CliOptions>(o =>
            {
                if (o.Settings != null)
                {
                    settings = UserSettingsMgr.Load(o.Settings);
                }

                if (o.ForceDefaultSettings)
                {
                    settings = BeamUserSettings.CreateDefault();
                }

                if (o.ThrowOnError)
                {
                    UniLogger.DefaultThrowOnError = true;
                }

                if (o.DefLogLvl != null)
                {
                    settings.defaultLogLevel = o.DefLogLvl;
                }

                if (o.GameId != null)
                {
                    settings.tempSettings["gameId"] = o.GameId;
                }

                if (o.StartMode != -1)
                {
                    settings.startMode = o.StartMode;
                }

                // TODO: would rather have the frontend implmentation determine this somehow
                if (o.BikeCtrl != null)
                {
                    settings.localPlayerCtrlType = o.BikeCtrl;
                }
            });

            UserSettingsMgr.Save(settings);
            return(settings);
        }
Пример #8
0
    public void SaveAndHide()
    {
        BeamMain         mainObj  = BeamMain.GetInstance();
        BeamUserSettings settings = mainObj.frontend.GetUserSettings();

        settings.screenName          = screenNameField.GetComponent <TMP_InputField>().text;
        settings.p2pConnectionString = p2pConnectionField.GetComponent <TMP_InputField>().text;
        settings.ethNodeUrl          = ethNodeField.GetComponent <TMP_InputField>().text;
        settings.ethAcct             = ethAcctField.GetComponent <TMP_InputField>().text;
        string gameId = gameIdField.GetComponent <TMP_InputField>().text;

        if (gameId != "")
        {
            settings.tempSettings["gameId"] = gameId;
        }

        UserSettingsMgr.Save(settings);

        moveOffScreen();
    }
Пример #9
0
        public void CliProgram_GetSettings(string argsString, string settingName, object val)
        {
            var args = argsString.Split(',');
            BeamUserSettings sets = WrappedProgram.DoGetSettings(args);

            Assert.That(sets.version, Is.EqualTo(UserSettingsMgr.currentVersion));

            switch (settingName)
            {
            case "gameName":
                Assert.That(sets.tempSettings["gameName"], Is.EqualTo(val));
                break;

            case "DefaultThrowOnError":
                Assert.That(UniLogger.DefaultThrowOnError, Is.EqualTo(val));
                break;

            default:
                Assert.That(SettingByName(sets, settingName), Is.EqualTo(val));
                break;
            }
        }
Пример #10
0
 public IntBeamCliFrontend(BeamUserSettings startupSettings) : base(startupSettings)
 {
 }
Пример #11
0
        protected static BeamUserSettings GetSettings(string[] args)
        {
            BeamUserSettings settings = UserSettingsMgr.Load();

            Parser.Default.ParseArguments <CliOptions>(args)
            .WithParsed <CliOptions>(o =>
            {
                if (o.Settings != null)
                {
                    settings = UserSettingsMgr.Load(o.Settings);
                }

                if (o.ForceDefaultSettings)
                {
                    settings = BeamUserSettings.CreateDefault();
                }

                if (o.ThrowOnError)
                {
                    UniLogger.DefaultThrowOnError = true;
                }

                if (o.DefLogLvl != null)
                {
                    settings.defaultLogLevel = o.DefLogLvl;
                }

                if (o.NetName != null)
                {
                    settings.apianNetworkName = o.NetName;
                }

                if (o.GameName != null)
                {
                    settings.tempSettings["gameName"] = o.GameName;
                }

                if (o.GroupType != null)
                {
                    settings.tempSettings["groupType"] = o.GroupType;
                }

                if (o.StartMode != -1)
                {
                    settings.startMode = o.StartMode;
                }

                // TODO: would rather have the frontend implmentation determine this somehow
                if (o.BikeCtrl != null)
                {
                    settings.localPlayerCtrlType = o.BikeCtrl;
                }
            }).WithNotParsed(o =>
            {
                // --help, --version, or any error results in this getting called
                settings = null;
            });

            if (settings != null)
            {
                UserSettingsMgr.Save(settings);
            }
            return(settings);
        }
Пример #12
0
 public void Run(BeamUserSettings settings)
 {
     _Init(settings);
     LoopUntilDone();
 }
Пример #13
0
 public void CallInit(BeamUserSettings bus)
 {
     base._Init(bus);
 }