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
ec020f43d3
Fixed creatures seeking towards an incorrect position when trying to eat something (causing larger creatures like threshers and coelanths to swim around the target without ever reaching it), extra check for removed entities in AITarget
2017-11-01 20:58:37 +02:00
Joonas Rikkonen
1f92e31166
HumanAIController calculates the "dangerousness" of an enemy based on the largest amount of damage received from it (assuming it's larger than the attack values of the enemy's limbs). Meaning that an enemy that inflicted lots of damage to the character using items is considered dangerous even if it has no attacks assigned to it's limbs.
2017-10-19 00:01:34 +03:00
Joonas Rikkonen
f46dc5da28
Water flow logic tweaking:
...
- Less fluctuation, water doesn't constantly flow back and forth through gaps.
- Flowing water pushes characters around much more heavily, and the force is applied to the collider in addition to the limbs.
- Vertical gaps don't push characters up/down unless the character is roughly above/below the gap.
+ Renamed some fields in the hull and gap classes (Volume -> WaterVolume, FullVolume -> Volume, public fields start with a capital letter)
2017-10-10 21:07:45 +03:00
Joonas Rikkonen
1ff2054ca8
Converted the GetAttribute methods in the ToolBox class to extension methods
2017-10-04 18:38:40 +03:00
Joonas Rikkonen
8c3c689596
- Fixed creatures being able to sever non-severable limb joints (which caused syncing issues when the waist->torso joint of a humanoid was severed).
...
- The server creates an entity event when a joint is severed.
- Made joints severable by default.
2017-09-21 17:50:24 +03:00
Joonas Rikkonen
2d1c00546f
Reimplemented switching to repair & monster music types (now handled by SoundPlayer)
2017-08-23 14:42:24 +03:00
Joonas Rikkonen
c7a357d84c
Fix for exceptions when a human is targeting a removed entity while debugdraw is enabled, accessing AITarget position properties after the target has been destroyed doesn't throw an exception (but does log an error in debug builds).
2017-08-13 20:00:52 +03:00
Joonas Rikkonen
a8ec821382
Handcuffed AICharacters can't climb ladders
2017-08-08 21:17:43 +03:00
Joonas Rikkonen
575b643c62
Added "user" parameter to Inventory.PutItem and Inventory.TryPutItem. + More descriptive wiring logging: the logs don't list all the wires in a connectionpanel but only the changes a player does to the wiring. Disconnecting wires by picking them up and wiring done by the host are also logged now.
2017-07-17 23:27:31 +03:00
Joonas Rikkonen
8693dc3d3d
Fixed AI crew members swimming too fast, reduced max swimming speed (= the speed when holding shift)
2017-07-12 17:53:07 +03:00
Joonas Rikkonen
bf5a0746ad
Merge branch 'master' of https://github.com/Faerdan/Barotrauma into Faerdan-master
...
Conflicts:
Barotrauma/BarotraumaClient/Source/Map/MapEntity.cs
Barotrauma/BarotraumaClient/Source/Screens/GameScreen.cs
Barotrauma/BarotraumaShared/Source/Characters/Character.cs
Barotrauma/BarotraumaShared/Source/Items/Item.cs
2017-07-05 19:32:34 +03:00
Joonas Rikkonen
64ad5e5003
Removed unnecessary using directives
2017-07-05 18:35:09 +03:00
Joonas Rikkonen
e431cc775f
Some null checks, clients log initial lobby update, minor lighting optimization
2017-07-04 22:36:00 +03:00
Joonas Rikkonen
e15f5a881b
Merge branch 'dedicated-server' (TODO: make sure I didn't break anything)
...
Conflicts:
Barotrauma/Barotrauma.csproj
Barotrauma/BarotraumaShared/Source/Characters/AI/AIController.cs
Barotrauma/BarotraumaShared/Source/Characters/AI/EnemyAIController.cs
Barotrauma/BarotraumaShared/Source/Characters/AICharacter.cs
Barotrauma/BarotraumaShared/Source/Characters/Animation/Ragdoll.cs
Barotrauma/BarotraumaShared/Source/Characters/Attack.cs
Barotrauma/BarotraumaShared/Source/Characters/Character.cs
Barotrauma/BarotraumaShared/Source/Characters/CharacterNetworking.cs
Barotrauma/BarotraumaShared/Source/Characters/Limb.cs
Barotrauma/BarotraumaShared/Source/Events/MonsterEvent.cs
Barotrauma/BarotraumaShared/Source/Map/Explosion.cs
2017-06-30 21:02:52 +03: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