private void Start()
    {
        Cursor.visible = false;
        visualiser     = GetComponent <Visualiser>();
        particleSystem = GetComponent <ParticleSystem>();

        ParticleSystem.MainModule particleSystemMain = particleSystem.main;
        numParticles = size * size;
        particleSystemMain.maxParticles = numParticles;

        particles = new ParticleSystem.Particle[numParticles];
        particleSystem.Emit(numParticles);
        particleSystem.GetParticles(particles);

        // Lets assume particle x y dimension is 1x1
        for (int i = 0; i < numParticles; i++)
        {
            if (ParticleOnEdge(i))
            {
                particles[i].position = new Vector3(i % size, i / size);
            }
            else
            {
                particles[i].position = new Vector3(i % size, i / size, -2);
            }
        }

        particleSystem.SetParticles(particles, numParticles);
    }
        public AnalysisDem()
        {
            InitializeComponent();

            Constants.RawData Data = Constants.Item.GetRawData();
            int    n           = Constants.Item.GetCount();
            var    PredictedBP = new List <double>();
            var    ResidSup    = new List <double>();
            double ResidBP     = 0;

            double[,] Regressors = FittingFunctions.FitLin(Data, n);
            for (var i = 0; i < n; i++)
            {
                var    Qs = Data.SellQuantity.ElementAt(i);
                double BP = (Qs - Regressors[1, 1]) / Regressors[0, 1];
                ResidBP = Qs - BP;
                PredictedBP.Add(BP);
                ResidSup.Add(ResidBP);
            }
            var StrdResid = DataPreparer.ListStrd(ResidSup);

            //create observable points for graphing
            AnalysisDis = Visualiser.SeriesBuilder(PredictedBP);
            DataContext = this;
        }
 /// <summary>
 /// Funkcja wykrywająca kliknięcia na ekranie i wywołująca na odpowienich obiektach event kliknięcia
 /// </summary>
 private void OnScreenClick()
 {
     if (GameplayController.instance.session.gameState == GameState.running && boardVisible)
     {
         for (int i = 0; i < Input.touchCount; i++)
         {
             //Wykrywa tylko kliknięcia, które się rozpoczęły
             if (Input.GetTouch(i).phase == TouchPhase.Began && !EventSystem.current.IsPointerOverGameObject(Input.GetTouch(i).fingerId))
             {
                 Ray ray = Camera.main.ScreenPointToRay(Input.GetTouch(i).position);
                 if (Physics.Raycast(ray, out RaycastHit hit))
                 {
                     Visualiser visualiser = hit.collider.gameObject.GetComponent <Visualiser>();
                     if (visualiser != null)
                     {
                         visualiser.OnClick();
                     }
                 }
                 else //Jeśli dotkniemy poza budynkami środkowy budynek jest usuwany
                 {
                     centerBuilding.GetComponent <CenterVisualiser>().ToggleVisibility(false);
                 }
             }
         }
     }
 }
        /// <summary>
        /// scatter plots of EWMA vs. raw
        /// </summary>
        public ScatterPlots()
        {
            InitializeComponent();
            Constants.RawData data = Constants.Item.GetRawData();
            int n    = Constants.Item.GetCount();
            var Ewma = DataPreparer.Weighter(data, 0.5);

            //LINQ, $ formatting
            PriceFormatter = value => value.ToString("C");

            List <double> BuyQ  = data.BuyQuantity.Select <int, double>(i => i).ToList();
            List <double> BuyP  = data.BuyPrice.Select <int, double>(i => i).ToList();
            List <double> SellQ = data.SellQuantity.Select <int, double>(i => i).ToList();
            List <double> SellP = data.SellPrice.Select <int, double>(i => i).ToList();

            //~3500 data points possible with current config = 7000 total
            Object[] ScatterPoints  = Visualiser.ScatterListBuilder(BuyQ, BuyP, SellQ, SellP, n);
            Object[] WScatterPoints = Visualiser.ScatterListBuilder(Ewma._strdBuyQuant, Ewma._strdBuyPrice, Ewma._strdSellQuant, Ewma._strdSellPrice, n);
            //note explicit conversion of types
            Supply      = (ChartValues <ObservablePoint>)ScatterPoints[0];
            Demand      = (ChartValues <ObservablePoint>)ScatterPoints[1];
            EwmaSupply  = (ChartValues <ObservablePoint>)WScatterPoints[0];
            EwmaDemand  = (ChartValues <ObservablePoint>)WScatterPoints[1];
            DataContext = this;
        }
