前回の記事で、%player%
というものが出てきました。
今回は、
-
%
で囲われたplayer
とは何なのか -
%
で囲うと何ができるのか -
{_n}
や{list::*}
といった変数とはどういう物なのか
について解説します。
この部分は説明が難しく、わかりにくいかもしれません。
なんとなく「そういうものなんだな」と理解して頂ければokです。
player
と%
って何なの?
この、player
はSkriptの Expression と呼ばれる物の一つです。
翻訳すると、 表現 になります。
このExpressionは、イベント発生時等に値が設定されます。
if player's gamemode is survival:
send "あなたはサバイバルモードです。" to player
これを%
で囲むとどうなるかというと、このplayer
に含まれた値を表示できます。
主にメッセージを送信するsend
で使う事が多いと思います。
send "あなたのゲームモードは%player's gamemode%です。" to player
変数とは
このExpressionには変数というものも含まれます。
...といっても、変数の説明がまだなので分からないでしょう。
変数とは、値を{ }
のようなもので保存するものです。
いくつか種類があります。
# 変数名はabcとしています。
変数 -> {abc}
一時変数 -> {_abc}
リスト変数 -> {abc::*}
一時リスト変数 -> {_abc::*}
変数とリスト変数 - {abc}, {abc::*}
サーバー内の全ての場所で使える変数です。
変数には1つの値しか入りません。
しかし、リスト変数は複数の値を入れられます。
つまり、
変数はAとBとCのどれかしか入りませんが、リスト変数であれば全て入れられるわけです。
例文 (abc.sk)
# 例文です
set {abc} to A #{abc}にAをセット
set {abc::*} to A, B, and C #{abc::*}にAとBとCをセット
add A to {abc::*} #Aを{abc::*}に追加
remove A from {abc::*} #Aを{abc::*}から削除
delete {abc} #{abc}を削除
delete {abc::} #{abc::*}を削除
一時変数と一時リスト変数 - {_abc}, {_abc::*}
イベント内でのみで使える変数です。
変数の最初に_
が付き、処理が終わった後に変数のデータが消去されます。
それ以外は変数とリスト変数と同じです。
例文
on join:
set {ip.%player%} to player's ip
参加時にプレイヤーのIP(player's ip)を{ip.%player%}
に保存します。
変数名を見ると、%player%
がありますね...
つまり、%player%
にはプレイヤー名が代入されます。
MCIDがringo360xd
なら、{ip.ringo360xd}
となります。
そして、{ip.ringo360xd}
にはringo360xdのIPが代入されます。
(192.168.1.100など)
command /saveloc:
trigger:
set {loc.%player%} to player's location
command /loadloc:
trigger:
teleport player to {loc.%player%}
これは、/saveloc
で{loc.%player%}
という変数にプレイヤーの位置を保存し、
/loadloc
で保存した変数の位置にテレポートするというものです。
コマンドの詳しい作り方は、また今度解説します。
今回はここまで!
良いSkriptライフを!