mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-01-23 15:36:59 +00:00
living monsters awaken terracotta; salamanders stunned by fire too
This commit is contained in:
parent
7f0df70f9e
commit
d2353dd13c
10
game.cpp
10
game.cpp
@ -3022,6 +3022,8 @@ void moveEffect(cell *ct, cell *cf, eMonster m) {
|
||||
if(cf) destroyWeakBranch(cf, ct, m);
|
||||
|
||||
mayExplodeMine(ct, m);
|
||||
|
||||
if(!isNonliving(m)) terracottaAround(ct);
|
||||
|
||||
if(ct->wall == waMineUnknown && !ct->item && !ignoresPlates(m))
|
||||
ct->landparam |= 2; // mark as safe
|
||||
@ -5259,7 +5261,8 @@ void moverefresh(bool turn = true) {
|
||||
}
|
||||
|
||||
else if(isFire(c)) {
|
||||
if(c->monst && !survivesFire(c->monst) && !isWorm(c->monst)) {
|
||||
if(c->monst == moSalamander) c->stuntime = max<int>(c->stuntime, 1);
|
||||
else if(c->monst && !survivesFire(c->monst) && !isWorm(c->monst)) {
|
||||
addMessage(XLAT("%The1 burns!", c->monst));
|
||||
if(isBull(c->monst)) {
|
||||
addMessage(XLAT("Fire is extinguished!"));
|
||||
@ -6647,6 +6650,11 @@ void terracotta(cell *c) {
|
||||
}
|
||||
}
|
||||
|
||||
void terracottaAround(cell *c) {
|
||||
forCellEx(c2, c)
|
||||
terracotta(c2);
|
||||
}
|
||||
|
||||
void terracotta() {
|
||||
for(int i=0; i<numplayers(); i++)
|
||||
forCellEx(c, playerpos(i)) {
|
||||
|
Loading…
Reference in New Issue
Block a user