Minecraft(我的世界)中文论坛

标题: [[/]][PCD]Skript帮助文档全翻译

作者: cc7w    时间: 2016-8-14 19:32
标题: [[/]][PCD]Skript帮助文档全翻译
本帖最后由 cc7w 于 2020-3-1 12:30 编辑
来自群组: PCD

Skript 官方帮助文档

-=-=-=翻译进度=-=-=-
完成

-=-=-=原文地址=-=-=-

点我传送

-=-=-=翻译地址=-=-=-

点我传送

-=-=-=内容=-=-=-
介绍
教程
帮助文件




[groupid=1330]PluginsCDTribe[/groupid]
作者: feiyifan999    时间: 2016-8-14 19:43
支持一下,Skript发展潜力很大
作者: 幻境雲達達    时间: 2016-8-14 19:43
为什么我没见过你
作者: cc7w    时间: 2016-8-14 19:46
XJue_DaDa 发表于 2016-8-14 19:43
为什么我没见过你

因为我是新来的:D
作者: cc7w    时间: 2016-8-14 19:56
feiyifan999 发表于 2016-8-14 19:43
支持一下,Skript发展潜力很大

所以翻译骗精华
作者: feiyifan999    时间: 2016-8-14 20:00
1345979462 发表于 2016-8-14 19:56
所以翻译骗精华

所以说你会Skript么- -这是个问题
作者: 幻境雲達達    时间: 2016-8-14 20:47
1345979462 发表于 2016-8-14 19:46
因为我是新来的:D

喔。欢迎大佬
作者: cc7w    时间: 2016-8-15 08:29
feiyifan999 发表于 2016-8-14 20:00
所以说你会Skript么- -这是个问题

看我签名档  我发过x件的。
作者: cc7w    时间: 2016-8-15 10:16
本帖最后由 1345979462 于 2016-8-20 14:15 编辑

介绍
Skript是一个流行的服务器插件。

它允许服务器管理员在不写任何Java语言的情况下简单的管理Minecraft。

这是用触发器、条件和效果三个部分做到的。

当触发器触发,所有条件均满足,效果就会被触发。

Skript的基础想法是——自定义 —— 每个服务器都能在没有自定义插件的情况下表现不同。

这比你自己钻研插件和找人写插件快的多。

同时你也不需要那么多小插件了,这一个插件就够了。