Exemple #5
0
 /// <summary>
 /// When a shot fired has already been attempted
 /// </summary>
 private void AlreadyAttempted(Game game)
 {
     Console.Clear();
     Visualiser.PrintCurrentGame(game);
     Console.WriteLine();
     Console.WriteLine("'Avast ye! You've already fired ere'");
 }
Exemple #6
0
        public IActionResult Index()
        {
            Map map = new Map(EnumMapType.small);

            map.FindAllJunctions();
            Visualiser visualiser = new Visualiser(map);

            Playboard    pb     = new Playboard(visualiser.DrawMap(topJunctionAmount), map.GetTopJunctions(topJunctionAmount));
            List <ITile> result = map.tiles;

            HttpContext.Session.SetString("stringurl", $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}");

            // get the previous url and store it with view model
            //var obj = result;
            //var serializer = new JsonSerializer();
            //serializer.Serialize(new JsonTextWriter(new StringWriter()), obj);
            //serializer.ContractResolver.
            //var indented = Formatting.Indented;
            //var settings = new JsonSerializerSettings()
            //{
            //    TypeNameHandling = TypeNameHandling.All
            //};
            //var json = JsonConvert.SerializeObject(obj, indented, settings);

            //var json = new WebClient().DownloadString("url");
            //System.IO.File.WriteAllText(@"C:\Users\Mike\Documents\test\oof.json", json);
            //TempData.Put("pbData", map.tiles);
            //Playboard lol = TempData.Get<Playboard>("pbData");
            var json = JsonConvert.SerializeObject(result);

            ViewBag.ExportJsonString = json;
            return(View(pb));
        }
Exemple #7
0
 /// <summary>
 /// Prints the initial splash screen
 /// </summary>
 private static void PrintSplash()
 {
     Visualiser.WriteTitle();
     AsciiHelper.DrawBoat();
     Console.WriteLine();
     Console.WriteLine("Press Any Key to Start");
     Console.ReadKey();
 }
Exemple #8
0
        private void button_Click(object sender, RoutedEventArgs e)
        {
            var coldplate = new ColdPlate();

            coldplate.Dimension.X = 300;
            coldplate.Dimension.Y = 300;
            coldplate.Name        = new KeyValuePair <string, string>("Coldplate basic", "rr");

            var lis = new ObservableCollection <LossElementInstance>();
            var li1 = new LossElementInstance();

            li1.Name       = "li 1";
            li1.Position.X = 55;
            li1.Position.Y = 55;

            var li2 = new LossElementInstance();

            li2.Name       = "li 2";
            li2.Position.X = 100;
            li2.Position.Y = 50;

            lis.Add(li1);
            lis.Add(li2);



            var les = new Collection <LossElement>();
            var le1 = new LossElement();

            le1.Dimension.X = 50;
            le1.Dimension.Y = 50;

            var le2 = new LossElement();

            le2.Dimension.X = 50;
            le2.Dimension.Y = 50;

            les.Add(le1);
            les.Add(le2);



            Visualiser popup = new Visualiser(
                coldplate,
                lis,
                les
                );

            popup.ShowDialog();
        }
