Commit Graph

571 Commits

Author SHA1 Message Date
Nicolás Badano
75a09357aa Properly configure canInteractWith and exceptions for self interaction 2015-03-23 18:08:58 -03:00
Nicolás Badano
eb557bf777 Make interac_menu work in real 2D:
- Children positions are calculated directly on screen space
- Saves a lot of worldToScreen, ATLtoASL, etc calls
- Selector is now a control instead of a 3D icon
2015-03-23 18:08:31 -03:00
Nicolás Badano
dbbfdd88df Forgotten line 2015-03-23 16:53:28 -03:00
Nicolás Badano
bf1d808b82 Small optimizations on interact_menu 2015-03-23 14:01:38 -03:00
Nicolás Badano
32be87806b Clear the caches again after performing the action, cause it's very possible something changed as a result. 2015-03-21 20:37:01 -03:00
Nicolás Badano
2beb1a289e Ensure the condition of the action is always checked uncached before calling the statement. 2015-03-21 20:30:27 -03:00
Nicolás Badano
213b817947 Added to cachedCall an option to clear the cache on an event 2015-03-21 17:50:35 -03:00
Nicolás Badano
dbb9765035 Fix isSubPath 2015-03-21 14:28:17 -03:00
Nicolás Badano
4a8b5079a6 Fix #211 2015-03-21 09:37:01 -03:00
Nicolás Badano
3d6660b115 Debug stuff 2015-03-20 22:44:36 -03:00
Nicolás Badano
b3aa7c8970 Make collectActiveActionTree follow mounts correctly 2015-03-20 22:44:25 -03:00
Nicolás Badano
84bf44e026 Refactoring of interact_menu:
- Reordering of action members
- Removed full path from actions, so they can be mounted under different paths if needed
- Added api for creating actions
- Api for adding actions for objects or classes
2015-03-19 23:32:44 -03:00
Nicolás Badano
a3b913ad8b Interact menu usability improvements:
- Submenu scale as a function of the number of children
- Added menu expansion animation to better communicate where the options come from
- Unused action point are faded as soon as the user hovers a certain action point
2015-03-19 15:04:48 -03:00
Nicolás Badano
f96126153c Reenable hiding useless actions 2015-03-19 14:45:05 -03:00
Nicolás Badano
acd3ca0d56 Interact menu:
- Allow dynamically adding children actions just-in-time
- Added optional custom parameters for actions
2015-03-19 13:00:10 -03:00
Nicolás Badano
3030b78ea2 Refactor the interact_menu so options for multiple objects can coexist inside a single action point 2015-03-17 00:37:28 -03:00
commy2
898476fc2f no target in self actions 2015-03-15 16:45:06 +01:00
commy2
b5f307919e replace canInteract with canInteractWith 2015-03-15 13:00:10 +01:00
PabstMirror
ebbebea6f2 Merge pull request #187 from KoffeinFlummi/wirecuttersInerationTest
Wirecutters Interaction
2015-03-14 13:11:17 -05:00
Nicolás Badano
d02b5d2125 Ensure the class actions are compiled from config before adding them from the API 2015-03-11 16:26:58 -03:00
PabstMirror
3a7c7f7cee Fix interactMenuClosed event 2015-03-11 12:48:17 -05:00
PabstMirror
858e5def5a Interact menu event consistant
"interactMenuOpened",  to match event from #191
2015-03-11 12:45:01 -05:00
Nicolás Badano
8c7a51eac7 Added addClassAction and removeClassAction functions 2015-03-11 01:43:37 -03:00
Nicolás Badano
3dfef439e5 Delay the interactMenuClosed event until after the statement is executed, just in case it's needed to clean up afterwards. 2015-03-11 00:49:46 -03:00
Nicolás Badano
28929df32d Avoid submenus running statements when they open. Instead just check if the hovering action should runOnHover 2015-03-11 00:39:23 -03:00
Nicolás Badano
f12e4ab751 Add the runOnHover parameter 2015-03-11 00:37:59 -03:00
Nicolás Badano
7138fadd71 Support additional parameters for addAction API 2015-03-11 00:25:45 -03:00
Nicolás Badano
722f49acc4 Execute statement when hovering over actions that open submenus 2015-03-11 00:21:05 -03:00
Nicolás Badano
b33127d3b0 Renamed variable 2015-03-10 23:45:46 -03:00
Nicolás Badano
e97467b3e3 Throw an event when the interact menu is closed 2015-03-10 23:36:28 -03:00
Nicolás Badano
14b97de930 Cache the generation of active action trees for action points. This sensibly cuts down the execution of action conditions. 2015-03-10 23:23:13 -03:00
PabstMirror
49cef030d5 Add "interact_keyDown" local event to interactMenu 2015-03-10 15:48:08 -05:00
PabstMirror
0919e59719 Key Bind Redo (except vector) 2015-03-05 01:32:26 -06:00
Nicolás Badano
27808847db - Solve a number of ASL vs ATL issues
- Replace the way of calculating 3D positions for subactions
2015-03-03 01:37:17 -03:00
Nicolás Badano
1c25baa404 Base interaction distance in distance to head instead of distance to camera. Works much better on third person view 2015-03-03 00:34:34 -03:00
Nicolás Badano
b675d9d180 Compensate for movement during the frame to get rid of jittering 2015-03-03 00:16:38 -03:00
Nicolás Badano
83572921ae - Modification of actions data structure to separate action parameters from children
- The action tree of each interaction point is parsed before drawing, pruning inactive actions
- Parent actions without statements or active children are not drawn, in order to reduce clutter
2015-03-02 23:29:57 -03:00
Nicolás Badano
094be22a19 Move collect children on a sepparate function 2015-03-02 17:53:30 -03:00
Nicolás Badano
472e2c5bff Reduce opacity of base actions 2015-03-01 20:14:27 -03:00
Nicolás Badano
a824c1266a Create an interaction point for the current weapon 2015-03-01 18:29:54 -03:00
Nicolás Badano
a2a9643627 Add option to always display cursor for self interaction 2015-02-28 18:56:57 -03:00
Nicolás Badano
85a77150c9 - Add cursored self interaction menu (for using inside vehicles)
- Renamed the base menu "SelfActions" to "ACE_SelfActions"
- Limit the amount of objects the player is shown interactions with. This are the 3 nearest objects which have active action points visible on screen.
- Cull action points that are not visible, to far away, etc before checking if they are active.
2015-02-28 17:48:46 -03:00
Nicolás Badano
2371bc1bb0 Removed the renderDepth variables 2015-02-27 02:35:37 -03:00
Nicolás Badano
08b15315bf Fixed removeAction; added trekkie examples 2015-02-27 02:20:28 -03:00
Nicolás Badano
3d8854f84a Fixed opacity of icons; removed debug traces 2015-02-27 02:07:35 -03:00
Nicolás Badano
310710b6e2 Major plumbing upgrades on interact_menu:
- Store only one compiled menu per class
- Actions added through apis for invidual objects stored on the object separately
- Replaced the concept of uids by paths. This allows adding/removing actions inside other actions loaded from config seamlessly.
- Temporarily removed caching of nearby actions (probe). We may go back to that if needed pretty easily. This allows the player to move freely with the interaction menu opened.
2015-02-27 01:55:16 -03:00
Nicolás Badano
6b7f649244 interact_menu: add headers 2015-02-21 17:11:03 -03:00
Nicolás Badano
908f23a78f Removed filtering actions 2015-02-19 20:10:07 -03:00
Nicolás Badano
bc3a226c64 Text under the icon 2015-02-19 18:56:43 -03:00
Nicolás Badano
41145e5731 reduce size of the menu 2015-02-19 18:03:25 -03:00
Nicolás Badano
0dfeb22ec8 tidy up 2015-02-19 18:03:14 -03:00
Nicolás Badano
861a6b1775 avoid all submenus opening simultaneously by switching menu paths to use uids 2015-02-19 15:47:59 -03:00
Nicolás Badano
f7d5d615ee allow actions to be defined for different selections 2015-02-19 15:36:27 -03:00
Nicolás Badano
30943cbfd4 move the main menu actions to the right cuadrant 2015-02-19 12:03:20 -03:00
Nicolás Badano
a8797fe45a Fix for the angular spacing of submenus 2015-02-19 12:02:48 -03:00
Nicolás Badano
db5e8bcc34 Modify the opacity of icons along with that of the text 2015-02-19 12:01:47 -03:00
Nicolás Badano
d055315661 interact_menu: tab to space 2015-02-19 10:49:36 -03:00
Nicolás Badano
53f632c716 Merge branch 'selfInteractionMenu' of github.com:KoffeinFlummi/ACE3 into selfInteractionMenu 2015-02-19 10:39:28 -03:00
Nicolás Badano
3b35d9d109 Make interact sub menus open as circle sectors instead of full circles 2015-02-19 10:38:09 -03:00
Nicolás Badano
8e6600d5ec Tweak distances 2015-02-19 10:36:59 -03:00
PabstMirror
244d7a5572 Fix opacity fading on other render levels 2015-02-19 03:02:58 -06:00
Nicolás Badano
043987fc93 basic self actions 2015-02-18 18:58:06 -03:00
PabstMirror
9631154926 Set ADDON variable in XEH_preInit 2015-01-29 01:38:46 -06:00
Nou
5dfa4304d3 Tweaks 2015-01-28 12:03:30 -08:00
Nou
984fee03ac Merge branch 'interact_menu' of https://github.com/KoffeinFlummi/ACE3 into interact_menu 2015-01-28 10:19:30 -08:00
Nou
8e9883a111 Make sure object actions are set. 2015-01-28 10:18:19 -08:00
Nicolás Badano
b6dbd8d3c4 interact_menu: add canInteract (including exceptions) and canInteractWith to condition. 2015-01-20 02:41:04 -03:00
Nou
ef94011cdc Menu rendering should be done with the mission event handler for Draw3D because it executes before rendering the current frame, rather than after the current frame. 2015-01-19 15:13:41 -08:00
Nou
1a2231c14a Privatize 2015-01-18 20:13:45 -08:00
Nou
84f404ae84 Remove debug, added scripted add/remove actions. 2015-01-18 20:08:34 -08:00
Nou
6a04408a74 Initial nou menu commit. 2015-01-18 10:38:27 -08:00