April 16 2023 build
This build has a number of changes to the Destination Dispatch system, and I'm putting it out mainly so you all can test it. This has the new keypad entry system, and I created a new "Simple - Destination Dispatch Keypad" building and updated the "Triton Center - Destination Dispatch" building for it, the service elevators use it. Xteal contributed code for a configurable option that lets you choose how many people to create in random activity mode, instead of letting the system decide. Lots of other changes, see the changelog.
From the previous build: I'm still thinking about making a separate letter indicator object for the DD elevators. Right now the Triton Center is using DirectionalIndicators for the letter IDs, but those don't support sound and the script parameters are excessive.
I'd love to hear any ideas or suggestions.
Changelog:
- Added DD keypad processing code, thanks to xteal for the code that helped and inspired this code
- Added new "Simple - Destination Dispatch Keypad" building
- Try to select floor by floor ID instead of number, default to number if ID is not numeric
- Have call stations report "??" if an invalid floor was entered
- Only create indicator sound if sound file was specified
- Properly move indicator, this fixes an issue where the indicator sound would not be moved with the indicator itself
- When AvailableForCall() does the final check on the queue direction, it should consider elevators on the same floor with queues empty to be available, maybe this situation should be moved into the IsIdle() function
- Fix to allow negative floor numbers with the minus key
- Have callstations handle their own error messages, and ProcessCache() should use this to display an error if input is not numeric
- Added backspace character with action and "<" character
- Keypad characters "*" and "0" should select the recall floor, the code selects the first elevator in the controller group to do this
- Always play call station indicator sounds, this is so that error sounds can be specified
- Made Triton Center service elevator keypads
- To make coding easier, the CallStation numbers should be global, not per-floor, this helps out greatly in the Triton Center code
- Added more indicator error reporting to RequestRoute()
- (Triton Center) Added hotel service and residential service call stations
- Mute call station messages, unless in verbose mode
- Added support for elevator directions on indicators, and added this to a portion of the Triton Center elevators
- xteal contributed a configurable People creation parameter in the INI file, so you can specify how many people to create instead of letting the system decide