-
Notifications
You must be signed in to change notification settings - Fork 0
API CSng it
ClassicUO / Basic IDE
Legge un’impostazione numerica per i calcoli, per esempio un ritardo in secondi.
CSng(value:Any) -> Decimal
-
value— Un Integer/Decimal o String numerico obbligatorio, con punto ed esponente facoltativo indipendentemente dalla lingua. "0x0EED" non è numerico qui. Testo non valido, Array, Object e Unit diventano 0. Verifica l’input con IsNumeric.
Decimal basato su double a 64 bit. CDbl e CSng usano la stessa precisione; CSng non riduce a Single a 32 bit. Un input non valido dà 0, quindi zero non conferma una conversione riuscita. Sono possibili NaN e Infinity: verificare separatamente i limiti.
- Un Integer/Decimal o String numerico obbligatorio, con punto ed esponente facoltativo indipendentemente dalla lingua. "0x0EED" non è numerico qui. Testo non valido, Array, Object e Unit diventano 0. Verifica l’input con IsNumeric.
- Decimal basato su double a 64 bit. CDbl e CSng usano la stessa precisione; CSng non riduce a Single a 32 bit. Un input non valido dà 0, quindi zero non conferma una conversione riuscita. Sono possibili NaN e Infinity: verificare separatamente i limiti.
Legge un’impostazione numerica per i calcoli, per esempio un ritardo in secondi.
Un Integer/Decimal o String numerico obbligatorio, con punto ed esponente facoltativo indipendentemente dalla lingua. "0x0EED" non è numerico qui. Testo non valido, Array, Object e Unit diventano 0. Verifica l’input con IsNumeric.
Decimal basato su double a 64 bit. CDbl e CSng usano la stessa precisione; CSng non riduce a Single a 32 bit. Un input non valido dà 0, quindi zero non conferma una conversione riuscita. Sono possibili NaN e Infinity: verificare separatamente i limiti.
Sorgente del progetto: external/InjectionScript/src/InjectionScript/Runtime/InjectionApi.cs; funzione BasicDouble.
# CSng — 1
#
# Legge un’impostazione numerica per i calcoli, per esempio un ritardo in secondi.
#
# Decimal basato su double a 64 bit. CDbl e CSng usano la stessa precisione; CSng non riduce a
# Single a 32 bit. Un input non valido dà 0, quindi zero non conferma una conversione riuscita.
# Sono possibili NaN e Infinity: verificare separatamente i limiti.
SUB Main()
# value="0.35" usa il punto decimale. Main restituisce Decimal 0.35 secondi senza attendere.
RETURN CSng("0.35")
END SUBSpiegazione dei parametri e dell’esecuzione:
- value="0.35" usa il punto decimale. Main restituisce Decimal 0.35 secondi senza attendere.
# CSng — 2
#
# Legge un’impostazione numerica per i calcoli, per esempio un ritardo in secondi.
#
# Decimal basato su double a 64 bit. CDbl e CSng usano la stessa precisione; CSng non riduce a
# Single a 32 bit. Un input non valido dà 0, quindi zero non conferma una conversione riuscita.
# Sono possibili NaN e Infinity: verificare separatamente i limiti.
SUB Main()
# value="3e1" significa 30; diviso per 4 dà Decimal 7.5. La notazione esponenziale non dipende
# dalla lingua.
VAR total = CSng("3e1")
RETURN total / 4
END SUBSpiegazione dei parametri e dell’esecuzione:
- value="3e1" significa 30; diviso per 4 dà Decimal 7.5. La notazione esponenziale non dipende dalla lingua.
# CSng — 3
#
# Legge un’impostazione numerica per i calcoli, per esempio un ritardo in secondi.
#
# Decimal basato su double a 64 bit. CDbl e CSng usano la stessa precisione; CSng non riduce a
# Single a 32 bit. Un input non valido dà 0, quindi zero non conferma una conversione riuscita.
# Sono possibili NaN e Infinity: verificare separatamente i limiti.
SUB Main()
# Milliseconds riceve secondsText="0.35". Testo non numerico, NaN e valori fuori da 0.1..5
# secondi danno -1. Altrimenti moltiplica per 1000 e restituisce Decimal 350 per un’attesa
# successiva; non chiama Wait.
RETURN Milliseconds("0.35")
END SUB
SUB Milliseconds(secondsText)
IF NOT IsNumeric(secondsText) THEN
RETURN -1
END IF
VAR seconds = CSng(secondsText)
IF CStr(seconds) = "NaN" OR seconds < 0.1 OR seconds > 5 THEN
RETURN -1
END IF
RETURN seconds * 1000
END SUBSpiegazione dei parametri e dell’esecuzione:
- Milliseconds riceve secondsText="0.35". Testo non numerico, NaN e valori fuori da 0.1..5 secondi danno -1. Altrimenti moltiplica per 1000 e restituisce Decimal 350 per un’attesa successiva; non chiama Wait.
Русский · English · Українська · Français · Deutsch · Italiano · Español · 繁體中文 · 日本語 · 한국어
ClassicUO
Bad Newbie & Basic IDE
Найти в справочнике
Клиент и скрипты
Каталоги значений
Разработка и помощь