Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Time

Eredita: Object

Un singleton per lavorare con i dati sul tempo.

Descrizione

Il singleton Time consente di convertire l'ora tra vari formati e anche di ottenere informazioni sull'ora dal sistema.

Questa classe è conforme al maggior numero possibile di standard ISO 8601. Tutte le date seguono il calendario gregoriano prolettico. Pertanto, il giorno prima del 1582-10-15 è 1582-10-14, non 1582-10-04. L'anno prima del 1 d.C. (noto anche come 1 a.C.) è il numero 0, mentre l'anno prima (2 a.C.) è -1, ecc.

I metodi di conversione presuppongono "lo stesso fuso orario" e non gestiscono automaticamente le conversioni di fuso orario o l'ora legale. Anche i secondi intercalari non sono gestiti, è necessario farlo manualmente se lo si desidera. I suffissi come "Z" non sono gestiti, è necessario eliminarli manualmente.

Quando si ottengono informazioni sull'ora dal sistema, l'ora può essere nel fuso orario locale o UTC a seconda del parametro utc. Tuttavia, il metodo get_unix_time_from_system() usa sempre UTC poiché restituisce i secondi trascorsi dall'epoca Unix.

Importante: I metodi _from_system usano l'orologio di sistema che l'utente può impostare manualmente. Non usare mai questo metodo per un calcolo preciso dell'ora poiché i suoi risultati sono soggetti a regolazioni automatiche da parte dell'utente o del sistema operativo. Usa sempre get_ticks_usec() o get_ticks_msec() per un calcolo preciso dell'ora, poiché è garantito che siano monotoni (cioè non diminuiscano mai).

Metodi

Dictionary

get_date_dict_from_system(utc: bool = false) const

Dictionary

get_date_dict_from_unix_time(unix_time_val: int) const

String

get_date_string_from_system(utc: bool = false) const

String

get_date_string_from_unix_time(unix_time_val: int) const

Dictionary

get_datetime_dict_from_datetime_string(datetime: String, weekday: bool) const

Dictionary

get_datetime_dict_from_system(utc: bool = false) const

Dictionary

get_datetime_dict_from_unix_time(unix_time_val: int) const

String

get_datetime_string_from_datetime_dict(datetime: Dictionary, use_space: bool) const

String

get_datetime_string_from_system(utc: bool = false, use_space: bool = false) const

String

get_datetime_string_from_unix_time(unix_time_val: int, use_space: bool = false) const

String

get_offset_string_from_offset_minutes(offset_minutes: int) const

int

get_ticks_msec() const

int

get_ticks_usec() const

Dictionary

get_time_dict_from_system(utc: bool = false) const

Dictionary

get_time_dict_from_unix_time(unix_time_val: int) const

String

get_time_string_from_system(utc: bool = false) const

String

get_time_string_from_unix_time(unix_time_val: int) const

Dictionary

get_time_zone_from_system() const

int

get_unix_time_from_datetime_dict(datetime: Dictionary) const

int

get_unix_time_from_datetime_string(datetime: String) const

float

get_unix_time_from_system() const


Enumerazioni

enum Month: 🔗

Month MONTH_JANUARY = 1

Il mese di gennaio, rappresentato numericamente come 01.

Month MONTH_FEBRUARY = 2

Il mese di febbraio, rappresentato numericamente come 02.

Month MONTH_MARCH = 3

Il mese di marzo, rappresentato numericamente come 03.

Month MONTH_APRIL = 4

Il mese di aprile, rappresentato numericamente come 04.

Month MONTH_MAY = 5

Il mese di maggio, rappresentato numericamente come 05.

Month MONTH_JUNE = 6

Il mese di giugno, rappresentato numericamente come 06.

Month MONTH_JULY = 7

Il mese di luglio, rappresentato numericamente come 07.

Month MONTH_AUGUST = 8

Il mese di agosto, rappresentato numericamente come 08.

Month MONTH_SEPTEMBER = 9

Il mese di settembre, rappresentato numericamente come 09.

Month MONTH_OCTOBER = 10

Il mese di ottobre, rappresentato numericamente come 10.

Month MONTH_NOVEMBER = 11

Il mese di novembre, rappresentato numericamente come 11.

Month MONTH_DECEMBER = 12

