- Offizieller Beitrag
Moin,
da ich grad ein wenig mit CEF rumexperimentiere bastel ich mir da allerlei kleine Hilfsmittel. Hier mal eins, welches dem ein oder anderen evtl. weiterhilft.
MTAjax
MTAjax implementiert ein Interface ähnlich zu dem der aus JQuery bekannten AJAX Requests mit dem man Daten vom Browser aus anfordern kann.
Installation
- JQuery in die Resource kopieren und in die HTML Seite einbinden
- mtajax.js und mtajax.lua in die Resource kopieren
- mtajax.js als Javascript in die HTML Seite einbinden
- mtajax.lua als Clientseitiges Script in die meta.xml einbinden
Verwendung
Jetzt könnt ihr von Luaseite die Funktionen
- addAjaxHandler
- removeAjaxHandler
nutzen.
Lua
addAjaxHandler("PlayerMoneyRequest",
function(playername)
local player = getPlayerFromName(playername)
if not player then return false end
return getPlayerMoney(player)
end
)
Auf Browserseite könnt ihr nun folgenden Javascript Aufruf nutzen:
JavaScript
mtajax.makeRequest("PlayerMoneyRequest", "sbx320").done(function(data)
{
if(data === false)
console.log("Ungültiger Spieler")
else
console.log("Spieler hat $" + data)
});
Im GitHub Repository hab ich dazu auch nochmal eine vollständige Beispielresource.