Browse Source

modify AddMissile() parameters and remove Missiles[] in MissToMonst()

pull/2705/head
BC Ko 5 years ago committed by Anders Jenbo
parent
commit
373adcf65b
  1. 2
      Source/missiles.cpp
  2. 11
      Source/monster.cpp
  3. 2
      Source/monster.h

2
Source/missiles.cpp

@ -3839,7 +3839,7 @@ void MI_Rhino(MissileStruct &missile)
UpdateMissilePos(missile);
Point newPos = missile.position.tile;
if (!IsTileAvailable(monster, newPos) || (monster._mAi == AI_SNAKE && !IsTileAvailable(monster, newPosSnake))) {
MissToMonst(i, prevPos);
MissToMonst(missile, prevPos);
missile._miDelFlag = true;
return;
}

11
Source/monster.cpp

@ -4769,19 +4769,16 @@ void PlayEffect(MonsterStruct &monster, int mode)
#endif
}
void MissToMonst(int i, Point position)
void MissToMonst(MissileStruct &missile, Point position)
{
assert(i >= 0 && i < MAXMISSILES);
MissileStruct *miss = &Missiles[i];
int m = miss->_misource;
int m = missile._misource;
assert(m >= 0 && m < MAXMONSTERS);
auto &monster = Monsters[m];
Point oldPosition = miss->position.tile;
Point oldPosition = missile.position.tile;
dMonster[position.x][position.y] = m + 1;
monster._mdir = static_cast<Direction>(miss->_mimfnum);
monster._mdir = static_cast<Direction>(missile._mimfnum);
monster.position.tile = position;
M_StartStand(monster, monster._mdir);
if (monster.MType->mtype < MT_INCIN || monster.MType->mtype > MT_HELLBURN) {

2
Source/monster.h

@ -275,7 +275,7 @@ void M_FallenFear(Point position);
void PrintMonstHistory(int mt);
void PrintUniqueHistory();
void PlayEffect(MonsterStruct &monster, int mode);
void MissToMonst(int i, Point position);
void MissToMonst(MissileStruct &missile, Point position);
bool IsTileAvailable(const MonsterStruct &monster, Point position);
bool IsSkel(int mt);
bool IsGoat(int mt);

Loading…
Cancel
Save