Commit Graph

44 Commits

Author SHA1 Message Date
SilentSpike
77c2b99ee5 Change spectator external camera behaviour
Using the "external" view is limited by the server difficulty setting. Instead the spectator external camera has been replaced with an oribtal camera as was originally planned to be added alongside the default views.
2015-09-11 14:46:21 +01:00
SilentSpike
21b0ee087a Add spectator UI interrupt system
A public API system to allow external systems to interrupt and resume the spectator interface. Also made use of it for the escape menu and zeus support.
2015-08-22 00:26:43 +01:00
SilentSpike
213deeffb4 Add keys to adjust spectator camera speed and zoom
Allows for finer control of the speed and zoom, as well as a quick way to reset either.
2015-08-08 18:31:37 +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
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
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
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
21ce877115 Handle unit icons and provide setting 2015-07-25 14:13:37 +01:00
SilentSpike
7107514b05 New function to precisely control spectatable sides 2015-07-25 13:24:49 +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
78ae59b223 Default value update 2015-07-21 22:56:47 +01:00
SilentSpike
ec58c0061a Public functions to tweak available vision/camera modes 2015-07-21 20:19:54 +01:00
SilentSpike
7234c928bc setCameraAttributes should use ATL 2015-07-21 18:17:29 +01:00
SilentSpike
37ffdab2ca Add camera cycling function 2015-07-21 15:15:21 +01:00
SilentSpike
40f32b604a Camera vision modes 2015-07-21 12:46:34 +01:00
SilentSpike
005b2ad406 camTilt should persist 2015-07-20 23:25:05 +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
52244c1647 Rejiggling toolbar 2015-07-20 18:38:18 +01:00
SilentSpike
e95186f550 Handle focus 2015-07-19 22:15:19 +01:00
SilentSpike
ac56702e33 Handle toolbar values 2015-07-19 20:02:52 +01:00
SilentSpike
3b1afe930e Handle the clock 2015-07-19 16:50:57 +01:00
SilentSpike
d680789d04 Enable compass, auto-refresh units, pass display to PFHs 2015-07-19 02:25:52 +01:00
SilentSpike
7091ac21e9 Function cleanup 2015-07-18 18:53:30 +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
cfcb9fedb6 Updating ace settings 2015-07-17 16:13:24 +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
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
01a5ab619e handleKilled and handleRespawn 2015-07-05 00:49:47 +01:00
SilentSpike
27610b78e1 Blank space cleanup 2015-07-05 00:10:01 +01:00
voiper
981c961ce1 -Switched to CBA keybinds.
-Localized keybinds.
-Removed fnc_cameraIntro.sqf; superfluous.
-Various code clean ups.
-Changed: Condition for mission end now checks allUnits (todo: change to allPlayers when available).
2015-07-04 01:00:27 -07:00
voiper
d4b5f88a76 Last remnants of view distance. 2015-07-03 15:00:00 -07:00
SilentSpike
58b1c0f3a9 Solve crashing caused by off map position and disableSimulation to stop underwater issues 2015-07-03 18:44:40 +01:00
SilentSpike
ff4fce3950 Initial enter/exit function implementation 2015-07-03 02:16:23 +01:00
SilentSpike
eeeb543424 Simplified default pen position assignment 2015-07-02 16:30:37 +01:00
voiper
3dab207b65 Add Spectator. 2015-06-28 19:34:21 -07:00