Commit Graph

89 Commits

Author SHA1 Message Date
Joonas Rikkonen 083d88a64f Fixed lightcomponent sprites & broken sprites not being mirrored. Closes #893 2018-11-08 15:32:57 +02:00
Joonas Rikkonen 33d971f5d0 Fixed OnBroken & OnImpact statuseffects not being applied client-side 2018-10-29 20:38:43 +02:00
Joonas Rikkonen a403ca44c5 Fixed inventory sync delay being decremented in two places, causing the delay to be 0.5 seconds instead of the intended 1 s. Closes #788 2018-09-12 14:16:06 +03:00
Joonas Rikkonen f09fcfc3be Fabricators show the list of required items even if the character doesn't have the skills to craft the item. Closes #717 2018-08-20 21:19:18 +03:00
Joonas Rikkonen 898e8dfdb1 Added a property for locking connection panels (better than the old hacky way of changing the required item to something else). Locked panels can still be rewired in the sub editor. Closes #679 2018-08-20 20:12:33 +03:00
Joonas Rikkonen 8160abe109 Fixed nullref exceptions when loading a steering component when a gamesession is running but no locations have been selected (not sure how that can even happen) 2018-08-14 13:28:11 +03:00
Joonas Rikkonen 6cb6e26b94 Servers can modify all Editable item properties using ChangeProperty events (not just InGameEditable ones). Closes #675 2018-08-14 12:01:56 +03:00
Joonas Rikkonen 7a7c92a2ce Server writes item condition at full accuracy instead of just using 8 bits. The more inaccurate condition caused issues when the value was just above some specific threshold (e.g. minimum condition for a fabricator ingredient) server-side and below it client-side. Closes #616 2018-08-09 12:39:14 +03:00
Joonas Rikkonen 4b0c54d664 Dockingport gap linking fixes. Closes #551
- Dockingports force the hatch/door gaps to be connected to the hulls between the ports, because connecting them automatically may fail if the ports are positioned in a non-standard way.
- Gaps don't recheck hulls in OnMapLoaded if rechecks have been disabled.
- Item.UpdateHulls and Gap.UpdateHulls are not called when OnMapLoaded is called during ruin generation.
2018-08-07 12:45:45 +03:00
Joonas Rikkonen 5354670288 Fixed StatusEffects being multiplied by deltatime when a client uses an item with the "use on self" buttons (even though the effect should be instantaneous). Caused effects with no duration to do almost nothing, making calyxanide and other meds with instantaneous effects basically useless. Closes #587 2018-08-07 11:36:53 +03:00
Joonas Rikkonen cafcc76064 Fixed wall-attached sections of a wire not rendering when the item is being rewired outside the sub 2018-08-02 16:55:37 +03:00
Joonas Rikkonen 708f72c883 Fixed items occasionally dropping instead of being moved to another inventory client-side. Closes #558 2018-08-02 13:24:56 +03:00
Joonas Rikkonen 5ba3f9384a Debug visualization of docking port colliders 2018-08-01 17:30:07 +03:00
Joonas Rikkonen 82103cf394 Controllers don't have to be wired directly to an item for camera focus to work (= railguns and cameras can be used over wifi). Closes #535 2018-07-31 15:03:20 +03:00
Joonas Rikkonen 60a563fe75 EntityEvent fixes:
- Clients wait for midround syncing to finish before applying the remote state to connection panels and inventories (because the wires connected to the connection panel or items in the inventory may not exist before the EntitySpawner events have been received).
- Server writes 0 as the projectile ID if the projectile doesn't exist anymore when a Turret event is sent.
- More info in networkevent error messages.
2018-07-30 13:35:26 +03:00
Joonas Rikkonen c66098ca4e Fixed only the first inventory of an item being synced (e.g. clients wouldn't get notified when an item is contained in the "output inventory" of a fabricator or deconstructor). 2018-07-30 11:00:21 +03:00
Joonas Rikkonen 458c972580 More server-side EntityEvent error logging, Item.ServerWrite does some error checks and writes NetEntityEvent.Type.Invalid as the type of the event instead of attempting to write a potentially unreadable message. 2018-07-29 22:28:56 +03:00
Joonas Rikkonen 25a62b3a51 More physics error checks, ragdoll clamps the velocity returned by PhysicsBody.CorrectPosition to prevent applying excessively high velocities to the collider if the position has changed significantly between frames 2018-07-23 17:58:02 +03:00
Joonas Rikkonen e0455caaaa Cherry-picked 869b725 from dev 2018-07-18 11:49:36 +03:00
itchyOwl b86b8cd377 Use a single method with optional parameters for drawing tiled textures. 2018-04-06 11:54:41 +03:00
juanjp600 82dcbc3ae8 Light sources now follow the direction of parent Turrets + changed Controller's output signal and Turret's input signal to an angle 2018-03-07 22:53:28 -03:00
Joonas Rikkonen 07d3d69040 Equipped items can be swapped by double-clicking, fixed inventories getting messed up when swapping multi-slot items fails (e.g. drag a jumpsuit on an equipped diving suit). 2018-03-02 15:24:54 +02:00
Joonas Rikkonen cc41f0cd9e Fixed items held in left hand taking the sprite depth from the left arm instead of the hand 2018-03-02 10:38:10 +02:00
Joonas Rikkonen 2880ca3adb Contained items drawn by ItemContainer.Draw use the sprite color of the item. Closes #300 2018-03-01 15:57:57 +02:00
Joonas Rikkonen 55a5e9e968 Syringes are recolored according to the color of the contained medical item. Closes #256 2018-03-01 11:26:04 +02:00
Joonas Rikkonen d867dd6c17 Diving suits are rendered in front of all items (diving masks, goggles, etc aren't drawn on top of the suit). Items that are being held take the depth of the wearable sprite on the hand into account. Closes #290 2018-02-27 23:04:54 +02:00
Joonas Rikkonen 4d01aba0f1 Fixed subinventory staying visible if the slot containing the subinventory gets merged while it's highlighted (e.g. put a stun baton in either hand and swap it with a two-hand item) 2018-02-13 13:49:41 +02:00
Joonas Rikkonen 25fde64378 Fixed incorrect TextManager tag in PowerContainer interface 2018-02-05 16:43:02 +02:00
Joonas Rikkonen dcb6de32c0 Some more hard-coded text removal 2018-01-31 19:01:48 +02:00
Joonas Rikkonen e55c54b161 Removed some unused methods 2018-01-25 09:38:04 +02:00
Joonas Rikkonen 43d48ceb13 Fixed subinventory becoming active in the controlled character's inventory when the slot with the same index is highlighted in a grabbed character's inventory (or vice versa), fixed CPR & grab buttons being drawn on top of subinventories 2018-01-25 09:36:58 +02:00
Joonas Rikkonen 0db1885872 Fixed being unable to drag inventory slots if the subinventory of the slot is highlighted 2018-01-15 19:23:15 +02:00
Joonas Rikkonen 03bff643f8 More hard-coded text removal, fixed StatusHUD displaying husk infection state incorrectly 2018-01-12 13:17:22 +02:00
Joonas Rikkonen b4064adc9a Fixed connections not being refreshed when a junction box breaks, made junction box deterioration rate proportional to the ratio between the available power and the load (i.e. more power makes the boxes break faster) & added some more variation between the deterioration rates of boxes to prevent all of them breaking at the same time. 2018-01-11 20:53:34 +02:00
Joonas Rikkonen 1eaccef8c7 Added damaged variants of junction box sprite, damaged item sprites can be set to fade in. 2018-01-11 20:48:26 +02:00
Joonas Rikkonen 25ebe52248 Option to configure alternate sprites for broken items 2018-01-11 16:51:36 +02:00
Joonas Rikkonen d9fb5960e0 Fixed subinventory slots of equipped items going outside the screen if the item has too many slots (e.g. metal crates) 2018-01-10 16:24:03 +02:00
Joonas Rikkonen 0f23635f49 Fixed items disappearing client-side when the physics body of the item goes to sleep. 2018-01-10 15:14:25 +02:00
Joonas Rikkonen 5f2227489b Reactor temperature has to stay above the meltdown temperature for 30 seconds before it explodes. The reactors now also have an output connection that sends out a signal when the temperature is critical. + Added reactor meltdown warning sirens & lights to vanilla subs. Closes #157 2018-01-10 00:33:21 +02:00
Joonas Rikkonen 7187c277e7 Merge branch 'master' into moStuff 2018-01-09 10:38:06 +02:00
Joonas Rikkonen 78c13ddb42 Wire selection fixes:
- Fixed MathUtils.LineToPointDistance returning NaN if both points of the line are at the same position, preventing from selecting some wire nodes in the wiring mode.
- Added an indicator that shows when a node is highlighted.
- Wire nodes a higher preference for being highlighted than wire sections. Makes it easier to select nodes that are on top of another wire.

Closes #215
2018-01-01 15:04:53 +02:00
Joonas Rikkonen 79f3f04c3b Fixed Steering components never setting their currPowerConsumption field above zero, making them cause zero load on the electrical grid. 2018-01-01 15:00:12 +02:00
Joonas Rikkonen 99391f68b2 StatusHUD only shows the status of the visible character that the cursor is closest to to prevent multiple characters from cluttering the screen. Closes #185 2018-01-01 14:59:51 +02:00
Joonas Rikkonen 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.
Fixes stack overflow exceptions caused by signals looping between junction boxes and improves performance because the layout of the power grid doesn't have to be calculated every frame and the wire connections don't have to be rechecked when sending a signal. Closes #222
2018-01-01 14:59:40 +02:00
Joonas Rikkonen c77c598cb6 Fixed items being dropped when attempting to place them in an itemcontainer slot that's on a normal inventory slot. Closes #200 2017-12-31 01:59:49 +02:00
Joonas Rikkonen 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.
2017-12-27 16:07:00 +02:00
Alex Noir 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
2017-12-23 16:59:08 +03:00
Alex Noir 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
2017-12-22 21:33:14 +03:00
Alex Noir 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
2017-12-21 21:40:54 +03:00
juanjp600 07626a1989 Merge branch 'master' of https://github.com/Regalis11/Barotrauma
Barotrauma/BarotraumaShared/Source/Items/Components/ItemComponent.cs
2017-12-20 19:46:53 -03:00