Exemple #1
0
        // Make sure to put in DbContext stuf. I will forget.
        public RedirectToActionResult LoginProcess(string Name)
        {
            // get list of active players
            List <Player> ActivePlayers = dbContext.Players.Where(p => p.IsActive == true).ToList();
            Player        newPlayer     = new Player();

            //We can't have more than 2 active players
            if (ActivePlayers.Count > 2)
            {
                System.Console.WriteLine("We can't handle this!");
                return(RedirectToAction("EndGame"));
            }
            // Set player state to player 1 or player 2
            if (ActivePlayers.Count > 0 && ActivePlayers.Count < 2)
            {
                newPlayer.PlayerState = 2;
            }
            else
            {
                newPlayer.PlayerState = 1;
            }
            // Build rest of DBEntry
            newPlayer.IsActive = true;
            newPlayer.Name     = Name;
            HttpContext.Session.SetInt32("PlayerState", newPlayer.PlayerState);
            newPlayer.CreatedAt = DateTime.Now;
            newPlayer.UpdatedAt = DateTime.Now;
            // newPlayer.PlayerState
            dbContext.Add(newPlayer);
            // create debugger instance
            LightYearDebugger CombatLog = new LightYearDebugger();

            CombatLog.P1_Total_Ship_Kills = 0;
            CombatLog.P2_Total_Ship_Kills = 0;
            CombatLog.P1_Total_Pop_Lost   = 0;
            CombatLog.P2_Total_Pop_Lost   = 0;
            CombatLog.Total_Ships_Lost    = 0;
            CombatLog.Total_Pop_Lost      = 0;
            dbContext.Add(CombatLog);
            HttpContext.Session.SetInt32("CombatLogId", CombatLog.LightYearDebuggerId);
            Console.WriteLine(")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))");
            Console.WriteLine($"CombatLog ID: {HttpContext.Session.GetInt32("CombatLogId")}");
            Console.WriteLine(")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))");
            dbContext.SaveChanges();
            return(RedirectToAction("Lobby", "Home"));
        }
Exemple #2
0
        public void Ship_Cleanup()
        {
            // int? CombatLogID = HttpContext.Session.GetInt32("CombatLogID");
            LightYearDebugger CombatLog1       = dbContext.LightYearDebug.OrderByDescending(cl => cl.LightYearDebuggerId).FirstOrDefault();
            List <Ship>       removeTheseShips = dbContext.Ships.Where(s => s.Health <= 0).ToList();

            if (removeTheseShips.Count > 0)
            {
                foreach (Ship ship in removeTheseShips)
                {
                    if (ship.PlayerState == 1)
                    {
                        CombatLog1.P1_Total_Ship_Kills++;
                    }
                    if (ship.PlayerState == 2)
                    {
                        CombatLog1.P2_Total_Ship_Kills++;
                    }
                }
                foreach (Ship ship in removeTheseShips)
                {
                    //
                    Console.WriteLine(")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))");
                    Console.WriteLine($"Ship {ship.ShipId} Health is {ship.Health}");
                    Console.WriteLine($"Ship {ship.ShipId} Removed");
                    Console.WriteLine(")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))");
                    //
                    // if ship in database, remove
                    // else do nothing
                    if (dbContext.Ships.FirstOrDefault(s => s.ShipId == ship.ShipId) != null)
                    {
                        dbContext.Remove(ship);
                    }
                }
                //
                Console.WriteLine(")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))");
                Console.WriteLine($"Player 1: Total ships killed {CombatLog1.P1_Total_Ship_Kills}");
                Console.WriteLine($"Player 2: Total ships killed {CombatLog1.P1_Total_Ship_Kills}");
                Console.WriteLine(")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))");
                //
            }
        }