Browse Source

Fix struggles not checking the owner of the container

master
Fen Dweller 5 years ago
parent
commit
565966bb59
2 changed files with 4 additions and 4 deletions
  1. +2
    -2
      src/game/combat/actions.ts
  2. +2
    -2
      src/game/combat/conditions.ts

+ 2
- 2
src/game/combat/actions.ts View File

@@ -4,7 +4,7 @@ import { Entity, Creature } from '../entity'
import { Damage, DamageFormula, Stat, Vigor, Action } from '../combat'
import { LogLine, LogLines, LogEntry, CompositeLog } from '../interface'
import { VoreContainer, Container } from '../vore'
import { CapableCondition, UserDrainedVigorCondition, TogetherCondition, EnemyCondition, SoloCondition, PairCondition, ContainsCondition, ContainedCondition } from './conditions'
import { CapableCondition, UserDrainedVigorCondition, TogetherCondition, EnemyCondition, SoloCondition, PairCondition, ContainsCondition, ContainedByCondition } from './conditions'

export class AttackAction extends Action {
protected test: StatTest
@@ -138,7 +138,7 @@ export class StruggleAction extends Action {
super(
new DynText('Struggle (', new LiveText(container, x => x.name.all), ')'),
'Try to escape from your foe',
[new CapableCondition(), new PairCondition(), new ContainedCondition(container)]
[new CapableCondition(), new PairCondition(), new ContainedByCondition(container)]
)
this.test = new StatVigorTest(Stat.Power)
}


+ 2
- 2
src/game/combat/conditions.ts View File

@@ -56,9 +56,9 @@ export class TogetherCondition implements Condition {
}
}

export class ContainedCondition implements Condition {
export class ContainedByCondition implements Condition {
allowed (user: Creature, target: Creature): boolean {
return user.containedIn === this.container
return user.containedIn === this.container && this.container.owner === target
}

constructor (private container: Container) {


Loading…
Cancel
Save