Commit Graph

45 Commits

Author SHA1 Message Date
Joonas Rikkonen 884360216f (de60c0961) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev 2019-05-16 05:50:56 +03:00
Joonas Rikkonen fd7dfebd3a (50c25dbf6) Added a "back" button that closes the credits, minor credits tweaks 2019-05-16 05:50:39 +03:00
Joonas Rikkonen ca8fbe4390 (4a761e62c) Default priority modifier is 1. 2019-05-16 05:48:25 +03:00
Joonas Rikkonen 068089ae5c (d622ac851) Fix double updates of current orders. 2019-05-16 05:47:36 +03:00
Joonas Rikkonen c09df5c602 (567dd3eb2) Wait for the splash videos to finish before continuing with loading if the loading coroutine cannot be run in a separate thread. Not an ideal solution, but better than the unbearably choppy videos. TODO: figure out a way to run the loading screen and the loading coroutine in separate threads on Mac & Linux 2019-05-16 05:47:18 +03:00
Joonas Rikkonen bb6bffe88a (b597640aa) Implemented the new splash videos (each can be skipped separately), language selection on first startup works now 2019-05-16 05:47:02 +03:00
Joonas Rikkonen 436c5d4d73 (373a0d300) Daedalic splash video, split FF & UTF videos 2019-05-16 05:46:46 +03:00
Joonas Rikkonen 306cb77167 (6facb21fe) Reminder to self: save before committing 2019-05-16 05:46:29 +03:00
Joonas Rikkonen ce1aa39a4b (b1241e3dd) GUIMessageBoxes use relative sizes 2019-05-16 05:46:12 +03:00
Joonas Rikkonen f8090d470e (5670a7c58) Don't get stuck if cannot use the button. 2019-05-16 05:44:48 +03:00
Joonas Rikkonen 96b2d953d2 (bad03a33d) Don't translate language names to the current display language in the settings menu (should be translated to the target language instead) 2019-05-16 05:44:31 +03:00
Joonas Rikkonen 7ae2b2f387 (2ffcd0a06) Retry writing files in SaveUtil.DecompressFile up to 4 times (in case the file is being used by another process), fixed DecompressFiletoStream "retrying" 4 times even if the first try succeeds 2019-05-16 05:44:15 +03:00
Joonas Rikkonen ec7e45e021 (914b4d519) Set Reactor window max size to be slightly larger, fixed ItemInventory text wrapping to work better on different resolutions 2019-05-16 05:43:59 +03:00
Joonas Rikkonen 5ec107bf83 (0d96091e5) Adjusted layout spacing on Reactor to make the warning labels slightly more readable on Brazilian Portugese 2019-05-16 05:43:40 +03:00
Joonas Rikkonen de2246fe57 (e0d673b0d) Test: Don't calculate the distance to the buttons when seeking path. Instead, check the distance when checking the doors. Allows the bots to access the Remora ballast through the door where the button is a bit farther from the door than usually. 2019-05-16 05:42:51 +03:00
Joonas Rikkonen 828150e0ae (9d8f050b8) Added text wrapping to ItemInventory titles and changed pump GUI In/Out text to use a smaller font 2019-05-16 05:42:34 +03:00
Joonas Rikkonen 1d5de494cd (a185ec0cd) Don't report on broken items that have condition above the threshold. Optimize and fix. 2019-05-16 05:41:25 +03:00
Joonas Rikkonen 79d01822d2 (8015dd67d) Show a language selection prompt when launching the game for the first time (WIP) 2019-05-16 05:41:09 +03:00
Joonas Rikkonen 42a023e811 (43c3787ae) Refactor AIObjectiveRescue and remove ShouldInterruptSubObjective property. Not yet tested. 2019-05-16 05:40:35 +03:00
Joonas Rikkonen 7d0d669cdc (8fd5fa292) Fix a stack overflow issue. 2019-05-16 05:40:19 +03:00
Joonas Rikkonen ddd84a4f9e (c45394988) Refactor and fix button interaction and access checks in the indoors steering manager. 2019-05-16 05:40:00 +03:00
Joonas Rikkonen 704e0731c9 (a73e09604) Fixed inventory locking up when rewiring items with a Controller component (e.g. periscopes). Don't open the health interface by clicking on the healthbar when using a controller. 2019-05-16 05:39:42 +03:00
Joonas Rikkonen 3575c8df52 (03ab09991) Load chinese fonts dynamically, removed unnecessary duplicate block from DynamicRenderAtlas 2019-05-16 05:39:25 +03:00
Joonas Rikkonen 4695e6f92b (89fea1963) Refactoring and fixing: - Remove relatively expensive HasAccessToPath calls. - Fix finding diving gear subobjective of goto main objective not checking if we need the gear. - Move the abandon checks from CanBeCompleted property under Act method and use the inherited property. Fixes incorrect results when the goto objective is not the active objective. - Improve the support for concurrent sub objectives. 2019-05-16 05:38:02 +03:00
Joonas Rikkonen 96eb27140e (ab2157c70) Remove KeepDivingGear property, because it can cause issues when the objective tree is deep. Checking the property is possible via recursion, but it seems that the checks can miss a frame. Instead, let's just make it simple and remove the diving suit only when idling. 2019-05-16 05:37:46 +03:00
Joonas Rikkonen 9fba7b1d7a (1136677c2) Fix Extinguish fire objective. Implement ConcurrentObjectives property (should use this for Combat). 2019-05-16 05:35:12 +03:00
Joonas Rikkonen a3db11876b (d34fb2097) Major refactoring: - Replace custom logic regarding subobjectives with generic logic. - Ensure that all the objectives follow the same logic, reduce duplicate code where possible. 2019-05-16 05:32:56 +03:00
Joonas Rikkonen 05270aa165 (d9e651e1c) Add a generic method for handling subobjectives, when we don't use a collection but individual references instead. 2019-05-16 05:32:37 +03:00
Joonas Rikkonen 5f610caadd (f0837188e) Bots now target only reported targets when the objective is not an order. 2019-05-16 05:31:48 +03:00
Joonas Rikkonen 7614642d93 (e7b2add9d) Merge branch 'human-ai' of https://github.com/Regalis11/Barotrauma-development into human-ai 2019-05-16 05:30:39 +03:00
Joonas Rikkonen 54a0164f89 (98501b696) Reduce the max accepted distance for repair tool ai operate. 2019-05-16 05:30:23 +03:00
Joonas Rikkonen eadd063950 (d82a5d3f3) Use the wait delay for all objectives that are not orders (instead of just idle). 2019-05-16 05:28:41 +03:00
Joonas Rikkonen 9ec9adb2a7 (cec5cdbcd) Reset steering when an objective is activated. 2019-05-16 05:21:39 +03:00
Joonas Rikkonen 2ae54a01a5 (ac7ab10b0) Pass AIObjectiveManager reference in the constructors instead of methods so that we can always access it. 2019-05-16 05:14:20 +03:00
Joonas Rikkonen 9a1e7f8212 (1c6954251) Add IsLoop property. Fixes operate item orders being removed when they are done. Instead of calling loopable objectives done, let's just use the priority system. 2019-05-16 05:11:01 +03:00
Joonas Rikkonen ff5a819ad3 (62a89ce6a) Refactor and fix priority calculations. WIP, but should already improve things. 2019-05-16 05:05:53 +03:00
Joonas Rikkonen d0795791e7 (3bb9485ad) Add automatic orders as objectives instead of orders so that we can take advantage of the existing priority system. Turn the priority values defined in the xml into modifiers. 2019-05-16 05:04:53 +03:00
Joonas Rikkonen 47ee14227e (551008fc1) Abandon FixLeakObjective when the goto subobjective cannot be completed. Reset AIObjectiveLoops when the objective is activated or added. Don't clear ignored targets periodically by default. Calculate AIObjectiveGoTo CloseEnough when the objective is created. Don't use arm length in CloseEnough, because it's not used in range checks. Partial fixes to #1343. 2019-04-08 12:01:54 +03:00
Joonas Rikkonen 63eb4d64e5 f8b0295...0671290 2019-03-18 23:30:58 +02:00
Joonas Rikkonen 23687fbf2f aeafa16...4d3cf73 2019-03-18 22:57:05 +02:00
Joonas Rikkonen 3301bed442 409d4d9...aeafa16 (merge human-ai) 2019-03-18 22:52:17 +02:00
Joonas Rikkonen 6c0679c297 38f1ddb...178a853: v0.8.9.1, removed content folder 2019-03-18 20:39:27 +02:00
Joonas Rikkonen 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).
2017-12-21 19:49:26 +02:00
Joonas Rikkonen 64ad5e5003 Removed unnecessary using directives 2017-07-05 18:35:09 +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