aboutsummaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
Diffstat (limited to 'internal')
-rw-r--r--internal/game/sys_combat.go16
1 files changed, 8 insertions, 8 deletions
diff --git a/internal/game/sys_combat.go b/internal/game/sys_combat.go
index e05cfed..b37459e 100644
--- a/internal/game/sys_combat.go
+++ b/internal/game/sys_combat.go
@@ -104,18 +104,18 @@ func (g *Game) checkAggro(sess *net.Session) {
}
aggMob := mob
- rollAggro := func() (stop bool) {
+ keepRolling := func() (keep bool) {
if g.Combat.Get(p.Name) != nil {
- return true
+ return false
}
if aggMob.HP <= 0 || aggMob.RoomID != p.RoomID {
- return true
+ return false
}
if g.Combat.IsMobInCombat(aggMob.InstanceID) {
- return true
+ return false
}
if rollAggroRand() >= aggroChancePerTick {
- return false
+ return true
}
attacker := aggMob.Name
if !aggMob.Unique {
@@ -123,13 +123,13 @@ func (g *Game) checkAggro(sess *net.Session) {
}
sess.WriteLine(fmt.Sprintf("%s attacks you!", g.colorize(sess, "mob", attacker)))
g.startCombat(sess, p, aggMob)
- return true
+ return false
}
- if rollAggro() {
+ if !keepRolling() {
break
}
- g.Ticks.Subscribe(1, func() bool { return !rollAggro() })
+ g.Ticks.Subscribe(1, keepRolling)
break
}
}