Exemple #9
0
    private void Awake()
    {
        if (instance == null)
        {
            instance = this;
        }
        else if (instance != this)
        {
            Destroy(gameObject);
        }

        audioSource      = this.GetComponent <AudioSource>();
        visualiser       = this.GetComponent <Visualiser>();
        audioSource.clip = audioFile;
    }
 private void Visualise(FightStat fitnessValue)
 {
     if (isDebug)
     {
         Visualiser.Visualise(Battle);
         fitnessValue.CountFitness(Battle);
         Console.WriteLine($"LastCommand: {Battle.Map.Tank.Strategy.LastCommand} ");
         Console.WriteLine($"FitnessValue: {fitnessValue.Result}");
         Console.WriteLine($"Steps: {fitnessValue.Steps}");
         Console.WriteLine($"Killed: {fitnessValue.Killed}");
         Console.WriteLine($"EnemiesKilledEachOther:{fitnessValue.EnemiesKilledByEnemies} ");
         Console.WriteLine($"Tanks left: {Battle.Map.Enemies.Count} ");
         System.Threading.Thread.Sleep(1000);
     }
 }
Exemple #11
0
        public IActionResult BigMap()
        {
            Map map = new Map(EnumMapType.big);

            map.FindAllJunctions();
            Visualiser visualiser = new Visualiser(map);

            Playboard pb = new Playboard(visualiser.DrawMap(topJunctionAmount), map.GetTopJunctions(topJunctionAmount));

            var json = JsonConvert.SerializeObject(map.tiles);

            ViewBag.ExportJsonString = json;

            return(View("Index", pb));
        }
Exemple #12
0
        /// <summary>
        /// The main entry point into BattleShips
        /// </summary>
        /// <param name="args"></param>
        static void Main(string[] args)
        {
            // Dependency Injection
            var kernel = new StandardKernel();

            kernel.Load(Assembly.GetExecutingAssembly());
            var gameService = kernel.Get <IGameService>();

            // Print the splash screen
            PrintSplash();

            // Create a new game instance and set the player name
            var game = gameService.CreateGame();

            game.PlayerName = Visualiser.RequestPlayerName();

            // Print the grid
            Visualiser.PrintCurrentGame(game);

            // Prompt the user for input
            Console.WriteLine();
            Console.WriteLine("Take aim, type in a grid reference e.g C5 and hit Return to fire!");

            // The Game Loop
            do
            {
                var input = Console.ReadLine();
                try
                {
                    var y    = input.Substring(0, 1).ToUpper();
                    var x    = Convert.ToInt32(input.Substring(1));
                    var shot = new GridCoords(x, y);

                    game = gameService.FireShot(game, shot);
                } catch (Exception)
                {
                    Console.WriteLine("Shot Invalid, Try again");
                }
            } while (game.Active == true);
        }
Exemple #13
0
        public ActionResult ImportData()
        {
            var files = Request.Form.Files;

            string fileContent = null;

            Visualiser visualiser = new Visualiser();
            Playboard  pb         = null;

            if (files.Count > 0)
            {
                Map map = new Map(EnumMapType.small);
                map.FindAllJunctions();
                using (var reader = new StreamReader(files[0].OpenReadStream()))
                {
                    fileContent = reader.ReadToEnd();
                }
                string result = JsonConvert.DeserializeObject(fileContent).ToString();

                JsonConverter[] converters = { new TileConverter(), new TileTypeConverter() };

                List <ITile> importedTiles = JsonConvert.DeserializeObject <List <ITile> >(result, new JsonSerializerSettings()
                {
                    Converters = converters
                });

                pb = new Playboard(visualiser.DrawMap(importedTiles), map.GetTopJunctions(topJunctionAmount));
                return(View("Index", pb));
            }

            //List<ITile> kek = TempData.Get<List<ITile>>("pbData");
            //Map map2 = new Map(EnumMapType.small);
            //map2.tiles = kek;
            //pb = new Playboard(visualiser.DrawMap(map2.tiles), map2.GetTopJunctions(topJunctionAmount));
            //Playboard lol = (Playboard)TempData["pbData"];
            return(Redirect(HttpContext.Session.GetString("stringurl")));
        }
