-
-
Notifications
You must be signed in to change notification settings - Fork 557
Code Snippets
This page contains various useful code snippets. Note that if you are calling FXGL.
methods within your GameApplication
class, then in most cases FXGL.
can be omitted (getAssetLoader()
instead of FXGL.getAssetLoader()
).
- place your
icon.png
in/assets/textures
settings.setAppIcon("icon.png");
Texture texture = FXGL.getAssetLoader().loadTexture("background.png");
ScrollingBackgroundView bg = new ScrollingBackgroundView(texture, Orientation.HORIZONTAL);
getGameScene().addGameView(bg);
FXGL.getAudioPlayer().loopBGM("music.mp3");
Say you have an A* grid object in your MyApp that you want to access from some AIControl. Have a public accessor to return your grid object in MyApp:
public AStarGrid getGrid() {}
Then, in AIControl, you can obtain the reference to your app and typecast it to your app type:
MyApp app = (MyApp) FXGL.getApp();
app.getGrid() ... // do stuff with the grid
You can listen for entity added / removed events directly from the entity itself. This might be convenient for setting up simple callbacks.
Entity e = ...
// will be called when entity is actually added to the world
e.setOnActive(() -> ...);
// will be called when entity is actually removed from the world
e.setOnNotActive(() -> ...);
An entity view is a JavaFX node and that's everything you need to know to get going.
Entity e = ...
EntityView view = e.getView();
view.setOnMouseClicked(e -> ...);
As per Android dev guide in AndroidManifest.xml update android:screenOrientation=""
as necessary - example
In Default-info.plist update <key>UISupportedInterfaceOrientations</key>
as necessary - example