示例#1
0
        public EnemyManager(renderable player, cHealth playerHealth, int enemyCount, NullEngine.StateMachine.iState parentState)
        {
            if (man == null)
            {
                man = this;
            }
            else
            {
                throw new SingletonException(this);
            }

            updaters        = new List <Action>();
            activeEnemies   = new List <int>();
            playerCharacter = player;
            level           = 0;
            //initialize eneimes
            enemies = new quad[enemyCount];
            for (int j = 0; j < enemies.Length; j++)
            {
                enemies[j] = new quad("Game/Content/roguelikeCharBeard_transparent.png", parentState);
                cCollider badguyCollider = new cCollider(enemies[j]);
                enemies[j].AddComponent(new cDamagePlayer(playerCharacter, playerHealth, 1, badguyCollider));
                enemies[j].AddComponent(badguyCollider);
                enemies[j].AddComponent(new cEnemyAI(3, badguyCollider, playerCharacter, 300));
                enemies[j].active = false;
                updaters.Add(enemies[j].update);
            }
        }
示例#2
0
        public WorldGenerator(int seed, int worldSize, int chunkSize, double scale, int tileSize, CollisionManager collisionManager, NullEngine.StateMachine.iState parent)
        {
            cMan          = collisionManager;
            parentState   = parent;
            noise         = new OpenSimplexNoise(seed);
            this.scale    = scale;
            this.tileSize = tileSize;

            wData    = new WorldData(seed, worldSize, chunkSize, "Game/Content/overworld.png");
            Game.rng = new Random(seed);
            GenerateWorldData();
        }
示例#3
0
        public WorldManager(int seed, int worldSize, int chunkSize, double scale, int tileSize, CollisionManager collisionManager, Point curretChunk, NullEngine.StateMachine.iState parent)
        {
            if (man == null)
            {
                man = this;
            }
            else
            {
                throw new SingletonException(this);
            }

            worldSizeX      = worldSize;
            worldSizeY      = worldSize;
            chunkSizeX      = chunkSize;
            chunkSizeY      = chunkSize;
            currentChunkPos = curretChunk;
            currentChunk    = new Chunk(chunkSize, currentChunkPos.X, currentChunkPos.Y);

            this.tileSize = tileSize;
            this.scale    = scale;

            wGen          = new WorldGenerator(seed, worldSize, chunkSize, scale, tileSize, collisionManager, parent);
            worldFileLoc += seed.ToString() + "/";
            worldCache    = new Dictionary <Point, Chunk>();
            LoadChunk();
        }