mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2024-11-24 13:27:17 +00:00
Merge pull request #282 from jruderman/terra_wparam
Fix terra statue interactions with Chaos+Icy, BSoC swap, Alch dup
This commit is contained in:
commit
ba3c117d97
@ -1369,7 +1369,7 @@ void celldrawer::draw_features() {
|
||||
|
||||
case waTerraWarrior:
|
||||
#if CAP_COMPLEX2
|
||||
drawTerraWarrior(V, terracotta::randterra ? (c->landparam & 7) : (5 - (c->landparam & 7)), 7, 0);
|
||||
drawTerraWarrior(V, terracotta::randterra ? (c->wparam & 7) : (5 - (c->wparam & 7)), 7, 0);
|
||||
#endif
|
||||
break;
|
||||
|
||||
@ -2222,7 +2222,7 @@ void celldrawer::draw_wall_full() {
|
||||
if(c->wall == waFireTrap)
|
||||
asciicol = trapcol[c->wparam & 3];
|
||||
if(c->wall == waTerraWarrior)
|
||||
asciicol = terracol[c->landparam & 7];
|
||||
asciicol = terracol[c->wparam & 7];
|
||||
|
||||
if(c->wall == waMineOpen) {
|
||||
int mines = countMinesAround(c);
|
||||
|
12
complex2.cpp
12
complex2.cpp
@ -654,15 +654,15 @@ EX void check(cell *c) {
|
||||
if(c->wall == waTerraWarrior && !c->monst && !racing::on) {
|
||||
bool live = false;
|
||||
if(randterra) {
|
||||
c->landparam++;
|
||||
if((c->landparam == 3 && hrand(3) == 0) ||
|
||||
(c->landparam == 4 && hrand(2) == 0) ||
|
||||
c->landparam == 5)
|
||||
c->wparam++;
|
||||
if((c->wparam == 3 && hrand(3) == 0) ||
|
||||
(c->wparam == 4 && hrand(2) == 0) ||
|
||||
c->wparam == 5)
|
||||
live = true;
|
||||
}
|
||||
else {
|
||||
c->landparam--;
|
||||
live = !c->landparam;
|
||||
c->wparam--;
|
||||
live = !c->wparam;
|
||||
}
|
||||
if(live)
|
||||
c->monst = moTerraWarrior,
|
||||
|
2
help.cpp
2
help.cpp
@ -944,7 +944,7 @@ EX void describeMouseover() {
|
||||
out += ", "; out += XLAT1(winf[c->wall].name);
|
||||
|
||||
if(c->wall == waRose) out += " (" + its(7-rosephase) + ")";
|
||||
if(c->wall == waTerraWarrior) out += " (" + its(c->landparam) + ")";
|
||||
if(c->wall == waTerraWarrior) out += " (" + its(c->wparam) + ")";
|
||||
#if CAP_COMPLEX2
|
||||
if(isDie(c->wall)) out += " (" + dice::describe(c) + ")";
|
||||
#endif
|
||||
|
@ -1198,11 +1198,11 @@ EX void giantLandSwitch(cell *c, int d, cell *from) {
|
||||
createArrowTrapAt(c, laTerracotta);
|
||||
if(pseudohept(c) && hrand(100) < 40 && c->wall == waNone && !racing::on) {
|
||||
c->wall = waTerraWarrior;
|
||||
c->landparam = terracotta::randterra ? 0 : 3 + hrand(3);
|
||||
c->wparam = terracotta::randterra ? 0 : 3 + hrand(3);
|
||||
if(hrand(100) < items[itTerra]-10)
|
||||
c->landparam--;
|
||||
c->wparam--;
|
||||
if(hrand(100) < items[itTerra]-10)
|
||||
c->landparam--;
|
||||
c->wparam--;
|
||||
}
|
||||
}
|
||||
if(d == 7) {
|
||||
|
Loading…
Reference in New Issue
Block a user