Files
LuaCsForBarotraumaEP/Barotrauma/BarotraumaShared/Content/Items/Medical/medical.xml
T
Alex Noir 31bef06fd8 Just noticed a new, strange bug happening: https://puu.sh/yPuai/eca2a059e2.webm
Problem is, this should've been happening before even regardless of my changes. So why did it only start happening now? That'll have to be looked into.
The reason why it should be happening in theory is that in character's UpdateOxygen method, it takes hull oxygen and OxygenAvailable. If OxygenAvailable was 0, it'd take the hull, which would likely be 100. If OxygenAvailable was -100, it would take the hull, which would make OxygenAvaialbe 0.
However, it seems like something happened and instead of setting the property it now decreases it, and I don't know why? In theory it should SET OxygenAvailable to -100 but it seems like its performing a substraction now.

Adds tags to all duration/delay status effects
Chloromydride buffed slightly to counteract crit damage as well so it truly stabilizes you
Sufforin now affects your available oxygen too by setting it to -10000 to prevent diving suits/oxygen masks/etc. counteracting it.
2017-12-28 19:11:46 +03:00

583 lines
21 KiB
XML

<?xml version="1.0" encoding="utf-8" ?>
<Items>
<!-- Medical items -->
<Item
name="Medical Syringe"
category="Equipment"
Tags="smallitem,medical"
price="50"
canuseonself="true"
description="Injection is often a much more effective method of administering drugs than taking them orally.">
<Sprite texture ="med.png" sourcerect="0,0,25,5" depth="0.6"/>
<Body width="25" height="5" density="20"/>
<MeleeWeapon slots="Any,RightHand,LeftHand"
aimpos="5,0" handle1="-5,0" holdangle="10" reload="1.0">
<StatusEffect type="OnUse" target="Contained, Character" Condition="-25.0" disabledeltatime="true" >
<sound file="Content/Items/Medical/syringe.ogg" range="500"/>
<RequiredItem name="chem" type="Contained"/>
<Use/>
</StatusEffect>
</MeleeWeapon>
<ItemContainer capacity="1" hideitems="true">
<Containable name="chem"/>
</ItemContainer>
<Projectile launchimpulse="20.0" sticktocharacters="true">
<Attack damage="5" bleedingdamage="0.2" structuredamage="1" damagetype="Blunt" stun="0.1" targetforce="5"/>
<StatusEffect type="OnImpact" target="Contained, Character" Condition="-50.0" disabledeltatime="true" >
<sound file="Content/Items/Medical/syringe.ogg" range="500"/>
<RequiredItem name="chem" type="Contained"/>
<Use/>
</StatusEffect>
</Projectile>
</Item>
<Item
name="Bandage"
category="Equipment"
Tags="smallitem,medical"
canuseonself="true"
price="20"
description="Treated with a hemostatic agent that quickly seals most minor wounds.">
<Sprite texture ="med.png" sourcerect="0,16,11,16" depth="0.6"/>
<Body width="11" height="16" density="20"/>
<MeleeWeapon canBeCombined="true" slots="Any,RightHand,LeftHand"
aimpos="5,0" handle1="-5,0" holdangle="10" reload="1.0">
<StatusEffect type="OnUse" target="This" Condition="-25.0" disabledeltatime="true"/>
<StatusEffect type="OnUse" target="This, Character" bleeding="-0.1" duration="5.0">
<Sound file="Content/Items/Medical/bandage.ogg" range="500"/>
</StatusEffect>
<StatusEffect type="OnUse" target="This, Character" health="0.1" duration="5.0" checkconditionalalways="true">
<!-- Only give healing effect if their health is more than 50 -->
<Conditional Health="gt 50"/>
</StatusEffect>
</MeleeWeapon>
</Item>
<!-- Ingredients/weak chems -->
<Item
name="Iron Powder"
category="Material"
Tags="smallitem,chem"
price="5">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6" color="0.2,0.2,0.2,1.0"/>
<Body width="8" height="16" density="40"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="poison,iron" type="OnUse" target="Character" Health="-2" duration="10">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Stabilozine"
category="Material"
spritecolor="1.0,1.0,0.7,1.0"
Tags="smallitem,chem,medical"
description="A mild stimulant which is used as an ingredient in the manufacture of various medicines."
canuseonself="true"
price="10">
<Sprite texture ="med.png" sourcerect="15,15,8,17" depth="0.6" />
<Body width="8" height="17" density="20"/>
<ItemComponent>
<StatusEffect tags="medical" type="OnUse" target="Character" Health="0.1" duration="20"/>
<StatusEffect type="OnUse" target="This" Condition="-25.0" disabledeltatime="true"/>
</ItemComponent>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="medical" type="OnUse" target="Character" Health="0.3" Oxygen="0.3" duration="10">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Chlorine"
category="Material"
spritecolor="1.0,1.0,1.0,0.6"
Tags="smallitem,chem,medical"
price="20">
<Sprite texture ="med.png" sourcerect="15,15,8,17" depth="0.6"/>
<Body width="8" height="17" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="poison,chlorine" type="OnUse" target="Character" Health="-0.1" duration="20.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Ethanol"
category="Material"
spritecolor="0.0,0.9,0.1,1.0"
Tags="smallitem,chem,medical"
canuseonself="true"
price="20">
<ItemComponent>
<StatusEffect type="OnUse" target="This" Condition="-25.0" disabledeltatime="true"/>
<StatusEffect tags="drunk" type="OnUse" target="Character" SpeedMultiplier="0.8" setvalue="true" duration="20.0"/>
</ItemComponent>
<Sprite texture ="med.png" sourcerect="15,15,8,17" depth="0.6"/>
<Body width="8" height="7" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="drunk" type="OnUse" target="Character" SpeedMultiplier="0.8" setvalue="true" duration="20.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Aluminium"
category="Material"
spritecolor="0.7,0.7,0.7,1.0"
Tags="smallitem,chem,medical"
price="20">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect type="OnUse" target="Character" Health="-5.0" disabledeltatime="true">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Potassium"
category="Material"
spritecolor="0.8,0.8,0.8,1.0"
Tags="smallitem,chem,medical"
price="20">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect type="OnUse" target="Character" Health="-5.0" disabledeltatime="true">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
<StatusEffect type="InWater" target="This" Condition="0.0" setvalue="true">
<Sound file="Content/Items/Reactor/explosion.ogg"/>
<Explosion range="250.0" structuredamage="10" damage="20" stun="5" force="5.0"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Phosphorus"
category="Material"
spritecolor="0.5,0.0,0.0,1.0"
Tags="smallitem,chem,medical"
price="20">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect type="OnUse" target="Character" Health="-5.0" disabledeltatime="true">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<!-- Helpful chems -->
<Item
name="Chloromydride"
category="Material"
spritecolor="0.7,0.9,1.0,1.0"
Tags="smallitem,chem,medical"
description="A strong synaptic stimulant and cardiostimulant which is used as a preventative measure against critical condition. Should only be injected once every 30 seconds."
price="50">
<Sprite texture ="med.png" sourcerect="15,15,8,17" depth="0.6" />
<Body width="8" height="16" density="20"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="medical" type="OnUse" target="Character" health="1.0" bleeding="-0.2" Oxygen="0.6" duration="30" stackable="false" checkconditionalalways="true">
<!-- Rapidly removes bleeding and stabilizes oxygen intake while also counteracting crit damage so they won't die. Doesn't prevent poisons.
EXTREMELY useful to follow up with CPR, especially if they were bleeding before. -->
<Conditional Health="lt 0.1"/>
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Erythrozine"
category="Material"
spritecolor="0.5,0.5,1.0,1.0"
Tags="smallitem,chem,medical"
canuseonself="true"
description="Most commonly used for treating oxygen deprivation."
price="50">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6" />
<Body width="8" height="16" density="20"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="medical" type="OnUse" target="Character" Health="-0.3" Oxygen="2.0" duration="10">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Fibrinozine"
category="Material"
spritecolor="0.6,0.4,0.2,1.0"
Tags="smallitem,chem,medical"
canuseonself="true"
description="A hemostatic agent that slows down bleeding."
price="50">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6" />
<Body width="8" height="16" density="20"/>
<ItemComponent>
<StatusEffect tags="medical" type="OnUse" target="Character" Bleeding="-0.1" duration="10.0"/>
<StatusEffect type="OnUse" target="This" Condition="-25.0" disabledeltatime="true"/>
</ItemComponent>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="medical" type="OnUse" target="Character" Health="0.3" Bleeding="-0.2" duration="5.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Corrigodone"
category="Material"
spritecolor="0.8,0.0,0.0,1.0"
Tags="smallitem,chem,medical"
canuseonself="true"
description="Highly effective at treating various types of physical trauma."
price="50">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="20"/>
<ItemComponent>
<StatusEffect type="OnUse" target="This" Condition="-25.0" disabledeltatime="true"/>
<StatusEffect tags="medical" type="OnUse" target="Character, This" Health="-0.5" duration="10"/>
</ItemComponent>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="medical" type="OnUse" target="Character" Health="3.0" duration="5.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Auxiliorizine"
category="Material"
spritecolor="1.0,1.0,0.0,1.0"
Tags="smallitem,chem,medical"
description="A highly potent corrigodone-based stimulant."
price="150">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="20"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="medical" type="OnUse" target="Character" Health="0.5" Oxygen="0.5" Bleeding="-0.025" duration="60.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Hyperzine"
category="Material"
spritecolor="0.8,0.3,0.8,1.0"
Tags="smallitem,chem,medical"
description="A potent muscle stimulant."
price="50">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="15"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="medical" type="OnUse" target="Character" SpeedMultiplier="1.5" setvalue="true" duration="60.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Calyxanide"
category="Material"
spritecolor="0.0,0.0,0.0,1.0"
Tags="smallitem,chem,medical"
description="An antiparasitic drug used in the treatment of husk parasite infections. Might require higher dosage to cure the infection at later stages."
price="300">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect type="OnUse" target="Character" HuskInfectionState="-0.2" setvalue="true">
<Conditional HuskInfectionState="lt 1.0"/>
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
<StatusEffect tags="poison,calyxanide" type="OnUse" target="Character" Health="-3.0" duration="10.0">
<!-- Injecting a still-conscious Husk will only piss it off and kill the "conscious" faster -->
<Conditional HuskInfectionState="eq 1.0"/>
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
<StatusEffect tags="poison,calyxanide" type="OnUse" target="Character" Health="-5.0" duration="10.0">
<Conditional SpeciesName="husk"/>
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Morbusanide"
category="Material"
spritecolor="0.0,0.0,0.2,1.0"
Tags="smallitem,chem,medical"
description="A morbusine antidote.">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect type="OnUse" target="Character">
<RequiredItem name="Medical Syringe" type="Container"/>
<Conditional hasstatustag="morbusine"/>
<Cancel/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Liquid Oxygenite"
category="Material"
spritecolor="0.6,0.8,1.0,1.0"
Tags="smallitem,chem,medical"
impacttolerance="8"
description="A mildy toxic solution that slowly releases oxygen into the bloodstream when injected.">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6" />
<Body width="8" height="16" density="20"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="medical" type="OnUse" target="Character" Health="-0.5" Oxygen="10.0" duration="60">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
<StatusEffect type="OnImpact" target="This" Condition="0.0" setvalue="true">
<sound file="Content/Items/Reactor/explosion.ogg"/>
<Explosion range="300.0" structuredamage="50" damage="30" stun="5" force="10.0"/>
</StatusEffect>
</Throwable>
</Item>
<!-- Harmful and toxic chems -->
<Item
name="Flash Powder"
category="Material"
spritecolor="0.1,0.1,0.1,1.0"
Tags="smallitem,chem,explosive"
impacttolerance="8"
price="50">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect type="OnImpact" target="This" Condition="0.0" setvalue="true"/>
<StatusEffect type="OnFire" target="this" condition="-50"/>
<StatusEffect type="OnBroken" target="This" Condition="-100.0">
<Sound file="Content/Items/Reactor/explosion.ogg"/>
<Explosion range="500" damage="5" stun="3" force="0.1"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Chloral Hydrate"
category="Material"
spritecolor="1.0,1.0,1.0,0.8"
Tags="smallitem,chem,medical"
price="20">
<Sprite texture ="med.png" sourcerect="15,15,8,17" depth="0.6"/>
<Body width="8" height="17" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect type="OnUse" target="Character" Health="-5.0" Stun="10" disabledeltatime="true">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Sulphuric Acid"
category="Material"
spritecolor="0.5,0.0,0.0,1.0"
Tags="smallitem,chem,medical"
price="50">
<Sprite texture ="med.png" sourcerect="15,15,8,17" depth="0.6"/>
<Body width="8" height="17" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="poison,acid" type="OnUse" target="Character" Health="-1.0" duration="30.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Uranium Powder"
category="Material"
spritecolor="0.2,0.35,0.06,1.0"
Tags="smallitem,chem,medical"
price="50">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="25"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="poison,uranium" type="OnUse" target="Character" bleeding="0.1" duration="60.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Velonaceps Calyx Eggs"
category="Material"
spritecolor="0.0,0.0,0.0,1.0"
Tags="smallitem,chem,medical"
description="Dormant eggs of the Europan lifeform colloquially referred to as 'husk parasite'."
price="2000">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect type="OnUse" target="Character" HuskInfectionState="0.01">
<!-- HuskInfectionState must be less than 0.01 so you can't speed up the infection -->
<Conditional HuskInfectionState="lt 0.01"/>
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Morbusine"
category="Material"
spritecolor="0.0,0.0,0.0,1.0"
Tags="smallitem,chem,medical"
description="A highly potent neurotoxin."
price="1000">
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect tags="poison,morbusine" type="OnUse" target="Character" Health="-5.0" duration="60.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Nitroglycerin"
category="Material"
description="A highly unstable liquid that may explode when subjected to heat or physical shock."
spritecolor="1.0,1.0,1.0,1.0"
Tags="smallitem,chem,medical"
impacttolerance="4">
<Sprite texture ="Content/Items/Medical/med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="25" height="5" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect type="OnImpact" target="This" Condition="0.0" setvalue="true"/>
<StatusEffect type="OnFire" target="This" Condition="-50.0"/>
<StatusEffect type="OnBroken" target="This" Condition="-100.0">
<sound file="Content/Items/Reactor/explosion.ogg" range="3000"/>
<Explosion range="600.0" structuredamage="400" damage="300" stun="5" force="20.0" severlimbsprobability="0.4" decal="explosion" decalsize="0.5"/>
</StatusEffect>
<StatusEffect type="OnUse" target="This" Condition="-100.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
<Item
name="Sufforin"
category="Material"
spritecolor="1.0,0.3,0.3,1.0"
Tags="smallitem,chem,medical"
description="A devious poison with a delayed effect.">
<!-- Can only be crafted. Direct counter to Sufforin is Liquid Oxygenite, though it's not strictly an antidote.
Two injections to choke slightly faster than welding fuel. -->
<Sprite texture ="med.png" sourcerect="24,16,8,16" depth="0.6"/>
<Body width="8" height="16" density="10"/>
<Throwable canBeCombined="true" slots="Any,RightHand,LeftHand" throwforce="4.0" aimpos="35,-10">
<StatusEffect type="OnUse" target="Character" Health="-5.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
<!-- Did You Know? If OxygenAvailable is too low, character will take -5 Oxygen loss per tick, otherwise they restore +10 oxygen. -->
<StatusEffect tags="poison,sufforin" type="OnUse" target="Character" Oxygen="-5.0" OxygenAvailable="-10000.0" Health="-0.5" duration="60.0" delay="20.0">
<RequiredItem name="Medical Syringe" type="Container"/>
</StatusEffect>
</Throwable>
</Item>
</Items>