Il mese di dicembre, rappresentato numericamente come 12.


enum Weekday: 🔗

Weekday WEEKDAY_SUNDAY = 0

Il giorno della settimana, domenica, rappresentato numericamente come 0.

Weekday WEEKDAY_MONDAY = 1

Il giorno della settimana, lunedì, rappresentato numericamente come 1.

Weekday WEEKDAY_TUESDAY = 2

Il giorno della settimana, martedì, rappresentato numericamente come 2.

Weekday WEEKDAY_WEDNESDAY = 3

Il giorno della settimana, mercoledì, rappresentato numericamente come 3.

Weekday WEEKDAY_THURSDAY = 4

Il giorno della settimana, giovedì, rappresentato numericamente come 4.

Weekday WEEKDAY_FRIDAY = 5

Il giorno della settimana, venerdì, rappresentato numericamente come 5.

Weekday WEEKDAY_SATURDAY = 6

Il giorno della settimana, sabato, rappresentato numericamente come 6.


Descrizioni dei metodi

Dictionary get_date_dict_from_system(utc: bool = false) const 🔗

Restituisce la data attuale come dizionario di chiavi: year (anno), month (mese), day (giorno) e weekday (giorno della settimana).

I valori restituiti sono nell'ora locale del sistema quando utc è false, altrimenti sono in UTC.


Dictionary get_date_dict_from_unix_time(unix_time_val: int) const 🔗

Converte il timestamp Unix specificato in un dizionario di chiavi: year (anno), month (mese), day (giorno) e weekday (giorno della settimana).


String get_date_string_from_system(utc: bool = false) const 🔗

Restituisce la data attuale come stringa di data ISO 8601 (AAAA-MM-GG).

I valori restituiti sono nell'ora locale del sistema quando utc è false, altrimenti sono in UTC.


String get_date_string_from_unix_time(unix_time_val: int) const 🔗

Converte il timestamp Unix specificato in una stringa con formato di data ISO 8601 (AAAA-MM-GG).


Dictionary get_datetime_dict_from_datetime_string(datetime: String, weekday: bool) const 🔗

Converte la stringa di data e ora ISO 8601 specificata (AAAA-MM-GGTHH:MM:SS) in un dizionario di chiavi: year, month, day, weekday, hour, minute e second.

Se weekday è false, la voce weekday viene esclusa (il calcolo è relativamente costoso).

Nota: Qualsiasi frazione decimale nella stringa del tempo sarà ignorata silenziosamente.


Dictionary get_datetime_dict_from_system(utc: bool = false) const 🔗

Restituisce la data attuale come dizionario di chiavi: year, month, day, weekday, hour, minute, second e dst (ora legale).


Dictionary get_datetime_dict_from_unix_time(unix_time_val: int) const 🔗

Converte il timestamp Unix specificato in un dizionario di chiavi: year, month, day, weekday, hour, minute, e second.

I valori del dizionario restituito saranno gli stessi di get_datetime_dict_from_system() se il timestamp Unix è l'ora corrente, ad eccezione dell'ora legale, poiché non può essere determinata dall'epoca.


String get_datetime_string_from_datetime_dict(datetime: Dictionary, use_space: bool) const 🔗

Converte il dizionario di chiavi specificato in una stringa di data e ora ISO 8601 (AAAA-MM-GGTHH:MM:SS).

Il dizionario specificato può essere popolato con le seguenti chiavi: year, month, day, hour, minute, e second. Tutte le altre voci (incluso dst) sono ignorate.

Se il dizionario è vuoto, viene restituito 0. Se alcune chiavi sono omesse, sono impostate sui valori predefiniti equivalenti per il timestamp dell'epoca Unix 0 (1970-01-01 alle 00:00:00).

Se use_space è true, i bit di data e ora sono separati da uno spazio vuoto anziché dalla lettera T.


String get_datetime_string_from_system(utc: bool = false, use_space: bool = false) const 🔗

Restituisce la data e l'ora attuale come stringa di data e ora ISO 8601 (AAAA-MM-GGTHH:MM:SS).

I valori restituiti sono nell'ora locale del sistema quando utc è false, altrimenti sono in UTC.

Se use_space è true, i bit di data e ora sono separati da uno spazio vuoto anziché dalla lettera T.


