Skript 2.15.3 中文开发手册
·
Skript 2.15.3 中文开发手册
第一章:Skript简介
什么是 Skript
Skript 是一个运行在 Bukkit / Spigot / Paper 服务端上的脚本插件。
它允许服务器管理员使用接近自然语言的语法开发功能,而无需编写 Java 插件。
on join:
send "欢迎来到服务器!" to player
第二章:脚本结构
options:
prefix: &6[服务器]
variables:
{join-count} = 0
on join:
add 1 to {join-count}
send "{@prefix} 欢迎来到服务器"
第三章:变量系统
普通变量
set {money} to 100
玩家变量
set {money.%player%} to 100
UUID变量
set {money.%player's uuid%} to 100
列表变量
add player to {online::*}
第四章:事件系统
on join:
send "欢迎"
on quit:
broadcast "%player% 离开了服务器"
on death:
broadcast "%victim% 死亡了"
第五章:命令系统
command /hello:
trigger:
send "Hello"
权限命令
command /admin:
permission: admin.use
permission message: 无权限
trigger:
send "管理员面板"
第六章:函数系统
function hello():
broadcast "Hello World"
返回值
function getMoney(p: player) :: number:
return {money.%{_p}'s uuid%}
第七章 GUI 菜单开发
创建基础菜单
command /menu:
trigger:
open chest inventory with 3 rows named "&6主菜单" to player
添加物品
set slot 13 of player's current inventory to diamond named "&b充值中心"
点击事件
on inventory click:
if name of event-inventory is "&6主菜单":
cancel event
第八章 Inventory GUI 实战
商店菜单
command /shop:
trigger:
open chest inventory with 6 rows named "&a服务器商店" to player
set slot 10 of player's current inventory to diamond
购买逻辑
on inventory click:
if name of event-inventory is "&a服务器商店":
cancel event
if clicked slot is 10:
remove 100 from {money.%player's uuid%}
give diamond to player
第九章 MySQL 数据库
数据库变量
variables:
{money::*}
推荐使用插件:SkBee、skript-db。
保存玩家数据
on quit:
set {money.%player's uuid%} to balance of player
第十章 BossBar 开发
创建BossBar
send bossbar "&a欢迎来到服务器" with progress 100 to player
删除BossBar
remove all bossbars from player
第十一章 Scoreboard 开发
基础记分板
set name of sidebar of player to "&6服务器"
set score "&a金币" in sidebar of player to 100
第十二章 NBT 开发(SkBee)
设置NBT
set nbt tag "pay_item" of player's tool to "true"
判断NBT
if nbt tag "pay_item" of player's tool is "true":
send "这是支付物品"
第十三章 SkBee 开发
JSON消息
send json "{""text"":""点击领取奖励""}" to player
粒子效果
draw sphere of flame at player with radius 2
第十四章 Minecraft支付二维码地图
生成二维码图片
Java后台生成二维码:
BufferedImage image = MatrixToImageWriter.toBufferedImage(matrix);
Skript接收二维码地址
command /pay:
trigger:
send "&a正在生成支付二维码..."
地图展示
推荐由 Java 插件将二维码渲染至 128×128 MapView。
第十五章 大型服务器架构实践
推荐分层:
scripts/
├─ command/
├─ gui/
├─ player/
├─ economy/
├─ pay/
├─ task/
└─ util/
性能优化
避免:
loop all players:
每Tick执行。
推荐:
every 5 seconds:
执行批量任务。
第十六章 PlaceholderAPI 集成
send "%player_name%" to player
自定义占位符:
set {_money} to placeholder "vault_eco_balance" from player
第十七章 实战:签到系统
command /sign:
trigger:
if {sign.%player's uuid%} is today:
send "今天已签到"
stop
set {sign.%player's uuid%} to today
add 100 to {money.%player's uuid%}
第十八章 实战:礼包码系统
command /redeem <text>:
trigger:
if arg-1 is "VIP2026":
give diamond to player
第十九章 实战:服务器公告系统
every 10 minutes:
broadcast "&6欢迎来到服务器"
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐


所有评论(0)