Aller au contenu

global — Utilitaires généraux

Fonctions globales MoonBot Lua : delay, print, error handling, gestion du temps, utilitaires généraux.

48 fonctions dans ce namespace.

Index


Référence

global.delay

global.delay(ms: number)

blocking

Pause le script pendant ms millisecondes.


global.random

global.random(min: number, max: number)

returns number

Nombre aleatoire entre min et max (inclus).


global.elapsedTime

global.elapsedTime()

returns number

Millisecondes depuis le lancement du script.


global.printMessage

global.printMessage(msg: string)

Log INFO.


global.printError

global.printError(msg: string)

Log ERROR.


global.printSuccess

global.printSuccess(msg: string)

Log SUCCESS.


global.afterFight

global.afterFight()

returns boolean

True si le bot vient de finir un combat. Se remet a false apres lecture.


global.isInFight

global.isInFight()

returns boolean

True si en combat.


global.isBoss

global.isBoss()

returns boolean

True si le bot est le chef de son groupe MoonBot ou un bot solo (hors groupe). False pour une mule : une mule ne lance jamais de combat, elle rejoint celui du chef.


global.leaveDialog

global.leaveDialog()

Ferme le dialogue PNJ.


global.finishScript

global.finishScript()

Arrete le script.


global.disconnect

global.disconnect()

Deconnecte le bot.


global.reconnect

global.reconnect()

Reconnecte le bot.


global.reconnectTo

global.reconnectTo(minutes: number)

Deconnecte immediatement et reconnecte apres N minutes. Le bot est totalement offline (TCP ferme) pendant toute la duree.


global.setXpBlocked

global.setXpBlocked(blocked: boolean)

Bloque (true) ou debloque (false) le gain d'XP. Alias top-level: setXpBlocked(blocked). Envoie Au1 pour bloquer, Au0 pour debloquer.


global.setBankMode

global.setBankMode(state: boolean, timer?: number)

Active/desactive le Mode bot banque a chaud (auto-accept echange + depot banque). timer optionnel = minutes d'inactivite avant deco auto (0 = jamais). A l'activation, le timer redemarre a zero. Utile pour eviter la deco pour inactivite quand un script tourne en mode banque.


global.getBankMode

global.getBankMode()

returns false | number

Retourne false si le Mode bot banque est desactive, sinon le timer d'inactivite en minutes (0 = illimite). Permet de verifier dans un script si la case 'Mode bot banque' est cochee.


global.setFightTactic

global.setFightTactic(tactic: string)

Modifie la tactique de combat. Valeurs : "" (Automatique), "CaC" (Corps a corps), "Distance", "Imobile" (Immobile), "Script" (IA Script).


global.getFightTactic

global.getFightTactic()

returns string

Retourne la tactique actuelle ("", "CaC", "Distance", "Imobile" ou "Script").


global.setFightFocus

global.setFightFocus(focus: string)

Choix de la cible : "nearest" (le plus proche), "weakest" (HP bas), "strongest" (HP haut), "lowest_hp_pct" (HP % le plus bas).


global.getFightFocus

global.getFightFocus()

returns string

Retourne le focus actuel (nearest / weakest / strongest / lowest_hp_pct).


global.setFightDeplacement

global.setFightDeplacement(mode: string)

Mode de deplacement : "no_tackle" (sans tackle), "shortest" (plus court), "none" (aucun).


global.getFightDeplacement

global.getFightDeplacement()

returns string

Retourne le mode de deplacement actuel (no_tackle / shortest / none).


global.setFightDisMin

global.setFightDisMin(cells: number)

Distance min. de securite par rapport aux ennemis apres action (en cases). 0 = desactive.


global.getFightDisMin

global.getFightDisMin()

returns number

Retourne la distance min. de securite (en cases). 0 = desactive.


global.fileExists

global.fileExists(path: string)

returns false

Desactive en mode securise pour empecher l'exploration du systeme de fichiers.


global.loadConfigurationWithoutScript

global.loadConfigurationWithoutScript(name: string, timeoutMs?: number = 30000) / global:loadConfigurationWithoutScript(name, timeoutMs)

blocking · returns boolean, string | nil