String get_datetime_string_from_unix_time(unix_time_val: int, use_space: bool = false) const 🔗

Converte il timestamp Unix specificato in una stringa data e ora ISO 8601 (AAAA-MM-GGTHH:MM:SS).

Se use_space è true, i bit di data e ora sono separati da uno spazio vuoto anziché dalla lettera T.


String get_offset_string_from_offset_minutes(offset_minutes: int) const 🔗

Converte l'offset di fuso orario specificato in minuti in una stringa di offset di fuso orario. Ad esempio, -480 restituisce "-08:00", 345 restituisce "+05:45" e 0 restituisce "+00:00".


int get_ticks_msec() const 🔗

Restituisce la quantità di tempo trascorso in millisecondi dall'avvio del motore.

Sarà sempre positivo o 0 e utilizzerà un valore a 64 bit (sarà ripristinato dopo circa 500 milioni di anni).


int get_ticks_usec() const 🔗

Restituisce la quantità di tempo trascorso in microsecondi dall'avvio del motore.

Sarà sempre positivo o 0 e utilizzerà un valore a 64 bit (sarà ripristinato dopo circa mezzo milione di anni).


Dictionary get_time_dict_from_system(utc: bool = false) const 🔗

Restituisce l'ora attuale come dizionario di chiavi: hour (ore), minute (minuti), e second (secondi).

I valori restituiti sono nell'ora locale del sistema quando utc è false, altrimenti sono in UTC.


Dictionary get_time_dict_from_unix_time(unix_time_val: int) const 🔗

Converte l'ora specificata in un dizionario di chiavi: hour, minute e second.


String get_time_string_from_system(utc: bool = false) const 🔗

Restituisce l'ora attuale come stringa di ora ISO 8601 (HH:MM:SS).

I valori restituiti sono nell'ora locale del sistema quando utc è false, altrimenti sono in UTC.


String get_time_string_from_unix_time(unix_time_val: int) const 🔗

Converte il timestamp Unix specificato in una stringa di formato d'ora ISO 8601 (HH:MM:SS).


Dictionary get_time_zone_from_system() const 🔗

Restituisce il fuso orario attuale come dizionario di chiavi: bias e name.

  • bias è l'offset da UTC in minuti, poiché non tutti i fusi orari sono multipli di un'ora da UTC.

  • name è il nome localizzato del fuso orario, in base alle impostazioni locali del sistema operativo dell'utente attuale.


int get_unix_time_from_datetime_dict(datetime: Dictionary) const 🔗

Converte un dizionario di valori di tempo in un timestamp Unix.

Il dizionario specificato può essere popolato con le seguenti chiavi: year, month, day, hour, minute e second. Tutte le altre voci (incluso dst) sono ignorate.

Se il dizionario è vuoto, viene restituito 0. Se alcune chiavi sono omesse, sono impostate sui valori predefiniti equivalenti per il timestamp Unix epoch 0 (1970-01-01 alle 00:00:00).

Puoi passare il risultato da get_datetime_dict_from_unix_time() direttamente in questa funzione e ottenere lo stesso di quanto inserito.

Nota: I timestamp Unix sono spesso in UTC. Questo metodo non esegue alcuna conversione di fuso orario, quindi il timestamp sarà nello stesso fuso orario del dizionario di data e ora specificato.


int get_unix_time_from_datetime_string(datetime: String) const 🔗

Converte la stringa data e/o ora ISO 8601 specificata in un timestamp Unix. La stringa può contenere solo una data, solo un'ora o entrambe.

Nota: I timestamp Unix sono spesso in UTC. Questo metodo non esegue alcuna conversione di fuso orario, quindi il timestamp sarà nello stesso fuso orario della stringa data/ora specificata.

Nota: Qualsiasi frazione decimale nella stringa di ora sarà ignorata silenziosamente.


float get_unix_time_from_system() const 🔗

Restituisce il timestamp Unix attuale in secondi in base all'ora di sistema in UTC. Questo metodo è implementato dal sistema operativo e restituisce sempre l'ora in UTC. Il timestamp Unix è il numero di secondi trascorsi dal 1970-01-01 alle 00:00:00, l'epoca Unix.

Nota: A differenza di altri metodi che utilizzano timestamp interi, questo metodo restituisce il timestamp come float per una precisione al di sotto di un secondo.