diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/Sequence/Contact/Archetypes.hs | 69 |
1 files changed, 68 insertions, 1 deletions
diff --git a/src/Sequence/Contact/Archetypes.hs b/src/Sequence/Contact/Archetypes.hs index 3340102..6c13738 100644 --- a/src/Sequence/Contact/Archetypes.hs +++ b/src/Sequence/Contact/Archetypes.hs | |||
| @@ -39,14 +39,19 @@ instance Argument Entity GameState where | |||
| 39 | arg = return . fmap (flip (set eStats) def) . flip Map.lookup archetypes . CI.mk | 39 | arg = return . fmap (flip (set eStats) def) . flip Map.lookup archetypes . CI.mk |
| 40 | 40 | ||
| 41 | archetypes :: Map (CI String) Stats | 41 | archetypes :: Map (CI String) Stats |
| 42 | archetypes = [ ("Mensch", human) | 42 | archetypes = [ ("Requisite", prop) |
| 43 | , ("Spieler", player) | ||
| 44 | |||
| 45 | , ("Mensch", human) | ||
| 43 | , ("Hund", dog) | 46 | , ("Hund", dog) |
| 44 | , ("Delfin", dolphin) | 47 | , ("Delfin", dolphin) |
| 45 | , ("Kind von Mu", childOfMu) | 48 | , ("Kind von Mu", childOfMu) |
| 46 | 49 | ||
| 47 | , ("Milizenschläger", milizenschlaeger) | 50 | , ("Milizenschläger", milizenschlaeger) |
| 51 | , ("Warlord", warlord) | ||
| 48 | , ("Kindersoldat", kindersoldat) | 52 | , ("Kindersoldat", kindersoldat) |
| 49 | , ("Passant", passant) | 53 | , ("Passant", passant) |
| 54 | , ("Großer Hund", grosserHund) | ||
| 50 | ] | 55 | ] |
| 51 | 56 | ||
| 52 | cTable :: Ord v => [(Integer, Integer, v)] -> Table v | 57 | cTable :: Ord v => [(Integer, Integer, v)] -> Table v |
| @@ -93,6 +98,27 @@ damageMods = [ Modifier "Schmerz" $ damageMod sTotalDamage sPainTolerance | |||
| 93 | vitBar :: Ratio Int -> Traversal' Stats (Formula Stats) | 98 | vitBar :: Ratio Int -> Traversal' Stats (Formula Stats) |
| 94 | vitBar prop = sMaxVitality . mapping (scaled prop) | 99 | vitBar prop = sMaxVitality . mapping (scaled prop) |
| 95 | 100 | ||
| 101 | prop = Prop | ||
| 102 | { _sSeqEpsilon = False | ||
| 103 | |||
| 104 | , _sHitzones = [] | ||
| 105 | , _sArmor = const def | ||
| 106 | , _sCripple = const def | ||
| 107 | |||
| 108 | , _sDamage = const 0 | ||
| 109 | , _sFatigue = 0 | ||
| 110 | |||
| 111 | , _sPainShock = def | ||
| 112 | , _sFatigueShock = def | ||
| 113 | |||
| 114 | , _sSequence = Nothing | ||
| 115 | |||
| 116 | , _sExtraSkills = [] | ||
| 117 | , _sModifiers = [] | ||
| 118 | } | ||
| 119 | |||
| 120 | player = prop { _sSeqEpsilon = True } | ||
| 121 | |||
| 96 | human = Humanoid | 122 | human = Humanoid |
| 97 | { _sAStrength = vStrength | 123 | { _sAStrength = vStrength |
| 98 | , _sAEndurance = vEndurance | 124 | , _sAEndurance = vEndurance |
| @@ -417,6 +443,20 @@ childOfMu = human | |||
| 417 | & sSeqVal +~ d 10 | 443 | & sSeqVal +~ d 10 |
| 418 | & sPainTolerance -~ vMass `quot'` 2 | 444 | & sPainTolerance -~ vMass `quot'` 2 |
| 419 | 445 | ||
| 446 | grosserHund = dog | ||
| 447 | & sAStrength .~ 5 | ||
| 448 | & sAEndurance .~ 8 | ||
| 449 | & sAMass .~ 4 | ||
| 450 | & sAReflexes .~ 9 | ||
| 451 | & sAMobility .~ 12 | ||
| 452 | & sADexterity .~ 1 | ||
| 453 | & sAIntelligence .~ 1 | ||
| 454 | & sACharisma .~ 1 | ||
| 455 | & sAPerception .~ 6 | ||
| 456 | & sAWillpower .~ 3 | ||
| 457 | & sSBiting +~ 6 | ||
| 458 | & sSSearching +~ 15 | ||
| 459 | |||
| 420 | milizenschlaeger = human | 460 | milizenschlaeger = human |
| 421 | & sAStrength .~ 7 | 461 | & sAStrength .~ 7 |
| 422 | & sAEndurance .~ 6 | 462 | & sAEndurance .~ 6 |
| @@ -447,6 +487,33 @@ milizenschlaeger = human | |||
| 447 | armor "Torso" Explosive = 7 | 487 | armor "Torso" Explosive = 7 |
| 448 | armor _ _ = 0 | 488 | armor _ _ = 0 |
| 449 | 489 | ||
| 490 | warlord = human | ||
| 491 | & sAStrength .~ 8 | ||
| 492 | & sAEndurance .~ 8 | ||
| 493 | & sAMass .~ 10 | ||
| 494 | & sAReflexes .~ 6 | ||
| 495 | & sAMobility .~ 7 | ||
| 496 | & sADexterity .~ 5 | ||
| 497 | & sAIntelligence .~ 5 | ||
| 498 | & sACharisma .~ 7 | ||
| 499 | & sAPerception .~ 5 | ||
| 500 | & sAWillpower .~ 9 | ||
| 501 | & sSFirearms +~ 87 | ||
| 502 | & sSUnarmedMelee +~ 36 | ||
| 503 | & sSArmedMelee +~ 30 | ||
| 504 | & sSThrownWeapons +~ 10 | ||
| 505 | & sSStealth +~ 33 | ||
| 506 | & sSLeadership +~ 50 | ||
| 507 | & sSWheeled +~ 36 | ||
| 508 | & sSHovercraft +~ 28 | ||
| 509 | & sArmor .~ armor | ||
| 510 | where | ||
| 511 | armor "Torso" Ballistic = 14 | ||
| 512 | armor "Torso" Piercing = 4 | ||
| 513 | armor "Torso" Blunt = 6 | ||
| 514 | armor "Torso" Explosive = 2 | ||
| 515 | armor _ _ = 0 | ||
| 516 | |||
| 450 | kindersoldat = human | 517 | kindersoldat = human |
| 451 | & sAStrength .~ 4 | 518 | & sAStrength .~ 4 |
| 452 | & sAEndurance .~ 4 | 519 | & sAEndurance .~ 4 |
