diff options
author | Gregor Kleen <pngwjpgh@users.noreply.github.com> | 2016-07-06 19:36:55 +0200 |
---|---|---|
committer | Gregor Kleen <pngwjpgh@users.noreply.github.com> | 2016-07-06 19:36:55 +0200 |
commit | 19d149e2acbe08f411c9686eb645e249d324b24c (patch) | |
tree | b1126d26c7c4b972df7c1853ee533325b05026b7 /src | |
parent | 635e2dac8e4db3f0d785537d55002540ae2aaa11 (diff) | |
download | 2017-01-16_17:13:37-19d149e2acbe08f411c9686eb645e249d324b24c.tar 2017-01-16_17:13:37-19d149e2acbe08f411c9686eb645e249d324b24c.tar.gz 2017-01-16_17:13:37-19d149e2acbe08f411c9686eb645e249d324b24c.tar.bz2 2017-01-16_17:13:37-19d149e2acbe08f411c9686eb645e249d324b24c.tar.xz 2017-01-16_17:13:37-19d149e2acbe08f411c9686eb645e249d324b24c.zip |
additional archetypes
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 |