-
Notifications
You must be signed in to change notification settings - Fork 0
API UO FunRunning fr
Русский · English · Українська · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
UO.CallSub · UO.FunRunning · UO.SubExists
ClassicUO • Runtime API
Vérifie l’existence d’une exécution active de la procédure, même en pause. Évite de relancer un observateur existant.
UO.FunRunning(subrutineName:String) -> Integer
-
subrutineName— String subrutineName obligatoire : nom Sub/Function du catalogue, comme WeightWatch. Ni chemin, fichier, indice, code source, ni libellé modifié par SetScriptName. La casse est ignorée, les espaces ne sont pas supprimés. Aucun argument de procédure ne peut être transmis.
Integer : 1 (True) si l’exécution existe sans être annulée, même en pause manuelle ou de déconnexion ; 0 (False) si absente, non démarrée, terminée ou en annulation. If UO.FunRunning(name), = 1 et = True sont valides. GetScriptState distingue exécution (1) et pause (2).
- Recherche limitée au catalogue de cette session. Les noms identiques sélectionnent la première correspondance : choisir des noms uniques. Ces commandes ne chargent aucun fichier inconnu et ne parcourent pas le disque.
- CallSub fournit zéro argument. Private, erreurs de syntaxe, paramètres obligatoires, Basic désactivé ou règle de procédure unique peuvent refuser le lancement ; consulter l’état/les erreurs IDE. Un nouvel appel ne duplique ni ne reprend une tâche active. Après annulation, le démarrage peut attendre le nettoyage. Le contrôleur n’attend pas la fin de la tâche.
- FunRunning utilise le nom d’origine et la clé, pas un libellé renommé. La pause conserve l’exécution et renvoie 1. L’annulation renvoie 0 même pendant le nettoyage. Vérification et appel suivant ne sont pas atomiques ; la tâche peut se terminer entre les deux.
- SubExists peut renvoyer 1 pour une définition Private ou invalide. Arrêter la tâche ou fermer l’onglet ne supprime pas forcément l’entrée du catalogue. Recharger un fichier modifié retire les définitions obsolètes. Une fonction chargée seulement dans un runtime séparé peut être inconnue du gestionnaire.
Étapes réelles de l’implémentation : les noms C# ne sont pas de nouvelles commandes UO. Toutes les fonctions auxiliaires Basic exécutables sont fournies intégralement.
String subrutineName obligatoire : nom Sub/Function du catalogue, comme WeightWatch. Ni chemin, fichier, indice, code source, ni libellé modifié par SetScriptName. La casse est ignorée, les espaces ne sont pas supprimés. Aucun argument de procédure ne peut être transmis.
Integer : 1 (True) si l’exécution existe sans être annulée, même en pause manuelle ou de déconnexion ; 0 (False) si absente, non démarrée, terminée ou en annulation. If UO.FunRunning(name), = 1 et = True sont valides. GetScriptState distingue exécution (1) et pause (2).
Source du projet: external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs; fonction FunRunning.
Recherche limitée au catalogue de cette session. Les noms identiques sélectionnent la première correspondance : choisir des noms uniques. Ces commandes ne chargent aucun fichier inconnu et ne parcourent pas le disque.
SubExists peut renvoyer 1 pour une définition Private ou invalide. Arrêter la tâche ou fermer l’onglet ne supprime pas forcément l’entrée du catalogue. Recharger un fichier modifié retire les définitions obsolètes. Une fonction chargée seulement dans un runtime séparé peut être inconnue du gestionnaire.
Source du projet: src/ClassicUO.Client/Game/Managers/YokoInjectionManager.cs; fonction FindProcedureByName.
Vérifie l’existence d’une exécution active de la procédure, même en pause. Évite de relancer un observateur existant.
FunRunning utilise le nom d’origine et la clé, pas un libellé renommé. La pause conserve l’exécution et renvoie 1. L’annulation renvoie 0 même pendant le nettoyage. Vérification et appel suivant ne sont pas atomiques ; la tâche peut se terminer entre les deux.
Source du projet: src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs; fonction FunRunning.
Étapes réelles de l’implémentation : les noms C# ne sont pas de nouvelles commandes UO. Toutes les fonctions auxiliaires Basic exécutables sont fournies intégralement.
# Lancer en l’absence d’exécution
#
# Vérifie l’existence d’une exécution active de la procédure, même en pause. Évite de relancer
# un observateur existant.
#
# Integer : 1 (True) si l’exécution existe sans être annulée, même en pause manuelle ou de
# déconnexion ; 0 (False) si absente, non démarrée, terminée ou en annulation. If
# UO.FunRunning(name), = 1 et = True sont valides. GetScriptState distingue exécution (1) et
# pause (2).
SUB Main()
# FunRunning = 0 permet une demande. Une pause renvoie 1 et n’est pas levée.
# Enregistrer chaque exemple séparément, le charger dans IDE/gestionnaire et lancer Main pour
# enregistrer les procédures. WeightWatch/ManaWatch sont entièrement définies : trois mesures de
# poids/mana, Wait(1000) = 1000 ms, affichage uniquement en jeu. Observation finie ; les pauses
# prolongent la durée. Autoriser les procédures simultanées pour les deux tâches.
If Not UO.FunRunning("WeightWatch") Then
UO.CallSub("WeightWatch")
End If
END SUB
Sub WeightWatch()
Dim sample
For sample = 1 To 3
If UO.Connected() Then
UO.Print("Weight: " & CStr(UO.Weight()))
End If
UO.Wait(1000)
Next
End SubExplication des paramètres et du déroulement:
- FunRunning = 0 permet une demande. Une pause renvoie 1 et n’est pas levée.
- Enregistrer chaque exemple séparément, le charger dans IDE/gestionnaire et lancer Main pour enregistrer les procédures. WeightWatch/ManaWatch sont entièrement définies : trois mesures de poids/mana, Wait(1000) = 1000 ms, affichage uniquement en jeu. Observation finie ; les pauses prolongent la durée. Autoriser les procédures simultanées pour les deux tâches.
# Distinguer activité et pause
#
# Vérifie l’existence d’une exécution active de la procédure, même en pause. Évite de relancer
# un observateur existant.
#
# Integer : 1 (True) si l’exécution existe sans être annulée, même en pause manuelle ou de
# déconnexion ; 0 (False) si absente, non démarrée, terminée ou en annulation. If
# UO.FunRunning(name), = 1 et = True sont valides. GetScriptState distingue exécution (1) et
# pause (2).
SUB Main()
# NamedRunState cherche le libellé WeightWatch et renvoie GetScriptState : 1, 2 ou 0. Suppose un
# libellé unique inchangé et une liste stable. Après SetScriptName, chercher le nouveau libellé
# ou le chemin ; FunRunning utilise toujours le nom source.
# Enregistrer chaque exemple séparément, le charger dans IDE/gestionnaire et lancer Main pour
# enregistrer les procédures. WeightWatch/ManaWatch sont entièrement définies : trois mesures de
# poids/mana, Wait(1000) = 1000 ms, affichage uniquement en jeu. Observation finie ; les pauses
# prolongent la durée. Autoriser les procédures simultanées pour les deux tâches.
If UO.FunRunning("WeightWatch") Then
Return NamedRunState("WeightWatch")
End If
Return 0
END SUB
Function NamedRunState(name) As Integer
Dim indices = UO.GetScriptsList()
For Each index In indices
If UO.GetScriptName(index) = name Then
Return UO.GetScriptState(index)
End If
Next
Return 0
End Function
Sub WeightWatch()
Dim sample
For sample = 1 To 3
If UO.Connected() Then
UO.Print("Weight: " & CStr(UO.Weight()))
End If
UO.Wait(1000)
Next
End SubExplication des paramètres et du déroulement:
- NamedRunState cherche le libellé WeightWatch et renvoie GetScriptState : 1, 2 ou 0. Suppose un libellé unique inchangé et une liste stable. Après SetScriptName, chercher le nouveau libellé ou le chemin ; FunRunning utilise toujours le nom source.
- Enregistrer chaque exemple séparément, le charger dans IDE/gestionnaire et lancer Main pour enregistrer les procédures. WeightWatch/ManaWatch sont entièrement définies : trois mesures de poids/mana, Wait(1000) = 1000 ms, affichage uniquement en jeu. Observation finie ; les pauses prolongent la durée. Autoriser les procédures simultanées pour les deux tâches.
# Arrêter un seul observateur
#
# Vérifie l’existence d’une exécution active de la procédure, même en pause. Évite de relancer
# un observateur existant.
#
# Integer : 1 (True) si l’exécution existe sans être annulée, même en pause manuelle ou de
# déconnexion ; 0 (False) si absente, non démarrée, terminée ou en annulation. If
# UO.FunRunning(name), = 1 et = True sont valides. GetScriptState distingue exécution (1) et
# pause (2).
SUB Main()
# Terminate reçoit le nom d’origine WeightWatch et annule cette tâche, même en pause. Les autres
# continuent. Lancer Main comme contrôleur séparé.
# Enregistrer chaque exemple séparément, le charger dans IDE/gestionnaire et lancer Main pour
# enregistrer les procédures. WeightWatch/ManaWatch sont entièrement définies : trois mesures de
# poids/mana, Wait(1000) = 1000 ms, affichage uniquement en jeu. Observation finie ; les pauses
# prolongent la durée. Autoriser les procédures simultanées pour les deux tâches.
If UO.FunRunning("WeightWatch") Then
UO.Terminate("WeightWatch")
End If
END SUB
Sub WeightWatch()
Dim sample
For sample = 1 To 3
If UO.Connected() Then
UO.Print("Weight: " & CStr(UO.Weight()))
End If
UO.Wait(1000)
Next
End SubExplication des paramètres et du déroulement:
- Terminate reçoit le nom d’origine WeightWatch et annule cette tâche, même en pause. Les autres continuent. Lancer Main comme contrôleur séparé.
- Enregistrer chaque exemple séparément, le charger dans IDE/gestionnaire et lancer Main pour enregistrer les procédures. WeightWatch/ManaWatch sont entièrement définies : trois mesures de poids/mana, Wait(1000) = 1000 ms, affichage uniquement en jeu. Observation finie ; les pauses prolongent la durée. Autoriser les procédures simultanées pour les deux tâches.
ClassicUO
Bad Newbie & Basic IDE
Найти в справочнике
Клиент и скрипты
Каталоги значений
Разработка и помощь