From 00c6c84bdffc0b2c088eea9dc11a6e36e27278b2 Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Mon, 12 May 2025 00:09:10 +0200 Subject: [PATCH] slowed down fire --- complex.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/complex.cpp b/complex.cpp index 8ba01202..85d85447 100644 --- a/complex.cpp +++ b/complex.cpp @@ -2245,6 +2245,7 @@ EX namespace heat { manual_celllister cl; vector& allcells = currentmap->allcells(); + int siz = isize(offscreen_fire); for(int x: {0,1}) for(cell *c: x==0 ? allcells : offscreen_fire) { if(!cl.add(c)) continue; @@ -2342,10 +2343,15 @@ EX namespace heat { else if(cellHalfvine(c)) destroyHalfvine(c, waPartialFire, 6); else makeflame(c, qty, false); if(c->wparam < qty) c->wparam = qty; - offscreen2.push_back(c); if(c->land == laRose || c->land == laWildWest || c->land == laOvergrown || isHaunted(c->land) || c->land == laMountain || c->land == laIce) { - for(int j=c->mpdist-1; j>=7; j--) setdist(c, j, NULL); + if(randomPatternsMode || siz > 5000) { + /* do not add to offscreen2 so that the fire will spread later */ + if(c->mpdist == 8) continue; + } + else + for(int j=c->mpdist-1; j>=7; j--) setdist(c, j, NULL); } + offscreen2.push_back(c); } offscreen_fire = std::move(offscreen2);