mirror of
https://github.com/libretro/scummvm.git
synced 2025-03-06 18:27:26 +00:00
Fix bug which sometimes lead to some enemies never appear.
Remove some unused code. Give some vars and functions proper names. svn-id: r14902
This commit is contained in:
parent
8db0a7bb79
commit
010a781ada
@ -122,7 +122,6 @@ void Insane::initvars(void) {
|
|||||||
_keyboardDisable = 0;
|
_keyboardDisable = 0;
|
||||||
_needSceneSwitch = false;
|
_needSceneSwitch = false;
|
||||||
_idx2Exceeded = 0;
|
_idx2Exceeded = 0;
|
||||||
_memoryAllocatedNotOK = 0;
|
|
||||||
_lastKey = 0;
|
_lastKey = 0;
|
||||||
_tiresRustle = false;
|
_tiresRustle = false;
|
||||||
_keybOldDx = 0;
|
_keybOldDx = 0;
|
||||||
@ -156,7 +155,7 @@ void Insane::initvars(void) {
|
|||||||
_roadBumps = false;
|
_roadBumps = false;
|
||||||
_val211d = 0;
|
_val211d = 0;
|
||||||
_val213d = 0;
|
_val213d = 0;
|
||||||
_val215d = 0;
|
_metEnemiesListTail = 0;
|
||||||
_smlayer_room = 0;
|
_smlayer_room = 0;
|
||||||
_smlayer_room2 = 0;
|
_smlayer_room2 = 0;
|
||||||
_isBenCut = 0;
|
_isBenCut = 0;
|
||||||
@ -166,6 +165,9 @@ void Insane::initvars(void) {
|
|||||||
_iactSceneId = 0;
|
_iactSceneId = 0;
|
||||||
_iactSceneId2 = 0;
|
_iactSceneId2 = 0;
|
||||||
|
|
||||||
|
for (i = 0; i < 12; i++)
|
||||||
|
_metEnemiesList[i] = 0;
|
||||||
|
|
||||||
for (i = 0; i < 9; i++)
|
for (i = 0; i < 9; i++)
|
||||||
for (j = 0; j < 9; j++)
|
for (j = 0; j < 9; j++)
|
||||||
_enHdlVar[i][j] = 0;
|
_enHdlVar[i][j] = 0;
|
||||||
@ -451,7 +453,7 @@ void Insane::init_actStruct(int actornum, int actnum, int32 actorval, byte state
|
|||||||
}
|
}
|
||||||
|
|
||||||
void Insane::init_enemyStruct(int n, int32 handler, int32 initializer,
|
void Insane::init_enemyStruct(int n, int32 handler, int32 initializer,
|
||||||
int16 occurences, int32 maxdamage, int32 field_10,
|
int16 occurences, int32 maxdamage, int32 isEmpty,
|
||||||
int32 weapon, int32 sound, const char *filename,
|
int32 weapon, int32 sound, const char *filename,
|
||||||
int32 costume4, int32 costume6, int32 costume5,
|
int32 costume4, int32 costume6, int32 costume5,
|
||||||
int16 costumevar, int32 maxframe, int32 apprAnim) {
|
int16 costumevar, int32 maxframe, int32 apprAnim) {
|
||||||
@ -461,7 +463,7 @@ void Insane::init_enemyStruct(int n, int32 handler, int32 initializer,
|
|||||||
_enemy[n].initializer = initializer;
|
_enemy[n].initializer = initializer;
|
||||||
_enemy[n].occurences = occurences;
|
_enemy[n].occurences = occurences;
|
||||||
_enemy[n].maxdamage = maxdamage;
|
_enemy[n].maxdamage = maxdamage;
|
||||||
_enemy[n].field_10 = field_10;
|
_enemy[n].isEmpty = isEmpty;
|
||||||
_enemy[n].weapon = weapon;
|
_enemy[n].weapon = weapon;
|
||||||
_enemy[n].sound = sound;
|
_enemy[n].sound = sound;
|
||||||
strncpy(_enemy[n].filename, filename, 20);
|
strncpy(_enemy[n].filename, filename, 20);
|
||||||
@ -648,7 +650,6 @@ void Insane::readState(void) { // PATCH
|
|||||||
_actor[0].inventory[INV_DUST] = readArray(55) != 0;
|
_actor[0].inventory[INV_DUST] = readArray(55) != 0;
|
||||||
_actor[0].inventory[INV_HAND] = 1;
|
_actor[0].inventory[INV_HAND] = 1;
|
||||||
_actor[0].inventory[INV_BOOT] = 1;
|
_actor[0].inventory[INV_BOOT] = 1;
|
||||||
_enemy[EN_CAVEFISH].field_10 = readArray(56);
|
|
||||||
_smlayer_room = readArray(320);
|
_smlayer_room = readArray(320);
|
||||||
_smlayer_room2 = readArray(321);
|
_smlayer_room2 = readArray(321);
|
||||||
_posBrokenTruck = readArray(322);
|
_posBrokenTruck = readArray(322);
|
||||||
@ -667,8 +668,22 @@ void Insane::readState(void) { // PATCH
|
|||||||
_enemy[EN_VULTF2].occurences = readArray(334);
|
_enemy[EN_VULTF2].occurences = readArray(334);
|
||||||
_enemy[EN_VULTM2].occurences = readArray(335);
|
_enemy[EN_VULTM2].occurences = readArray(335);
|
||||||
_enemy[EN_CAVEFISH].occurences = readArray(336);
|
_enemy[EN_CAVEFISH].occurences = readArray(336);
|
||||||
_enemy[EN_VULTM2].field_10 = readArray(340);
|
_enemy[EN_VULTM2].isEmpty = readArray(340);
|
||||||
_enemy[EN_VULTF2].field_10 = readArray(339);
|
_enemy[EN_VULTF2].isEmpty = readArray(339);
|
||||||
|
_enemy[EN_CAVEFISH].isEmpty = readArray(56);
|
||||||
|
|
||||||
|
// Some sanity checks. There were submitted savefiles where these values were wrong
|
||||||
|
if (_enemy[EN_VULTM2].isEmpty != readArray(7))
|
||||||
|
error("Wrong INSANE parameters for EN_VULTM2 (%d %d). Please, report this",
|
||||||
|
_enemy[EN_VULTM2].isEmpty, readArray(7));
|
||||||
|
|
||||||
|
if (_enemy[EN_VULTF2].isEmpty != _actor[0].inventory[INV_CHAINSAW])
|
||||||
|
error("Wrong INSANE parameters for EN_VULTF2 (%d %d). Please, report this",
|
||||||
|
_enemy[EN_VULTF2].isEmpty, _actor[0].inventory[INV_CHAINSAW]);
|
||||||
|
|
||||||
|
if (_enemy[EN_CAVEFISH].isEmpty != readArray(8))
|
||||||
|
error("Wrong INSANE parameters for EN_CAVEFISH (%d %d). Please, report this",
|
||||||
|
_enemy[EN_CAVEFISH].isEmpty, readArray(8));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -691,47 +706,6 @@ void Insane::setupValues(void) {
|
|||||||
smush_warpMouse(160, 100, -1);
|
smush_warpMouse(160, 100, -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
// FIXME: it seems that in ScummVM it may be unused
|
|
||||||
void Insane::mainLoop(void) {
|
|
||||||
int32 resid;
|
|
||||||
|
|
||||||
while (!idx2Compare()) {
|
|
||||||
if(!(resid = idx2Tweak()))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
_vm->ensureResourceLoaded(rtSound, resid);
|
|
||||||
_vm->setResourceCounter(rtSound, resid, 1);
|
|
||||||
}
|
|
||||||
_vm->increaseResourceCounter();
|
|
||||||
|
|
||||||
while (!idx1Compare()) {
|
|
||||||
resid = idx1Tweak();
|
|
||||||
_vm->ensureResourceLoaded(rtCostume, resid);
|
|
||||||
_vm->setResourceCounter(rtCostume, resid, 1);
|
|
||||||
// smlayer_lock (rtCostume, resid);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (loadSceneData(_currSceneId, 0, 2)) {
|
|
||||||
_sceneData1Loaded = 0;
|
|
||||||
_objArray2[0] = 0;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
_sceneData1Loaded = 1;
|
|
||||||
if (idx1Compare() || idx2Compare()) {
|
|
||||||
_objArray2[0] = 0;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
_objArray2[0]++;
|
|
||||||
if (_objArray2[0] <= 5) {
|
|
||||||
_objArray2[0] = 0;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
smush_setToFinish();
|
|
||||||
loadSceneData(_currSceneId, 1, 2);
|
|
||||||
_memoryAllocatedNotOK = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool Insane::idx1Compare(void) {
|
bool Insane::idx1Compare(void) {
|
||||||
return _objArray1Idx == _objArray1Idx2;
|
return _objArray1Idx == _objArray1Idx2;
|
||||||
}
|
}
|
||||||
|
@ -105,7 +105,6 @@ class Insane {
|
|||||||
int16 _keyboardDisable;
|
int16 _keyboardDisable;
|
||||||
bool _needSceneSwitch;
|
bool _needSceneSwitch;
|
||||||
int32 _idx2Exceeded;
|
int32 _idx2Exceeded;
|
||||||
bool _memoryAllocatedNotOK;
|
|
||||||
int32 _lastKey;
|
int32 _lastKey;
|
||||||
bool _beenCheated;
|
bool _beenCheated;
|
||||||
bool _tiresRustle;
|
bool _tiresRustle;
|
||||||
@ -175,15 +174,15 @@ class Insane {
|
|||||||
bool _val115_;
|
bool _val115_;
|
||||||
int32 _val211d;
|
int32 _val211d;
|
||||||
int32 _val213d;
|
int32 _val213d;
|
||||||
int32 _val215d;
|
int32 _metEnemiesListTail;
|
||||||
int32 _val216d[12];
|
int32 _metEnemiesList[12];
|
||||||
|
|
||||||
struct enemy {
|
struct enemy {
|
||||||
int32 handler;
|
int32 handler;
|
||||||
int32 initializer;
|
int32 initializer;
|
||||||
int16 occurences;
|
int16 occurences;
|
||||||
int32 maxdamage;
|
int32 maxdamage;
|
||||||
int32 field_10;
|
int32 isEmpty;
|
||||||
int32 weapon;
|
int32 weapon;
|
||||||
int32 sound;
|
int32 sound;
|
||||||
char filename[20];
|
char filename[20];
|
||||||
@ -288,7 +287,6 @@ class Insane {
|
|||||||
int32 readArray(int item);
|
int32 readArray(int item);
|
||||||
void writeArray(int item, int value);
|
void writeArray(int item, int value);
|
||||||
|
|
||||||
void mainLoop(void);
|
|
||||||
bool idx1Compare(void);
|
bool idx1Compare(void);
|
||||||
bool idx2Compare(void);
|
bool idx2Compare(void);
|
||||||
int32 idx1Tweak(void);
|
int32 idx1Tweak(void);
|
||||||
@ -335,7 +333,7 @@ class Insane {
|
|||||||
void init_actStruct(int actornum, int actnum, int32 actorval, byte state,
|
void init_actStruct(int actornum, int actnum, int32 actorval, byte state,
|
||||||
int32 room, int32 animtilt, int32 tilt, int32 frame);
|
int32 room, int32 animtilt, int32 tilt, int32 frame);
|
||||||
void init_enemyStruct(int n, int32 handler, int32 initializer,
|
void init_enemyStruct(int n, int32 handler, int32 initializer,
|
||||||
int16 occurences, int32 maxdamage, int32 field_10,
|
int16 occurences, int32 maxdamage, int32 isEmpty,
|
||||||
int32 field_14, int32 sound, const char *filename,
|
int32 field_14, int32 sound, const char *filename,
|
||||||
int32 costume4, int32 costume6, int32 costume5,
|
int32 costume4, int32 costume6, int32 costume5,
|
||||||
int16 field_2C, int32 field_30, int32 field_34);
|
int16 field_2C, int32 field_30, int32 field_34);
|
||||||
@ -448,9 +446,9 @@ class Insane {
|
|||||||
bool isBitSet(int n);
|
bool isBitSet(int n);
|
||||||
void setBit(int n);
|
void setBit(int n);
|
||||||
void clearBit(int n);
|
void clearBit(int n);
|
||||||
void proc62(void);
|
void chooseEnemy(void);
|
||||||
void proc63(void);
|
void removeEmptyEnemies(void);
|
||||||
void proc64(int32);
|
void removeEnemyFromMetList(int32);
|
||||||
};
|
};
|
||||||
} // End of namespace Insane
|
} // End of namespace Insane
|
||||||
|
|
||||||
|
@ -2410,7 +2410,7 @@ void Insane::actor12Reaction(int32 buttons) {
|
|||||||
_actor[1].lost = true;
|
_actor[1].lost = true;
|
||||||
if (_actor[1].act[2].frame >= 18) {
|
if (_actor[1].act[2].frame >= 18) {
|
||||||
writeArray(7, 1);
|
writeArray(7, 1);
|
||||||
_enemy[EN_VULTM2].field_10 = 1;
|
_enemy[EN_VULTM2].isEmpty = 1;
|
||||||
queueSceneSwitch(12, 0, "getnitro.san", 0, 0, 0, 0);
|
queueSceneSwitch(12, 0, "getnitro.san", 0, 0, 0, 0);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -2467,7 +2467,7 @@ void Insane::actor12Reaction(int32 buttons) {
|
|||||||
|
|
||||||
if (_actor[1].act[2].frame >= 18 || ((_actor[1].x < 50 || _actor[1].x > 270) &&
|
if (_actor[1].act[2].frame >= 18 || ((_actor[1].x < 50 || _actor[1].x > 270) &&
|
||||||
_actor[1].act[2].frame >= 9)) {
|
_actor[1].act[2].frame >= 9)) {
|
||||||
_enemy[EN_CAVEFISH].field_10 = 1;
|
_enemy[EN_CAVEFISH].isEmpty = 1;
|
||||||
queueSceneSwitch(20, 0, "wr2_cvko.san", 64, 0, 0, 0);
|
queueSceneSwitch(20, 0, "wr2_cvko.san", 64, 0, 0, 0);
|
||||||
_actor[1].act[2].state = 38;
|
_actor[1].act[2].state = 38;
|
||||||
}
|
}
|
||||||
@ -2535,7 +2535,7 @@ void Insane::actor12Reaction(int32 buttons) {
|
|||||||
_actor[1].act[0].room = 0;
|
_actor[1].act[0].room = 0;
|
||||||
_actor[1].cursorX = 0;
|
_actor[1].cursorX = 0;
|
||||||
_actor[1].act[2].state = 114;
|
_actor[1].act[2].state = 114;
|
||||||
_enemy[EN_VULTF2].field_10 = 1;
|
_enemy[EN_VULTF2].isEmpty = 1;
|
||||||
smlayer_startVoice(275);
|
smlayer_startVoice(275);
|
||||||
break;
|
break;
|
||||||
case 114:
|
case 114:
|
||||||
|
@ -86,7 +86,7 @@ void Insane::iactScene1(byte *renderBitmap, int32 codecparam, int32 setupsan12,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (_approachAnim == -1) {
|
if (_approachAnim == -1) {
|
||||||
proc62(); //PATCH
|
chooseEnemy(); //PATCH
|
||||||
_approachAnim = _enemy[_currEnemy].apprAnim;
|
_approachAnim = _enemy[_currEnemy].apprAnim;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -183,26 +183,25 @@ void Insane::iactScene1(byte *renderBitmap, int32 codecparam, int32 setupsan12,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Insane::proc62(void) {
|
void Insane::chooseEnemy(void) {
|
||||||
debug(1, "Insane::proc62");
|
|
||||||
if (readArray(58) != 0)
|
if (readArray(58) != 0)
|
||||||
_enemy[EN_TORQUE].field_10 = 1;
|
_enemy[EN_TORQUE].isEmpty = 1;
|
||||||
|
|
||||||
if (_enemy[EN_TORQUE].occurences == 0) {
|
if (_enemy[EN_TORQUE].occurences == 0) {
|
||||||
_currEnemy = EN_TORQUE;
|
_currEnemy = EN_TORQUE;
|
||||||
_val215d++;
|
_metEnemiesListTail++;
|
||||||
_val216d[_val215d] = EN_TORQUE;
|
_metEnemiesList[_metEnemiesListTail] = EN_TORQUE;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
proc63();
|
removeEmptyEnemies();
|
||||||
|
|
||||||
int32 count, i, j, en, en2;
|
int32 count, i, j, en, en2;
|
||||||
bool notfound;
|
bool notfound;
|
||||||
|
|
||||||
en = 0;
|
en = 0;
|
||||||
for (i = 0; i < 9; i++)
|
for (i = 0; i < 9; i++)
|
||||||
if (_enemy[i].field_10 == 0)
|
if (_enemy[i].isEmpty == 0)
|
||||||
++en;
|
++en;
|
||||||
|
|
||||||
en -= 4;
|
en -= 4;
|
||||||
@ -220,16 +219,16 @@ void Insane::proc62(void) {
|
|||||||
|
|
||||||
notfound = true;
|
notfound = true;
|
||||||
|
|
||||||
if (_enemy[en2].field_10 != 0)
|
if (_enemy[en2].isEmpty != 0)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (0 < _val215d) {
|
if (0 < _metEnemiesListTail) {
|
||||||
i = 0;
|
i = 0;
|
||||||
do {
|
do {
|
||||||
if (en2 == _val216d[i + 1])
|
if (en2 == _metEnemiesList[i + 1])
|
||||||
notfound = false;
|
notfound = false;
|
||||||
i++;
|
i++;
|
||||||
} while (i < _val215d && notfound);
|
} while (i < _metEnemiesListTail && notfound);
|
||||||
}
|
}
|
||||||
if (!notfound) {
|
if (!notfound) {
|
||||||
continue;
|
continue;
|
||||||
@ -239,29 +238,29 @@ void Insane::proc62(void) {
|
|||||||
do {
|
do {
|
||||||
notfound = true;
|
notfound = true;
|
||||||
en2 = j;
|
en2 = j;
|
||||||
if (0 < _val215d) {
|
if (0 < _metEnemiesListTail) {
|
||||||
i = 0;
|
i = 0;
|
||||||
do {
|
do {
|
||||||
if (en2 == _val216d[i + 1])
|
if (en2 == _metEnemiesList[i + 1])
|
||||||
notfound = false;
|
notfound = false;
|
||||||
i++;
|
i++;
|
||||||
} while (i < _val215d && notfound);
|
} while (i < _metEnemiesListTail && notfound);
|
||||||
}
|
}
|
||||||
j++;
|
j++;
|
||||||
} while (j < 9 && !notfound);
|
} while (j < 9 && !notfound);
|
||||||
if (!notfound) {
|
if (!notfound) {
|
||||||
_val215d = 0;
|
_metEnemiesListTail = 0;
|
||||||
count = 0;
|
count = 0;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
++_val215d;
|
++_metEnemiesListTail;
|
||||||
assert(_val215d < ARRAYSIZE(_val216d));
|
assert(_metEnemiesListTail < ARRAYSIZE(_metEnemiesList));
|
||||||
_val216d[_val215d] = en2;
|
_metEnemiesList[_metEnemiesListTail] = en2;
|
||||||
|
|
||||||
if (_val215d >= en) {
|
if (_metEnemiesListTail >= en) {
|
||||||
proc64(0);
|
removeEnemyFromMetList(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (notfound)
|
if (notfound)
|
||||||
@ -271,25 +270,25 @@ void Insane::proc62(void) {
|
|||||||
_currEnemy = en2;
|
_currEnemy = en2;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Insane::proc63(void) {
|
void Insane::removeEmptyEnemies(void) {
|
||||||
if (_val215d > 0) {
|
if (_metEnemiesListTail > 0) {
|
||||||
for (int i = 0; i < _val215d; i++)
|
for (int i = 0; i < _metEnemiesListTail; i++)
|
||||||
if (_enemy[i].field_10 == 1)
|
if (_enemy[i].isEmpty == 1)
|
||||||
proc64(i);
|
removeEnemyFromMetList(i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Insane::proc64(int32 enemy1) {
|
void Insane::removeEnemyFromMetList(int32 enemy1) {
|
||||||
if (enemy1 >= _val215d)
|
if (enemy1 >= _metEnemiesListTail)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int en = enemy1;
|
int en = enemy1;
|
||||||
do {
|
do {
|
||||||
++en;
|
++en;
|
||||||
assert(en + 1 < ARRAYSIZE(_val216d));
|
assert(en + 1 < ARRAYSIZE(_metEnemiesList));
|
||||||
_val216d[en] = _val216d[en + 1];
|
_metEnemiesList[en] = _metEnemiesList[en + 1];
|
||||||
} while (en < _val215d);
|
} while (en < _metEnemiesListTail);
|
||||||
_val215d--;
|
_metEnemiesListTail--;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Insane::iactScene3(byte *renderBitmap, int32 codecparam, int32 setupsan12,
|
void Insane::iactScene3(byte *renderBitmap, int32 codecparam, int32 setupsan12,
|
||||||
|
@ -148,7 +148,7 @@ void Insane::runScene(int arraynum) {
|
|||||||
writeArray(53, _actor[0].inventory[INV_2X4]);
|
writeArray(53, _actor[0].inventory[INV_2X4]);
|
||||||
writeArray(54, _actor[0].inventory[INV_WRENCH]);
|
writeArray(54, _actor[0].inventory[INV_WRENCH]);
|
||||||
writeArray(55, _actor[0].inventory[INV_DUST]);
|
writeArray(55, _actor[0].inventory[INV_DUST]);
|
||||||
writeArray(56, _enemy[EN_CAVEFISH].field_10);
|
writeArray(56, _enemy[EN_CAVEFISH].isEmpty);
|
||||||
writeArray(337, _enemy[EN_TORQUE].occurences);
|
writeArray(337, _enemy[EN_TORQUE].occurences);
|
||||||
writeArray(329, _enemy[EN_ROTT1].occurences);
|
writeArray(329, _enemy[EN_ROTT1].occurences);
|
||||||
writeArray(330, _enemy[EN_ROTT2].occurences);
|
writeArray(330, _enemy[EN_ROTT2].occurences);
|
||||||
@ -158,14 +158,11 @@ void Insane::runScene(int arraynum) {
|
|||||||
writeArray(334, _enemy[EN_VULTF2].occurences);
|
writeArray(334, _enemy[EN_VULTF2].occurences);
|
||||||
writeArray(335, _enemy[EN_VULTM2].occurences);
|
writeArray(335, _enemy[EN_VULTM2].occurences);
|
||||||
writeArray(336, _enemy[EN_CAVEFISH].occurences);
|
writeArray(336, _enemy[EN_CAVEFISH].occurences);
|
||||||
writeArray(339, _enemy[EN_VULTF2].field_10);
|
writeArray(339, _enemy[EN_VULTF2].isEmpty);
|
||||||
writeArray(340, _enemy[EN_VULTM2].field_10);
|
writeArray(340, _enemy[EN_VULTM2].isEmpty);
|
||||||
}
|
}
|
||||||
// insane_unlock(); // FIXME
|
// insane_unlock(); // FIXME
|
||||||
_vm->_sound->stopAllSounds(); // IMUSE_StopAllSounds();
|
_vm->_sound->stopAllSounds(); // IMUSE_StopAllSounds();
|
||||||
if (_memoryAllocatedNotOK) {
|
|
||||||
error("Memory Alloc Error in Mineroad (Heap Size?)");
|
|
||||||
}
|
|
||||||
|
|
||||||
delete _player;
|
delete _player;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user