Commit Graph

27 Commits

Author SHA1 Message Date
Joonas Rikkonen 14d0daf16d (ccef21f63) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev 2019-04-06 17:49:31 +03:00
Joonas Rikkonen 45c1ed499a (e326112f5) Increased discharge coil sound range and added camera shake to make it more noticeable when it's used 2019-04-06 17:49:18 +03:00
Joonas Rikkonen 25768d8845 (4b54fb4bf) Refactor AIObjectiveCombat and the reactions to the damage. Fixes bots not reacting to any damage done with repair tools. Now they should flee (but not retaliate). 2019-04-05 16:20:11 +03:00
Joonas Rikkonen 161f725778 (2b36813ef) Added Back button to submarine editor 2019-04-05 16:19:07 +03:00
Joonas Rikkonen 8f42801c7a (2d473d38a) Add RequireAimToUse checks for being logical and for future. Shouldn't have any functional implications in the current version, but we could have RepairTools or Weapons that don't require aiming. 2019-04-05 16:18:52 +03:00
Joonas Rikkonen b08a31a68f (33ab1e038) Add buttons for resetting the settings to the defaults and setting the default keybindings. TODO: pressing the buttons should refresh the settings frame instead of closing it. 2019-04-04 11:10:14 +03:00
Joonas Rikkonen a3425a0432 (bb85ea959) Fixed last item not being visible in grid layout groups if it's the only item on the last row 2019-04-04 11:08:49 +03:00
Joonas Rikkonen 7eb03ea6b3 (874c38a79) Show keybindings for use or shoot in the tooltips. 2019-04-04 11:08:33 +03:00
Joonas Rikkonen d4752bb6a0 (9f5c9fbcb) Make sure lazy-loaded sprites load their texture when creating a GUIImage, because the image needs to know the size of the texture to scale itself correctly. Fixes location portraits not being visible in the campaign menu when a location is selected for the first time. 2019-04-04 11:08:18 +03:00
Joonas Rikkonen 7491b06a5d (bbd192053) Rebind Select and Use keys. Refactor GameSettings to support legacy bindings, when they are set. That is, if the new "deselect" and "shoot" keys are not defined, but the player config file is found, use the "select" and the "use" keys instead of the defaults. 2019-04-04 11:08:02 +03:00
Joonas Rikkonen 79ea41e6c9 (4f4395b00) Reduced the size of the disallowed item interface area around the chatbox 2019-04-04 11:07:45 +03:00
Joonas Rikkonen 2d52a8ddf4 (883c460d5) Don't require holding the aim key when using the periscope/controller. Move the RequireAimToUse from Controller component to Item. Change the use and shoot logic accordingly. TODO: fix the camera centering. 2019-04-04 11:07:14 +03:00
Joonas Rikkonen 3f05035c18 (c4338b107) Disable aiming when interacting with an item other than ladders. 2019-04-04 11:06:44 +03:00
Joonas Rikkonen 5f05322fdb (fdc038d5d) Keymapping and UX test: - Map use to "E" and Select to "Left Mouse". - Introduce a dedicated key for deselecting ("Right Mouse"). - Introduce a dedicated key for shooting ("Left Mouse"). - Define certain objects as shootables, which simply means that they use the "Shoot" key instead of using the "Use" key. This required the least amount of refactoring the existing code. - TODO: don't register the "Select" input when aiming or when an interface is open -> should prevent interacting through UI elements. - TODO: sync the new input types with the server. 2019-04-04 11:06:12 +03:00
Joonas Rikkonen 044fd3344b 2f107db...5202af9 2019-03-18 21:42:26 +02:00
Joonas Rikkonen 6c0679c297 38f1ddb...178a853: v0.8.9.1, removed content folder 2019-03-18 20:39:27 +02:00
Joonas Rikkonen df202d5a18 Melee weapons can only hit one character per swing (makes stun batons & medical syringes less OP). Closes #814, closes #865 2018-11-15 20:45:04 +02:00
Joonas Rikkonen f697ec7582 Melee weapons don't stop the swing when they hit the first target (but only damage each target once per swing). Fixes weapons not hitting the target in tight spaces due to touching the ceiling/walls first, and allows hitting multiple characters with one swing. Closes #622 2018-08-09 12:55:52 +03:00
Joonas Rikkonen 4e048b7895 Items removed due to the "DeleteOnUse" property are removed using EntitySpawner, removing an item removes it from the selected items of all characters. Closes #306 2018-03-05 12:13:52 +02:00
Joonas Rikkonen c803e23c50 Added checks for character removal to a bunch of places. Some of these may not necessary, but at least MeleeWeapon, Projectile and Controller still accessed the user after the user had been removed. 2018-02-28 17:37:20 +02:00
Alex Noir 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!
2017-12-30 13:46:59 +03:00
Alex Noir 0eacbce313 Tweaked crowbar to be a powerful two-handed weapon instead 2017-12-17 16:32:25 +03:00
Alex Noir bdeb3a19fd Updated server logs so admins can see disguised persons
clientist should also display stuff
TODO: Log inventory interactions like putting item in slots (e.g. oxy mask equipped in Head slot or equipped in Any slot, etc.) so you can tell the exact moment someone decided to disguise themselves.
2017-12-16 20:24:24 +03:00
Joonas Rikkonen 63493d2b9d Added a Character.AddDamage override method that does damage to a specific limb instead of the limb closest to the source of the damage. Projectiles and melee weapons now always do damage to the limb they hit, even if the center point of some other limb happens to be closer.
Also refactored the IDamageable interface to make more sense; now the attacker has to be a character instead of an IDamageable and damageable classes don't need to have an AiTarget.

Closes #69
2017-12-05 18:03:00 +02:00
Joonas Rikkonen 8e556f1c76 - Renamed a bunch of ObjectProperty-related stuff (ObjectProperty -> SerializableProperty, IPropertyObject -> ISerializableEntity, the "SerializableProperty" attribute -> Serialize).
- Rectangle serialization.
- Option to restrict numeric properties to a range of values.
- WIP generic ISerializableEntity editor.
2017-11-08 21:15:03 +02:00
Joonas Rikkonen a0d606ef5f Working on improving the serialization system and ObjectProperty/IPropertyObject (TODO: come up with better names). The plan is to:
- Add support for some of the most common types (vectors, colors, rects) so there's no need to parse the values in the setters of the serializable properties (see Holdable.HoldPos for example).
- Make a generic version of the item editing HUD that can be used on any IPropertyObject. Should make it easier to implement things like the character editor, editing structure properties, particle editor, etc.
- Improve the interface of the editing HUD. Instead of having to type in a string value into a textbox, there should be number input fields for numeric properties, sliders for properties that only accept a range of values, a color picker, etc. And tooltips.
2017-11-03 19:41:21 +02:00
juanjp600 4d225c65f2 Updated to MonoGame 3.6 + Directory refactor
- Barotrauma's projects are in the Barotrauma directory
- All libraries are in the Libraries directory
- MonoGame is now managed by NuGet, rather than referenced from the installed files (TODO: consider using PCL for easier cross-platform development?)
- NuGet libraries are not included in the repo, as getting the latest versions automatically should be preferred
- Removed Content/effects.mgfx as it didn't seem to be used anywhere
- Removed some references to Subsurface directory
- Renamed Launcher2 to Launcher
2017-06-27 09:52:57 -03:00