Example #1
0
    void Start()
    {
        cursorController  = cursor.GetComponent <CursorController>();
        dungeonController = dungeonControllerGO.GetComponent <DungeonController>();

        cursorController.detailsBlock();
    }
 // Use this for initialization
 void Start()
 {
     animator          = this.gameObject.GetComponent <Animator>();
     playerController  = player.GetComponent <PlayerController>();
     cameraController  = cam.GetComponent <CameraController>();
     dungeonController = dungeon.GetComponent <DungeonController>();
 }
    // Start is called before the first frame update
    void Start()
    {
        if (!cameraPoint)
        {
            cameraPoint = transform.Find("CameraPoint");
        }

        if (!dungeon)
        {
            dungeon = GetComponentInParent <DungeonController>();
        }

        if (!gate)
        {
            var eventContainer = transform.Find("Event Objects");
            if (eventContainer)
            {
                gate = eventContainer.GetComponentInChildren <DungeonGateController>();
            }
        }

        var enemyContainer = transform.Find("Enemies");

        if (!enemyContainer)
        {
            return;
        }

        enemies = enemyContainer.GetComponentsInChildren <EnemyController>();
    }
Example #4
0
        private void RestartGame()
        {
            // Spawn our player character
            Vector3    playerSpawnPosition    = Vector3.zero;
            Quaternion playerSpawnOrientation = Quaternion.identity;
            Quaternion playerLookOrientation  = Quaternion.identity;

            if (PlayerSpawnTransform)
            {
                playerSpawnPosition    = PlayerSpawnTransform.position;
                playerSpawnOrientation = PlayerSpawnTransform.rotation;
            }

            spawnedPlayerCharacter  = Instantiate(PlayerCharacterPrefab, playerSpawnPosition, playerSpawnOrientation, GetWorld().transform).GetComponent <LNBPlayerCharacter>();
            spawnedPlayerController = spawnedPlayerCharacter.GetComponent <LNBPlayerController>();

            // Transform the pitch and not the character #TODO: Write your own player controller
            playerLookOrientation = spawnedPlayerController.GetComponentInChildren <Camera>().transform.localRotation;
            spawnedPlayerController.GetComponentInChildren <Camera>().transform.localRotation = playerLookOrientation;

            // TODO: Async generate our first dungeon
            // Instantiate our first dungeon
            currentDungeonInstance            = Instantiate(Dungeons[0], Vector3.zero, Quaternion.identity, GetWorld().transform);
            hubRoomInstance.dungeonController = currentDungeonInstance;
            currentDungeonInstance.SpawnRoom(hubRoomInstance.exits[0]);
        }
 public void Initialize(DungeonController dungeonController, GameObject[,] tiles, int id)
 {
     clsDungeonController = dungeonController;
     clsDungeonController.bossRoomInstance = this;
     this.tiles = tiles;
     this.id    = id;
     isBossRoom = true;
 }
Example #6
0
 public void Initialize(DungeonController dungeonController, GameObject[,] tiles, int id, Rect roomRectangle, Rect roomFloorsRectangle)
 {
     clsDungeonController = dungeonController;
     this.tiles           = tiles;
     this.id              = id;
     this.roomRectangle   = roomRectangle;
     _roomFloorsRectangle = roomFloorsRectangle;
 }
 private void Awake()
 {
     if (instance != null)
     {
         Debug.LogWarning("multiple dungeon controllers");
     }
     instance = this;
 }
 protected override void setStairs(DungeonController dgcontroller)
 {
     dgcontroller.Stairs.Entity = new DungeonClearStairs(dgcontroller);
     dgcontroller.Stairs.transform.position = pws[1].EndPosition;
     dgcontroller.Stairs.setActive(true);
     dgcontroller.Stairs.gotoNext = delegate (int i) { dgcontroller.Stairs.Entity.move(); };
     //Debug.logger.Log("Gate Way Positions",string.Format("{0} {1}",geteway.Position,geteway.enabled));
 }
Example #9
0
 void CreateInstance()
 {
     if (instance != null)
     {
         Debug.Log("There should never have two world controllers.");
     }
     instance = this;
 }
Example #10
0
    void Start()
    {
        dungeonController  = DungeonControllerOB.GetComponent <DungeonController>();
        dungeonMapCreator  = tileMap.GetComponent <DungeonMapCreator>();
        transform.position = dungeonController.getEntrance();

        soundEfect = GetComponent <AudioSource>();
    }
