Groups the ill-defined NavigationAgent properties between pathfinding and avoidance to make it more clear which property affects what.
(cherry picked from commit dde09be302afa08f5744533e82247bb49eff1f83)
The name was confusing as this signal is emitted around the same time as
`tree_exiting` and `NOTIFICATION_EXIT_TREE`, i.e. while the child node is
still in tree.
Fixes#59210.
(cherry picked from commit 3e6de687b8e9f5c24ff78312208eae6195e6ca40)
Backports features and bugfixes from current Godot 4.0 to 3.5 and brings functions and codebase of both version largely in sync to make tutorials more compatible and future backports easier.
- smix8
8bd7c6188b
Some compilers (notably MSVC) were using signed values for bitfield enums. This was causing problems where 2 bits were used to store 4 or less enum values, where they were being treated as negative numbers.
This PR explicitly requests these enums to be treated as unsigned values.
Changes NavigationAgent avoidance callback to a toggle that is disabled by default.
Also fixes a few missing descriptions / wrong warnings.
(cherry picked from commit 7f3688603cb3662e425cb7a1dce15459162c1dc6)
Contrast rate is still fairly low, but the text needs to be easy enough
to distinguish from non-disabled items.
(cherry picked from commit 8962d2760d05a2027d65d104bf3763edb828c52a)
Add a check for when we select a text but end on a link. Before it would act as if we just click an link, but now it changes it so if we click-drag over a link, we could select it (and not move to other page).
- danielkariv
47ead8504a
Lowers or removes the slider limits and steps from NavigationMesh resources and changes some default values to better work with realistic unit sizes by default.
(cherry picked from commit cda93057f73ad937deacb8200cf27f4996ed8918)
Temporarily removes agent from navigation map when parent node cannot process due to SceneTree pause and process_mode property. Normal process_mode does not work as other agents would still avoid the paused agents because they were still active on the navigation map and the rvo world. Also fixes potential crash when region_get_map or agent_get_map is called while no map is set.
- smix8
88acb5b798
Adds warnings when at least one of the input mesh surfaces is of wrong primitive type or has an empty vertex / index array as those broken input meshes would fail as both navmesh as well as later when creating debug meshes.
(cherry picked from commit 4185fce0eff4c0fc40f077120d0ed26220e6c995)
Updates NavigationPolygonInstance polygons on the NavigationServer2D when the NavigationPolygon Resource emits its changed signal due to e.g. polygons altered by script.
- Allow OptionButton selection to be set to -1 to signify no selection, both via API and in the editor.
- Reset OptionButton selection to -1 when the selected item has been removed.
- Fully convert PopupMenu to a zero-based ID system, which improves an inconsistency in generated IDs when making new items in the editor.
- okla
431c032d8c