Example #1
0
        public Sensor(Settings.Mode mode)
        {
            this.mode = mode;
            switch (mode)
            {
            case Settings.Mode.Camera:
                _predictor = new Predictor();
                _camera    = new Camera(_predictor);
                _camera.StartCamera();
                _stopwatch = new Stopwatch();
                _isCamera  = true;
                break;

            case Settings.Mode.Simulate:
                _position = new Position();
                _SimDisc  = new SimDisc(_position);
                _SimDisc.StartSimDisc();
                _stopwatch = new Stopwatch();
                Task.Factory.StartNew(StartDiscFromConsole);
                _isSimulate = true;
                break;

            default:
                Console.WriteLine("Leagal options: Camera, Simulate");
                break;
            }
        }
Example #2
0
    // Use this for initialization
    async void Start()
    {
        // Read command line arguments
        string[] args              = System.Environment.GetCommandLineArgs();
        string   modeString        = "";
        string   gameDataBinFolder = "";
        string   lvlName           = "";

        Settings.Mode mode = Settings.Mode.Rayman2PC;

        if (Application.platform == RuntimePlatform.WebGLPlayer)
        {
            FileSystem.mode = FileSystem.Mode.Web;
        }

#if UNITY_EDITOR
        mode = UnitySettings.GameMode;
        gameDataBinFolder = UnitySettings.GameDirs.ContainsKey(mode) ? UnitySettings.GameDirs[mode] : "";
        lvlName           = UnitySettings.MapName;
        ExportPath        = UnitySettings.ExportPath;
        ExportAfterLoad   = UnitySettings.ExportAfterLoad;
        if (Application.isEditor && UnityEditor.EditorUserBuildSettings.activeBuildTarget == UnityEditor.BuildTarget.WebGL)
        {
            FileSystem.mode = FileSystem.Mode.Web;
        }
        if (FileSystem.mode == FileSystem.Mode.Web)
        {
            gameDataBinFolder = UnitySettings.GameDirsWeb.ContainsKey(mode) ? UnitySettings.GameDirsWeb[mode] : "";
        }
        else
        {
            if (UnitySettings.LoadFromMemory)
            {
                lvlName = UnitySettings.ProcessName + ".exe";
            }
        }
#else
        // Config retrieved from Settings.txt for desktop build; auto-generated if it doesn't exist
        if (!File.Exists("Settings.txt"))
        {
            var newfile = new StreamWriter("Settings.txt");
            newfile.WriteLine($"{nameof(lvlName)}=Learn_30");
            newfile.WriteLine($"{nameof(gameDataBinFolder)}=[Replace Me]");
            newfile.WriteLine($"{nameof(mode)}=Rayman2PC");
            newfile.Close();
        }
        var file = new StreamReader("settings.txt");
        while (!file.EndOfStream)
        {
            var line = file.ReadLine().Split('=');
            switch (line[0])
            {
            case nameof(lvlName): lvlName = line[1]; break;

            case nameof(gameDataBinFolder): gameDataBinFolder = line[1]; break;

            case nameof(mode): mode = (Settings.Mode)Enum.Parse(typeof(Settings.Mode), line[1]); break;
            }
        }
        file.Close();
#endif

        // Override any with args
        for (int i = 0; i < args.Length; i++)
        {
            switch (args[i])
            {
            case "--lvl":
            case "-l":
                lvlName = args[i + 1];
                i++;
                break;

            case "--folder":
            case "--directory":
            case "-d":
            case "-f":
                gameDataBinFolder = args[i + 1];
                i++;
                break;

            case "--mode":
            case "-m":
                modeString = args[i + 1];
                i++;
                break;

            case "--export":
                ExportPath = args[i + 1];
                if (!string.IsNullOrEmpty(ExportPath))
                {
                    ExportAfterLoad = true;
                }
                i++;
                break;
            }
        }
        Application.logMessageReceived += Log;

        if (Application.platform == RuntimePlatform.WebGLPlayer)
        {
            //Application.logMessageReceived += communicator.WebLog;
            UnityEngine.Debug.unityLogger.logEnabled = false; // We don't need prints here
            string url = Application.absoluteURL;
            if (url.IndexOf('?') > 0)
            {
                string urlArgsStr = url.Split('?')[1].Split('#')[0];
                if (urlArgsStr.Length > 0)
                {
                    string[] urlArgs = urlArgsStr.Split('&');
                    foreach (string arg in urlArgs)
                    {
                        string[] argKeyVal = arg.Split('=');
                        if (argKeyVal.Length > 1)
                        {
                            switch (argKeyVal[0])
                            {
                            case "lvl":
                                lvlName = argKeyVal[1]; break;

                            case "mode":
                                modeString = argKeyVal[1]; break;

                            case "folder":
                            case "directory":
                            case "dir":
                                gameDataBinFolder = argKeyVal[1]; break;
                            }
                        }
                    }
                }
            }
        }
        if (Settings.cmdModeNameDict.ContainsKey(modeString))
        {
            mode = Settings.cmdModeNameDict[modeString];
        }
        loadingScreen.Active = true;
        Settings.Init(mode);
        loader                            = MapLoader.Loader;
        loader.controller                 = this;
        loader.gameDataBinFolder          = gameDataBinFolder;
        loader.lvlName                    = lvlName;
        loader.baseMaterial               = baseMaterial;
        loader.baseTransparentMaterial    = baseTransparentMaterial;
        loader.collideMaterial            = collideMaterial;
        loader.collideTransparentMaterial = collideTransparentMaterial;
        loader.baseLightMaterial          = baseLightMaterial;

#if UNITY_EDITOR
        loader.allowDeadPointers     = UnitySettings.AllowDeadPointers;
        loader.forceDisplayBackfaces = UnitySettings.ForceDisplayBackfaces;
        loader.blockyMode            = UnitySettings.BlockyMode;
        loader.exportTextures        = UnitySettings.SaveTextures;
#endif

        await Init();
    }
