修改非空断言可能会导致的崩溃错误

This commit is contained in:
2025-10-11 16:55:43 +08:00
parent 75c483103e
commit 32b17ddfcc
4 changed files with 63 additions and 27 deletions

View File

@@ -68,12 +68,15 @@ export class GameManager
{
continue;
}
let characterName = this.mCharacterNames.pop()!;
let characterName = this.mCharacterNames.pop() ?? "";
sortPlayers[i].mCharacterName = characterName;
if(characterName == "飞鸟千寻")
{
let player = aPlayers.get(sortPlayers[i].mCurrentEnemy)!;
player.mCharacterName = "高桥林佑";
let player = aPlayers.get(sortPlayers[i].mCurrentEnemy);
if(player)
{
player.mCharacterName = "高桥林佑";
}
}
}
}
@@ -87,7 +90,7 @@ export class GameManager
player.mRank = 1;
if(this.mCharacterNames.length > 0)
{
player.mCharacterName = this.mCharacterNames.pop()!;
player.mCharacterName = this.mCharacterNames.pop() ?? "";
}
return;
}
@@ -102,7 +105,7 @@ export class GameManager
while (temp.size > 0)
{
const iterator = temp.keys();
const playerID = iterator.next().value!;
const playerID = iterator.next().value ?? "";
let player = temp.get(playerID);
if(!player)
{
@@ -110,13 +113,22 @@ export class GameManager
}
if(player.mIsResting)
{
restRound = [player, this.mGameFightPlayer.get(player.mCurrentEnemy)!],
let enemy = this.mGameFightPlayer.get(player.mCurrentEnemy);
if(!enemy)
{
return;
}
restRound = [player, enemy],
temp.delete(playerID);
continue;
}
else
{
let enemy = temp.get(player.mCurrentEnemy)!;
let enemy = temp.get(player.mCurrentEnemy);
if(!enemy)
{
return;
}
if(player.mAgile >= enemy.mAgile)//palyer 敏捷高
{
this.claculatePlayerHp(player, enemy);