Example #11
0
 public void Initialize(DungeonController dungeonController, int firstDirection, float speed, GameObject[,] tiles, Transform player, PlayerController playerController, PlayerSpriteManager playerSpriteManager)
 {
     _clsDungeonController   = dungeonController;
     _clsPlayerController    = playerController;
     _clsPlayerSpriteManager = playerSpriteManager;
     _tiles          = tiles;
     _firstDirection = firstDirection;
     _speed          = speed;
     _player         = player;
 }
 public virtual void setInitialObjects(DungeonController dgcontroller)
 {
     setRooms();
     setPathways();
     setItems(dgcontroller.CurrentDungeonParameter);
     setTraps(dgcontroller.CurrentDungeonParameter);
     setEnemys(dgcontroller.CurrentDungeonParameter);
     setPlayerSpwanPoint();
     setStairs(dgcontroller);
     //GameController.MainPlayer.setPotision(PlayerSpwanPoint);
 }
Example #13
0
 private void Awake()
 {
     if (m_playerDungeon == null)
     {
         GameObject new_player_dungeon = Instantiate(DungeonPrefab);
         m_playerDungeon = new_player_dungeon.GetComponent <DungeonController>();
         if (m_playerDungeon == null)
         {
             m_playerDungeon = new_player_dungeon.AddComponent <DungeonController>();
         }
     }
 }
Example #14
0
    void Start()
    {
        cursor = GameObject.Find("Cursor");
        dungeonControllerGO = GameObject.Find("DungeonController");
        cursorController    = cursor.GetComponent <CursorController>();
        dungeonController   = dungeonControllerGO.GetComponent <DungeonController>();

        animator = GetComponent <Animator>();

        initalizeWalkedMap();
        beforePosition = currentPosition();
    }
Example #15
0
    void initalizeMapVariables()
    {
        dungeonController = dungeonControllerGO.GetComponent <DungeonController>();

        mapHeight     = dungeonController.mapHeight;
        mapWidth      = dungeonController.mapWidth;
        wallThickness = dungeonController.wallThickness;

        randomEmptyRange        = dungeonController.randomEmptyRange;
        randomEnergyAmountRange = dungeonController.randomEnergyAmountRange;
        randomEnergyMagicRatio  = dungeonController.randomEnergyMagicRatio;
        randomMagicAmountRange  = dungeonController.randomMagicAmountRange;
    }
Example #16
0
        protected override void Initialize()
        {
            map = new Map(this.Content);

            hero = new Hero(Settings.TILE_WIDTH, Settings.TILE_HEIGHT, map.StarterTile);
            dungeonController = new DungeonController(map, hero);

            camera = new Camera2D();

            InputController.Instance.AddControllable(hero);
            InputController.Instance.AddControllable(camera);

            base.Initialize();
        }
Example #17
0
        private static void Main()
        {
            //setup our DI
            var serviceProvider = new ServiceCollection()
                                  .AddSingleton <IMonsterFactory, MonsterFactory>()
                                  .AddSingleton <IHallwayFactory, HallwayFactory>()
                                  .AddSingleton <IRoomFactory, RoomFactory>()
                                  .AddSingleton <IDungeonFactory, DungeonFactory>()
                                  .AddSingleton <IDungeonBuilder, DungeonBuilder>()
                                  .BuildServiceProvider();

            var dungeonController = new DungeonController(serviceProvider);

            // Boot our dungeon!
            dungeonController.Explore();
        }
Example #18
0
    void Awake()
    {
        if (instance == null)
        {
            instance = this;
        }
        else if (instance != this)
        {
            Destroy(gameObject);
        }

        DontDestroyOnLoad(gameObject);
        dungeonBuilder   = GetComponent <DungeonBuilder>();
        playerController = FindObjectOfType <PlayerController>();
        dungeonFiller    = GetComponent <DungeonFiller>();
        GenerateDungeon();
    }
Example #19
0
 private void Awake()
 {
     if (instance != null && instance != this)
     {
         Destroy(gameObject);
     }
     else
     {
         instance          = this;
         dungeonController = new DungeonController();
         GameObject.DontDestroyOnLoad(gameObject);
         if (debug)
         {
             value = 10000;
         }
         SceneManager.sceneLoaded += SceneLoaded;
     }
 }
Example #20
0
    private void ResetDungeon()
    {
        state = DungeonState.None;
        lock (mutex) joinedPlayers.Clear();
        deadPlayers.Clear();
        if (!currentDungeon)
        {
            return;
        }
        currentDungeon.ResetRooms();
        currentDungeon    = null;
        notificationTimer = notificationUpdate;
        dungeonStartTimer = timeForDungeonStart;

        gameManager.Camera.DisableDungeonCamera();
        ScheduleNextDungeon();

        gameManager.Events.End(this);
    }
