Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Selective UI Elements #1857

Merged
merged 17 commits into from Apr 23, 2016
Merged

Selective UI Elements #1857

merged 17 commits into from Apr 23, 2016

Conversation

jonpas
Copy link
Member

@jonpas jonpas commented Jul 15, 2015

  • Split UI configs -> Removed Vignette and Cleaned up UI component #2368
  • Remove Vignette -> Removed Vignette and Cleaned up UI component #2368
  • Framework for selective UI
  • showHUD parameters selective UI
  • Use showHud setter
  • Player selective UI
  • ^ Firing mode
  • ^ Ammo type
  • ^ Stance indicator
  • Move Ammo Count to UI (default disabled on foot)
  • Vehicle selective UI
  • Toggle Icons config-only
  • Squad Leader Command Bar selective UI
  • Squad Leader hexagon selective UI config-only, disabled on Elite difficulty
  • Peripheral dots selective UI config-only, disabled on Regular+ difficulty
  • Stamina bar selective UI
  • Chat windows selective UI config-only
  • Crosshair config-only
  • Base disable/enable UI changes setting (to get rid of the need to force all the settings)
  • Add "allow client to change" value to each setting, show it in client settings, don't allow changing those Enabled/Disabled in module/server settings -> 3DEN - ACE_Settings Display #3563
  • "Requires" descriptions to all advanced settings
  • Add setter (ref. FCS and Scopes with no compat pbo required #3561)
  • Module icon
  • Disable debug

Known issues:

  • Vehicle Radar doesn't do anything (using showHud)

@PabstMirror PabstMirror added kind/enhancement Release Notes: **IMPROVED:** status/WIP labels Jul 17, 2015
@jonpas
Copy link
Member Author

jonpas commented Jul 20, 2015

To all ACE3 devs, there is a slight problem I encountered, specifically UI elements such as command bar and peripheral dots seem to be hard-coded into the engine. They are not actually displays (no IDDs or IDCs in sub-classes), making it impossible to manipulate in SQF (correct?).

I've been discussing on Slack about the approach, there really wasn't a perfect approach found, if they are completely hard-coded then the only way would be to decide what wants to be enabled and what disabled (in line with what ACE3 wishes to achieve), or remake those UI components so that we could toggle them. I tried adding IDD and IDC to one of them, and that doesn't do anything at all.

Are there any other ideas that could work? What would be the best approach to all this?

@Cyruz143
Copy link
Contributor

@jonpas Aren't the peripheral dots just a .paa file somewhere, could override it in the config to point to a blank/transparent or 1x1 pixel file? Not the cleanest solution ever but it should work.

@jonpas
Copy link
Member Author

jonpas commented Jul 21, 2015

I want them togglable though, with settings framework. That is the point of the question. :)

@thojkooi thojkooi added this to the Backlog milestone Jul 22, 2015
@SzwedzikPL
Copy link
Contributor

@jonpas
Copy link
Member Author

jonpas commented Aug 15, 2015

Ooh it may be indeed, thanks @SzwedzikPL ! (if not for anything else at least making sure what's hard-coded and what not.

@jonpas
Copy link
Member Author

jonpas commented Aug 16, 2015

On hold until next Arma 3 update (above 2 commands). If you (core devs) want vignette removal now I can do that in separate PR.

@jonpas
Copy link
Member Author

jonpas commented Sep 5, 2015

On hold further because showHUD alternative syntax is not available in 1.50 yet either.

@SzwedzikPL
Copy link
Contributor

Good to go i think. Can't wait to see optional Leader Command Bar :)

Conflicts:
	addons/ui/README.md
	addons/ui/RscChat.hpp
	addons/ui/config.cpp
@PabstMirror PabstMirror mentioned this pull request Oct 16, 2015
@jonpas
Copy link
Member Author

jonpas commented Oct 28, 2015

Implemented a ton of settings, came over 3 things to decide on, described below. I would rebase this thing but it contains merges from master, so I'll keep it rather, can make a new PR if wanted when I am finished, this is still WIP, searching through config takes it's time...

Move Ammo Count to UI (default disabled on foot)

Ammo count when you are on foot is currently disabled in ace_reload via config, which means it will never show here. Would it be good to move this here and simply disable it by default? Though, it would mean unless it's set on server/mission anyone could turn it back on, I prefer that though, more freedom for setup.

Squad Leader hexagon selective UI (config only)

Can only be disabled by config currently, I'd vote to disable it, it's just an annoyance, at least for how we play. FYI, this is the hexagon that shows on your Squad Leader when you look at him.

Peripheral dots selective UI (config only - maybe in vanilla 1.54)

Will possibly be disabled in 1.54 considering this comment, if it won't be I vote disabling them via config as well, not possible via scrip.

@TheConen
Copy link

TheConen commented Dec 3, 2015

As discussed in Slack another suggestion:

Option to disable/enable the chat. I suggest the following options:

  • force enabled
  • force disabled
  • Do not force (toggable on-the-fly via a keyboard-shortcut, default disabled)

@jonpas jonpas mentioned this pull request Dec 14, 2015
@jonpas jonpas changed the title UI Ehancements and Selective UI Elements Selective UI Elements Feb 23, 2016
@thojkooi thojkooi modified the milestones: 3.6.0, Backlog Mar 5, 2016
@jonpas jonpas self-assigned this Mar 5, 2016
@jonpas jonpas added kind/feature Release Notes: **ADDED:** and removed kind/enhancement Release Notes: **IMPROVED:** labels Mar 6, 2016
@jonpas jonpas removed the status/WIP label Mar 14, 2016
@jonpas
Copy link
Member Author

jonpas commented Mar 14, 2016

This is feature-complete, there are most likely more UI elements that could be added, can always add them as we find them, it's a lot of looking up the config and then trial and error. Keeping a list in the PR comment to keep track.

Also implemented a "setter", which is basically a public function through which other component should toggle UI elements to prevent UI component itself changing it again (as it has to be done on vehicle changes for example). As requested by @esteldunedain for his changes in scope adjustment (and FCS IIRC).

Vehicle compass (or radar, can't remember) doesn't seem to do anything, but that works through showHud setter and seems to be broken even in vanilla. Otherwise all of it was tested and is working, another set of eyes never hurts however.

[true] call FUNC(setElements);

// On load and entering/exiting a vehicle
["infoDisplayChanged", {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jonpas, where is this event raised from?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh, nvm, it's hooked in ace_common already

@nicolasbadano
Copy link
Contributor

Looks good. Should be merged asap for 3.6.0 I think

@commy2 commy2 merged commit 93450b9 into acemod:master Apr 23, 2016
@jonpas jonpas deleted the uiSettings branch April 23, 2016 17:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Release Notes: **ADDED:**
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants