ControlsDummy Class
The scope of applications for UnigineScript is limited to implementing materials-related logic (material expressions, scriptable materials, brush materials). Do not use UnigineScript as a language for application logic, please consider C#/C++ instead, as these APIs are the preferred ones. Availability of new Engine features in UnigineScript (beyond its scope of applications) is not guaranteed, as the current level of support assumes only fixing critical issues.
Inherits from: | Controls |
This class is used to create controls for players that should not be controlled by the user (for example, when such a player is controlled by an AI). This class allows to create any other completely custom implementation of controls.
The code below shows how to create custom controls and toggle showing the item inventory when 'i' key is pressed on the keyboard. For that, auxiliary state STATE_AUX_0 is used.
ControlsDummy my_controls = new ControlsDummy(); // custom controls
int inventory_toggled = false; // show item inventory toggle
void update_input(Controls controls) {
// Check if the key is pressed and update the state of the specified control.
// You can use both 'i' or ASCII code (105).
controls.setState(CONTROLS_STATE_AUX_0,engine.app.getKeyState('i'));
}
// Implement your game logic for showing or hiding item inventory.
void update_game_logic(Controls controls) {
// If the control state is positive (the key has been pressed), toggle item
// inventory on and off.
if(controls.getState(CONTROLS_STATE_AUX_0)) {
inventory_toggled = !inventory_toggled;
}
}
/*
*/
// Update controls each frame according to the user input.
int update() {
update_input(my_controls);
update_game_logic(my_controls);
}
ControlsDummy Class
Members
static ControlsDummy ( ) #
Constructor. Creates a new set of dummy controls.Last update:
2021-12-13
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)