private void StartLevel()
    {
        levelManager.GenerateMap();

        //Set Player on Start Isle
        playerObject.GetComponent <CharacterController>().enabled = false;

        Isle startIsle = levelManager.startIsle.IsleObj;

        levelManager.currentIsle        = startIsle.isleAbstract;
        playerObject.transform.position = startIsle.PlayerStartPoint.transform.position;
        playerObject.transform.rotation = startIsle.PlayerStartPoint.transform.rotation;
        playerObject.GetComponent <NavMeshTarget>().IslePosition = startIsle.transform.position;

        levelManager.currentIsle.IsleObj.StartIsle();
        levelManager.currentIsle.IsleObj.AddBorders();

        // activate Character Controller
        playerObject.GetComponent <CharacterController>().enabled = true;

        // show UI (inclusive Mini-Map)
        UI_Canvas ui = mr.getObject(ObjectPool.categorie.essential, (int)ObjectPool.essential.UI).GetComponent <UI_Canvas>();

        ui.ShowMiniMap();
        Stats stats = playerObject.GetComponent <Stats>();

        ui.UpdateLive(stats.health, stats.maxHealth);
        ui.UpdateKeys(playerObject.GetComponent <Player>().NumberSmallKeys);
    }
Esempio n. 2
0
 public Landmass(Isle isle, int commoners, double chance, int gold, int penaltyAmmount, Penalty penalty, List <Loot> loot)
 {
     this.isle           = isle;
     this.commoners      = commoners;
     this.chance         = chance;
     this.gold           = gold;
     this.penaltyAmmount = penaltyAmmount;
     this.penalty        = penalty;
     this.loot           = loot;
 }
Esempio n. 3
0
        public IActionResult UpdateIsle(CreateIsleView model, int id)
        {
            if (HttpContext.Session.GetString("CurrentUserFirstName") == null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            Isle currentIsle = _context.Isles.Where(isle => isle.id == id).Include(isle => isle.ProductCategories).ThenInclude(ipc => ipc.ProductCategory).SingleOrDefault();

            if (ModelState.IsValid)
            {
                currentIsle.Name     = model.Name;
                currentIsle.Position = model.Position;


                _context.Isles.Update(currentIsle);

                foreach (IslesProductCategories ipc in currentIsle.ProductCategories)
                {
                    if (model.CategoryId.Contains(ipc.ProductCategoryId))
                    {
                        model.CategoryId.Remove(ipc.ProductCategoryId);
                    }
                    else
                    {
                        _context.IslesProductCategories.Remove(ipc);
                    }
                }

                foreach (int catId in model.CategoryId)
                {
                    IslesProductCategories newIPC = new IslesProductCategories {
                        ProductCategoryId = catId,
                        IsleId            = currentIsle.id
                    };
                    _context.IslesProductCategories.Add(newIPC);
                }

                _context.SaveChanges();


                return(RedirectToAction("StoreDetails", "Store", new { id = currentIsle.StoreId }));
            }
            else
            {
                ViewBag.CurrentUserFirstName = HttpContext.Session.GetString("CurrentUserFirstName");
                ViewBag.Categories           = _context.ProductCategories;
                ViewBag.Isle = currentIsle;

                return(View(model));
            }
        }
Esempio n. 4
0
        public IActionResult CreateIsle(CreateIsleView model, int id)
        {
            if (HttpContext.Session.GetString("CurrentUserFirstName") == null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            ViewBag.CurrentUserFirstName = HttpContext.Session.GetString("CurrentUserFirstName");

            ViewBag.Categories = _context.ProductCategories;
            ViewBag.StoreId    = id;

            if (ModelState.IsValid)
            {
                Isle newIsle = new Isle {
                    Name            = model.Name,
                    Position        = model.Position,
                    CreatedByUserId = (int)HttpContext.Session.GetInt32("CurrentUserId"),
                    StoreId         = id
                };

                _context.Isles.Add(newIsle);
                _context.SaveChanges();
                newIsle = _context.Isles.Last();

                foreach (int catId in model.CategoryId)
                {
                    IslesProductCategories newIPC = new IslesProductCategories {
                        ProductCategoryId = catId,
                        IsleId            = newIsle.id
                    };
                    _context.IslesProductCategories.Add(newIPC);
                }

                _context.SaveChanges();


                return(RedirectToAction("StoreDetails", "Store", new { id = id }));
            }
            else
            {
                return(View(model));
            }
        }
Esempio n. 5
0
        public IHttpActionResult AddNewProduct(string barcode, string name, double price, string description, int stocks, int isleId)
        {
            Isle isle = db.Isles.Find(isleId);

            Product product = new Product()
            {
                Barcode     = barcode,
                Name        = name,
                Price       = price,
                Description = description,
                Stocks      = stocks,
                Isle        = isle
            };

            db.Products.Add(product);
            db.SaveChanges();

            return(Ok());
        }
Esempio n. 6
0
    public virtual void Initialize(EnemyPoint enemyPoint, Vector3 islePosition, Vector3 navMeshPosition, NavMeshTarget target)
    {
        mr          = ObjectPool.getObjectPool();
        player      = mr.getObject(ObjectPool.categorie.essential, (int)ObjectPool.essential.player);
        currentIsle = LevelManager.getLevelManager().currentIsle.IsleObj;

        GetComponent <Stats>().resetStats();

        ghostCopy = GetComponent <GhostCopy>();
        ghostCopy.MovedByGhost = true;

        transform.position = enemyPoint.transform.position;
        gameObject.GetComponent <GhostCopy>().IslePosition = islePosition;

        GameObject slimeGhost = getGhost();

        slimeGhost.GetComponent <NavMeshAgent>().enabled = false;
        slimeGhost.transform.position = navMeshPosition + enemyPoint.getPositionOnIsle();
        slimeGhost.GetComponent <GhostMovement>().NavMashPosition = navMeshPosition;
        slimeGhost.GetComponent <GhostMovement>().target          = target;
        slimeGhost.GetComponent <GhostMovement>().ghostCopy       = ghostCopy;
        slimeGhost.GetComponent <NavMeshAgent>().enabled          = true;
        gameObject.GetComponent <GhostCopy>().ghost = slimeGhost.GetComponent <GhostMovement>();
    }