Zmienne: Różnice pomiędzy wersjami
| Linia 53: | Linia 53: | ||
{money::%player%} = 100</pre> | {money::%player%} = 100</pre> | ||
| − | == Specjalnie wyrażenia == | + | ==Specjalnie wyrażenia== |
{| class="wikitable" | {| class="wikitable" | ||
|+ | |+ | ||
| Linia 80: | Linia 80: | ||
|<code>last element of {zmienna::*}</code> | |<code>last element of {zmienna::*}</code> | ||
|Zwróci ostatni element z listy | |Zwróci ostatni element z listy | ||
| + | |} | ||
| + | |||
| + | == Typy zmiennych == | ||
| + | {| class="wikitable" | ||
| + | |+ | ||
| + | !Typ | ||
| + | !Opis | ||
| + | !Przykład | ||
| + | |- | ||
| + | |String / Text | ||
| + | |Jest to tekst | ||
| + | |<code>set {_tekst} to "tekst</code> | ||
| + | |- | ||
| + | |Number | ||
| + | |Określa liczbe zmiennoprzecinkową | ||
| + | |set {_number} to 2.23 | ||
| + | |- | ||
| + | |Integer | ||
| + | |Określa liczbe całkowitą | ||
| + | |set {_integer} to 2 | ||
| + | |- | ||
| + | |Player | ||
| + | |Określa gracza | ||
| + | |set {_player} to "xAxee" parsed as player | ||
| + | |- | ||
| + | |Item | ||
| + | |Określa przedmiot | ||
| + | |set {_item} to diamond | ||
| + | |- | ||
| + | |Inventory | ||
| + | |Określa inventory | ||
| + | |set {_inv} to player's inventory | ||
|} | |} | ||
[[Kategoria: Skript]] | [[Kategoria: Skript]] | ||
Wersja z 20:12, 27 paź 2019
Zmienne są konstrukcjami programistycznymi pozwalającymi na zapis informacji, i jak sama nazwa wskazuje ich wartości mogą być zmienne. W Skripcie wyróżniamy zmienne, które mogą być przypisane danemu obiektowi, zmienne tymczasowe i listy.
| Zmienne | Opis | Przykłady |
|---|---|---|
| {zmienna} | Zmienne zwykłe globalne, które nie są przypisane do niczego | on chat:
if {chat} is false:
cancel event
send "Czat jest wyłączony."
|
| {zmienna.%ekspresja%} | Zmienne zwykłe przypisane obiektowi | on mine of stone:
add 5 to {money.%player%}
|
| {_zmienna} | Zmienne tymczasowe lokalne, czyli takie, które mogą być użyte w jednej sekcji kodu i zostają usuwane po jego zakończeniu | on chat:
set {_t} to message
broadcast "%{_t}%"
|
| {zmienna::%ekspresja%} | Zmienne grupowe, do nich można przypisać kilka obiektów | add "libter" to {staff::*}
add "bvcz" to {staff::*}
add "szifter" to {staff::*}
add "takijakty" to {staff::*}
broadcast "%{staff::*}%"
|
Budowa i zastosowanie
Aby dodać zmienną do tekstu należy wstawić ją między procenty (%) (tak samo się robi z wyrażeniami).
command /money:
trigger:
send "Masz obecnie $%{money::%player%}%"
Zmienne można usuwać za pomocą wyrażenia delete {zmienna::%player%} lub clear {zmienna::%player%}.
Zmienne tymczasowe usuwają się same po wykonaniu zdarzenia, w którym zostały zadeklarowane.
Wszystkie zmienne zostają zapisane w pliku variables.csv wraz z typem zmiennej oraz jej wartością.
W Skripcie można stworzyć oddzielną sekcję variables: w której opcjonalnie można zdefiniować ich domyślną wartość. Przydaje się to przy ustalaniu domyślnych wartości, jeżeli nie zostaną utworzone.
variables:
{vanish::%player%} = false
{money::%player%} = 100
Specjalnie wyrażenia
| Zmienna | Typ zmiennej | Wyrażenie | Opis |
|---|---|---|---|
| Zmienna grupowa | * | size of {zmienna::*}
|
Zwraca ilość elementów w liście |
| Zmienna | String | lenght of {zmienna}
|
Zwraca długość tekstu w zmiennej |
| Zmienna grupowa | * | first element of {zmienna::*}
|
Zwróci pierwszy element w liście |
| Zmienna grupowa | * | last element of {zmienna::*}
|
Zwróci ostatni element z listy |
Typy zmiennych
| Typ | Opis | Przykład |
|---|---|---|
| String / Text | Jest to tekst | set {_tekst} to "tekst
|
| Number | Określa liczbe zmiennoprzecinkową | set {_number} to 2.23 |
| Integer | Określa liczbe całkowitą | set {_integer} to 2 |
| Player | Określa gracza | set {_player} to "xAxee" parsed as player |
| Item | Określa przedmiot | set {_item} to diamond |
| Inventory | Określa inventory | set {_inv} to player's inventory |