add more monsters

This commit is contained in:
Andrew Pamment 2025-04-22 12:31:58 +10:00
parent 4d7183f380
commit a8ab13f978

52
Map.cpp
View File

@ -187,22 +187,46 @@ void Map::createRoom(bool first, int x1, int y1, int x2, int y2, bool withActors
void Map::addMonster(int x, int y) { void Map::addMonster(int x, int y) {
TCODRandom* rng = TCODRandom::getInstance(); TCODRandom* rng = TCODRandom::getInstance();
if (rng->getInt(0, 100) < 80) { if (rng->getInt(0, 100) < 80) {
// create an orc // create weak monster
Actor* orc = new Actor(x, y, "o", "orc", if (engine->level < 5) {
engine->gui->green); // create an rat
orc->destructible = new MonsterDestructible(10, 0, "dead orc", 5); Actor* orc = new Actor(x, y, "r", "rat",
orc->attacker = new Attacker(3); engine->gui->purple);
orc->ai = new MonsterAi(); orc->destructible = new MonsterDestructible(10, 0, "dead rat", 5);
engine->actors.push(orc); orc->attacker = new Attacker(3);
orc->ai = new MonsterAi();
engine->actors.push(orc);
}
else {
// create an orc
Actor* orc = new Actor(x, y, "o", "orc",
engine->gui->green);
orc->destructible = new MonsterDestructible(15, 0, "dead orc", 7);
orc->attacker = new Attacker(4.5f);
orc->ai = new MonsterAi();
engine->actors.push(orc);
}
} }
else { else {
// create a troll // create strong monster
Actor* troll = new Actor(x, y, "T", "troll", if (engine->level < 5) {
engine->gui->lightGreen); // create an snake
troll->destructible = new MonsterDestructible(16, 1, "troll carcass", 10); Actor* orc = new Actor(x, y, "S", "snake",
troll->attacker = new Attacker(4); engine->gui->green);
troll->ai = new MonsterAi(); orc->destructible = new MonsterDestructible(16, 0, "dead snake", 10);
engine->actors.push(troll); orc->attacker = new Attacker(4);
orc->ai = new MonsterAi();
engine->actors.push(orc);
}
else {
// create a troll
Actor* troll = new Actor(x, y, "T", "troll",
engine->gui->lightGreen);
troll->destructible = new MonsterDestructible(20, 1, "troll carcass", 15);
troll->attacker = new Attacker(7);
troll->ai = new MonsterAi();
engine->actors.push(troll);
}
} }
} }