Passer au contenu principal
Version: bleeding-edge 🩸

User Interface

Comment afficher des informations sur l'écran pour le joueur.

In nanos world there are 2 official ways of plotting screen data: WebUI and Canvas.

caution

We highly recommend using WebUI instead of Canvas to create your UIs 😉.

WebUI

Avec WebUI, vous pouvez charger des pages HTML qui s'intègrent à vos packages en Lua en utilisant des événements.

Configuration de base de WebUI

Cet exemple de code montre comment ajouter une page de base en utilisant HTML+JavaScript avec la classe WebUI.

info

Note: Tout le code WebUI s'exécute côté client !

Client/Index.lua
-- Spawns a WebUI with the HTML file you just created
MyUI = WebUI("My UI", "file://UI/index.html")

-- When the HTML is ready, triggers an Event in there
MyUI:Subscribe("Ready", function()
MyUI:CallEvent("MyAwesomeEvent", "Hello! Vous êtes prêts !")
end)

MyUI:Subscribe("MyAwesomeAnswer", function(param1)
Package.Log("Réception d'une réponse! Message: " .. param1)
end)
Client/UI/index.html
<html>
<head>
<script src="index.js"></script>
</head>
<body>
Hello World!
</body>
</html>
Client/UI/index.js
// Enregistrement pour "MyAwesomeEvent" à partir de Lua
Events.Subscribe("MyAwesomeEvent", function(param1) {
console.log("Déclenchement! " + param1);

// Déclencheurs "MyAwesomeAnswer" dans Lua
Events.Call("MyAwesomeAnswer", "Hey there!");
})

WebUI results

Cela produira un résultat :

[WebUI]  Déclenchement! Bonjour! Vous êtes prêts !
[Script] Réception d'une réponse! Message: Hey there!
HUD Basique (HTML)getting-started/tutorials-and-examples/basic-hud-html

Canvas

HUD Basique (Canvas)getting-started/tutorials-and-examples/basic-hud-canvas