Skip to content

Commit eac6c35

Browse files
StephenCWillsAJenbo
authored andcommitted
Natural Fire Wall light expansion
1 parent f68a00d commit eac6c35

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

Source/missiles.cpp

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2975,7 +2975,8 @@ void ProcessAcidPuddle(Missile &missile)
29752975

29762976
void ProcessFireWall(Missile &missile)
29772977
{
2978-
constexpr int ExpLight[14] = { 2, 3, 4, 5, 5, 6, 7, 8, 9, 10, 11, 12, 12 };
2978+
constexpr int ExpLightLen = 12;
2979+
constexpr int ExpLight[ExpLightLen] = { 2, 3, 4, 5, 5, 6, 7, 8, 9, 10, 11, 12 };
29792980

29802981
missile.duration--;
29812982
if (missile.duration == missile.var1) {
@@ -2992,10 +2993,12 @@ void ProcessFireWall(Missile &missile)
29922993
missile._miDelFlag = true;
29932994
AddUnLight(missile._mlid);
29942995
}
2995-
if (missile._mimfnum != 0 && missile.duration != 0 && missile._miAnimAdd != -1 && missile.var2 < 12) {
2996+
constexpr int MaxExpLightIndex = ExpLightLen - 1;
2997+
if (missile._mimfnum == 0 && missile.duration != 0 && missile.var2 <= MaxExpLightIndex * 2) {
29962998
if (missile.var2 == 0)
29972999
missile._mlid = AddLight(missile.position.tile, ExpLight[0]);
2998-
ChangeLight(missile._mlid, missile.position.tile, ExpLight[missile.var2]);
3000+
int expLightIndex = MaxExpLightIndex - std::abs(missile.var2 - MaxExpLightIndex);
3001+
ChangeLight(missile._mlid, missile.position.tile, ExpLight[expLightIndex]);
29993002
missile.var2++;
30003003
}
30013004
PutMissile(missile);

0 commit comments

Comments
 (0)