Commit Graph

6229 Commits

Author SHA1 Message Date
043c5c47c5 Improve spectator help window layout
Having the help window in the centre of the screen blocked too much of the users view and also clashed with the MPTable element (the table that appears on death, aka "respawnDialog"). It was moved to the right of the screen and now mirrors the unit list. To save screen space, the action keys are given as tooltips for the listbox entries so users must mouse over for more info.
2015-08-07 01:44:32 +01:00
f59536b5a3 Remove legacy spectator settings module argument 2015-08-07 00:28:54 +01:00
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
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
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
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
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
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
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
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
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
79e607836b Add contributor email for Head 2015-08-05 12:51:13 +01:00
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
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
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
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
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
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
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
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
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
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
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
777d8f6d43 Merge branch 'master' into spectator
Restores spectator that was removed from release branch
2015-07-31 23:35:45 +01:00
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
e147138274 Update setUnconscious module with to be indefinite
The zeus toggle unconscious module was using the default value for minimum unconscious time when it should have been indefinite (to act as a toggle)
2015-07-31 17:32:13 +01:00
d4829626e0 Update event document table 2015-07-31 17:23:11 +01:00
4f07d1c7ee add categories to feature docs 2015-07-29 19:11:50 +02:00
67e5e31394 Change zeus modules to run globally
Zeus modules were only running on the *server* rather than the local machine. This resulted in the variable used to cache the object zeus has its cursor over not existing and therefore the modules didn't work at all.
2015-07-29 12:25:04 +01:00
cd934770e4 Merge branch 'master' of https://github.com/acemod/ACE3 2015-07-28 15:42:29 -07:00
7827b86414 Arma3_workshop_addon.jpg 2015-07-28 15:42:09 -07:00
53112aa34b update file size 2015-07-28 23:39:35 +02:00
10cd627c80 Merge branch 'release' 2015-07-28 23:18:50 +02:00
63dd19825b moveInAny seems to work better than moveInDriver. WIP v3.2.0 2015-07-28 13:56:22 -07:00
bfd3aa71c4 Manual Fix #1931 2015-07-28 15:25:52 -05:00
626a9cf5f9 Disable headBugFix if unconscious 2015-07-28 13:06:58 -07:00
54e3804107 Merge branch 'english-strings' into release 2015-07-28 20:55:30 +01:00
16597515f0 Adding remaining missing English straings 2015-07-28 20:55:22 +01:00
74f8db5be7 Merge pull request #1938 from acemod/explosivesFixStrings
#1931 - Fix Explosives Module Strings
2015-07-28 14:44:39 -05:00
9b551e3fdf #1931 - Fix Explosives Module Strings 2015-07-28 14:42:23 -05:00
beae5c38bc Updated version number 2015-07-28 20:28:26 +02:00
6289601b4e Merge pull request #1935 from jokoho48/ParachuteFix
change form addBackpack to addBackpackGlobal
2015-07-28 20:11:42 +02:00
7a65af4926 Merge pull request #1928 from acemod/headbugfix
Headbugfix
2015-07-28 20:10:51 +02:00
1db7b0549b Merge pull request #1933 from jokoho48/ParachuteFix
Parachute fix for #1932
2015-07-28 20:08:54 +02:00
46531b916a change form addBackpack to addBackpackGlobal 2015-07-28 20:08:38 +02:00
baa1aab257 Fix Spelling 2015-07-28 19:24:34 +02:00
b2eeaacfc1 Fix Double Config Entry 2015-07-28 18:51:17 +02:00
55cac4b6d9 posible fix for #1932 2015-07-28 18:36:13 +02:00
92940ea1a9 Removed improper translations
#1738
2015-07-28 15:17:22 +01:00
675996d67b Adding HeadBugFix button to the ACE Options dialog (missing file)
#1738
2015-07-28 15:17:20 +01:00