Charge une configuration de la bibliotheque du proprietaire par son nom exact et unique (casse comprise), sans chemin de fichier. Appel bloquant : retourne true uniquement apres application dans le moteur du compte courant ; le script continue dans la meme VM et peut utiliser les nouveaux reglages a la ligne suivante. Retourne false, erreur en cas de refus, d'echec de transmission ou d'attente depassee. timeoutMs : 30000 ms par defaut, entier entre 1 et 60000. Aucune pause global.delay necessaire, meme dans une commande courte executee comme script principal. Un arret du script interrompt l'attente ; les reponses tardives sont ignorees. Une attente depassee ne garantit pas l'annulation de la sauvegarde cote serveur. Nom vide, espaces de bord, caracteres de controle, nom de plus de 256 octets UTF-8 ou timeout invalide : erreur Lua avant envoi. Les reglages de groupe sont conserves. Disponible apres mise a jour conjointe du moteur, du worker et du serveur ; les anciennes versions restent asynchrones.


Exemple — changer de configuration avant une action

local CONFIG_ACTIVE = nil

function charger_config(nom)
    if CONFIG_ACTIVE == nom then return end
    local ok, erreur = global.loadConfigurationWithoutScript(nom, 10000)
    if not ok then error("Chargement " .. nom .. " : " .. tostring(erreur)) end
    CONFIG_ACTIVE = nom -- seulement apres application confirmee
end

charger_config("GeleCapture")
-- Les actions suivantes utilisent maintenant GeleCapture.

Le nom doit exister dans la bibliotheque. Cet exemple arrete le script en cas d'echec et memorise CONFIG_ACTIVE uniquement apres confirmation. Ce cache convient lorsque ce script est seul a changer la configuration ; retirer le test CONFIG_ACTIVE si elle peut aussi etre modifiee ailleurs. Remplacer GeleCapture par GeleSansCapture pour basculer ensuite.


global.addInMemory

global.addInMemory(key: string, value: any)

Stocke une valeur en memoire de session.


global.remember

global.remember(key: string)

returns any

Recupere une valeur de la memoire.


global.deleteMemory

global.deleteMemory(key: string)

Supprime une valeur de la memoire.


global.editInMemory

global.editInMemory(key: string, value: any)

Modifie une valeur en memoire.


global.getTime

global.getTime()

returns number

Timestamp Unix en secondes.


global.getTimeMs

global.getTimeMs()

returns number

Timestamp Unix en millisecondes.


global.username

global.username()

returns string

Nom du personnage.


global.accountTag

global.accountTag()

returns string

ID du compte.


global.waitForFightEnd

global.waitForFightEnd(timeout_ms?: number)

blocking · returns boolean

Attend la fin du combat.


global.waitForMapChange

global.waitForMapChange(timeout_ms?: number)

blocking · returns boolean

Attend un changement de map.


global.onMessage

global.onMessage(code: string, handler: function)

Callback appele quand un paquet serveur avec ce code est recu.


global.thisAccountController

global.thisAccountController()

returns accountController

Retourne l'objet de controle du compte actuel.


global.printColor

global.printColor(message: string, hexColor: string)

Affiche un message INFO. La couleur est conservee pour compatibilite mais n'est pas appliquee.


global.getCurrentScriptDirectory

global.getCurrentScriptDirectory()

returns string

Retourne le dossier du script courant. Aucun acces aux fichiers n'est fourni par cette fonction.


global.password

global.password()

returns ""

Stub de compatibilite : le mot de passe du compte n'est jamais expose au Lua.


Fonctions reservees aux scripts prives

global.markFollowedBlacklist(reason?) / global.bankGiveKamas(secret)

returns boolean

Fonctions internes des scripts prives geres par MoonBot. Elles retournent false pour un script normal et leurs parametres sensibles sont revalides cote serveur.


dofile

dofile(path: string)

Desactive par le sandbox. Utilisez la bibliotheque de scripts MoonBot.


sleep / sleep_ms

sleep(seconds) / sleep_ms(ms)

blocking

Pause. sleep() en secondes, sleep_ms() en millisecondes.


log / print

log(msg) / print(...)

Affiche dans les logs du bot.


os.time / os.clock

os.time() / os.clock()

returns number

Timestamp Unix / temps ecoule du script en secondes.