Skip to main content

User Interface

Intro Scene

For an explanation on what the PLAY button does, please see the Matchmaking section.

Below the PLAY button, there is a dropdown for selecting the game mode to be played. This asset supports Team Deathmatch, which is the default mode, as well as Capture The Flag. For a more detailed explanation on Game Modes and differences between them, please see the Game Modes section.

UI010

At the bottom right, the player has the option to customize some game settings in the Settings window while running the game. This window contains an input field for entering the player's name, which is synchronized over the network and put over the player's model once connected. Also, selecting the desired network play mode is possible. For a description on Network Modes, please see the Network Modes section. Other settings in this menu only affect the local user, such as toggling music or general sound effect volume.

Selected settings in this window are being saved on the device at the point of closing it, then loaded every time on scene launch (via PlayerPrefs). The UIMain script handles all of this and provides default values in its Start() method (in case of first app launch) as well. Right next to the Settings button you will find a button that allows users to rate your app. It does so by opening the App Store page for your app via your project's bundle identifier.

UI020

At the bottom left, your players can choose what model they want to play with. This happens in the Shop window, by selecting available player models. Each player model option is actually a product with the IAPProduct component attached, however by default, the Buyable checkbox on the IAPProduct is disabled making the products free for selection.

UI030

If want to sell player models via in-app purchases, then the user has to purchase these models first. How to enable billing with Unity IAP for this asset is explained in the In App Purchases section.

Game Scene

When it comes to UI elements, the Game scenes are divided into 3 parts for displaying them: top, center and bottom.

UI040

At the top of the screen in the center, the scores are displayed for each available team. This is important to know, since the game ends when the score has been reached that was defined on the GameManager component. Next to each score, the team fill value is displayed with bars filling up for each additional player joined on that team, modified via a Slider component. On the top left, your personal kill / death ratio is displayed. On the top right, there a button to leave the match.

In the center, this is where the game action happens. Therefore, only important UI elements are displayed there, to not distract the player:

  • Respawn Counter
  • Ads (if enabled)
  • Team Win message
  • Game Over window

At the bottom left and right, on mobile the UIJoystick components are placed there to let the player control movement and shooting, explained in their own sections in this documentation. On non-mobile devices, these joysticks are not displayed.

All the UI element references are assigned to the UIGame script in the scene, which contains methods for enabling, updating or disabling them. Additionally, a reference to the UIGame script is assigned on the GameManager component in the scene, to also provide access into the UI when game-related events happen (such as ending the match).