2019-04-20 14:51:33 +02:00
|
|
|
#pragma once
|
|
|
|
#include "DungeonRoom.h"
|
|
|
|
#include "IntRect.h"
|
|
|
|
#include "Mathf.h"
|
|
|
|
#include "UnityEngine.h"
|
|
|
|
#include "Vector3.h"
|
|
|
|
#include "Voxelizzer.h"
|
2020-01-09 04:28:08 +01:00
|
|
|
#include <System/System.h>
|
2019-04-20 14:51:33 +02:00
|
|
|
|
|
|
|
using namespace UnityEngine;
|
|
|
|
using namespace VoxelToolbox;
|
|
|
|
using namespace System;
|
|
|
|
namespace BS {
|
2020-01-09 04:28:08 +01:00
|
|
|
namespace Levels {
|
|
|
|
namespace Generator {
|
|
|
|
class DungeonCorridor : public virtual Object {
|
|
|
|
private:
|
|
|
|
DungeonRoom *startRoom;
|
|
|
|
|
|
|
|
private:
|
|
|
|
DungeonRoom *endRoom;
|
|
|
|
|
|
|
|
public:
|
|
|
|
int size;
|
|
|
|
|
|
|
|
private:
|
|
|
|
IntRect *widthir;
|
|
|
|
|
|
|
|
private:
|
|
|
|
IntRect *heightir;
|
|
|
|
|
|
|
|
public:
|
|
|
|
DungeonRoom *getStartRoom();
|
|
|
|
|
|
|
|
public:
|
|
|
|
void setStartRoom(DungeonRoom *value);
|
|
|
|
|
|
|
|
public:
|
|
|
|
DungeonRoom *getEndRoom();
|
|
|
|
|
|
|
|
public:
|
|
|
|
void setEndRoom(DungeonRoom *value);
|
|
|
|
|
|
|
|
public:
|
|
|
|
DungeonCorridor(int size, DungeonRoom *startRoom, DungeonRoom *endRoom);
|
|
|
|
|
|
|
|
public:
|
|
|
|
void GenerateCorridor(ArrayND<char, 2> *dungeon);
|
|
|
|
|
|
|
|
private:
|
|
|
|
void Write(ArrayND<char, 2> *dungeon, IntRect *rect);
|
|
|
|
|
|
|
|
public:
|
|
|
|
virtual void GenerateAIPlayers(int level);
|
|
|
|
|
|
|
|
private:
|
|
|
|
void GenerateAIPlayers(int level, IntRect *rect);
|
|
|
|
};
|
|
|
|
} // namespace Generator
|
|
|
|
} // namespace Levels
|
|
|
|
} // namespace BS
|