# **Custom Wings**

CustomWings 允许玩家在游戏中装备漂亮的粒子翅膀,向他们的朋友炫耀。
CustomWings 带有预设的翅膀,但您可以创建更多。您甚至可以制作动画翅膀!
翅膀可以通过配置文件创建。CustomWings 具有游戏内编辑器 GUI,允许您随时编辑翅膀设置。
截图





命令 & 权限
```
/customwings (wings, cw, w) - 主命令,打开翅膀选择 GUI
权限: customwings.command
每个翅膀的权限: customwings.wing.WINGID
子命令:
setwing {playername} {wing ID} - 为指定的玩家设置一个翅膀
权限: customwings.setwing
editor (edit, e) - 打开翅膀编辑器 GUI
权限: customwings.editor
preview (p) - 摆脱玩家当前装备的翅膀,使其在空中漂浮
权限: customwings.preview
reload (r) - 重新加载 CustomWings
权限: customwings.reload
takeawaywing {playername} {wing ID} - 如果玩家之前购买过翅膀,则从玩家那里移除翅膀
权限: customwings.takeawaywings
```
创建翅膀
您将在下面找到翅膀如何在配置中设置的示例。
CustomWings 标准配置包含更多示例。
```yaml
#-------------------------------------------------#
# CustomWings #
# 示例配置文件 #
#-------------------------------------------------#
# 这是一份翅膀的注释示例配置文件。
# 您想要使用的所有翅膀配置都必须在 'wings' 文件夹中。
# 配置文件的名称是翅膀的 ID。用于权限或 setwing 命令。
# 您可以通过删除 wings 文件夹并重新加载插件来重现此文件和默认翅膀。
# 当您在主配置或翅膀配置中进行更改时,可以使用 customwings reload 命令。
# 此外,您还可以使用游戏内编辑器菜单更改设置。
# 删除翅膀或更改配置文件名称时,您需要重新启动服务器。
# 如果为真,当玩家移动时翅膀将显示,否则玩家开始移动时,翅膀粒子将停止生成。
showWhenMoving: true
# 翅膀可以装备的世界。使用 "all" 表示所有世界。
whitelistedWorlds:
- "all"
# - "world" 默认主世界
# - "world_nether" 默认下界
# - "world_the_end" 默认末地
# 需要 Vault。允许玩家通过菜单购买翅膀。
# 如果未找到 Vault,则会自动禁用。
economy:
# 支付价格的类型。
# "economy" - 默认 Vault 经济。
# "token" - TokenManager.
priceType: "economy"
# 支付的价格。
# -1 = 无法购买; 0 = 免费。
price: 10
# 将在菜单中显示的物品。
menuItem:
#如果为真,翅膀将不会显示在翅膀选择菜单中。(仍然可以使用 /wings setwing 命令装备)
hideInMenu: false
# name: "&5Example Wing" 也在其他使用翅膀名称的地方使用。
material: DIRT
slot: 0
# page: 1 必须小于或等于主配置文件中的页面数。
loreWhenEquipped:
- "&6您已经装备了 &5Example Wing &6"
loreWhenUnequipped:
- "&3您没有装备 &5Example Wing &3"
loreWhenNoPermission:
- "&c您没有 &5Example Wing &c的所有权"
loreWhenCanBuy:
- "&e您可以用 ${PRICE} 购买它"
# 翅膀的设置。
wing:
# 翅膀起始高度,从玩家的脚开始计算。可以是负数
startVertical: -0.1
# 向左或向右偏移翅膀。负数表示向右
startHorizontalOffset: 0
# 玩家距离的起始距离。允许负数。
startDistanceToPlayer: 0.3
# 水平和垂直方向之间的粒子间距。
distanceBetweenParticles: 0.1
# 在翅膀粒子生成之间经过的游戏刻度数。
timer: 2
# 如果为真,翅膀将具有拍打动画。
flapAnimation: true
# 翅膀拍打的速度。(翅膀粒子生成时移动的度数)。
flapSpeed: 4
# 翅膀的起始角度,以度为单位。 0 = 玩家旁边。 90 = 玩家身后。
startOffset: 30
# 翅膀的停止角度,以度为单位。仅用于启用 wingAnimation 时。 90 = 玩家身后。 0 = 玩家旁边。
stopOffset: 70
# 如果为真,只有翅膀的右侧将被生成。对于不能镜像的文本或像素艺术非常有用。它将无法具有拍打动画。
onlyOneSide: false
# 翅膀的网格布局。使用 '-' 表示不生成粒子。任何其他字符都必须在下方有匹配项 'particles'。
# 您只需要制作翅膀的右侧,它将被复制到另一侧
particleLayout:
1: "-,-,-,-,x,x,x,-,-,-"
2: "-,-,-,x,x,x,x,x,-,-"
3: "-,-,x,x,x,x,x,x,x,-"
4: "-,x,x,x,x,x,x,x,x,-"
5: "x,x,x,x,x,x,x,x,x,x"
6: "x,x,x,x,x,x,x,x,x,x"
7: "x,x,x,x,x,x,x,x,x,x"
8: "x,x,x,x,x,x,x,x,x,x"
9: "-,-,x,x,x,x,x,x,x,x"
10: "-,-,-,x,x,x,x,x,x,x"
11: "-,-,-,x,x,x,x,x,x,x"
12: "-,-,-,-,x,x,x,x,x,x"
13: "-,-,-,-,x,x,x,x,x,x"
14: "-,-,-,-,-,x,x,x,x,-"
15: "-,-,-,-,-,x,x,x,x,-"
16: "-,-,-,-,-,-,x,x,x,-"
17: "-,-,-,-,-,-,x,x,x,-"
18: "-,-,-,-,-,-,-,x,x,-"
19: "-,-,-,-,-,-,-,-,x,-"
# 可以使用在 particleLayout 中用作字符的不同粒子。
particles:
# 用作 particleLayout 中字符的粒子的 ID。
x:
# 您想要使用的粒子的名称。您可以在此处找到所有 Minecraft 粒子的信息: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Particle.html。
# 注意,并非所有粒子都可以在您的 Minecraft 版本中可用。如果给出了无效的粒子,将使用 Barrier 粒子。
particle: "CRIT_MAGIC"
# 诸如 FIREWORKS_SPARK 或 FLAME 之类的粒子可以具有方向性移动设置。
# "distance" 是粒子在其原始位置的水平距离,朝着角度的方向移动
# "height" 是粒子在其原始位置的垂直距离
# "angle" 是粒子飞向的角度。 0 与翅膀平行,-90 在翅膀后面。
# "speed" 是粒子的速度。
# 注意,每种类型的粒子只会 '存活' 一段时间。 这无法更改。
# 因此,您需要平衡距离、高度和速度,以使粒子到达您想要的位置。
distance: 0
height: 0
angle: 0
speed: 0
# 红石、Spell_mob 和 Spell_mob_ambient 可以具有颜色值。这将作为 0xRRGGBB 格式编写的 HEX 格式。 或作为 RGB 整数。
color: 0xFFFFFF
# Note 粒子也可以具有颜色。但这有点不同。 Minecraft 有 24 个音符的颜色值。
# 因此您可以在此处输入 1-24 之间的值。
noteColor: 6
# ITEM_CRACK、BLOCK_CRACK、BLOCK_DUST 和 FALLING_DUST 需要材质才能正确工作。
blockType: DIRT
```
NoahOrtega 创建了一个程序将图像转换为像素,这些像素可用于创建 CustomWings 的翅膀。CustomWings 不与此程序关联。 用户选择他们的像素艺术 png 并将该程序转换为格式为 customwings .yml 翅膀文件规范的文本。
该程序可以在此处找到: [https://github.com/NoahOrtega/PixToText](https://github.com/NoahOrtega/PixToText)
## **联系方式**
[https://discord.gg/G8nG65S](https://discord.gg/G8nG65S)