mirror of
https://github.com/badvision/lawless-legends.git
synced 2025-03-03 16:29:06 +00:00
Fixed bug causing NPCs to never be attacked in combat.
This commit is contained in:
parent
80bc9c277c
commit
d29ac7ffea
@ -21,6 +21,7 @@ predef _combat_zoneEncounter(s_encZone)#1
|
||||
word[] funcTbl = @_combat_zoneEncounter
|
||||
|
||||
// Combat variables that don't need to be saved in game state
|
||||
byte nPartyFighting
|
||||
byte nPlayersFighting
|
||||
byte nEnemiesFighting
|
||||
byte isFleeing
|
||||
@ -724,7 +725,7 @@ def enemyCombatTurn(pe)#1
|
||||
byte roll, dam, needShow
|
||||
|
||||
// Choose a random target from amongst the fighting players
|
||||
roll = rand16() % nPlayersFighting
|
||||
roll = rand16() % nPartyFighting
|
||||
pl = select(global=>p_players, @canFight, roll)
|
||||
isPlural = FALSE
|
||||
displayf3("\n%s %s %s ", pe=>s_name, pe=>s_attackText, pl=>s_name)
|
||||
@ -772,7 +773,10 @@ def enemyCombatTurn(pe)#1
|
||||
pl=>w_health = max(0, pl=>w_health - dam)
|
||||
if pl=>w_health == 0
|
||||
displayf1(" %s is killed!", pl=>s_name)
|
||||
nPlayersFighting--
|
||||
nPartyFighting--
|
||||
if (!(pl->b_playerFlags & PLAYER_FLAG_NPC))
|
||||
nPlayersFighting--
|
||||
fin
|
||||
fin
|
||||
needShow = TRUE
|
||||
fin
|
||||
@ -808,6 +812,7 @@ end
|
||||
def determineCombatOrder()#0
|
||||
word p, p2
|
||||
|
||||
nPartyFighting = 0
|
||||
nPlayersFighting = 0
|
||||
nEnemiesFighting = 0
|
||||
|
||||
@ -818,8 +823,9 @@ def determineCombatOrder()#0
|
||||
if canFight(p)
|
||||
p->b_combatOrder = rand16() % (p->b_agility * 10)
|
||||
combatInsert(p)
|
||||
nPartyFighting++
|
||||
if (!(p->b_playerFlags & PLAYER_FLAG_NPC)) // only count real players
|
||||
nPlayersFighting = nPlayersFighting + 1
|
||||
nPlayersFighting++
|
||||
fin
|
||||
fin
|
||||
p = p=>p_nextObj
|
||||
|
Loading…
x
Reference in New Issue
Block a user