CitiesSkylinesMods / TMPE

Cities: Skylines Traffic Manager: President Edition
https://steamcommunity.com/sharedfiles/filedetails/?id=1637663252
MIT License
576 stars 85 forks source link

Priority road UI discussion #691

Closed kianzarrin closed 4 years ago

kianzarrin commented 4 years ago

Priority sign tool

alternative priority quick fix.

@aubergine10 Aubergine said that he wants more options between the priority road (priority signs only) and high priority road (#621) that does not toggle crosswalks. see https://github.com/krzychu124/Cities-Skylines-Traffic-Manager-President-Edition/pull/621#issuecomment-583044051 I provided alt key modifier here for demo (and to give @aubergine10 something to use until the final solution to the UI question is ready): https://github.com/kianzarrin/Cities-Skylines-Traffic-Manager-President-Edition/tree/AltPriorityRoad

Road selection panel might be useful for this https://github.com/krzychu124/Cities-Skylines-Traffic-Manager-President-Edition/issues/542#issuecomment-578475576 maybe one more button? maybe a settings button that opens a small in game panel to choose what traffic rules to apply?

undo/clear priority sings tool

While the priority sings tool is selected, we have know way of undoing what CTRL[+SHIFT]+CLICK does. maybe an state machine like we do with stop/yield signs.

side UI panel

we can provide a UI panel for the priority road tool that has all the options:

<PANEL>
 <button> stop/yield signs mode</button>
 <button> medium priority road/rabout mode [ALT+CTRL]</button>
 <button> high priority road/rabout mode [CTRL] </button>
 <button> clear/undo last action</button> // does not have active state
 <button> apply to road mode [shift]</button> // can be active in parallel to other modes.
</Panel>

Clicking on each button will activate that mode. then user can click or shift click on road to apply traffic rules. holding a modifier key will active the relevant mode temporarily. the relevant button will change color for feedback. There are some similarities with the road selection panel but it doesn't let you to modify road selection. Just a suggestion, we can improve on this idea or discard it.

road selection panel

Screenshot (346)

Clear traffic rules button

What should Clear button in road selection panel do? clear traffic signs? rules set by priority road/roundabout buttons? clear ALL rules? make it customizable somehow Do we also need a button traffic manger to reset traffic rules?

Currently when you press any of the buttons in the road selection panel once they get activated setting traffic rules, twice and the deactivate clearing all traffic rules related to them. As part of #568 they may even perform a more clever undo/restore than a simple clear.

Modification of road selection

What should happen when the user modifies road selection while one of the buttons are in active mode? option 1: (current approach) deactivate the button and do nothing. option 2: apply traffic rules to more junctions when the user expands the selection, undo them when the user shrinks the selection (requires advanced restore/undo #568)

memory of all road selections

Currently vanilla CS keeps a memory of all previous road selections made by road adjust panel. This means you can return to them (selections cannot overlap). Should we take advantage of this?

What should happen when user selects the a road (lets call it road A), applies high priority button. closes the road selection panel and does some stuff in the city (including selecting other roads) then selects road A again:

other traffic rules:

Should Road selection provide UI for other tools as well like parking/speed limit/clear traffic?

related: #557 #542 #568 EDIT: #587

originalfoo commented 4 years ago

For clearing priority rules, see #692

EDIT: Specifically, with Eraser tool selected (while Priority tool is selected) we could use the Ctrl+Click and Shift+Ctrl+Click to erase those things.

kvakvs commented 4 years ago

@kianzarrin Can you rephrase the beginning of the ticket, stating what is being discussed, why, and where you want to get? I tried reading the flow or thought and didn't understand where this is going at all. Are you designing new look for priority signs UI? New window? New panel? New overlay? Are you solving some problems? Are you trying to fit multiple features at once? (memory of previous selections, clear)

This is too much for one discussion. Split this or use this as an EPIC ticket and fork into smaller discussions. I'd love to participate :) Also I believe we had an epic for that tool.

originalfoo commented 4 years ago

Currently vanilla CS keeps a memory of all previous road selections made by road adjust panel. This means you can return to them (selections cannot overlap). Should we take advantage of this?

Can you explain that a bit more? I wasn't aware that vanilla was keeping track of things like that (or why)...

kianzarrin commented 4 years ago

I agree with you this ticket needs to be broken up into several tickets and maybe a master ticket as a general discussion place.

kianzarrin commented 4 years ago

I am closing this issue because its a mess . I created #711 and #712 instead. EDIT: also #710