Commit Graph

298 Commits

Author SHA1 Message Date
Regalis
00bbd1d607 Sonar tweaking 2017-05-03 21:09:05 +03:00
Regalis
043c2fbc5e Moved TotalElapsedTime from GameMain to the Timing class 2017-05-03 19:15:43 +03:00
Regalis
1dad5d9bf4 Passive sonar: when not active, the sonar shows nearby sources of sound and a faint outline of the structures around them. Now it's much easier to monitor how much noise the sub is making and to hide from enemies.
+ Changed the visuals of the sonar a bit. The current rendering method is very inefficient though, todo: write a shader
2017-04-24 21:13:54 +03:00
Regalis
dc6ed7daf1 Separate component style for item UIs + option to select the style in the item config files, removed a bunch of hard-coded UI element color changes 2017-04-10 18:11:33 +03:00
Regalis
3844dd9dac GUIStyle logic changes: instead of having a predetermined GUIComponentStyle for each type of GUIComponent, any GUIComponent can use any style. The GUIComponent constructors take the name of the style as a parameter, and if no style is specified, the default style for the GUIComponent in question will be used. 2017-04-08 16:46:53 +03:00
Regalis
4d19d0afc1 Deconstructors & fabricators drop created items on the floor if there's no more room in the inventory, deconstructor doesn't reset the activation button after deconstructing an item if there are still more items to go 2017-03-23 18:55:39 +02:00
Regalis
885a8c610c Text scale in GUITextBlocks and ItemLabels can be changed, text wrapping fix (words that are too wide for one line shouldn't cause overflows anymore) 2017-03-22 23:22:54 +02:00
juanjp600
d6c292a2cc SharpFont + ScalableFont implementation
https://github.com/Robmaister/SharpFont

TODO: replace Code Bold.otf with the full version, fix any bugs, build on Linux, possibly move ToolBox string wrapping and limiting logic to ScalableFont class for better results.
2017-03-07 13:44:42 -03:00
juanjp600
3868b70387 Fixed windowed door shadows 2017-03-01 13:41:37 -03:00
Regalis
d50eba55a6 Fixed controller.userPos being recalculated incorrectly when flipping the sub (due to userPos being relative to the center of the item since commit 49d4108e) 2017-02-21 20:24:02 +02:00
Regalis
5afca48a82 Relinking dockingport hulls to gaps after flipping the sub 2017-01-26 19:57:21 +02:00
Regalis
282c2b75d4 Fixed docking ports disconnecting when a submarine is flipped 2017-01-25 20:30:08 +02:00
Regalis
12b7290bad Fixed Ragdoll.HeadInWater not being set to true if the character is inside a water-filled hull but the head is outside the sub, HUDProgressBars aren't created when a non-controlled character repairs something 2016-12-28 20:00:40 +02:00
Regalis
49d4108eeb Fixed character colliders sinking/floating away when using a railgun controller underwater 2016-12-28 19:56:52 +02:00
Regalis
c3d29e41ad Additional null check in Wire Update, stopping paused sounds before deleting them (prevents an OpenAL error when switching to sub editor when the mainmenu drone sound is playing) 2016-12-21 20:35:38 +02:00
Regalis
40c28a11de Docked subs are forced to correct positions during loading and the docking is "locked" (subs won't get stuck inside each other even if the linked sub is placed incorrectly in the editor) 2016-12-13 23:12:56 +02:00
Regalis
5241546069 Fixed error message spam if a docking port is linked to another port in the same sub 2016-12-12 13:31:26 +02:00
Regalis
9819c52ced Fixed null exception if switching to wiring mode while some item is selected 2016-12-12 13:28:44 +02:00
Regalis
2871830670 Fixed wire connections & nodes resetting when copypasting them 2016-12-11 22:33:15 +02:00
Regalis
f04ebf1503 Wire IndexOutOfRange fix 2016-12-09 14:49:36 +02:00
Regalis
c6380c3774 Broken junction boxes can't pass power from a box to another (wtf how have I not noticed this) 2016-12-01 17:34:02 +02:00
Regalis
42ff4a0d9a The equipped wire can be moved from connection to another after connecting it, without having to unequip it first 2016-11-30 16:47:36 +02:00
Regalis
568c909ff0 Improved wire editing logic:
- wires have to be selected by clicking before any nodes can be moved
- wires can be selected by clicking either the nodes or the sections
- new nodes can be added by clicking a section while holding ctrl
- the selected wire is drawn on top of all other entities
2016-11-30 16:45:21 +02:00
Regalis
0b03b78606 Entities that are behind other entities can be selected using a listbox that appears when hovering the cursor over them, itemcomponent GUIFrames aren't added to GUIUpdateList in sub editor (unless in character mode) 2016-11-29 17:30:13 +02:00
Regalis
82aa43cda3 Merge branch 'master' of https://gitlab.com/poe.regalis/barotrauma 2016-11-21 16:31:54 +02:00
Regalis
50d706c67b - changed how PowerContainers determine how much power to provide to the grid, batteries can now match the load of the grid
- light-emitting alien structures that hold the artifacts instead of just having the artifacts lay on the floor (can also be used for turning artifacts into power sources if installed in a sub)
2016-11-21 16:28:30 +02:00
juanjp600
7a3bce3973 Hull volume helper in editor + Character name matches client name + Better-looking Watcher light source
Also '' is a thing of the past, use \" instead
2016-11-20 18:47:22 -03:00
Regalis
8c90fd1774 Doors push colliders away when closing, small human standing anim tweak 2016-11-18 18:47:58 +02:00
Regalis
d37bad2d44 Wire sections are updated after flipping, made the wire node list private and added public methods which ensure that sections are updated when modifying nodes 2016-11-16 18:41:32 +02:00
juanjp600
5922fc972d Merge branch 'master' of https://gitlab.com/poe.regalis/barotrauma 2016-11-15 22:26:46 -03:00
juanjp600
d2c17274fe GUI elements now respect render order + some minor distance comparison optimization 2016-11-15 22:26:36 -03:00
Regalis
184c6858cd Removing orphans in PathFinder.GenerateNodes, fixed autopilot steering the wrong way if clicking an already selected destination tickbox 2016-11-15 20:48:52 +02:00
Regalis
b86231170f Fixed selectionrect becoming active when moving entities in the editor, null check in ConnectionPanel.UpdateHUD 2016-11-14 16:29:15 +02:00
Regalis
c2098f06f8 Removed a redundant DrawRectangle method & redundant sub visibility culling in GameScreen 2016-11-12 18:29:39 +02:00
Regalis
0353732e7e Fixed highlighting items when highlighting a wire in a connection panel 2016-11-12 18:27:35 +02:00
Regalis
7fa660d38e Wires can be cloned and moved if both items it's connected to are selected 2016-11-12 15:51:46 +02:00
Regalis
96cedd67f1 ItemComponents that don't implement the IDrawableComponent interface can't be added to the list of drawable components, pickTimer is ignored when deattaching items from the walls in the editor 2016-11-11 17:34:21 +02:00
Regalis
e6356a7516 Updating wire sections when moving nodes in the editor 2016-11-10 19:44:48 +02:00
Regalis
8d1db582ad Fixed flickering lights 2016-11-10 17:46:46 +02:00
Regalis
d017817878 Updating wire sections if the wires are moved during loading 2016-11-09 16:23:48 +02:00
Regalis
e3cd19b781 Wire rendering optimization (angles & distances between nodes are only calculated when adding/removing nodes) 2016-11-08 22:22:49 +02:00
Regalis
adf19869c2 - ItemContainers whose bodies are disabled don't set the positions of the contained items each frame (only once when the item is placed in the container)
- ItemContainers maintain a list of statuseffects that need to be applied on the contained items instead of constantly rechecking each item
- deactivating ItemContainers if they have no body and there are no statuseffects to apply
2016-11-08 21:22:09 +02:00
Regalis
1617cd8f7a Item/statuseffect optimization:
- PowerTransfer components cache power connections instead of rechecking them every frame
- items store connections in a dictionary with the name of the connection as a key (-> finding the correct connection when sending a signal is more efficient)
- storing item tags & StatusEffect targetNames in HashSets
2016-11-08 21:14:29 +02:00
Regalis
e15f5f5040 Moving a wire outside the sub doesn't reset connections or nodes in the editor 2016-11-06 15:58:34 +02:00
Regalis
3cc807605e Wires can be dragged from a connection panel to the inventory without dropping them, wire connections & nodes are cleared when taking the wire outside 2016-11-02 14:40:05 +02:00
Regalis
9b29c52a1b Removed redundant data from AICharacter update messages, fixed startlocation name being shown for endlocation on nav terminals 2016-10-31 21:01:01 +02:00
Regalis
eb2c51c2f1 Cleanup with resharper (mostly removing redundancies & using collection.Length/Count properties instead of the Count method) 2016-10-31 20:50:20 +02:00
Regalis
72178d4b1f Fabricator UI shows item descriptions and items that can't be fabricated are grayed out, added a couple of new fabricable items 2016-10-28 19:47:45 +03:00
Regalis
48c07cfce5 - doors aren't ignored when checking visibility during waypoint generation or when finding a starting node for a path
- AICharacter will mark their path unreachable if their path is blocked by a door they cant open (may happen if someone closes the door after calculating the path)
- fixed exception when creating a Steering component when there's no active GameSession (i.e. in the editor)
2016-10-27 21:18:45 +03:00
Regalis
282611d0cc Limiting too long location names in navigation terminals & end shift button 2016-10-26 19:48:39 +03:00