Example #21
0
    public void InitializeDungeon(DungeonController dungeon)
    {
        currentDungeon = dungeon;
        int xLength = dungeon.tilesPosition.GetLength(0);
        int yLength = dungeon.tilesPosition.GetLength(1);

        tilesLayers = new int[xLength, yLength];
        for (int i = 0; i < xLength; i++)
        {
            for (int j = 0; j < yLength; j++)
            {
                if (dungeon.tilesPosition[i, j] != null)
                {
                    tilesLayers[i, j] = dungeon.tilesPosition[i, j].layer;
                }
            }
        }
        dungeon.bossRoomInstance.GetBossRoomLayers();
    }
Example #22
0
        static void Main(string[] args)
        {
            ConsoleKeyInfo key;

            var culture         = CultureInfo.CreateSpecificCulture("ru-ru");
            var resourceManager = new ResourceManager("CasloFirstProject.CMD.Languages.Messages", typeof(Program).Assembly);

            Console.WriteLine(resourceManager.GetString("Welcom", culture));

            Console.WriteLine(resourceManager.GetString("EnterName", culture));
            var name = Console.ReadLine();

            var userController    = new UserController(name);
            var expController     = new ExpController(userController.CurrentUser);
            var dungeonController = new DungeonController(userController.CurrentUser);

            if (userController.IsNewUser)
            {
                Console.WriteLine("Создайте имя персонажа");
                var character = Console.ReadLine();

                Console.Write("Количество персонажей ");
                var quantity = ParseInt("Количество персонажей ");
                Console.Write("Уровень персонажа ");
                var lvl = ParseInt("Уровень персонажа ");


                userController.SetNewUserData(character, quantity, lvl);
            }

            Console.WriteLine(userController.CurrentUser);


            while (true)
            {
                Console.WriteLine("Вы хотите добавить побеждённого противника? ");
                Console.WriteLine("Нажмите Y чтобы добавить побеждённого противника");
                Console.WriteLine("Нажмите D чтобы добавить пройденное подземелье");
                Console.WriteLine("Нажмите Q чтобы выйти");

                key = Console.ReadKey();
                Console.WriteLine();

                switch (key.Key)
                {
                case ConsoleKey.Y:
                    var unites = EnterUnits();
                    expController.Add(unites.Units, unites.Exp);

                    foreach (var item in expController.lvlUps.Unites)
                    {
                        Console.WriteLine($"\t {item.Key} - {item.Value}");
                    }
                    break;

                case ConsoleKey.D:
                    var dung = EnterDungeon();

                    dungeonController.Add(dung.Play, dung.Begin, dung.End);

                    foreach (var item in dungeonController.Dungeons)
                    {
                        Console.WriteLine($"\t {item.Play} - {item.Start} - {item.Finish}");
                    }

                    break;

                case ConsoleKey.Q:
                    Environment.Exit(0);
                    break;
                }

                Console.ReadLine();
            }
        }
