Browse Source

Enable CV for Tal; make destroy-lines customizable

master
Fen Dweller 5 years ago
parent
commit
364157bf1b
2 changed files with 12 additions and 9 deletions
  1. +7
    -7
      src/game/creature.ts
  2. +5
    -2
      src/game/creatures/taluthus.ts

+ 7
- 7
src/game/creature.ts View File

@@ -289,11 +289,11 @@ export class Creature extends Entity {
}) })
} }


destroy (): LogEntry {
const line: SoloLine<Creature> = (victim) => new LogLine(
`${victim.name.capital} ${victim.name.conjugate(new Verb('die'))}`
)
destroyLine: SoloLine<Creature> = (victim) => new LogLine(
`${victim.name.capital} ${victim.name.conjugate(new Verb('die'))}`
)


destroy (): LogEntry {
const released: Array<Creature> = this.containers.flatMap(container => { const released: Array<Creature> = this.containers.flatMap(container => {
return container.contents.map(prey => { return container.contents.map(prey => {
prey.containedIn = this.containedIn prey.containedIn = this.containedIn
@@ -309,17 +309,17 @@ export class Creature extends Entity {
if (released.length > 0) { if (released.length > 0) {
if (this.containedIn === null) { if (this.containedIn === null) {
return new LogLines( return new LogLines(
line(this),
this.destroyLine(this),
new LogLine(names + ` spill out!`) new LogLine(names + ` spill out!`)
) )
} else { } else {
return new LogLines( return new LogLines(
line(this),
this.destroyLine(this),
new LogLine(names + ` spill out into ${this.containedIn.owner.name}'s ${this.containedIn.name}!`) new LogLine(names + ` spill out into ${this.containedIn.owner.name}'s ${this.containedIn.name}!`)
) )
} }
} else { } else {
return line(this)
return this.destroyLine(this)
} }
} }
} }

+ 5
- 2
src/game/creatures/taluthus.ts View File

@@ -4,6 +4,7 @@ import { MalePronouns, ProperNoun, Verb } from '../language'
import { Stomach, Bowels, Cock, Balls, anyVore, biconnectContainers, Tail } from '../vore' import { Stomach, Bowels, Cock, Balls, anyVore, biconnectContainers, Tail } from '../vore'
import { AttackAction, TransferAction, FeedAction, WillingTransferAction } from '../combat/actions' import { AttackAction, TransferAction, FeedAction, WillingTransferAction } from '../combat/actions'
import { VoreAI } from '../ai' import { VoreAI } from '../ai'
import { LogLine } from '../interface'


export class Taluthus extends Creature { export class Taluthus extends Creature {
constructor () { constructor () {
@@ -92,9 +93,11 @@ export class Taluthus extends Creature {
cock cock
) )


// this.containers.push(balls)
// this.containers.push(cock)
this.containers.push(balls)
this.containers.push(cock)


biconnectContainers(cock, balls) biconnectContainers(cock, balls)

this.destroyLine = victim => new LogLine(`${victim.name.capital} ${victim.name.conjugate(new Verb("yeet"))}`)
} }
} }

Loading…
Cancel
Save