github adventuregamestudio/ags v4.0.0.24
v4.0.0.24 (AGS 4.0 Alpha 28)

pre-release3 hours ago

Contains all the additions from 3.6.3 Beta 2 and 3.6.3 Beta 3 (excepts ones related to backwards compatibility).

Own changes:

Editor:

  • Object and hotspot events are now visibly divided into common events and "cursor events". Cursor events are no longer hardcoded, but generated following new Cursor settings.
  • Added CreateEvent, EventLabel and EventFunctionName properties to Cursors. If CreateEvent is set to true, then Editor will generate event for it, EventLabel is used as a "display name" for such event, and EventFunctionName is used as a script function suffix.
  • Added StandardRole property to Cursors. This property defines which of the built-in roles this cursor represents in game (or none). The existing roles are: Walk, Look, Interact, Use inventory, Pointer and Wait; these are modes that have predefined behavior in the engine.
  • Added OnFrameEvent event to Buttons, Characters and Room Objects.
  • Added EventName property for ViewFrame, which is an arbitrary string value. This value does not correspond to real script events, but is treated as a custom "event tag". The View Editor will display a "lightning" icon idicating frames with "event names". At runtime, whenever any animating object hits such frame, engine fires a special "OnFrameEvent" event for that object.
  • Removed "Other click on" event from Inventory Items, as items have full range of cursor events now, just like hotspots and objects.

Compiler:

  • Fixed UTF-8 character literals not parsed by the new compiler.
  • Fixed being able to declare a local variable inside a 'for' loop having same name as the variable declared in a 'for' header.

Scripting:

  • Allow to explicitly call parent struct's constructor from a child struct's constructor. This is a forced temporary measure, because at the moment there's no mechanism of automatic call of the parent type constructors.

Script API:

  • Added AnimatedOverlay struct, which is a child type of Overlay, which has Animate command, and readonly properties which describe current animation, similar to other animateable objects (View, Loop, Frame, etc). As Overlays have specific use cases in games (may be part of UI), AnimateOverlay has additional parameter "PauseWithGame", which determines whether this overlay's animation will be paused when the game is paused, or not.
  • Added Button.RunFrameEvent(), Character.RunFrameEvent() and Object.RunFrameEvent() functions, that trigger "OnFrameEvent" event function for corresponding object.
  • Expanded LocationType enum with eLocationInvItem.
  • "unhandled_event" script function now accepts LocationType and real cursor mode as parameters, instead of arbitarily chosen indexes.

Engine:

  • Fixed String.IndexOf function issuing a unnecessary warning if it's called for the empty string with start index parameter = 0.

Don't miss a new ags release

NewReleases is sending notifications on new releases.