你可以在[[https://github.com/bensku/Skript/releases 这里]] 原文给的是DropBox地址无法访问,这里是作者的GitHub地址 下载最新版本的Skript

已经提及了,Skript的触发器提供了这个插件的基本功能。

触发器很普通,并由一些条件和效果组成,就像这个简单的掉落修复脚本:




on break of glass:
    drop glass
译者注:
当打破玻璃的时候:
    掉落玻璃



Skript也能用来做自定义命令。

这些基本的触发器已被改成了执行特定的命令。

下面的简单触发器允许玩家在手持物品输入/id时显示它的ID。



command /id:
    description: Find the ID of the item you're holding
    trigger:
        message "You're holding a %type of tool% whose ID is %id of tool%."
译者注:
当使用/id时:
    描述: 获取你当前持有物的ID
    触发器:
        给玩家发送消息 "你现在正在拿着一个%type of tool%[工具类型] ,它的ID是 %id of tool%[工具ID]"



Skript同时也有直接从聊天栏执行效果的选项,输出一个可配置的符号打头(!是默认的)的聊天信息。

这经常被指令使用。例如,
!repair tool
,将会修复你的工具。因为这些指令非常强大且用的地方很多。

只有在玩家拥有
skript.effectcommands
权限是才能使用(OP默认不拥有!)

Skript的语法不仅限制于上面的简单指令,还包括一些循环,包含等语法。

下面的脚本是一个很简单的从附近箱子抽调燃料的例子——

on burn of fuel:
    fuel slot of the block is empty
    loop blocks in radius 1:
        loop-block is chest
        loop items of type fuel:
            loop-block contains loop-item
            remove loop-item from loop-block
            set fuel of the event-block to loop-item
            stop trigger
译者注:
当燃料燃烧时:
    熔炉的燃料槽空了
    在周围半径一格寻找方块:
        寻找箱子
        寻找物品是燃料类型
            箱子包含燃料
            从箱子中移除燃料
            把燃料移到燃料槽
            停止触发器

更多信息请前往[[https://dev.bukkit.org/bukkit-plugins/skript/ BukkitDev]] 译者注:作者的BukkitDev已经停止更新,请前往GitHub,在文章开始处 ,然后也请阅读下面的辅导材料和帮助文档。

辅导材料是新手的必读品。它解释了如何写一个脚本。这里是[[https://dev.bukkit.org/bukkit-pl ... s/general-tutorial/ 另一段辅导材料]] 译者注: 两段都翻译了

帮助文档是所有触发器的集合,这里面有所有关于脚本的东西。


[[http://dev.bukkit.org/bukkit-plugins/skript/ 链接到BukkitDev]]

[[http://dev.bukkit.org/bukkit-plugins/skript/forum/ 链接到作者论坛]]

作者: cc7w    时间: 2016-8-15 19:48
本帖最后由 1345979462 于 2016-8-20 14:37 编辑

教程
作者在自带页面给出的教程

BukkitDev给出的教程材料

作者: cc7w    时间: 2016-8-18 14:37
本帖最后由 1345979462 于 2016-8-20 14:29 编辑

WIKI帮助文档
总帮助

高级语法

条件

循环


事件
下面的列表内容是你可以开始一个触发器的事件。
每个触发器只能有一个事件,你不能在给出的语法外自行创造事件。
请注意每个事件前面的on都是完全可选的,不过我加上会感觉更好:D
请注意如果事件只有一种触发方式的话就没有例子。

条件

效果


作者: cc7w    时间: 2016-8-19 11:42
本帖最后由 1345979462 于 2016-8-20 14:33 编辑

表达式
表达式是表示某个对象的语法元素,如一个玩家 一个数字 多个物体 服务器世界 或 列表中的方块。
表达式在Skript脚本中可以被用在任何地方如 set {var} to <value> 或 teleport <entity expression> to <location expression>.
值的另一个可能是使用统计值,如 ‘6’ 和 ‘a pickaxe and a shovel’.
这里有两种基础的表达式:
简单的表达式,其中只有一些简短的单词 ,如‘player’, ‘world’, or ‘last spawned entity’, 并且经常的依赖发生的事件, 它们的值会随着事件的改变而改变。
如player表达式会表达为当前触发事件的玩家。
属性表达式,从另一个表达式中获取值。如 data value of <item>, altitude of <location>,  <entity>'s world.
但也有一些例外, e.g. distance between <location> and <location> or the direction expression.
表达式可以在循环中被使用,来循环执行某些代码,格式为
  1. loop <expression>:
复制代码

请前往循环页来获取更多。

循环


命令


作者: cc7w    时间: 2016-8-19 12:06
本帖最后由 1345979462 于 2016-8-20 14:35 编辑

类型

文本

变量


作者: 正义の冷子    时间: 2016-8-20 03:49
辛苦楼主写了这么多,怪不得最近没看到人
作者: 璇葎    时间: 2016-8-25 00:58
没看懂。能写个关于 团队战争 的示范吗
作者: 璇葎    时间: 2016-8-25 12:44
那个登陆给蛋糕怎么换成给rpgitem道具?
作者: cc7w    时间: 2016-8-25 18:57
璇葎 发表于 2016-8-25 12:44
那个登陆给蛋糕怎么换成给rpgitem道具?

On first Join:
    console command "rpgitem XXX give %player%"
作者: SYS_TEM    时间: 2016-8-27 15:50
夭寿了,插件百科屠版翻译版了owo
Skript看起来非常有意思的样子owo
话说你是c7w?
作者: cc7w    时间: 2016-8-27 17:53
SYS_TEM 发表于 2016-8-27 15:50
夭寿了,插件百科屠版翻译版了owo
Skript看起来非常有意思的样子owo
话说你是c7w? ...

正是在下
作者: az860325    时间: 2016-9-2 03:48
这个真的是不推不行!
作者: qaz197418i    时间: 2017-7-27 17:41
dalao你好,我想问一下sk可以不可以使用一个命令触发,检测玩家背包中的指定自定义物品(就是添加过lore和改过彩色名字的物品),然后收取物品后再向玩家发送另一个物品或者执行一个命令.跪求dalao帮助!
作者: cc7w    时间: 2017-7-27 18:22
qaz197418i 发表于 2017-7-27 17:41
dalao你好,我想问一下sk可以不可以使用一个命令触发,检测玩家背包中的指定自定义物品(就是添加过lore和改 ...

command /haha <player>:
    permission: this.is.permission
    trigger:
        loop items in arg-1's inventory
        loop-item is a wool
        loop-item's name is "§7名字"
        lore 1 of loop-item is "第一行注释"
        if loop-item exists:
            remove loop-item
            give arg-1 a xxx // console command "xx"
作者: cc7w    时间: 2017-7-27 18:23
qaz197418i 发表于 2017-7-27 17:41
dalao你好,我想问一下sk可以不可以使用一个命令触发,检测玩家背包中的指定自定义物品(就是添加过lore和改 ...

另外以后问问题去联机问答
这里只是翻译wiki
作者: qaz197418i    时间: 2017-7-31 11:41
1345979462 发表于 2017-7-27 18:22
command /haha :
    permission: this.is.permission
    trigger:

谢谢dalao!
作者: 大力水手    时间: 2019-2-2 15:43
一直在学这个插件,中间停下了1年多没弄服务器。

大神看到麻烦教我一下  现实时间凌晨12点自动执行一条指令 应该怎么写, 谢谢~!
作者: 大力水手    时间: 2019-2-2 19:09
推荐用其他插件代替实现
  
@1345979462

您能推荐推荐么
作者: 大力水手    时间: 2019-2-24 21:51
请问如何区分矿物是自然生成还是玩家自己放置的?
作者: 1005057343    时间: 2019-6-16 13:33
弹幕怎么弄呢?全服弹幕 后台写好的一个指令就能全部发送的那种