summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--PKGBUILD48
-rw-r--r--npc-01_dialogue-fixes.patch23
-rw-r--r--npc-02_isherwood-duplicate-mission.patch35
-rw-r--r--terrain-01_quiverfull-house-correct-stairs.patch11
-rw-r--r--tools-04_normalize-drone-volume.patch32
-rw-r--r--vampirism.patch (renamed from custom.patch)40
6 files changed, 134 insertions, 55 deletions
diff --git a/PKGBUILD b/PKGBUILD
index da01634..3ed7907 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -13,9 +13,9 @@ pkgbase=cataclysm-bn
pkgname=(cataclysm-bn cataclysm-bn-tiles)
pkgname=cataclysm-bn
_pkgname=Cataclysm-BN-cbn-experimental
-pkgver=202201070536
-_pkgver=2022-01-07-0536
-pkgrel=8
+pkgver=202201141901
+_pkgver=2022-01-14-1901
+pkgrel=5
pkgdesc="A post-apocalyptic roguelike."
#url="http://cataclysmrl.blogspot.com/"
#url="http://www.cataclysm.glyphgryph.com/"
@@ -55,9 +55,11 @@ source=("$pkgname-$_pkgver.tar.gz::https://github.com/cataclysmbnteam/Cataclysm-
"mutations-01_nerf-lightstep.patch"
"mutations-02_fix-evac3-background-visible.patch"
+ "npc-01_dialogue-fixes.patch"
+ "npc-02_isherwood-duplicate-mission.patch"
+
"recipes-01_4570-dragon-can-be-dismantled.patch"
- "terrain-01_quiverfull-house-correct-stairs.patch"
"terrain-02_tacoma-barn-door-position.patch"
"terrain-03_tacoma-clinic-add-missing-floor.patch"
"terrain-04_lumbermill-gasoline-not-spilled.patch"
@@ -89,14 +91,14 @@ source=("$pkgname-$_pkgver.tar.gz::https://github.com/cataclysmbnteam/Cataclysm-
"jc_more-military-base-overmap.patch"
"jc_npc-eat-from-further-camp.patch"
- "custom.patch"
+ "vampirism.patch"
"cataclysm-dda-tileset_undeadpeople.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-tileset_undeadpeople.git/snapshot/cataclysm-dda-tileset_undeadpeople-master.tar.xz"
"cataclysm-dda-mod_battle-maid-redone-tileset.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-mod_battle-maid-redone-tileset.git/snapshot/cataclysm-dda-mod_battle-maid-redone-tileset-master.tar.xz"
"cataclysm-dda-soundpack_jcsoundpack.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-soundpack_jcsoundpack.git/snapshot/cataclysm-dda-soundpack_jcsoundpack-master.tar.xz"
"cataclysm-dda-musicpack_coag-musicpack.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-musicpack_coag-musicpack.git/snapshot/cataclysm-dda-musicpack_coag-musicpack-master.tar.xz"
)
-b2sums=('5c0fa1f88e5695147cf7950ef0dd314504e996976afc6e7b1fae06b8b455f2e9e1cb644d08e11f61102df8733d71c2ff9a29da1c3251c5ad11a2b9381928ee95'
+b2sums=('7433781fb70afc6af6e8cdee190db516d74858053fd770dc564a99f856c1fe85f2f84beb65f9e23289c77ac06dc94efb636a9265462be62fbb2045355499b5cc'
'069ecde58859b3d44cd687c4b6e718610cefb693ff86e66f199ebfb1b3072023ad2b6f0c28e27ef9c1ce4997f6a5b2ca0d45046996b3ff35a4aeaeb1a7cf9421'
'ad88bc6c1e3c8183a313b5eec42f98d6956afea349feff34a86e4536c9921fa99d2594282caf27de8ebb7ffb56376ed2e76d572227bfd6d8173c7bb1f01e23b8'
'6f70e90359a14e4839d9a2683debb88850e5dd387add911ad68fd87e5512cfcdd435da63e1e370358153673fd5a72a9b1e9c94f1979edb7948b4da8c82407bad'
@@ -117,8 +119,9 @@ b2sums=('5c0fa1f88e5695147cf7950ef0dd314504e996976afc6e7b1fae06b8b455f2e9e1cb644
'8bb71fbec3deece7bd0f9084e20ef5853812e71e2ebcd43011f7779499cbb99c7a8bc5c618d8ef9f55e5ce54c9fc4a5f4d3167bb63f9821a68889f9f3e1386f5'
'08f4746882b927bdff6b728630cf1e04a2b79924f694ca2d841e3115c3399feb87a8d363e4d2a0f59179c109cb6be6e840f912aadd44abb0bdb35afd2838cc4d'
'ab35d6663b864449d46da4a9e1c51e11956ff4c38e16db58c831b71f7b964fc25b0283122dbc8aa0549f240f01c4a910fb5c6c82937258c6b736c05b54bcf768'
+ '5e902df8e6af1d17a4fc9733b485982ce413cb30b751d7c437c6a25b55a1b857e67f16c31e7006a863feec21b78ab4eccb933b16de7e628db57a46af8543cf68'
+ '339e48c2ce8d98852445839a71217a62af47af541c9e7573f21112c8b0bd5409b676774d2efd8665fe7f4cb5e6251467f77b9d9fad43a4c1fd61b405ae5e9831'
'71768899e631c5293d5fb8bcb237ca54f880913b6400d445c8a0322cb69801fe85b94b1293306e2f33fac6067cbd892c4665b9563bdc9ff4df5be245c7e7108f'
- '8232c6a10fd1f608304982ae7f03eb8afc663be76cdc00aee46ecb58de838e21fdc8673841266ccd00153263f7b15b59dcd1fc6ece86834509d7ccb2cacf08fa'
'ce0dd5121e814e0fcd79d68362c80a83bfe70f970be9d5d6f6fe5f6a56ed3f041be4d560aaf02225c3ce7c457dc63bc3adf0709d4b89a81c18184ff5341eb5d3'
'b8a64accada87ee5be989c5307805610c9b5c0327bc107aab237ac3225dd9e4c51b6c79a2a7de15fe187d3c32d7cbe1c462f9b0e9fb5d5a55a74236c7061e96e'
'85aeb5920ee5879848be4057324153a077fe907bed527ed8f9b80a3c5ee1ef64786f63ee2999f5ba74e80a43e99ded3280ce27759c1f7b73259a6e2b5e584aa8'
@@ -130,7 +133,7 @@ b2sums=('5c0fa1f88e5695147cf7950ef0dd314504e996976afc6e7b1fae06b8b455f2e9e1cb644
'7cae5e42b6e16f3c4bf64dca3c7573c1b552424ff70bb6da0a21f121b53b2546b239c87953a090cd90f46a1c3c124e2fe19c560b1830b11334f8e64c92fb614d'
'a45b2a53b6725dfd4780049a7522befe49c2a0c4efa4fb1dcb5cf53c7af18d329d2ba02aa6ac150342a3e66a46fd17f5e6e76a8db15c677a237edbb5cf4f5af7'
'4c178d330117886848d232372a25ecf5cac46ad48a6fed580957d295eb1c4266836f4f807593d381f9089b2078c4185ba972f697ab353a850ebf35b6f140a4ac'
- '8203bb062d72559da908a5020963503303c0aaa4a2ab61e57cfb713f58de40f1cb50b8b6dfbeec3a9addc41cbec5ae17fbf57230c3614f9b69fe6b0c55bf3fad'
+ '77bfba77f3548d267dc8142125bf26608c723bbdb2834317b3ea031ac64d9ff49bb4d75e29e2c759c03a662955697576d1c93153e9fb3e5dee86466bc29c78e1'
'74a51f04237fba3caa25b2e0d49659f2e8330ce82288de866943d06b53690f31d48a77a4dd2e57db1f435b715fbca792268f2e191ffb59e57170d327ed41ac0a'
'e1d03f68918d03f980f4c2dd966e3788afe63f14e2d18dbd4dab2cdbfa1253e4823c0f5daa3a579e47319a3c2af35bc5af0a390e2ba91fe7621f6db8b1a60994'
'5a5a61ccb7e2e343fb6de2e3426688485a2f4ad65d4b001d8bd542907fd8ceb9315da7fd9e5f89a5aa6210edcd5f334c73657fc16349000d6f6a394303e22000'
@@ -145,10 +148,10 @@ b2sums=('5c0fa1f88e5695147cf7950ef0dd314504e996976afc6e7b1fae06b8b455f2e9e1cb644
'1919a87a97a1cc625a8a0f5f6a3affb45b0c9630768b42718c5a3df563127cc0436845d01a354b24a16080a89f53df0515a9b62dc14f5292a951057386e9d5d6'
'e3302d903d053f25aa666d572f74a8bbd3b65dde40eedcbf46e537ceb2294ac22b3772087fce04c4a780c2f18e855179c6ddc8af12d72a89b82957ce09deb52f'
'4bd44cbe85c53902b8a360509703e3d38e8a5da75dd2c534a77f03ce6440632f6c83c92939069c60473c88ffb3abab0fbf11e39271f44f813b9f6432ea5f9a6b'
- 'bbfeb77f087acae08b1980d8efe9ac5919b31d5bcf83ff2644c9ae27fa78a06da463a9c400dbea61112f11a4361e2cbd724fa7e73c049b8233cb5c9dbd3943ca'
- '88a37f9ea10ec840453547621b24ecda7a9bc429a6427cd1b9cb651ef7ace2d002d67d240b1a26cc2fea1385cbc4fba389b0b2eaa503d0cbbd93c92d8983f450'
+ '5948f8f328176aa51cb9e41c018231db5307d41ae69e1e4515be03ff6b5b2c368c9962f0f683184983cccca239acedc9a4d1f06c42d6140415a134ea0268a8ff'
+ '63f1ba6a8a31212f129bd6c87a7f8b3debb6e2976c7dd95a748c9b8a62a06dece8dd6cc0adb55a852d3aea8e1f83c9fccaffdbef4057935638aed51c74937c39'
'a56efdaae0344726debf5b74846edce8df7aa2357fbc7a05a3d369d1f457b02934a0d0ce2330072e03f1ac901e06e333c9393f795c761f8440307e7649ed5596'
- '2bd6322b06a17e2dc51ba5db110b65d25d97a39db1656f04a35a117954c1b8db98ca1599d87d82610ca97580aaedf91e70db84608946cb31007cb28793060628'
+ '9d0e17552338c9d92ff696f1834a5d99c29d5dfbab6903b620410f62527a0ba60720c9ceec8e203b737f784ade8a53dbaca428ac7cc439f3f4f765aac7f1170f'
'b9309da09b165fb57e83f84e3584d2479bd3336ed86e181e5df2d27daa92bd55d03d7f3fc226f03696af5f0f32d8e0e7ecd26ae7e50eed0200d0b0feaad07efb')
prepare() {
@@ -166,7 +169,7 @@ prepare() {
sed -i 's|cataclysm-dda|cataclysm-bn|' src/path_info.cpp
# Fix version
- sed -i 's|VERSION = unstable|VERSION = 2022-01-07-0536|' Makefile
+ sed -i 's|VERSION = unstable|VERSION = 2022-01-14-1901|' Makefile
# # # Hotfixes
@@ -262,6 +265,17 @@ prepare() {
patch -Np1 -i "$srcdir"/mutations-02_fix-evac3-background-visible.patch
+ # # npc fixes
+ echo "Applying NPC fixes"
+ # Assorted typos in NPC dialogue.
+ patch -Np1 -i "$srcdir"/npc-01_dialogue-fixes.patch
+
+ echo "Applying NPC fixes"
+ # Jesse Isherwood's second mission is defined twice for some reason.
+ # Remove the version that is just a mashup of mission one and two.
+ patch -Np1 -i "$srcdir"/npc-02_isherwood-duplicate-mission.patch
+
+
# # recipe fixes
echo "Applying recipe fixes"
# Fix reloaded 45-70 rounds and reloaded dragon shot not allowing dismantling when every other non-caseless round does.
@@ -270,10 +284,6 @@ prepare() {
# # terrain and overmap fixes
echo "Applying terrain and overmap fixes"
- # Fix Quiverfull house to have the correct stairwell direction:
- # It was set to < for up, and not > for down.
- patch -Np1 -i "$srcdir"/terrain-01_quiverfull-house-correct-stairs.patch
-
# Fix tacoma barn doors being placed in the same spot twice:
# This enables the southeast barn door to be placed properly.
patch -Np1 -i "$srcdir"/terrain-02_tacoma-barn-door-position.patch
@@ -380,9 +390,9 @@ prepare() {
# # # Additional changes
- echo "Applying gynoid and vampire patch"
- # Add gynoid and vampire mutation lines. might require vampire stuff redone mod.
- patch -Np1 -i "$srcdir"/custom.patch
+ echo "Applying vampirism patch"
+ # Add vampire mutation lines and modify a number of functions to facilitate these traits.
+ patch -Np1 -i "$srcdir"/vampirism.patch
}
build() {
diff --git a/npc-01_dialogue-fixes.patch b/npc-01_dialogue-fixes.patch
new file mode 100644
index 0000000..a7aaaa2
--- /dev/null
+++ b/npc-01_dialogue-fixes.patch
@@ -0,0 +1,23 @@
+--- a/data/json/npcs/isherwood_farm/NPC_Lisa_Isherwood.json
++++ b/data/json/npcs/isherwood_farm/NPC_Lisa_Isherwood.json
+@@ -84,7 +84,7 @@
+ {
+ "type": "talk_topic",
+ "id": "TALK_ISHERWOOD_LISA_TALK1",
+- "dynamic_line": "My family owns all the land around here, my parents are out in the barn and my other family is down he road.",
++ "dynamic_line": "My family owns all the land around here, my parents are out in the barn and my other family is down the road.",
+ "responses": [
+ { "text": "Ok, I'll go find them.", "topic": "TALK_DONE" },
+ { "text": "Let's talk about something else.", "topic": "TALK_ISHERWOOD_LISA_TOPICS" },
+
+--- a/data/json/npcs/isherwood_farm/NPC_Jack_Isherwood.json
++++ b/data/json/npcs/isherwood_farm/NPC_Jack_Isherwood.json
+@@ -179,7 +179,7 @@
+ {
+ "type": "talk_topic",
+ "id": "TALK_ISHERWOOD_JACK_TALK1",
+- "dynamic_line": "I live here with my wife, this is our family's land. My daughter's family and son live down the road.",
++ "dynamic_line": "I live here with my wife, this is our family's land. My daughter's family live down the road, and my brother-in-law with his son just past them.",
+ "responses": [
+ { "text": "Your whole family survived?", "topic": "TALK_ISHERWOOD_JACK2" },
+ { "text": "Let's talk about something else.", "topic": "TALK_ISHERWOOD_JACK_TOPICS" },
diff --git a/npc-02_isherwood-duplicate-mission.patch b/npc-02_isherwood-duplicate-mission.patch
new file mode 100644
index 0000000..982aa7e
--- /dev/null
+++ b/npc-02_isherwood-duplicate-mission.patch
@@ -0,0 +1,35 @@
+--- a/data/json/npcs/isherwood_farm/NPC_Jesse_Isherwood.json
++++ b/data/json/npcs/isherwood_farm/NPC_Jesse_Isherwood.json
+@@ -222,32 +222,6 @@
+ "origins": [ "ORIGIN_SECONDARY" ],
+ "has_generic_rewards": false,
+ "dialogue": {
+- "describe": "We could use some help killing some wolves.",
+- "offer": "There's been some wolves that keep scaring our chickens and horses, I'd be grateful if you can kill them.",
+- "accepted": "Wonderful, let me know when it is done.",
+- "rejected": "Thanks anyway, we will try some traps.",
+- "advice": "A gun will probably help.",
+- "inquire": "Did you kill it?",
+- "success": "I appreciate it, I've got this old saddle I want you to have. I'll be happy to put a horse under it if you want to do some more heroics.",
+- "success_lie": "Show me the bodies.",
+- "failure": "It was a lost cause anyways…"
+- },
+- "end": { "opinion": { "trust": 1, "value": 1 }, "effect": [ { "u_buy_item": "horse_tack", "count": 1 } ] }
+- },
+- {
+- "id": "MISSION_ISHERWOOD_JESSE_2",
+- "type": "mission_definition",
+- "name": { "str": "Kill monster" },
+- "goal": "MGOAL_KILL_MONSTER",
+- "difficulty": 8,
+- "value": 80000,
+- "start": {
+- "assign_mission_target": { "om_terrain": "forest_thick", "reveal_radius": 1, "random": true, "search_range": 20, "min_distance": 15 },
+- "update_mapgen": { "place_monster": [ { "monster": "mon_flying_polyp", "pack_size": [ 3, 6 ], "x": 11, "y": 11, "target": true } ] }
+- },
+- "origins": [ "ORIGIN_SECONDARY" ],
+- "has_generic_rewards": false,
+- "dialogue": {
+ "describe": "We could use some help killing some monsters.",
+ "offer": "We could use some help killing a pack of monsters. I don't know what they are, but they're very fast, I'm willing to outfit you with a horse if you succeed.",
+ "accepted": "Be ready for anything.",
diff --git a/terrain-01_quiverfull-house-correct-stairs.patch b/terrain-01_quiverfull-house-correct-stairs.patch
deleted file mode 100644
index ad40706..0000000
--- a/terrain-01_quiverfull-house-correct-stairs.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/data/json/mapgen/house/house_quiverfull.json
-+++ b/data/json/mapgen/house/house_quiverfull.json
-@@ -29,7 +29,7 @@
- "%or E|R y| h F#.",
- "%# + + O#.",
- ".# |||R R|J 5o.",
-- ".#HHsHH|< R|n 4o.",
-+ ".#HHsHH|> R|n 4o.",
- ".#|||||| |R R|JJ 123#.",
- ".#q+ ||||+|||#.",
- ".#q+ + d#.",
diff --git a/tools-04_normalize-drone-volume.patch b/tools-04_normalize-drone-volume.patch
index a45ebf0..6e3eb14 100644
--- a/tools-04_normalize-drone-volume.patch
+++ b/tools-04_normalize-drone-volume.patch
@@ -3,54 +3,54 @@
@@ -5,7 +5,7 @@
"name": { "str": "inactive EMP hack" },
"description": "This is an inactive EMP hack. EMP hacks are fist-sized robots that fly through the air. This one contains an EMP grenade and attacks by flying at its target and detonating. Use this item to reprogram and release the EMP hack. Electronics and computer skill determines if the targeting matrix is reprogrammed successfully.",
- "weight": "4700 g",
+ "weight": "3750 g",
- "volume": "750 ml",
+ "volume": "250 ml",
"price": 64500,
+ "price_postapoc": 3000,
"to_hit": -3,
- "bashing": 6,
@@ -31,7 +31,7 @@
"name": { "str": "inactive C-4 hack" },
"description": "This is an inactive C-4 hack. C-4 hacks are fist-sized robots that fly through the air. This one contains some C-4 and attacks by flying at its target and detonating. Use this item to reprogram and activate the C-4 hack. Electronics and computer skill determines if the targeting matrix is reprogrammed successfully.",
- "weight": "5870 g",
+ "weight": "4920 g",
- "volume": "250 ml",
-+ "volume": "1000 ml",
++ "volume": "1 L",
"price": 67500,
+ "price_postapoc": 3000,
"to_hit": -3,
- "bashing": 6,
@@ -57,7 +57,7 @@
"name": { "str": "inactive flashbang hack" },
"description": "This is an inactive flashbang hack. Flashbang hacks are fist-sized robots that fly through the air. This one contains a flashbang and attacks by flying at its target and detonating. Use this item to reprogram and activate the flashbang hack. Electronics and computer skill determines if the targeting matrix is reprogrammed successfully.",
- "weight": "4536 g",
+ "weight": "3590 g",
- "volume": "750 ml",
+ "volume": "250 ml",
"price": 59500,
+ "price_postapoc": 500,
"to_hit": -3,
- "bashing": 6,
@@ -83,7 +83,7 @@
"name": { "str": "inactive tear gas hack" },
"description": "This is an inactive tear gas hack. Tear gas hacks are fist-sized robots that fly through the air. This one contains a tear gas canister and attacks by flying at its target and releasing tear gas. Use this item to reprogram and activate the tear gas hack. Electronics and computer skill determines if the targeting matrix is reprogrammed successfully.",
- "weight": "5360 g",
+ "weight": "4410 g",
- "volume": "750 ml",
+ "volume": "250 ml",
"price": 60500,
+ "price_postapoc": 500,
"to_hit": -3,
- "bashing": 6,
-@@ -179,7 +179,7 @@
+@@ -157,7 +157,7 @@
"name": { "str": "inactive manhack" },
"description": "This is an inactive manhack. Manhacks are fist-sized robots that fly through the air. They are covered with whirring blades and attack by throwing themselves against their target. Use this item to reprogram and activate the manhack. Electronics and computer skill determines if the targeting matrix is reprogrammed successfully.",
- "weight": "5400 g",
+ "weight": "4450 g",
- "volume": "750 ml",
+ "volume": "250 ml",
"price": 60000,
+ "price_postapoc": 500,
"to_hit": -3,
- "bashing": 6,
-@@ -205,7 +205,7 @@
+@@ -183,7 +183,7 @@
"name": { "str": "inactive mininuke hack" },
"description": "This is an inactive mininuke hack. Many times as large as a normal manhack, a mininuke hack contains a mininuke and attack by flying at their target and detonating. Use this item to reprogram and activate the mininuke hack. Electronics and computer skill determines if the targeting matrix is reprogrammed successfully.",
- "weight": "25000 g",
+ "weight": "26370 g",
- "volume": "18750 ml",
-+ "volume": "16000 ml",
++ "volume": "16 L",
"price": 2677500,
+ "price_postapoc": 10000,
"to_hit": -3,
- "bashing": 6,
diff --git a/custom.patch b/vampirism.patch
index 7ed870d..c7230eb 100644
--- a/custom.patch
+++ b/vampirism.patch
@@ -30,6 +30,16 @@
--- a/src/character.cpp
+++ b/src/character.cpp
+@@ -280,6 +280,9 @@
+ static const trait_id trait_NOMAD2( "NOMAD2" );
+ static const trait_id trait_NOMAD3( "NOMAD3" );
+ static const trait_id trait_NOPAIN( "NOPAIN" );
++static const trait_id trait_PAINREC1( "PAINREC1" );
++static const trait_id trait_PAINREC2( "PAINREC2" );
++static const trait_id trait_PAINREC3( "PAINREC3" );
+ static const trait_id trait_PACKMULE( "PACKMULE" );
+ static const trait_id trait_PADDED_FEET( "PADDED_FEET" );
+ static const trait_id trait_PAWS( "PAWS" );
@@ -288,9 +288,11 @@
static const trait_id trait_THRESH_INSECT( "THRESH_INSECT" );
static const trait_id trait_THRESH_PLANT( "THRESH_PLANT" );
@@ -42,6 +52,23 @@
static const trait_id trait_VISCOUS( "VISCOUS" );
static const trait_id trait_WATERSLEEP( "WATERSLEEP" );
static const trait_id trait_WEBBED( "WEBBED" );
+@@ -4429,7 +4432,15 @@
+ {
+ int pain_ticks = rate_multiplier;
+ while( get_pain() > 0 && pain_ticks-- > 0 ) {
+- mod_pain( -roll_remainder( 0.2f + get_pain() / 50.0f ) );
++ if( has_trait( trait_PAINREC1 ) ) {
++ mod_pain( -roll_remainder( 0.2f + get_pain() / 45.0f ) );
++ } else if( has_trait( trait_PAINREC2 ) ) {
++ mod_pain( -roll_remainder( 0.2f + get_pain() / 40.0f ) );
++ } else if( has_trait( trait_PAINREC3 ) ) {
++ mod_pain( -roll_remainder( 0.2f + get_pain() / 30.0f ) );
++ } else {
++ mod_pain( -roll_remainder( 0.2f + get_pain() / 50.0f ) );
++ }
+ }
+
+ float rest = rest_quality();
@@ -4545,6 +4547,7 @@
const bool npc_no_food = is_npc() && get_option<bool>( "NO_NPC_FOOD" );
const bool foodless = debug_ls || npc_no_food;
@@ -396,24 +423,20 @@
--- a/src/player_hardcoded_effects.cpp
+++ b/src/player_hardcoded_effects.cpp
-@@ -114,7 +114,9 @@
- static const trait_id trait_NOPAIN( "NOPAIN" );
+@@ -114,6 +114,7 @@
static const trait_id trait_SEESLEEP( "SEESLEEP" );
static const trait_id trait_SCHIZOPHRENIC( "SCHIZOPHRENIC" );
-+static const trait_id trait_THRESH_GYNOID( "THRESH_GYNOID" );
static const trait_id trait_THRESH_MYCUS( "THRESH_MYCUS" );
+static const trait_id trait_THRESH_VAMP( "THRESH_VAMP" );
static const trait_id trait_WATERSLEEP( "WATERSLEEP" );
static void eff_fun_onfire( player &u, effect &it )
-@@ -1095,6 +1097,11 @@
+@@ -1095,6 +1097,9 @@
// Determine the strength of effects or dreams based upon category strength
int strength = 0; // Category too weak for any effect or dream
if( crossed_threshold() ) {
+ if( has_trait( trait_THRESH_VAMP ) ) {
+ highcat = "VAMP";
-+ } else if( has_trait( trait_THRESH_GYNOID ) ) {
-+ highcat = "GYNOID";
+ }
strength = 4; // Post-human.
} else if( highest >= 20 && highest < 35 ) {
@@ -421,11 +444,10 @@
--- a/src/suffer.cpp
+++ b/src/suffer.cpp
-@@ -143,10 +143,13 @@
+@@ -143,10 +143,12 @@
static const trait_id trait_SHOUT3( "SHOUT3" );
static const trait_id trait_SORES( "SORES" );
static const trait_id trait_SUNBURN( "SUNBURN" );
-+static const trait_id trait_THRESH_GYNOID( "THRESH_GYNOID" );
+static const trait_id trait_THRESH_VAMP( "THRESH_VAMP" );
static const trait_id trait_TROGLO( "TROGLO" );
static const trait_id trait_TROGLO2( "TROGLO2" );
@@ -441,7 +463,7 @@
{
- if( !has_trait( trait_GILLS ) && !has_trait( trait_GILLS_CEPH ) ) {
+ if( !has_trait( trait_GILLS ) && !has_trait( trait_GILLS_CEPH ) &&
-+ !has_trait( trait_THRESH_GYNOID ) && !has_trait( trait_THRESH_VAMP ) ) {
++ !has_trait( trait_THRESH_VAMP ) ) {
oxygen--;
}
if( oxygen < 12 && worn_with_flag( "REBREATHER" ) ) {