Example #23
0
    void Start()
    {
        // Load Controllers
        data     = GameObject.FindWithTag("Data").GetComponent <PersistentData>();
        animator = gameObject.GetComponent <Animator>();
        // Load Map Controllers
        Grid grid = FindObjectOfType <Grid>();

        foreach (Tilemap map in FindObjectsOfType <Tilemap>())
        {
            if (map.name == "FloorMap")
            {
                floorMap = map;
            }
            else if (map.name == "LeftWallMap")
            {
                leftWallMap = map;
            }
            else if (map.name == "RightWallMap")
            {
                rightWallMap = map;
            }
            else if (map.name == "BlockMap")
            {
                blockMap = map;
            }
        }
        dungeonController = floorMap.GetComponent <DungeonController>();
        if (dungeonController != null)
        {
            mapType        = "Dungeon";
            NotableCollide = dungeonController.NotableCollide;
            OpenDoor       = dungeonController.OpenDoor;
            OpenChest      = dungeonController.OpenChest;
        }
        villageController = floorMap.GetComponent <VillageController>();
        if (villageController != null)
        {
            mapType        = "Village";
            NotableCollide = villageController.NotableCollide;
            OpenDoor       = villageController.OpenDoor;
            FetchPosition  = villageController.FetchPosition;
        }
        maps = new Dictionary <string, Tilemap>();
        maps.Add("left", leftWallMap);
        maps.Add("right", rightWallMap);
        uiController = GameObject.Find("UICanvas").GetComponent <UIController>();
        canvas       = GameObject.FindWithTag("WorldCanvas");

        // Load Resources
        walkNames = new string[4] {
            "walkUp", "walkRight", "walkDown", "walkLeft"
        };
        attackNames = new string[4] {
            "attackUp", "attackRight", "attackDown", "attackLeft"
        };
        targetPosition = this.transform.position;
        textFab        = Resources.Load("Prefabs/DamageText") as GameObject;

        // Set Attributes
        tilePosition = new Vector3Int(0, 0, 0);
        if (FetchPosition != null)
        {
            tilePosition = FetchPosition();
            Vector3 pos = PathFinder.TileToWorld(tilePosition);
            pos.y += 0.25f;
            transform.position = pos;
            animator.CrossFade(walkNames[data.direction], 0f);
        }
        entities         = GameObject.FindWithTag("EntityList");
        entityController = entities.GetComponent <EntityController>();
        mainCamera       = GameObject.FindWithTag("MainCamera");
        Vector3 camVec = this.transform.position;

        camVec.z = -10;
        mainCamera.transform.position = camVec;
        facing = new string[2];
        maxhp  = 20;
        hp     = data.playerHp;
        if (hp == 0)
        {
            hp = maxhp;
        }
        food = data.food;
        uiController.UpdateBars();
        attack  = 5;
        defense = 5;
        speed   = 1;
        mindmg  = 0;
        maxdmg  = 0;
        armorDR = 0;
        EquipWeapon(data.weapon);
        if (data.armor != null)
        {
            EquipArmor(data.armor);
        }
        saySomething = "";
    }
Example #24
0
 public Stairs(DungeonController dgcontroller)
 {
     DgController = dgcontroller;
 }
 protected abstract void setStairs(DungeonController dgcontroller);
 public DungeonClearStairs(DungeonController dgcontroller)
     : base(dgcontroller)
 {
 }
Example #27
0
    private void Start()
    {
        dungeonRooms = DungeonController.GenerateDungeon(dungeonData);

        createRooms(dungeonRooms);
    }
Example #28
0
 void Awake()
 {
     Instance = this;
 }
