Basics
Guides
API Reference
Basics
Guides
API Reference
[22:7] extends: SerializableType
Wraps FXGL's PropertyMap, the observable key/value store that holds game variables across FXGL. Entity.getProperties, GameWorld.properties, Level.properties, SceneService.worldProperties, EngineService onVarsInitialized / onGameReady callbacks, QuestService.newQuest, and AchievementService all surface this type. Values are stored as JavaFX Property objects so listeners fire on every mutation. Aussom users construct a PropertyMap, populate it with setValue, read with the typed getters (getInt, getDouble, getString, getBoolean, getObject), and observe via addListener at the map level or addKeyListener / addPropertyListener for one specific key.
PropertyMap ()
Creates an empty PropertyMap.
adopt (object Ajo)
Wraps an existing FXGL PropertyMap object obtained from another source (for example Entity.getProperties).
Ajo is an AussomJavaObject around a JavaFX PropertyMap.A new PropertyMap wrapper holding the supplied object.setValue (string Key, Value)
Stores a value under the given key. Routes to the proper typed setter based on Aussom value type so PropertyMap stores the entry under an IntegerProperty / DoubleProperty / BooleanProperty / StringProperty (rather than a generic ObjectProperty).
Key is a string with the property name.Value is the value to store.this objectexists (string Key)
Returns true if a value is stored under the given key.
Key is a string with the property name.A bool.remove (string Key)
Removes the value stored under the given key. No-op if the key does not exist.
Key is a string with the property name.this objectclear ()
Removes every entry from the map.
this objectgetInt (string Key)
Returns the integer value stored under the given key.
Key is a string with the property name.An int.getDouble (string Key)
Returns the double value stored under the given key.
Key is a string with the property name.A double.getString (string Key)
Returns the string value stored under the given key.
Key is a string with the property name.A string.getBoolean (string Key)
Returns the boolean value stored under the given key.
Key is a string with the property name.A bool.getObject (string Key)
Returns the arbitrary object value stored under the given key.
Key is a string with the property name.An AussomJavaObject wrapping the stored value.size ()
Returns the count of stored properties.
An int.increment (string Key, int Delta)
Increments the int value at the given key by Delta.
Key is the property name.Delta is an int to add.this objectincrementDouble (string Key, double Delta)
Increments the double value at the given key by Delta.
Key is the property name.Delta is a double to add.this objectmultiply (string Key, int Factor)
Multiplies the int value at the given key by Factor.
Key is the property name.Factor is an int multiplier.this objectaddAll (object Other)
Copies all entries from another PropertyMap into this one.
Other is another PropertyMap.this objectaddListener (callback OnUpdated = null, callback OnRemoved = null)
Registers a map-level listener that fires on add, update, and remove of any property in the map. Pass null for either callback to ignore that event class. For the key-typed variant — fires only when one named property changes and delivers both (prev, now) values directly — use
addKeyListener(key, callback). That mirrors FXGL's<T> addListener(propertyName, PropertyChangeListener<T>)and is the right choice when you care about a single key.
OnUpdated is a callback receiving (string key, AussomJavaObject value) for add and update events, or null to skip.OnRemoved is a callback receiving (string key, AussomJavaObject value) for remove events, or null to skip.An AussomJavaObject wrapping the registered listener (pass it back to removeListener to detach).addKeyListener (string Key, callback OnChange)
Registers a listener that fires only when the named property changes. The callback receives (prev, now) values. Mirrors FXGL's
<T> addListener(propertyName, PropertyChangeListener<T>)— the (prev, now) values are delivered directly so callers do not have to track the previous value or filter on key name from the map-level listener. Functionally identical toaddPropertyListener(key, cb)(kept as an alias); pick whichever reads better at the call site. Returns the registered listener so it can be passed back toremoveKeyListener(key, listener).
Key is the property name to watch.OnChange is a callback (prev, now) -> void.An AussomJavaObject around the PropertyChangeListener.removeListener (object Listener)
Removes a previously registered map-level listener.
Listener is the AussomJavaObject returned by addListener.this objectremoveKeyListener (string Key, object Listener)
Removes a previously registered key-typed property listener. Pair with
addKeyListener(key, callback).
Key is the property name.Listener is the AussomJavaObject returned by addKeyListener.this objectkeys ()
Returns the property names as a list of strings.
A list of strings.forEach (callback Action)
Calls Action(key, value) for every entry in the map. Action is invoked with the unwrapped value (string / int / double / bool / object), not the JavaFX Property.
Action is a callback (key, value) -> void.this objectforEachObservable (callback Action)
Like forEach but Action receives the underlying JavaFX ObservableValue rather than the unwrapped value.
Action is a callback (key, observable) -> void.this objectgetValueOptional (string Key)
Returns an Optional-wrapped value or null when the property is missing. Useful when the key may not exist and the typed getters' exception path is unwelcome.
Key is the property name.The value, or null when not present.getValue (string Key)
Returns the value stored under Key without specifying a type. Returns whatever Java type the property holds.
Key is the property name.The stored value (string / int / double / bool / object).multiplyDouble (string Key, double Factor)
Multiplies the double value at Key by Factor.
Key is the property name.Factor is a double multiplier.this objectdivide (string Key, int Divisor)
Divides the int value at Key by Divisor.
Key is the property name.Divisor is an int.this objectdivideDouble (string Key, double Divisor)
Divides the double value at Key by Divisor.
Key is the property name.Divisor is a double.this objectbooleanProperty (string Key)
Returns the underlying BooleanProperty bound to Key, so callers can bind UI nodes to it.
Key is the property name.An AussomJavaObject around a BooleanProperty.intProperty (string Key)
Returns the underlying IntegerProperty bound to Key.
Key is the property name.An AussomJavaObject around an IntegerProperty.doubleProperty (string Key)
Returns the underlying DoubleProperty bound to Key.
Key is the property name.An AussomJavaObject around a DoubleProperty.stringProperty (string Key)
Returns the underlying StringProperty bound to Key.
Key is the property name.An AussomJavaObject around a StringProperty.objectProperty (string Key)
Returns the underlying ObjectProperty bound to Key for non-primitive values.
Key is the property name.An AussomJavaObject around an ObjectProperty.addPropertyListener (string Key, callback OnChange)
Adds a listener that fires only when the named property's value changes. The callback receives (prev, now) values. Returns the registered listener so it can be passed back to removePropertyListener. Alias for
addKeyListener.
Key is the property name to watch.OnChange is a callback (prev, now) -> void.An AussomJavaObject around the listener.removePropertyListener (string Key, object Listener)
Removes a per-property listener registered via addPropertyListener.
Key is the property name.Listener is the listener returned by addPropertyListener.this objectcopy ()
Returns a deep copy of the map (each value is re-set into a fresh PropertyMap).
A new PropertyMap wrapper.toMap ()
Returns the map as an AussomJavaObject around a Java Map<String, Object>. Use for serialization or bulk inspection.
An AussomJavaObject around a Map.toStringMap ()
Returns the map as an AussomJavaObject around a Java Map<String, String> with every value stringified.
An AussomJavaObject around a Map.from (MapObj)
Builds a new PropertyMap seeded with every entry of the given Aussom map. Aussom maps convert into Java Map<String, Object> at the AJI boundary so FXGL's static factory takes them directly.
MapObj is an Aussom map of values.A new PropertyMap wrapper.fromStringMap (MapObj)
Builds a new PropertyMap from a string -> string Aussom map. Each string value is coerced to int / double / bool / string by FXGL's parser.
MapObj is an Aussom map of string values.A new PropertyMap wrapper.getValueObservable (string Name)
Returns the observable value at the given key as a raw AJO (the engine's untyped property wrapper). Use the typed *Property accessors when you know the value type.
write (object BundleObj)
Persists every entry in this map into a Bundle. Used by the engine's save / load layer.
read (object BundleObj)
Restores entries from a Bundle, merging into the current map.

Aussom
Write once. Embed everywhere.
Copyright 2026 Austin Lehman. All rights reserved.