Example #3
0
    // Use this for initialization
    async void Start()
    {
        // Read command line arguments
        string[] args       = System.Environment.GetCommandLineArgs();
        string   modeString = "";

        Settings.Mode mode = UnitySettings.GameMode;
        string        gameDataBinFolder = UnitySettings.GameDirs.ContainsKey(mode) ? UnitySettings.GameDirs[mode] : "";
        string        lvlName           = UnitySettings.MapName;

        ExportPath      = UnitySettings.ExportPath;
        ExportAfterLoad = UnitySettings.ExportAfterLoad;


#if UNITY_EDITOR
        if (Application.isEditor && UnityEditor.EditorUserBuildSettings.activeBuildTarget == UnityEditor.BuildTarget.WebGL)
        {
            FileSystem.mode = FileSystem.Mode.Web;
        }
#endif
        if (Application.platform == RuntimePlatform.WebGLPlayer)
        {
            FileSystem.mode = FileSystem.Mode.Web;
        }
        if (FileSystem.mode == FileSystem.Mode.Web)
        {
            gameDataBinFolder = UnitySettings.GameDirsWeb.ContainsKey(mode) ? UnitySettings.GameDirsWeb[mode] : "";
        }
        else
        {
            if (UnitySettings.LoadFromMemory)
            {
                lvlName = UnitySettings.ProcessName + ".exe";
            }
        }

        for (int i = 0; i < args.Length; i++)
        {
            switch (args[i])
            {
            case "--lvl":
            case "-l":
                lvlName = args[i + 1];
                i++;
                break;

            case "--folder":
            case "--directory":
            case "-d":
            case "-f":
                gameDataBinFolder = args[i + 1];
                i++;
                break;

            case "--mode":
            case "-m":
                modeString = args[i + 1];
                i++;
                break;

            case "--export":
                ExportPath = args[i + 1];
                if (!string.IsNullOrEmpty(ExportPath))
                {
                    ExportAfterLoad = true;
                }
                i++;
                break;
            }
        }
        Application.logMessageReceived += Log;

        if (Application.platform == RuntimePlatform.WebGLPlayer)
        {
            //Application.logMessageReceived += communicator.WebLog;
            UnityEngine.Debug.unityLogger.logEnabled = false;             // We don't need prints here
            string url = Application.absoluteURL;
            if (url.IndexOf('?') > 0)
            {
                string urlArgsStr = url.Split('?')[1].Split('#')[0];
                if (urlArgsStr.Length > 0)
                {
                    string[] urlArgs = urlArgsStr.Split('&');
                    foreach (string arg in urlArgs)
                    {
                        string[] argKeyVal = arg.Split('=');
                        if (argKeyVal.Length > 1)
                        {
                            switch (argKeyVal[0])
                            {
                            case "lvl":
                                lvlName = argKeyVal[1]; break;

                            case "mode":
                                modeString = argKeyVal[1]; break;

                            case "folder":
                            case "directory":
                            case "dir":
                                gameDataBinFolder = argKeyVal[1]; break;
                            }
                        }
                    }
                }
            }
        }
        if (Settings.cmdModeNameDict.ContainsKey(modeString))
        {
            mode = Settings.cmdModeNameDict[modeString];
        }
        loadingScreen.Active = true;
        Settings.Init(mode);
        loader                            = MapLoader.Loader;
        loader.controller                 = this;
        loader.gameDataBinFolder          = gameDataBinFolder;
        loader.lvlName                    = lvlName;
        loader.baseMaterial               = baseMaterial;
        loader.baseTransparentMaterial    = baseTransparentMaterial;
        loader.collideMaterial            = collideMaterial;
        loader.collideTransparentMaterial = collideTransparentMaterial;
        loader.baseLightMaterial          = baseLightMaterial;

        loader.allowDeadPointers     = UnitySettings.AllowDeadPointers;
        loader.forceDisplayBackfaces = UnitySettings.ForceDisplayBackfaces;
        loader.blockyMode            = UnitySettings.BlockyMode;
        loader.exportTextures        = UnitySettings.SaveTextures;

        await Init();
    }
Example #4
0
    //public SerializedProperty property;

    public PS1ActorSelectionDropdown(AdvancedDropdownState state, Settings.Mode mode, int actorIndex) : base(state)
    {
        this.mode       = mode;
        this.actorIndex = actorIndex;
        minimumSize     = new UnityEngine.Vector2(50, 300f);
    }