SilentSpike
f59536b5a3
Remove legacy spectator settings module argument
2015-08-07 00:28:54 +01:00
SilentSpike
4c9b6e94cf
Overhaul and improve spectator unit tree UX
...
The old method of refreshing the tree on each update would reset all expanded/collapsed nodes. Now the code will cull any units/groups/sides no longer spectatable from the list and cache the ones that are still valid. The cached data is then used to populate the list with new units.
Add coloured unit icons beside units in the list for quick user reference of side and type.
Store group netIDs in respective nodes for possible use in code.
2015-08-07 00:06:22 +01:00
SilentSpike
bcb21b782e
Overhaul spectator icon handling and rendering
...
- Optimize and improve 3D icon drawing
- Combine 2D and 3D PFHs into 1
- Render group icons outside of 200m, unit icons within
- Store list of groups on units update to cut down on what needs to be done each frame
- Change map control type to 100 to remove all default unit icons
- Improve colour caching, group colours don't change, unit colours do
- Remove icon setting, toggling should be at users discretion
2015-08-06 16:03:32 +01:00
SilentSpike
92ef0bfe99
Whitelist spectator free camera boom keys
...
Now that booming the free camera is influenced by the camera speed, the keys should be whitelisted from the held-key prevention system to allow the speed to be adjusted on the move. Also includes a failed attempt to fix the free camera map teleporting functionality.
2015-08-06 11:39:32 +01:00
SilentSpike
d6cc14a39d
Add zeus support to spectator UI
...
Can only use zeus while alive, so it won't work using the respawn template. However it's useful for communities usign custom frameworks
2015-08-06 00:53:49 +01:00
SilentSpike
d1975a593d
Improve spectator pause menu emulation
...
Makes the fake pause menu closer to the real thing for UX purposes
2015-08-06 00:53:48 +01:00
SilentSpike
c808021c7c
Tweak spectator interface layout
...
- Swap the FOV and vision mode tools into a more logical order.
- Shorten the unit list to prevent overlay with main UI
- Fix name tool on dead units
2015-08-05 21:11:39 +01:00
SilentSpike
42b5abae11
Add support for respawn counter to spectator UI
...
Rather than hiding the BI respawn counter, it should be "integrated" into the UI via code if present.
2015-08-05 20:35:48 +01:00
SilentSpike
5200fd6a02
Add new option to spectator unit filter setting
...
Adds an option to use playableUnits for scenarios where AI playable units are enabled.
2015-08-05 14:55:02 +01:00
SilentSpike
07e09b60fa
Stop spectator camera unit changing on corpses
...
Previously the camera would be automatically moved away from corpses (when the unit currently being watched dies). This changes it to stay on them until the view is manually switched as users might want to stick around and watch whatever was going on at the time of death.
2015-08-05 14:55:02 +01:00
SilentSpike
1b12d37284
Replace spectator respawn changes with a template
...
Hacking the BI respawn framework to support a spectator setting was intrusive and limiting. Instead of using a setting, I've opted to introduce a new respawn template that can be used within BI's respawn framework. The benefits of this approach are:
- Compatibility isn't a concern, that responsibility is shifted onto mission designers.
- Mission designers can use the functionality of the BI framework alongside the spectator system (combining templates, using different templates for different sides, etc.).
- If a custom respawn framework is used, then this doesn't change anything. Custom frameworks are still fully supported via the public functions provided.
- Remains simple to set up, just requires a description.ext edit
2015-08-04 23:21:10 +01:00
SilentSpike
7e9500f2ca
Enable ace_spectator respawn framework integration
...
Seamlessly integrates the spectator system with the vanilla respawn framework when the onDeath setting is enabled. This commit makes a lot of changes:
- Edit BI functions used by the vanilla respawn framework to enable support for ace_spectator.
- Set spectator state is now tracked using a GVAR for the local player since using a unit won't be reliable all of the time. However unit is still marked for any filtering purposes.
- Instead of NV being used based on the sun to moon transition state by default, that functionality only takes place in the integrated system so that custom frameworks can do what they want.
- Seagull units are hidden when using framework integration since they're spawned by the engine with respawn type 1 and they just hang around undesirably
2015-08-04 22:03:46 +01:00
SilentSpike
5bfa4e5971
Improve spectator camera vision mode on start
...
The spectator camera should start in night vision mode if the sun to moon transition state is appropriate
2015-08-03 15:18:09 +01:00
SilentSpike
f5e7185aec
Fix spectator camera exiting mechanism
...
When using ACE_Player the camera would return to the dead body. It makes sense to simply pass the reset unit by reference to the camera exit code.
2015-08-03 13:04:36 +01:00
SilentSpike
98b088f26f
Fix pre-spectator position saving
...
When staging a spectator (physically applying the spectator state) the unit position is saved for potential later restoration. This shouldn't be done multiple times since the function can be called again to reset staged units.
2015-08-03 00:24:36 +01:00
SilentSpike
b87b4ea16a
Improve spectator GUI reopening prevention
...
Using boolean instead of simply checking for the display. Checking for diplay was unreliable since it can be technically closed while theoretically open during the escape menu and such.
2015-08-03 00:22:50 +01:00
SilentSpike
9b764bbba4
Preserve Polish translations from master branch
...
Since spectator was pushed back to a feature branch from the release branch these translations from a PR were also lost (as the commits were prior to the removal commit) when it was merged after the fact.
2015-08-02 17:27:32 +01:00
SilentSpike
52460182c9
Enable spectator on death system
...
New spectator on death system should enter spectator mode upon dying and exit upon respawning. Only virtual spectator state is suitable for this system since the body should remain as is.
2015-08-02 16:42:24 +01:00
SilentSpike
63c034e348
Differentiate between staged and set spectators
...
Existing variable "ace_spectator_isSpectator" split into counterparts "ace_spectator_isSet" and "ace_spectator_isStaged" in order to better manage spectator events
2015-08-02 12:51:42 +01:00
SilentSpike
38e08d513a
Clear spectator display variable at preInit
...
uiNamespace persists between missions and should be reset on mission start
2015-08-02 12:34:35 +01:00
SilentSpike
612aa2d679
Separate spectator physical and virtual states
...
With the changes planned to allow spectator in the true death state, physical changes aren't applicable in all of the possible usage cases. This separates the physical process into new function ace_spectator_fnc_stageSpectator
2015-08-01 18:10:11 +01:00
SilentSpike
33314f8a9e
Adjust spectator camera boom speed
...
Vertical camera movement (boom) was previously at a constant speed. However this felt too slow at times, half the horizontal (dolly) speed should improve this.
2015-07-31 23:32:25 +01:00
SilentSpike
47d96835c6
Fix arrayIntersect oversight
2015-07-27 18:32:21 +01:00
SilentSpike
e6f016f195
GVAR typo
2015-07-26 13:13:46 +01:00
SilentSpike
e431365586
Spectate on death setting
2015-07-26 13:12:58 +01:00
SilentSpike
ec6a0da01c
Adjust camera speed while moving
2015-07-26 12:23:01 +01:00
SilentSpike
b0adf2e2ee
Fix 3D icons not rendering
2015-07-26 12:13:05 +01:00
SilentSpike
efbd5189ce
Close all dialogs when exiting
2015-07-26 12:05:41 +01:00
SilentSpike
f0f6edb549
Transition camera post-escape menu
2015-07-26 11:28:14 +01:00
SilentSpike
5cfe180d3b
Fix camPan normalization
2015-07-26 02:17:09 +01:00
SilentSpike
697997ca8f
Escape menu
2015-07-26 02:17:08 +01:00
SilentSpike
878bcf819e
Fix map double click event
2015-07-26 00:25:31 +01:00
SilentSpike
21ce877115
Handle unit icons and provide setting
2015-07-25 14:13:37 +01:00
SilentSpike
2f1639822c
Fix incorrect variable
2015-07-25 13:24:50 +01:00
SilentSpike
7107514b05
New function to precisely control spectatable sides
2015-07-25 13:24:49 +01:00
SilentSpike
69d1db2872
String updates
2015-07-25 11:41:31 +01:00
SilentSpike
5ac77fa996
Corrected default param value
2015-07-24 22:31:51 +01:00
SilentSpike
c9750919a4
PFHs only as needed
2015-07-24 20:29:43 +01:00
SilentSpike
e2e6091c1f
Close dialogs before open
2015-07-24 17:55:33 +01:00
SilentSpike
e4aee1da2c
Add categories to help splash
2015-07-24 17:50:33 +01:00
SilentSpike
bafb261c01
Adding icon toggle
2015-07-24 17:37:07 +01:00
SilentSpike
e413cb3d91
Cache unit information
2015-07-24 17:17:00 +01:00
SilentSpike
8ef6364b59
Use localized side strings
2015-07-24 16:40:29 +01:00
SilentSpike
eaeda2667c
Map icons
2015-07-24 16:40:28 +01:00
SilentSpike
fa306a0fb8
Further populate help splash
2015-07-24 11:39:41 +01:00
SilentSpike
9b3b5e9750
Prevent repeating key down events
2015-07-24 11:39:40 +01:00
SilentSpike
53a0a9343b
Populating help splash
2015-07-22 15:21:36 +01:00
SilentSpike
3d290977e5
Preserve unit name in toolbar
2015-07-22 15:21:33 +01:00
SilentSpike
766b1e1dcd
Retain current settings when invalid settings given
2015-07-22 15:21:32 +01:00
SilentSpike
248cdf1f3f
Public function error messages
2015-07-22 15:21:30 +01:00
SilentSpike
78ae59b223
Default value update
2015-07-21 22:56:47 +01:00
SilentSpike
aa67e296c0
User feedback when no units left
2015-07-21 22:54:46 +01:00
SilentSpike
9f0415b9fa
Safeguard against removal of all modes
2015-07-21 22:45:54 +01:00
SilentSpike
53dc519336
Improved side handling in unit tree
2015-07-21 21:23:11 +01:00
SilentSpike
ec58c0061a
Public functions to tweak available vision/camera modes
2015-07-21 20:19:54 +01:00
SilentSpike
43ecd308eb
Fix empty array error
2015-07-21 20:00:09 +01:00
SilentSpike
c8a7bbba3b
Improved mouse handling
2015-07-21 19:48:33 +01:00
SilentSpike
0d798264b0
Enforcing the speed limit
2015-07-21 19:43:03 +01:00
SilentSpike
341f3a253e
Stop dolly on mouse button release
2015-07-21 18:44:24 +01:00
SilentSpike
f65b18f558
Keyup events
2015-07-21 18:26:49 +01:00
SilentSpike
7234c928bc
setCameraAttributes should use ATL
2015-07-21 18:17:29 +01:00
SilentSpike
e81f9f5e59
Mouse dollying
2015-07-21 18:06:38 +01:00
SilentSpike
b6ff45e8bd
Add vision mode to toolbar
2015-07-21 17:48:32 +01:00
SilentSpike
1890bc1d59
Unit cycling
2015-07-21 16:06:51 +01:00
SilentSpike
dc19bff189
Improve handling of invalid modes
2015-07-21 15:53:20 +01:00
SilentSpike
dcea8f4929
Adding vision to setCameraAttributes
2015-07-21 15:44:11 +01:00
SilentSpike
c0fd26f706
Add new setting to module
2015-07-21 15:15:31 +01:00
SilentSpike
37ffdab2ca
Add camera cycling function
2015-07-21 15:15:21 +01:00
SilentSpike
2c1e346cca
Header cleanup
2015-07-21 13:31:00 +01:00
SilentSpike
40f32b604a
Camera vision modes
2015-07-21 12:46:34 +01:00
SilentSpike
21942eb5a1
Preserve z axis on map transport
2015-07-20 23:30:18 +01:00
SilentSpike
005b2ad406
camTilt should persist
2015-07-20 23:25:05 +01:00
SilentSpike
7a45c6543e
Truncate speed values to 2 DP
2015-07-20 23:17:22 +01:00
SilentSpike
c3329ca8fc
Set camera attributes
2015-07-20 23:17:03 +01:00
SilentSpike
34d2ec1d5a
Altered naming conventions
2015-07-20 23:15:52 +01:00
SilentSpike
0d94bfe8bd
Primative map interaction
2015-07-20 20:30:13 +01:00
SilentSpike
52244c1647
Rejiggling toolbar
2015-07-20 18:38:18 +01:00
SilentSpike
5af5284bee
Adding sides to unit tree
2015-07-20 18:37:17 +01:00
SilentSpike
8509646f88
Correct side usage
2015-07-20 18:37:07 +01:00
SilentSpike
841f939012
Improve toggling code and UX
2015-07-20 17:13:38 +01:00
SilentSpike
2ffa3c9a85
Prevent AI group chat
2015-07-20 00:09:52 +01:00
SilentSpike
77941c4f27
Remove help button
2015-07-20 00:09:51 +01:00
SilentSpike
08d5a8364f
Improve overhead reduction
2015-07-19 23:03:40 +01:00
SilentSpike
e09342b7ea
Improved toggle controls
2015-07-19 22:50:13 +01:00
SilentSpike
cc9283ed96
Minor UX tweaks
2015-07-19 22:47:21 +01:00
SilentSpike
e95186f550
Handle focus
2015-07-19 22:15:19 +01:00
SilentSpike
e406a794f2
Add hostile sides filter
2015-07-19 22:14:08 +01:00
SilentSpike
ac56702e33
Handle toolbar values
2015-07-19 20:02:52 +01:00
SilentSpike
0de56740c0
Improved camera mode transition
2015-07-19 16:50:59 +01:00
SilentSpike
d8cd1eeb1a
Minimising PFH overhead
2015-07-19 16:50:58 +01:00
SilentSpike
3b1afe930e
Handle the clock
2015-07-19 16:50:57 +01:00
SilentSpike
619c2d780b
Removing debug message
2015-07-19 13:03:49 +01:00
SilentSpike
935430ea59
Interface tweaks
2015-07-19 13:03:40 +01:00
SilentSpike
8d6f167d97
Safer unit updates
2015-07-19 12:09:57 +01:00
SilentSpike
d680789d04
Enable compass, auto-refresh units, pass display to PFHs
2015-07-19 02:25:52 +01:00
SilentSpike
1ba0bcee95
Correct DIK code
2015-07-18 19:05:18 +01:00
SilentSpike
7091ac21e9
Function cleanup
2015-07-18 18:53:30 +01:00
SilentSpike
f7cf983e92
Corrected current unit updating
2015-07-18 18:53:28 +01:00
SilentSpike
e4ba5aaf1b
Camera mode cycling
2015-07-18 18:53:27 +01:00
SilentSpike
7b28214c80
More reliable freecam PFH termination
2015-07-18 17:06:13 +01:00
SilentSpike
fb2b2bc9e5
Improve freecam handling
2015-07-18 16:59:05 +01:00
SilentSpike
60b3c6c0f8
Improved camUnit handling
2015-07-18 16:50:11 +01:00
SilentSpike
bfd9be9ce1
Naming consistency
2015-07-18 16:20:31 +01:00
SilentSpike
382c9fbc35
Variable handling and consistency
2015-07-18 15:52:44 +01:00
SilentSpike
5d279e11ec
Interface toggles
2015-07-18 15:42:07 +01:00
SilentSpike
c6e71fbc36
Interface prettification
2015-07-18 13:12:34 +01:00
SilentSpike
359b81f2ef
Spectator position fix
2015-07-18 13:04:23 +01:00
SilentSpike
2f8432699b
Fix side filtering
2015-07-18 00:40:20 +01:00
SilentSpike
13201866bd
Module icon
2015-07-17 23:31:31 +01:00
SilentSpike
10c1c26c69
Improved unit switching
2015-07-17 20:51:06 +01:00
SilentSpike
832fa1e832
Side filter
2015-07-17 20:51:04 +01:00
SilentSpike
c48719a644
Attribution for F3 project devs
2015-07-17 16:45:16 +01:00
SilentSpike
cfcb9fedb6
Updating ace settings
2015-07-17 16:13:24 +01:00
SilentSpike
6de18416bc
Interface tweaks
2015-07-17 13:14:09 +01:00
SilentSpike
3b9a364a26
Expanding the unit tree
2015-07-17 12:57:34 +01:00
SilentSpike
6540971298
Tweaking a controls group
2015-07-17 02:58:31 +01:00
SilentSpike
27d85180f1
Improve handling of unit tree
2015-07-17 02:38:42 +01:00
SilentSpike
6cb1813527
Fix button y value
2015-07-17 02:16:35 +01:00
SilentSpike
81f87ee13c
params for public functions
2015-07-17 02:05:24 +01:00
SilentSpike
78a8149cc2
Viewpoint order UX
2015-07-17 01:52:08 +01:00
SilentSpike
e012fbc7f9
Unit tools control group
2015-07-17 01:47:21 +01:00
SilentSpike
840d766d83
Fixing typos, updating interface
2015-07-17 01:22:38 +01:00
SilentSpike
e823ec681d
Toggle help key
2015-07-16 21:45:52 +01:00
SilentSpike
78e17c4bdc
Fix function calls with switch to params
2015-07-16 21:37:20 +01:00
SilentSpike
a7a87c40f0
Using control groups
2015-07-16 21:33:50 +01:00
SilentSpike
723a0f96f6
Improve view switching UX
2015-07-16 19:43:16 +01:00
SilentSpike
20f05d9906
Improve unit switching UX
2015-07-16 18:31:49 +01:00
SilentSpike
458fe363ff
Fixing typo
2015-07-16 17:56:50 +01:00
SilentSpike
3895a51f02
Correcting view transition
2015-07-16 17:48:32 +01:00
SilentSpike
e3c9e52fdd
Tree events to update camUnit
2015-07-16 17:29:10 +01:00
SilentSpike
549d53d919
Use RscPicture for compass
2015-07-16 15:51:32 +01:00
SilentSpike
d043a471b3
Improving unit list handling
2015-07-16 15:49:02 +01:00
SilentSpike
7f04164653
Handling the spectatable unit list
2015-07-15 14:58:38 +01:00
SilentSpike
147571c76f
Better method of updating camera view
2015-07-15 14:58:08 +01:00
SilentSpike
784865d634
Clear workspace
2015-07-15 13:50:10 +01:00
SilentSpike
5dc4dbeb88
Handle camera attributes
2015-07-15 12:34:44 +01:00
SilentSpike
d2345a398a
Handle free cam movement
2015-07-15 12:23:25 +01:00
SilentSpike
90b6fd3d8b
Initalize interface
2015-07-15 12:09:28 +01:00
SilentSpike
d7cc309591
setSpectator correct group handling, disable user input
2015-07-15 11:48:49 +01:00
SilentSpike
a02470c341
Unify interface as display
2015-07-15 11:43:09 +01:00
SilentSpike
a1ec2eb7c3
Update handleRespawn to new function parameters
2015-07-09 21:24:45 +01:00
SilentSpike
1e13758ad8
Better group handling, more functional function
2015-07-09 21:20:09 +01:00
SilentSpike
1e8b869117
Reshuffling toolbar tools
2015-07-09 18:08:34 +01:00
SilentSpike
877d4e7cd9
Using common defines, further cleanup
2015-07-09 17:53:22 +01:00
SilentSpike
46bd42d59e
Cleanup interface config
2015-07-08 15:31:54 +01:00
SilentSpike
98e9245ed9
Basic respawning support
2015-07-05 21:53:09 +01:00
SilentSpike
2aebabdb2c
Safeguard against repeat usage
2015-07-05 21:31:26 +01:00
SilentSpike
788c23c940
Allow resetting existing spectators
2015-07-05 21:30:19 +01:00
SilentSpike
9026db9b3c
Major cleanup
2015-07-05 16:44:16 +01:00
SilentSpike
069ab2432a
Keybinds should always be present
2015-07-05 01:32:06 +01:00