Minecraft Skript – 2. 大致理解变量和%%

在之前的文章中,提到了一个名为%player%的东西。

 

本次。

%で囲われたplayerとは何なのか

%で囲うと何ができるのか

{_n}や{list::*}といった変数とはどういう物なのか

我将对此进行解释。

这部分可能很难解释,可能不容易理解。
如果您能多少理解“这就是这样的东西”的话,那就可以了。

玩家和%是什么关系?

这个玩家是Skript中称为”Expression”的一种物体。翻译过来就是”表达式”。
这个表达式在事件发生时或其他情况下会被设置值。

if player's gamemode is survival:
    send "あなたはサバイバルモードです。" to player

把这个用%括起来,您可以显示包含在此player中的值。
我想主要在发送消息的send中使用它。

send "あなたのゲームモードは%player's gamemode%です。" to player

变量是指一个能够存储数据并在程序中被引用的名称。

这个表达式中还包含了变量。
…虽然说了也白说,因为变量的解释还没有,你不会明白的。

变量是用来存储值的东西,类似于{ }的东西。有几种不同类型的变量。

# 変数名はabcとしています。
変数          -> {abc}
一時変数      -> {_abc}
リスト変数     -> {abc::*}
一時リスト変数 -> {_abc::*}

变量和列表变量 – {abc},{abc::*}

这是一个可以在服务器的任何位置使用的变量。
变量只能包含一个值。
然而,列表变量可以容纳多个值。
也就是说,变量只能包含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保存为{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生活!

广告
将在 10 秒后关闭
bannerAds