Procházet zdrojové kódy

Update containers to have a capacity based on the owner's mass

master
Fen Dweller před 5 roky
rodič
revize
eee1a721ad
11 změnil soubory, kde provedl 45 přidání a 35 odebrání
  1. +2
    -2
      src/game/creatures/cafat.ts
  2. +2
    -2
      src/game/creatures/dragon.ts
  3. +6
    -6
      src/game/creatures/geta.ts
  4. +1
    -1
      src/game/creatures/kenzie.ts
  5. +4
    -4
      src/game/creatures/kuro.ts
  6. +2
    -2
      src/game/creatures/player.ts
  7. +3
    -3
      src/game/creatures/shingo.ts
  8. +3
    -3
      src/game/creatures/withers.ts
  9. +6
    -6
      src/game/creatures/wolf.ts
  10. +5
    -1
      src/game/vore.ts
  11. +11
    -5
      src/game/words.ts

+ 2
- 2
src/game/creatures/cafat.ts Zobrazit soubor

@@ -83,7 +83,7 @@ export class Cafat extends Creature {

this.side = Side.Monsters

const stomach = new Stomach(this, 100, new Damage(
const stomach = new Stomach(this, 1, new Damage(
{ amount: 20, type: DamageType.Acid, target: Vigor.Health },
{ amount: 10, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 10, type: DamageType.Dominance, target: Vigor.Resolve }
@@ -93,7 +93,7 @@ export class Cafat extends Creature {

this.containers.push(stomach)

const lowerStomach = new InnerStomach(this, 100, new Damage(
const lowerStomach = new InnerStomach(this, 1.5, new Damage(
{ amount: 40, type: DamageType.Acid, target: Vigor.Health },
{ amount: 20, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 20, type: DamageType.Dominance, target: Vigor.Resolve }


+ 2
- 2
src/game/creatures/dragon.ts Zobrazit soubor

@@ -20,7 +20,7 @@ export class Dragon extends Creature {

this.side = Side.Monsters

const stomach = new Stomach(this, 200, new Damage(
const stomach = new Stomach(this, 0.5, new Damage(
{ amount: 40, type: DamageType.Acid, target: Vigor.Health },
{ amount: 20, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 20, type: DamageType.Dominance, target: Vigor.Resolve }
@@ -28,7 +28,7 @@ export class Dragon extends Creature {

this.containers.push(stomach)

const bowels = new Bowels(this, 200, new Damage(
const bowels = new Bowels(this, 0.5, new Damage(
{ amount: 10, type: DamageType.Crush, target: Vigor.Health },
{ amount: 25, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 50, type: DamageType.Dominance, target: Vigor.Resolve }


+ 6
- 6
src/game/creatures/geta.ts Zobrazit soubor

@@ -18,19 +18,19 @@ export class Geta extends Creature {
{ Toughness: 10, Power: 10, Speed: 30, Willpower: 15, Charm: 40 },
new Set([VoreType.Oral, VoreType.Anal, VoreType.Cock]),
new Set([VoreType.Oral, VoreType.Anal, VoreType.Cock]),
100
40
)

this.side = Side.Monsters

const stomach = new Stomach(this, 10, new Damage(
const stomach = new Stomach(this, 0.25, new Damage(
{ amount: 100, type: DamageType.Acid, target: Vigor.Health },
{ amount: 40, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 80, type: DamageType.Dominance, target: Vigor.Resolve }
))
this.containers.push(stomach)

const bowels = new Bowels(this, 10, new Damage(
const bowels = new Bowels(this, 0.25, new Damage(
{ amount: 30, type: DamageType.Crush, target: Vigor.Health },
{ amount: 90, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 120, type: DamageType.Dominance, target: Vigor.Resolve }
@@ -42,7 +42,7 @@ export class Geta extends Creature {

this.otherActions.push(new FeedAction(stomach))

const cock = new Cock(this, 10, new Damage(
const cock = new Cock(this, 0.25, new Damage(
{ amount: 10, type: DamageType.Crush, target: Vigor.Health },
{ amount: 50, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 150, type: DamageType.Dominance, target: Vigor.Resolve }
@@ -85,7 +85,7 @@ export class Geta extends Creature {
)
)

const balls = new Balls(this, 10, new Damage(
const balls = new Balls(this, 0.25, new Damage(
{ amount: 50, type: DamageType.Acid, target: Vigor.Health },
{ amount: 25, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 50, type: DamageType.Dominance, target: Vigor.Resolve }
@@ -152,7 +152,7 @@ export class Geta extends Creature {
crushAction
)

const hand = new Hand(this, 10)
const hand = new Hand(this, 0.25)

this.otherContainers.push(
hand


+ 1
- 1
src/game/creatures/kenzie.ts Zobrazit soubor

@@ -39,7 +39,7 @@ export class Kenzie extends Creature {

this.side = Side.Monsters

const stomach = new Stomach(this, 50, new Damage(
const stomach = new Stomach(this, 0.1, new Damage(
{ amount: 100, type: DamageType.Acid, target: Vigor.Health },
{ amount: 100, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 100, type: DamageType.Dominance, target: Vigor.Resolve }


+ 4
- 4
src/game/creatures/kuro.ts Zobrazit soubor

@@ -18,14 +18,14 @@ export class Kuro extends Creature {

this.side = Side.Monsters

const stomach = new Stomach(this, 50, new Damage(
const stomach = new Stomach(this, 0.5, new Damage(
{ amount: 100, type: DamageType.Acid, target: Vigor.Health },
{ amount: 40, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 80, type: DamageType.Dominance, target: Vigor.Resolve }
))
this.containers.push(stomach)

const bowels = new Bowels(this, 50, new Damage(
const bowels = new Bowels(this, 0.5, new Damage(
{ amount: 30, type: DamageType.Crush, target: Vigor.Health },
{ amount: 90, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 120, type: DamageType.Dominance, target: Vigor.Resolve }
@@ -37,13 +37,13 @@ export class Kuro extends Creature {

this.otherActions.push(new FeedAction(stomach))

const cock = new Cock(this, 50, new Damage(
const cock = new Cock(this, 0.5, new Damage(
{ amount: 10, type: DamageType.Crush, target: Vigor.Health },
{ amount: 30, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 30, type: DamageType.Dominance, target: Vigor.Resolve }
))

const balls = new Balls(this, 50, new Damage(
const balls = new Balls(this, 0.5, new Damage(
{ amount: 50, type: DamageType.Acid, target: Vigor.Health },
{ amount: 25, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 150, type: DamageType.Dominance, target: Vigor.Resolve }


+ 2
- 2
src/game/creatures/player.ts Zobrazit soubor

@@ -18,10 +18,10 @@ export class Player extends Creature {

this.actions.push(new AttackAction(new ConstantDamageFormula(new Damage({ type: DamageType.Pierce, amount: 20, target: Vigor.Health }, { type: DamageType.Pierce, amount: 20, target: Vigor.Stamina }))))

const stomach = new Stomach(this, 100, new Damage({ amount: 20, type: DamageType.Acid, target: Vigor.Health }, { amount: 10, type: DamageType.Crush, target: Vigor.Health }))
const stomach = new Stomach(this, 2, new Damage({ amount: 20, type: DamageType.Acid, target: Vigor.Health }, { amount: 10, type: DamageType.Crush, target: Vigor.Health }))

this.containers.push(stomach)
const bowels = new Bowels(this, 100, new Damage({ amount: 20, type: DamageType.Crush, target: Vigor.Health }))
const bowels = new Bowels(this, 2, new Damage({ amount: 20, type: DamageType.Crush, target: Vigor.Health }))

this.containers.push(bowels)
this.perspective = POV.Second


+ 3
- 3
src/game/creatures/shingo.ts Zobrazit soubor

@@ -38,7 +38,7 @@ class Hand extends NormalContainer {
struggleVerb: Verb = new Verb('squirm', 'squirms', 'squirming', 'squirmed')

constructor (owner: Creature) {
super(new ImproperNoun('hand', 'hands'), owner, new Set(), 100)
super(new ImproperNoun('hand', 'hands'), owner, new Set(), 0.1)
this.actions.push(new TrappedAction(
"Grip",
"Give your victim the squeeze",
@@ -65,7 +65,7 @@ class Paw extends NormalContainer {
struggleVerb: Verb = new Verb('squirm', 'squirms', 'squirming', 'squirmed')

constructor (owner: Creature) {
super(new ImproperNoun('paw', 'paws'), owner, new Set([VoreType.Oral]), 100)
super(new ImproperNoun('paw', 'paws'), owner, new Set([VoreType.Oral]), 0.1)

this.actions.push(new TrappedAction(
"Smother",
@@ -162,7 +162,7 @@ export class Shingo extends Creature {

this.side = Side.Monsters

const stomach = new Stomach(this, 50, new Damage(
const stomach = new Stomach(this, 0.1, new Damage(
{ amount: 200, type: DamageType.Acid, target: Vigor.Health },
{ amount: 100, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 100, type: DamageType.Dominance, target: Vigor.Resolve }


+ 3
- 3
src/game/creatures/withers.ts Zobrazit soubor

@@ -84,7 +84,7 @@ class MawContainer extends NormalContainer {
struggleVerb = new Verb('struggle', 'struggles', 'struggling', 'struggled')

constructor (owner: Vore, stomach: VoreContainer) {
super(new ImproperNoun('maw'), owner, new Set([VoreType.Oral]), 50)
super(new ImproperNoun('maw'), owner, new Set([VoreType.Oral]), 0.05)

const transfer = new TransferAction(this, stomach)
transfer.verb = new Verb('gulp')
@@ -122,7 +122,7 @@ class BootContainer extends NormalContainer {
struggleVerb = new Verb('struggle', 'struggles', 'struggling', 'struggled')

constructor (owner: Vore) {
super(new ImproperNoun('boot'), owner, new Set(), 50)
super(new ImproperNoun('boot'), owner, new Set(), 0.05)

const flex = new FlexToesAction(
new UniformRandomDamageFormula(new Damage(
@@ -317,7 +317,7 @@ export class Withers extends Creature {

this.side = Side.Monsters

const stomach = new Stomach(this, 50, new Damage(
const stomach = new Stomach(this, 0.1, new Damage(
{ amount: 300, type: DamageType.Acid, target: Vigor.Health },
{ amount: 200, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 200, type: DamageType.Dominance, target: Vigor.Resolve }


+ 6
- 6
src/game/creatures/wolf.ts Zobrazit soubor

@@ -28,14 +28,14 @@ export class Wolf extends Creature {

this.side = Side.Monsters

const stomach = new Stomach(this, 50, new Damage(
const stomach = new Stomach(this, 2, new Damage(
{ amount: 60, type: DamageType.Acid, target: Vigor.Health },
{ amount: 30, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 30, type: DamageType.Dominance, target: Vigor.Resolve }
))
this.containers.push(stomach)

const bowels = new Bowels(this, 50, new Damage(
const bowels = new Bowels(this, 2, new Damage(
{ amount: 30, type: DamageType.Crush, target: Vigor.Health },
{ amount: 60, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 60, type: DamageType.Dominance, target: Vigor.Resolve }
@@ -47,25 +47,25 @@ export class Wolf extends Creature {

this.otherActions.push(new FeedAction(stomach))

const cock = new Cock(this, 50, new Damage(
const cock = new Cock(this, 2, new Damage(
{ amount: 30, type: DamageType.Crush, target: Vigor.Health },
{ amount: 60, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 60, type: DamageType.Dominance, target: Vigor.Resolve }
))

const balls = new Balls(this, 50, new Damage(
const balls = new Balls(this, 2, new Damage(
{ amount: 30, type: DamageType.Crush, target: Vigor.Health },
{ amount: 60, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 60, type: DamageType.Dominance, target: Vigor.Resolve }
), cock)

const slit = new Slit(this, 50, new Damage(
const slit = new Slit(this, 2, new Damage(
{ amount: 30, type: DamageType.Crush, target: Vigor.Health },
{ amount: 60, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 60, type: DamageType.Dominance, target: Vigor.Resolve }
))

const womb = new Womb(this, 50, new Damage(
const womb = new Womb(this, 2, new Damage(
{ amount: 30, type: DamageType.Crush, target: Vigor.Health },
{ amount: 60, type: DamageType.Crush, target: Vigor.Stamina },
{ amount: 60, type: DamageType.Dominance, target: Vigor.Resolve }


+ 5
- 1
src/game/vore.ts Zobrazit soubor

@@ -145,13 +145,17 @@ export abstract class NormalContainer implements Container {
releaseVerb = new Verb('release', 'releases', 'releasing', 'released')
struggleVerb = new Verb('struggle', 'struggles', 'struggling', 'struggled')

constructor (name: Noun, public owner: Vore, public voreTypes: Set<VoreType>, public capacity: number) {
constructor (name: Noun, public owner: Vore, public voreTypes: Set<VoreType>, public capacityFactor: number) {
this.name = name.all
this.actions.push(new DevourAction(this))
this.actions.push(new ReleaseAction(this))
this.actions.push(new StruggleAction(this))
}

get capacity (): number {
return this.capacityFactor * this.owner.voreStats.Mass
}

consumeLine: PairLineArgs<Vore, { container: Container }> = (user, target, args) => {
return new LogLine(`${user.name.capital} ${user.name.conjugate(this.consumeVerb)} ${target.name.objective} in ${user.pronouns.possessive} ${args.container.name}.`)
}


+ 11
- 5
src/game/words.ts Zobrazit soubor

@@ -15,7 +15,8 @@ export const Slick = new RandomWord([

export const Swallows = new RandomWord([
new Verb("swallow"),
new Verb("gulp")
new Verb("gulp"),
new Verb("consume", "consumes", "consuming", "consumed")
])

export const Churns = new RandomWord([
@@ -25,16 +26,21 @@ export const Churns = new RandomWord([
new Verb("stew")
])

export const Dark = new RandomWord([
new Adjective("dark"),
new Adjective("lightless"),
new Adjective("pitch-black")
])

export const Digests = new RandomWord([
new Verb("digest"),
new Verb("melt"),
new Verb("dissolve", "dissolves", "dissolving", "dissolved")
new Verb("digest")
])

export const Absorbs = new RandomWord([
new Verb("absorb"),
new Verb("soak up", "soaks up", "soaking up", "soaked up"),
new Verb("melt")
new Verb("melt down", "melts down", "melting down", "melted down"),
new Verb("dissolve", "dissolves", "dissolving", "dissolved")
])

export const Struggles = new RandomWord([


Načítá se…
Zrušit
Uložit