Exemple #14
0
        /// <summary>
        /// When a shot fired misses
        /// </summary>
        /// <param name="game"></param>
        /// <param name="indices"></param>
        private Game ShotMissed(Game game, Indices indices)
        {
            game.GameGrid.Cells[indices.X, indices.Y].Status = GridCellStatus.ShotMissed;

            // Lose a life
            game.Lives--;

            // Reset Streak
            game.Streak = 0;

            // Deduct from Score
            if (game.Score > 0)
            {
                game.Score = game.Score - 1;
            }
            ;

            Console.Clear();
            Visualiser.PrintCurrentGame(game);

            Console.WriteLine();
            Console.WriteLine("'Unlucky Squire! Ya misses.. Try agen'");

            if (game.Lives == 0)
            {
                Console.Clear();
                game.Active = false;
                game.Score  = 0;
                AsciiHelper.DrawYouLose();
                Console.WriteLine();
                Console.WriteLine();
                Console.ReadLine();
            }

            return(game);
        }
Exemple #15
0
    //Executes every frame
    private void Update()
    {
        // Turn on "Gizmos" in game window for the visualiser to work
        Visualiser.DrawRectangle(CalculateRaycastOriginPosition(), detectionBoxSize, Color.red);

        // Skill is on cooldown?
        if (currentProjectileCooldown > 0)
        {
            // Decrease cooldown time according to frame time
            currentProjectileCooldown -= Time.deltaTime;
        }

        // Pressed C button and skill is off cooldown?
        if (Input.GetKey(KeyCode.X) && currentProjectileCooldown <= 0)
        {
            Transform targetTransform = DetectTargetInDetectionBox();

            // Fire projectile at target
            FireProjectile(targetTransform);

            // Set cooldown for the skill
            currentProjectileCooldown = projectileCooldown;
        }
    }
Exemple #16
0
        /// <summary>
        /// When a shot is landed
        /// </summary>
        /// <param name="game"></param>
        /// <param name="indices"></param>
        private Game ShotLanded(Game game, Indices indices)
        {
            // Update cell and beep
            game.GameGrid.Cells[indices.X, indices.Y].Status = GridCellStatus.ShotLanded;
            Console.Beep(432, 750);

            // Incrememnt streak
            game.Streak++;

            // Initialise first points
            if (game.Score == 0)
            {
                game.Score = 1;
            }
            ;

            // Update score and apply streak if not negative.
            if (game.Score > 0)
            {
                game.Score = game.Score + (game.Score * game.Streak);
            }
            else
            {
                game.Score = game.Score + game.Score;
            }

            // Incremement the boat hit counter
            var target = game.GameGrid.Cells[indices.X, indices.Y];

            game.Boats
            .First(b => b.Id == target.BoatHeld.Id)
            .Hits++;

            Console.Clear();
            Visualiser.PrintCurrentGame(game);
            Console.WriteLine();

            Console.WriteLine("'Arrrgh you scurvy landlubber!!, You've hit me' boat!'");

            // Get the boat
            var boat = game.Boats
                       .First(b => b.Id == target.BoatHeld.Id);

            // Check length vs. hits
            if (boat.Hits == boat.Length)
            {
                game.BoatsSank++;
                Console.Beep(432, 1500);

                Console.ForegroundColor = ConsoleColor.Blue;
                Console.WriteLine("'Blimey! Boat down'");
                Console.ForegroundColor = ConsoleColor.Magenta;
            }
            ;

            if (game.Boats.Count() == game.BoatsSank)
            {
                Console.Clear();

                // Winner, Winner.
                game.Score  = game.Score + (game.Lives * 10);
                game.Active = false;
                AsciiHelper.DrawWinner();
                Console.WriteLine();
                Console.WriteLine();
                Console.Write("Congratulations, ");
                Console.Write(game.PlayerName);
                Console.Write(", Your Final Score was: ");
                Console.Write(game.Score);
                Console.WriteLine();
                Console.ReadLine();
            }
            ;

            return(game);
        }