-
Notifications
You must be signed in to change notification settings - Fork 0
API wait fr
ClassicUO / Basic IDE
Suspend le script courant pendant un nombre de millisecondes. À utiliser entre des vérifications répétées pour éviter une boucle qui tourne sans pause.
wait(ms:Integer) -> Unit
-
ms— Millisecondes entières : 1000 représente une seconde. Utiliser 0..2147483647. Ce ne sont ni des pas, ni des secondes, ni un délai de confirmation du serveur.
Unit : aucun résultat. Appeler sur une ligne séparée. Une attente terminée ne prouve ni déplacement d’objet, ni fin de sort, ni connexion ; vérifier l’état séparément.
- La procédure courante attend ; la boucle du jeu et les autres scripts continuent. L’annulation du script interrompt l’attente par son jeton d’annulation. Ordonnancement et gestionnaires peuvent prolonger le temps réel ; aucun minutage exact des images n’est garanti. Basic propose aussi Delay avec Await pour une tâche asynchrone.
- UO.Wait divise une durée positive en tranches de 25 ms maximum et vérifie les événements UO entre elles. wait et sleep appellent la même fonction Basic et traitent les timers et callbacks présents, mais ne distribuent pas eux-mêmes les anciens événements UO. Ils ne sont pas totalement interchangeables avec UO.SetEvent.
- Zéro ne produit pas de vraie pause et ne convient pas pour ralentir une boucle rapide. Une durée négative ne signifie pas infini : UO.Wait la ramène à 0 ; wait/sleep peuvent la refuser avec des callbacks actifs, tandis que le pont client sans eux n’attend pas. Utiliser uniquement des durées non négatives.
- Basic.WaitUntil · Basic.Timers · Delay
Suspend le script courant pendant un nombre de millisecondes. À utiliser entre des vérifications répétées pour éviter une boucle qui tourne sans pause.
Millisecondes entières : 1000 représente une seconde. Utiliser 0..2147483647. Ce ne sont ni des pas, ni des secondes, ni un délai de confirmation du serveur.
UO.Wait divise une durée positive en tranches de 25 ms maximum et vérifie les événements UO entre elles. wait et sleep appellent la même fonction Basic et traitent les timers et callbacks présents, mais ne distribuent pas eux-mêmes les anciens événements UO. Ils ne sont pas totalement interchangeables avec UO.SetEvent.
Source du projet: external/InjectionScript/src/InjectionScript/Runtime/InjectionApi.cs; fonction Wait.
La procédure courante attend ; la boucle du jeu et les autres scripts continuent. L’annulation du script interrompt l’attente par son jeton d’annulation. Ordonnancement et gestionnaires peuvent prolonger le temps réel ; aucun minutage exact des images n’est garanti. Basic propose aussi Delay avec Await pour une tâche asynchrone.
Zéro ne produit pas de vraie pause et ne convient pas pour ralentir une boucle rapide. Une durée négative ne signifie pas infini : UO.Wait la ramène à 0 ; wait/sleep peuvent la refuser avec des callbacks actifs, tandis que le pont client sans eux n’attend pas. Utiliser uniquement des durées non négatives.
Source du projet: external/InjectionScript/src/InjectionScript/Runtime/Interpreter.Timers.cs; fonction WaitWithTimers.
Millisecondes entières : 1000 représente une seconde. Utiliser 0..2147483647. Ce ne sont ni des pas, ni des secondes, ni un délai de confirmation du serveur.
La procédure courante attend ; la boucle du jeu et les autres scripts continuent. L’annulation du script interrompt l’attente par son jeton d’annulation. Ordonnancement et gestionnaires peuvent prolonger le temps réel ; aucun minutage exact des images n’est garanti. Basic propose aussi Delay avec Await pour une tâche asynchrone.
Source du projet: src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs; fonction Wait.
# wait — 1
#
# Suspend le script courant pendant un nombre de millisecondes. À utiliser entre des
# vérifications répétées pour éviter une boucle qui tourne sans pause.
#
# Unit : aucun résultat. Appeler sur une ligne séparée. Une attente terminée ne prouve ni
# déplacement d’objet, ni fin de sort, ni connexion ; vérifier l’état séparément.
SUB Main()
# 250 correspond à un quart de seconde. L’instruction suivante s’exécute après l’attente ; Delay
# complete est du texte d’exemple, pas un résultat renvoyé.
wait(250)
UO.Print("Delay complete")
END SUBExplication des paramètres et du déroulement:
- 250 correspond à un quart de seconde. L’instruction suivante s’exécute après l’attente ; Delay complete est du texte d’exemple, pas un résultat renvoyé.
# wait — 2
#
# Suspend le script courant pendant un nombre de millisecondes. À utiliser entre des
# vérifications répétées pour éviter une boucle qui tourne sans pause.
#
# Unit : aucun résultat. Appeler sur une ligne séparée. Une attente terminée ne prouve ni
# déplacement d’objet, ni fin de sort, ni connexion ; vérifier l’état séparément.
SUB Main()
# WaitForOnline est définie entièrement. 20 autorise au maximum vingt pauses de 250 ms. La
# connexion est vérifiée avant les pauses et après la dernière. L’auxiliaire renvoie Connected
# (1/0) ; l’attente ne renvoie rien et ne connecte pas au serveur.
RETURN WaitForOnline(20)
END SUB
SUB WaitForOnline(checks)
WHILE checks > 0
IF UO.Connected() THEN
RETURN 1
END IF
wait(250)
checks = checks - 1
WEND
RETURN UO.Connected()
END SUBExplication des paramètres et du déroulement:
- WaitForOnline est définie entièrement. 20 autorise au maximum vingt pauses de 250 ms. La connexion est vérifiée avant les pauses et après la dernière. L’auxiliaire renvoie Connected (1/0) ; l’attente ne renvoie rien et ne connecte pas au serveur.
# wait — 3
#
# Suspend le script courant pendant un nombre de millisecondes. À utiliser entre des
# vérifications répétées pour éviter une boucle qui tourne sans pause.
#
# Unit : aucun résultat. Appeler sur une ligne séparée. Une attente terminée ne prouve ni
# déplacement d’objet, ni fin de sort, ni connexion ; vérifier l’état séparément.
SUB Main()
# La boucle lit le poids exactement trois fois, avec deux pauses de 500 ms entre les lectures,
# sans pause finale. Affiche la première valeur puis les changements. previous mémorise la
# comparaison, sans modifier le poids du jeu.
VAR previous = -1
VAR checks = 0
WHILE checks < 3
VAR weight = UO.Weight()
IF weight <> previous THEN
UO.Print("Weight: " + CStr(weight))
previous = weight
END IF
checks = checks + 1
IF checks < 3 THEN
wait(500)
END IF
WEND
END SUBExplication des paramètres et du déroulement:
- La boucle lit le poids exactement trois fois, avec deux pauses de 500 ms entre les lectures, sans pause finale. Affiche la première valeur puis les changements. previous mémorise la comparaison, sans modifier le poids du jeu.
Русский · English · Українська · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
ClassicUO
Bad Newbie & Basic IDE
Найти в справочнике
Клиент и скрипты
Каталоги значений
Разработка и помощь