This is 3.6.3 Beta 2
Contains all fixes and additions from 3.6.2 Patch 4
Own changes:
Common:
- Fixed WFN auto-outline not drawn correctly if font's SizeMultiplier is > 1.
Editor:
- Fixed "Go to..." dialog in Project Explorer not letting to type multi-digit IDs if any intermediate IDs are missing in the objects list.
- Fixed Project Explorer's blocking global shortcuts when focused.
Script API:
- Add eUndefinedFont constant that may be used in certain font properties as a indication that they are not initialized, and engine should go for a default fallback value instead.
- Dialog.OptionsFont is initialized as eUndefinedFont, meaning that if it's not set, then dialogs should use Game.NormalFont.
- Add Dialog.OptionsZOrder.
- Added Dialog.OptionsOverlay that lets access a overlay object which represents dialog options on screen (only returns overlay when the options are displayed).
- Added Dialog.StartOption() that runs dialog starting with the given option. The option's state (turned off, turned off forever) is disregarded in this case.
- Added Game.Speed property. Get/SetGameSpeed function is deprecated.
- Added System.FPS that lets read current real fps.
Engine:
- Fixed reading plugin data from compressed saves.
- Fixed debug Time counter jumping back and forth in "infinite fps" mode.
Compatibility:
- Let restore a save from game_start() in pre-2.7 games.
- When a Restore/SaveGameDialog() function is called, remember the game's "normal font" value at the moment of a function call, and use it when the dialog is finally shown after the current script end, even if "normal font" setting was changed again in meantime.
- Don't outline fonts on standard dialogs in pre-2.56 games.
- Let very narrow labels to still display a 1 character long text in pre-3.6.0 games.
- In 32-bit games made by AGS 2.* whenever GUI has a background graphic with alpha channel, render all colored (no sprite) child controls as fully transparent; and do not render the GUI's own background and border color too in that case.
- Allow a non-closed label macro (such as "@overhotspot") in pre-3.5.1 games.
- In pre-2.62 games Wait(0) should be treated as Wait(1).
- Don't do infinite loop check in scripts in pre-2.56 games.
- In pre-3.6.1 games with custom dialog options rendering force options redraw each time a mouse was moved (regardless of user script update instruction) to complement for a change in engine's behavior.
- Implemented a stub for AudioChannel.SetRoomLocation() variant with 3 parameters, needed for the "Nefasto's Misadventures" game which used a custom engine.
- Implemented an accidental return value for FaceCharacter() and FaceLocation() functions that they had in 2.* engines; some very old games have used that return value in script.
- Fixed TTF fonts in pre-3.2.0 games having an incorrect ascender (drawn lower) if the game has a "Fonts anti-aliasing" enabled.
- Fixed unwanted overhotspot text flicker which may potentially happen in pre-3.6.0 games.
- Fixed room object sorting order for the games made between 3.3.0 and 3.4.0 editors. They have had a mistake which unfortunately affected how objects with the identical baseline will be sorted among themselves.
- Fixed textual overlay heights in 3.6.0-3.6.1 games which fonts have incorrectly reported sizes.
- Fixed various broken dialog option metrics in older games, caused by the changes in the new engine.
- Fixed text window area width being slightly different in older games.
Installer:
- Fixed appID for 3.6.3 (forgot to do that when the Beta 1 was released).