Example #29
0
    void Awake()
    {
        data              = GameObject.FindWithTag("Data").GetComponent <PersistentData>();
        player            = GameObject.FindWithTag("Player").GetComponent <PlayerController>();
        enemies           = GameObject.FindWithTag("EntityList");
        dungeonController = gameObject.GetComponent <DungeonController>();
        loot              = GameObject.FindWithTag("Loot");

        notableCells = new Dictionary <string, Vector3Int>();

        // Load tile Resources into dictionaries
        tiles = new Dictionary <string, Tile>();
        tiles.Add("floor", Resources.Load <Tile>("Tiles/DungeonMap/floor"));
        tiles.Add("floor1", Resources.Load <Tile>("Tiles/DungeonMap/floor1"));
        tiles.Add("floor2", Resources.Load <Tile>("Tiles/DungeonMap/floor2"));
        tiles.Add("floor3", Resources.Load <Tile>("Tiles/DungeonMap/floor3"));
        tiles.Add("leftWall", Resources.Load <Tile>("Tiles/DungeonMap/leftWall"));
        tiles.Add("rightWall", Resources.Load <Tile>("Tiles/DungeonMap/rightWall"));
        tiles.Add("leftDoor", Resources.Load <Tile>("Tiles/DungeonMap/leftDoor"));
        tiles.Add("leftDoorOpen", Resources.Load <Tile>("Tiles/DungeonMap/leftDoorOpen"));
        tiles.Add("rightDoor", Resources.Load <Tile>("Tiles/DungeonMap/rightDoor"));
        tiles.Add("rightDoorOpen", Resources.Load <Tile>("Tiles/DungeonMap/rightDoorOpen"));
        tiles.Add("stairsUp", Resources.Load <Tile>("Tiles/DungeonMap/stairsUp"));
        tiles.Add("stairsDown", Resources.Load <Tile>("Tiles/DungeonMap/stairsDown"));
        tiles.Add("chest", Resources.Load <Tile>("Tiles/DungeonMap/chest"));

        clearTiles = new Dictionary <string, Tile>();
        clearTiles.Add("leftWall", Resources.Load <Tile>("Tiles/DungeonMap/leftClearWall"));
        clearTiles.Add("rightWall", Resources.Load <Tile>("Tiles/DungeonMap/rightClearWall"));
        clearTiles.Add("leftDoor", Resources.Load <Tile>("Tiles/DungeonMap/leftDoorClear"));
        clearTiles.Add("leftDoorOpen", Resources.Load <Tile>("Tiles/DungeonMap/leftDoorOpenClear"));
        clearTiles.Add("rightDoor", Resources.Load <Tile>("Tiles/DungeonMap/rightDoorClear"));
        clearTiles.Add("rightDoorOpen", Resources.Load <Tile>("Tiles/DungeonMap/rightDoorOpenClear"));

        // Load Enemy prefabs and likelyhood
        int twiceDepth = (data.depth - 1) * 2;

        enemyFabs  = new Dictionary <string, GameObject>();
        enemyWheel = new Dictionary <string, int>();
        enemyFabs.Add("Skeleton", Resources.Load("Prefabs/Skeleton") as GameObject);
        enemyFabs.Add("Skeleton Archer", Resources.Load("Prefabs/Skeleton Archer") as GameObject);
        enemyFabs.Add("Skeleton Brute", Resources.Load("Prefabs/Skeleton Brute") as GameObject);
        enemyFabs.Add("Skeleton Stabber", Resources.Load("Prefabs/Skeleton Stabber") as GameObject);
        enemyWheel.Add("Skeleton", 10);
        enemyWheel.Add("Skeleton Archer", twiceDepth + 1);
        enemyWheel.Add("Skeleton Brute", twiceDepth);
        enemyWheel.Add("Skeleton Stabber", twiceDepth);

        // Loot drop chances!
        lootFab     = Resources.Load("Prefabs/Loot Drop") as GameObject;
        lootWheel   = new Dictionary <string, int>();
        goldLedger  = new Dictionary <string, int>();
        goldSprites = new Dictionary <string, Sprite>();

        goldSprites.Add("small", Resources.Load <Sprite>("Gold"));
        goldSprites.Add("medium", Resources.Load <Sprite>("Gold Bar"));
        goldSprites.Add("large", Resources.Load <Sprite>("Gold Pile"));


        lootWheel.Add("Twig", 10);
        lootWheel.Add("Sharp Twig", 10);
        lootWheel.Add("Plank with a Nail", 10);
        lootWheel.Add("Club", 10);
        lootWheel.Add("Long Stick", 10);
        lootWheel.Add("Log", 10);

        lootWheel.Add("Rusty Shortsword", twiceDepth);
        lootWheel.Add("Half a Scissor", twiceDepth);
        lootWheel.Add("Copper Hatchet", twiceDepth);
        lootWheel.Add("Mallet", twiceDepth);
        lootWheel.Add("Flint Spear", twiceDepth);
        lootWheel.Add("Dog Chain", twiceDepth);

        lootWheel.Add("Dueling Sword", data.depth / 3);
        lootWheel.Add("Hunting Knife", data.depth / 3);
        lootWheel.Add("Woodcutter's Axe", data.depth / 3);
        lootWheel.Add("Hammer", data.depth / 3);
        lootWheel.Add("Wooden Pike", data.depth / 3);
        lootWheel.Add("Grain Scythe", data.depth / 3);

        lootWheel.Add("Leather Tunic", 10);
        lootWheel.Add("Bone Armor", 10);

        lootWheel.Add("Padded Vest", twiceDepth);
        lootWheel.Add("Cast Iron Plates", twiceDepth);
        lootWheel.Add("Fang Bracers", twiceDepth);

        lootWheel.Add("Light Leather Armor", data.depth / 3);
        lootWheel.Add("Gambeson", data.depth / 3);
        lootWheel.Add("Patchy Brigandine", data.depth / 3);

        lootWheel.Add("Health Potion", 30);

        foreach (Tilemap map in FindObjectsOfType <Tilemap>())
        {
            if (map.name == "FloorMap")
            {
                floorMap = map;
            }
            else if (map.name == "LeftWallMap")
            {
                leftWallMap = map;
            }
            else if (map.name == "RightWallMap")
            {
                rightWallMap = map;
            }
            else if (map.name == "BlockMap")
            {
                blockMap = map;
            }
        }

        // Gen Dungeon
        GenerateDungeon();

        dungeonController.UpdateNotables(notableCells);
    }
Example #30
0
 private void Awake()
 {
     DungeonController = GetComponent <DungeonController>();
 }
Example #31
0
 private void SelectRandomDungeon()
 {
     currentDungeon = dungeons.Random();
 }
Example #32
0
 protected override void setStairs(DungeonController dgcontroller)
 {
 }