bb987676ca
Improved PowerTransfer logic. The PowerTransfer components cache all the connections that are connected to the item (directly or via another item) and only recalculate them when changes are done to the wiring. Signals received by the PowerTransfer component are relayed directly to the recipients instead of stepping through all the wires and junction boxes in between.
Joonas Rikkonen
2018-01-01 14:11:01 +02:00
c2e2f0ca8d
Fixed damageshader color parameter being optimized out
Juan Pablo Arce
2017-12-31 19:15:52 -03:00
fa09aaa57c
Fixed damageshader color parameter being optimized out
Juan Pablo Arce
2017-12-31 19:15:52 -03:00
5c2872c1e1
Separate versions of each shader are now more easily available for compilation
Juan Pablo Arce
2017-12-31 19:04:04 -03:00
904052390c
Fixed LOS effect on Windows, fixed SharpDX reference, rebuilt damageshader_opengl
Juan Pablo Arce
2017-12-31 17:45:05 -03:00
c77c598cb6
Fixed items being dropped when attempting to place them in an itemcontainer slot that's on a normal inventory slot. Closes#200
Joonas Rikkonen
2017-12-31 01:59:49 +02:00
7d2b701784
GUIMessageBox text overflow fix: the padding of the GUIFrame is taken into account when determining the height of the text, and the messagebox is always automatically resized if the height parameter is not given.
Joonas Rikkonen
2017-12-30 18:32:27 +02:00
343895d776
Console command arguments can be autocompleted by hitting tab. Closes#162
Joonas Rikkonen
2017-12-30 18:30:55 +02:00
31350698bf
denerfied the clown
Alex Noir
2017-12-30 16:01:02 +03:00
ea3b1b1c7a
there's supposed to be 4 clown sounds aaaaaa
Alex Noir
2017-12-30 15:30:52 +03:00
9f727ddbaf
Add Morbusanide recipe Make usecondition default to true so items aren't wasted
Alex Noir
2017-12-30 14:53:26 +03:00
32a2b38112
Removed DamageSoundType and replaced it with a string "tag" instead to allow mod creators to create custom damage sounds Fixed damagemodifier sounds being completely ignored due to a variable misname Added structure damage possibility for melee weapons so you can break down windows with a crowbar in spectacular fashion (it's clearly a very inferior method to plasma cutters though) Clown hitsounds are in now which is awesome. Beat up some clowns!
Alex Noir
2017-12-30 13:46:59 +03:00
6777a039d5
Characters receive damage when crushed between a sub and the level and are gibbed if the impact is hard enough. Closes#186
Joonas Rikkonen
2017-12-30 02:17:08 +02:00
c3c16b53ac
Fixed background sprites being rendered in an incorrect order
Joonas Rikkonen
2017-12-30 02:04:42 +02:00
627d6ecd78
Minor UI fixes
Joonas Rikkonen
2017-12-29 21:09:53 +02:00
bcd2582cf9
- More gore particles when severing limbs! - Explosions can sever limbs even if the target character is dead. Now explosive projectiles can explode creatures into pieces even if the creature dies of the initial projectile impact and not the explosion. - Disabled blood particles on carriers and fractal guardians.
Joonas Rikkonen
2017-12-29 21:06:11 +02:00
454e0def3b
Particle additions: - Support for subemitters (= particles can emit particles). - Option to set a different velocity change value for particles in water (can be used to simulate buouancy). - Fixed drag vector & timer not being reset when initializing a particle.
Joonas Rikkonen
2017-12-29 20:58:29 +02:00
2cb0ee73be
Adds footstep sound variety, makes diving and clown suits have unique footstep sounds! https://puu.sh/yQ8fs/61e12f15c6.webm TODO: Get rid of the "damagesoundtype" system and replace it with simple "tag" checking to allow customizability from content pack side Fix damagemodifier sounds never being played (I've never once heard LimbArmor play on anything but mantis)
Alex Noir
2017-12-29 17:41:18 +03:00
a8749f3d87
Fixed characters dragging husks by their tongue when GrabLimb is set to None, removed hardcoded texts from the grab button. Closes#210
Joonas Rikkonen
2017-12-29 15:51:37 +02:00
fe54b75117
Fixed modified structure colors not being cloned. Closes#212
Joonas Rikkonen
2017-12-29 15:31:46 +02:00
4d55e2dd55
Move hard-coded gender pronouns from TextManager to Texts.xml
Joonas Rikkonen
2017-12-28 21:47:29 +02:00
9dd4d21cac
Fixed opened and broken doors being ignored during waypoint generation, causing waypoint connections to go through the doors and preventing AI characters from opening them. + Updated waypoints in Aegir Mark III
Joonas Rikkonen
2017-12-28 20:53:27 +02:00
b84c965be3
More AI fixes/improvements: - AI characters can refuel the reactor when needed. - AIObjectiveContainItem.CanBeCompleted returns true if the target item cannot be obtained or if the container cannot be reached. - AI characters only weld leaks that are part of some submarine (i.e. not ruins).
Joonas Rikkonen
2017-12-28 19:44:48 +02:00
ed98a6bc0b
well jeez who'da thunk it's my sorry ass forgetting to remove the second updateoxygen Reverted OxygenAvailable values for diving gear + oxygen mask back to -100 Keeping sufforin OxygenAvailable at -10000 tho, that seems like the way to completely cut off any and all oxygen suppliers from acting
Alex Noir
2017-12-28 19:28:45 +03:00
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.
Alex Noir
2017-12-28 19:11:46 +03:00
00704e141b
i cant syntax
Alex Noir
2017-12-28 17:55:28 +03:00
0c133ba305
Forgot to list all changes in the latest commit, so here goes: Allow multiple calls of <Use/> for multiple-use syringes or something Adds hasstatustag and hastag conditionals, where hastag checks for item tags and hasstatustag checks for active delay/duration status effects w/ matching tags. It's also possible to check for NOT tag e.g. hastag="! morbusine,uranium", which will only be true if there's no morbusine or uranium in the "bloodstream". Renamed "Amanitin" to "Sufforin" and slightly buffed it Added "name" and "speciesname" conditionals Makes bandages heal you slightly if your health is > 50 Adds "Morbusanide", which is a Morbusine antidote. Calyxanide can hurt NPC husks now Adds <Cancel all="false"/> which only takes effect if there's a conditional for specified status tags.
Alex Noir
2017-12-28 17:49:52 +03:00
1815062dda
Allow multiple calls of <Use/> for repeat-use chemicals or autoinjectors or something
Alex Noir
2017-12-28 17:41:44 +03:00
d074d3d443
Crew AI fixes: - Characters can use oxygenite shards (or any other item with an "oxygensource" tag) in diving suits/masks. - AIObjectiveFindDivingGear doesn't count as being completed if the character has diving gear in their inventory unless the character has equipped the gear. - AIObjectiveGetItem doesn't count as being completed if equipping the target item is required and the character hasn't equipped it yet.
Joonas Rikkonen
2017-12-28 12:53:23 +02:00
ccda925623
Fixed order option buttons ("power up", "fire at will", etc) not working in the crew commander menu due to being outside their parent GUIComponent
Joonas Rikkonen
2017-12-28 12:47:48 +02:00
741e26251d
Gets rid of coroutine spam by turning Duration into its own DurationListElement similar to how Delays were handled. Added tags to Status Effects, which also allows for fancy stuff like checking for tags over duration elements for more interesting interactions. Adds "stackable" variable which dictates whether or not the same duration/delay effect can be applied to the same target(s) at the same time. This is a bit imperfect at the moment. Adds Chloromydride which is a non-stackable chem stabilizing critical health which stops its effects once the health is stabilized.
Alex Noir
2017-12-28 13:21:32 +03:00
e405c93581
Fix up conditionals Make Calyxanide only cure non-turned humans and hurt turned player husks Make husk eggs not stack infection with more injections TODO: Allow conditionals to check for non-serialized properties like SpeciesName for absolute POWER
Alex Noir
2017-12-27 23:18:59 +03:00
7b336fc3f4
Fixes and stuff based on Regalis' review
Alex Noir
2017-12-27 20:02:57 +03:00
bd4388042f
Fixed map generation going crazy if the main path node interval is very large relative to the size of the level. Closes#201
Joonas Rikkonen
2017-12-27 18:18:31 +02:00
f5e785df60
Expose some stuff to sub editor, fix alien doors openable with use key, fixed some decon recipes Beginnings of a Conditional system
Alex Noir
2017-12-27 18:00:18 +03:00
3d73f28362
- TextManager automatically replaces "\n" strings with a newline. - Removed instantiating traitor start popup from client-side TraitorManager (instead the client receives the start message from the server). - GUIMessageBoxes don't leave unnecessary empty space for the header if the header text is empty. - More hard-coded text removal.
Joonas Rikkonen
2017-12-27 16:07:00 +02:00
4f0b190371
Some more hard-coded text removal
Joonas Rikkonen
2017-12-27 14:40:33 +02:00
2894b74edc
Started moving hard-coded texts to a separate xml file (Content/Texts.xml) to make modding and translating the game easier (see #80). Also Renamed InfoTextManager as TextManager.
Joonas Rikkonen
2017-12-26 23:51:18 +02:00
bc6c828a14
Option to make limb attacks do damage based on contact with physics bodies instead of distance. Attacks also do damage to all sections of a structure that are within damage range. Closes#108
Joonas Rikkonen
2017-12-26 20:02:33 +02:00
e2f4431357
Added a command for automatic hull generation
juanjp600
2017-12-23 17:57:19 -03:00
156ff292e3
Change "Always" to "PreserveNewest" for clientpermissions.xml
Alex Noir
2017-12-23 17:34:11 +03:00
b3eaa6bd17
Merge remote-tracking branch 'origin/master' into moStuff
Alex Noir
2017-12-23 17:33:24 +03:00
60329fb0d1
Fixed missing clientpermissions.xml preventing hosting Fixed double-clicking items in corpses putting them in their hands instead of your inventory Fixed game over/round end music not playing in multiplayer Added Item Combinations for things like chemicals, etc. - this transfers condition from one item to another Added game over text to multiplayer round summary
Alex Noir
2017-12-23 16:59:08 +03:00
402bcb5d66
quickfix
Alex Noir
2017-12-22 22:01:06 +03:00
6d30557860
Overhaul fabricators and deconstructors to have minCondition, maxCondition (deconstructor) and outCondition Implement several suggestions listed in https://github.com/Regalis11/Barotrauma/issues/196 Add more fabricatables and deconstructables
Alex Noir
2017-12-22 21:33:14 +03:00
7c37ba0955
Characters can only have one picking timer active at a time. Closes#179
Joonas Rikkonen
2017-12-21 22:31:48 +02:00
9610444e67
Merge branch 'master' into moStuff
Alex Noir
2017-12-21 23:17:56 +03:00
c26cef89c6
Fixed DelayedEffect applying when dropped from hands Amanitin is now craftable from Erythrozine, Flash Powder and Sulphuric Acid with 60 medical skill Diving Mask and Diving Suit are now craftable Diving Suit is now deconstructable Fixed buttons yielding different materials on deconstruction
Alex Noir
2017-12-21 23:03:25 +03:00
4db708335a
Readded homoglyph comparisons to client name checking during login (i.e. similar name checks can't be bypassed by using similar-looking characters). Looks like this got removed due to a messed up merge 5bdb57b
Joonas Rikkonen
2017-12-21 21:57:06 +02:00
c593fdb7c6
Minor networking fixes
juanjp600
2017-12-21 16:00:04 -03:00
9251dbf83a
Overhaul DelayedEffect to support application to multiple targets Fix DelayedEffect being unusable by monsters due to monsters calling Single Target Apply in their Attack, which DelayedEffect doesn't override, by making Apply (single target) call Apply (multiple targets) which THEN calls the protected Apply function. Nerf Amanitin to require two injections to be lethal. First injection only stops oxygen from regenerating and slightly saps HP. Add Cause of Death to Health HUD
Alex Noir
2017-12-21 21:40:54 +03:00
604fc65154
Human AI improvements & fixes: - Replaced item name comparisons with Prefab.NameMatches (-> item names can be changed without breaking the AIs). - Having an AIObjective set as the current order of the character doesn't automatically cause it to have a high priority. For example, the order to fix leaks has a low priority if there are no leaks to fix. - AIObjectiveFixLeaks makes sure the character is wearing a diving suit before going to fix a leak. The characters used to run in and out of flooded rooms because the AIObjectiveFindSafety objective would become active as soon as the character entered the room, causing the character to run out, and then immediately run back because they are no longer in immediate danger of drowning, making the FixLeaks objective the most high-priority one. - Characters attempt to find a room with no water in AIObjectiveIdle even if the character is wearing a diving suit. - AIObjectiveFindSafety considers flooded rooms dangerous even if the character is wearing a diving suit (-> the character attempts to go into a more dry room instead of happily idling in the flooded one). - Distance to a hull doesn't decrease its desirability nearly as much in AIObjectiveFindSafety (-> fixes characters not bothering to move into a non-flooded room if it's far away). - AIObjectiveOperateItem makes sure the item is equipped before using it (-> characters can't weld leaks with the welder in their inventory).
Joonas Rikkonen
2017-12-21 19:49:26 +02:00
b9e0c97c9d
nerf Auxiliorizine slightly
Alex Noir
2017-12-21 16:45:46 +03:00
e6b7a0d313
Adds ducts, switches and motion detectors, as well as door breaking sounds, all based on Barotrauma Extended mod. Several sounds and sprites were altered to their mod counterpart. Fixes doors being unfixable without having a crowbar. Fixed case sensitivity mismatch for crowbar.ogg - this is a problem for linux builds.
Alex Noir
2017-12-21 16:37:46 +03:00
40a46f96e2
Fixed LOS not going red + Fixed additive particles not looking right at all
juanjp600
2017-12-20 20:47:17 -03:00
b3c3970209
Server responses to clients using console commands ("granted permissions to client", error messages, etc) are displayed in the client's debug console instead of the chat box. Client command usage is included in server logs.
Joonas Rikkonen
2017-12-20 19:18:32 +02:00
91699b26a6
Giveperm and revokeperm commands work correctly now when used by clients
Joonas Rikkonen
2017-12-20 18:58:27 +02:00
3e4d2c5a8a
Fixed incorrect positioning of debug console question prompts. The ShowQuestionPrompt method used to take the last textblock in the console and consider that as the question prompt text, even though the text had only been queued and the actual GUITexblock hadn't been instantiated yet.
Joonas Rikkonen
2017-12-20 18:57:42 +02:00
1fe71b5fe6
Fixed IsInWater acting strangely
Alex Noir
2017-12-20 18:54:00 +03:00
20e583d816
boy oh boy this is proving to point out some major issues with the status effect system
Alex Noir
2017-12-20 16:53:14 +03:00
0204bc2c49
Added permission presets (or ranks). Current presets are none (no special permissions), moderator (round management & kicking) and admin (almost everything permitted).
Joonas Rikkonen
2017-12-19 22:27:07 +02:00
0a8c79c1cb
Fixed exceptions in GUIListBox.Select if any of the children have null userdata, option to add tooltips to GUIDropDown items
Joonas Rikkonen
2017-12-19 22:22:42 +02:00
4ce4b0a934
Fixed submarines bouncing on characters submarines that are laying on the ocean floor. Not a very realistic way to handle the collisions - the sub just stops as if it had collided with the level walls (making it seem as if the characters were made of concrete), maybe make the collisions gib the character?
Joonas Rikkonen
2017-12-19 17:30:03 +02:00
3b65802a95
Fix issue #97 by allowing stunned people to sustain bleed + oxygen damage as well as handling crit health effects differently
Alex Noir
2017-12-19 15:25:01 +03:00
c87a582f21
Added smallitem tag to Revolver
Juan Pablo Arce
2017-12-18 19:41:34 -03:00
eedc3ffe49
Fixed submarines bouncing on other submarines that are laying on the ocean floor (see #152). + Reduced the cap of ice and structure damage particles per impact.
Joonas Rikkonen
2017-12-18 20:23:03 +02:00
65fb67df54
Inventory.FindItem takes the aliases of the items into account (-> possible to change item names without breaking crew AIs and the tutorial)
Joonas Rikkonen
2017-12-17 22:40:30 +02:00
33f0b1c967
Character.DisplayName looks at the Card slot directly instead of finding the first ID card in the inventory and seeing if it's in the Card slot. + reduced nesting
Joonas Rikkonen
2017-12-17 22:38:13 +02:00
26503a975c
Fixed sub->sub and outside->sub visibility checks when determining name tag visibility.
Joonas Rikkonen
2017-12-17 22:34:24 +02:00
3343185e9f
Make radios drain battery when idle so they're no longer infinite when not equipped in face slot Reduce drainage rate due to original drain rate being too quick though However: radios will still drain battery even when dropped or put in a locker. This could be solved by either implementing a conditional into .xml which would check if a character exists, orrrr by adding a toggle in-inventory button, orrrr by allowing a third "toggle" param for booleans e.g. "OnUse" IsActive="toggle"
Alex Noir
2017-12-17 23:25:17 +03:00
e5c49d929d
Fixed ragdolling and grab-type switching in singleplayer
Alex Noir
2017-12-17 23:13:50 +03:00
9e307d8302
Merge branch 'master' into moRags
Alex Noir
2017-12-17 22:58:16 +03:00
6127bb473d
- Moved character nametag visibility culling to the update method (doesn't make sense for the update rate to be tied to rendering framerate). - Name tags on characters that are outside the camera view are automatically hidden to avoid the costly visibility checks. - If the controlled character or the target has no head, the visibility check is done based on the position of the torso. - Fixed sub->outside visibility checks. - Fixed invalid attributes in the flashlight config.
Joonas Rikkonen
2017-12-17 21:47:03 +02:00
1e5b25bd1a
Merge branch 'master' into moRags
Alex Noir
2017-12-17 22:41:45 +03:00
a5d6da31a4
Holdable items can be held in any limb slot, not just hands. + Characters can hold a flashlight in their mouth.
Joonas Rikkonen
2017-12-17 20:42:31 +02:00
041d1112b8
Added a timer to the raycasts so it's not screwing over performance too hard
Alex Noir
2017-12-17 21:35:19 +03:00
e35fe18662
Carrier's "dummy limb" with a light source cannot be severed. Closes#154
Joonas Rikkonen
2017-12-17 19:33:53 +02:00
714b52dce8
Fixed several sound-related issues that have been bothering me for ages, e.g. * Sounds not playing when the structure is fully destroyed * Glass windows using wrong sound effects * Only one glassBreak sound was used despite there being 3
Alex Noir
2017-12-17 18:05:05 +03:00
0eacbce313
Tweaked crowbar to be a powerful two-handed weapon instead
Alex Noir
2017-12-17 16:32:25 +03:00
6b8bd59656
Let mechanics spawn with crowbars
Alex Noir
2017-12-17 15:52:48 +03:00