1 200
收录服务器
1 600
注册
150 010
玩家
ChatColor+
此插件允许您的用户在聊天中更改颜色的权限!
作 者 Chemmic
发布时间 2014年10月22日
支持核心 Spigot
原生版本
支持版本 1.11
点此下载

ChatColor+ Premium 是一款 Minecraft 插件,允许玩家通过图形界面自定义聊天颜色、名称颜色、标签颜色、告示牌颜色和字体。它支持颜色混合、MySQL 数据存储,并提供多种命令和权限控制。最初的 ChatColor+ 插件是为 Minecraft 1.16 之前设计的,现在这个旧的 Premium 版本可以免费使用。该版本已经过测试,最高可在 Minecraft 1.11 上运行,并提供比以前的 ChatColor+ 更多的功能,但此版本不支持颜色创建和十六进制代码,它们仅在新的 ChatColor+ Premium 版本中提供。

🎉

ChatColor+ Premium

🤔 为什么这个插件是付费的,而有一个免费版本?

ChatColor+ 是一个已经存在超过 8 年的项目,拥有超过 200,000 次下载。它是我最早的插件之一,因此代码非常混乱。问题是,当时我对编码一无所知,我发布了一个只包含 /ChatColor 命令的版本。从那时起,许多功能被请求,这使得代码更加混乱,因为我的计划和结构不包括这些。多年来,我唯一的工作动力是 Spigot 社区和一个来自 @NullBlox 的捐款。

然而,这些天,我不再沉迷于 Minecraft,免费版本有很多错误和功能请求。多年来,它变得非常混乱,几乎不可能修复所有错误。所以我决定重新编码它并修复它们,同时添加新功能。ChatColor+ 自我发布以来一直是免费的,我不想改变这一点,所以我决定保留它,而是发布这个新的、更新的版本。这样我可以通过我的工作赚取一些东西,而那些无法为此花钱的人仍然可以使用旧版本。它可能不再工作,并且将不再被支持/更新。

✨ 主要功能

  • 通过图形界面选择聊天颜色、名称颜色、标签颜色、告示牌颜色和字体。
  • 右键单击颜色可以在图形界面中与其他颜色混合。
  • 支持 MySQL 数据库,允许玩家在多个服务器上保持其彩色名称。
  • 可以创建自定义 Unicode 字体,并让玩家选择他们喜欢的字体。
  • 每个功能都有对应的命令,用于设置/移除/获取玩家的颜色/字体。
  • 图形界面中的每个项目和消息都可以在配置文件中编辑。

🌟 与免费版本的差异

  • 可用的 MySQL 支持
  • 字体
  • /<color> setColorString <Player> 命令
  • /<color> help 命令
  • 多次混合颜色
  • 更少的错误/更快的代码
  • 告示牌颜色
  • 更好的 API
  • 与更多聊天插件兼容
  • 更多基于权限的控制
  • 支持 Minecraft 1.12 及以上版本
  • 支持 PlaceholderAPI
  • 重载命令

🎮 使用方法

玩家可以使用 /chatcolor/font/namecolor/tabcolor/signcolor 命令来打开对应的颜色或字体选择界面。在图形界面中左键单击所需的颜色或字体即可选择,右键单击颜色可以混合颜色(如果他们有相应的权限)。

🔌 PlaceholderAPI 支持

  • ChatColorPlusPremium_chat_color - 获取玩家的聊天颜色
  • ChatColorPlusPremium_chat_color_name - 获取玩家颜色的名称
  • 可以将 "chat" 替换为 "sign"、"name"、"tab" 来获取对应的颜色信息。
  • 对于字体:ChatColorPlusPremium_font

⚙️ 命令

  • /<color> - 打开颜色选择界面
  • /<color> help - 显示所有命令的帮助信息
  • /<color> set <ColorName> <Player> - 更改玩家的颜色
  • /<color> get <Player> - 获取玩家当前的颜色
  • /<color> remove <Player> - 移除玩家当前的颜色
  • /chatcolorplus reload - 重载插件
  • /<color> setColorString <ColorString> <Player> - 将玩家的颜色设置为指定的字符串(例如:/ChatColor setColorString &4&l Chemmic

注意:<color> 可以替换为 ChatColor, SignColor, NameColor, TabColorfont (font 没有 setColorString 命令)。 <ColorName> 可以替换为:Black, dark_blue, dark_green, dark_aqua, dark_red, dark_purple, gold, gray, dark_gray, blue, green, aqua, red, light_purple, yellow, white, magic, bold, strikethrough, underlineitalic

🔑 权限

  • <color>.use - 允许用户打开颜色选择界面
  • <color>.op - 允许用户使用其他颜色命令
  • <color>.MixColor.multiply.<ColorName> - 允许用户多次混合颜色
  • <color>.<ColorName> - 将指定的颜色添加到颜色选择界面
  • <color>.rainbow - 将彩虹色添加到颜色选择界面
  • MixColor.use - 允许用户混合颜色
  • MixColor.multiply.use - 允许用户多次混合颜色
  • chatcolorplus.reload - 允许用户重载插件
  • <color>.groups.<GroupName> - 为指定组的用户设置默认颜色。可以在每个 ColorConfig.yml 文件中创建默认组。
  • <Color>.all - 添加所有颜色到玩家的物品栏。
  • <Color>.MixColor.multiply.all - 允许用户与所有颜色混合多次。

📝 配置文件

插件会生成 8 个配置文件:ChatConfig, FontConfig, NameConfig, SignConfigTabConfig。它们包含相同的内容,但可以针对不同的颜色进行个性化设置。

TabConfig 示例


size: 27 # 更改库存大小,必须是 x*9
title: '&6选择你的标签颜色:'
mix-title: '&6混合你的标签颜色:'
mix-size: 27
mix-noperm: '&c你没有权限用另一种颜色混合你的标签颜色!'
TabColor:
  default: '&f'
Reset:
  Name: '&4点击重置你的聊天颜色!'
  Lore:
  - '&6将你的聊天颜色改回正常!'
  ItemID: 20
  InventoryPosition: 18
  mix-InventoryPosition: 18
Message:
  color:
    changed: '%prefix%&e你的 &6标签颜色 &e已更改为%color-code% %color-name%&e!'
    reset: '%prefix%&e你已经 &c重置 &e了你的 &6标签颜色 &e!'
  color-mixed:
    changed: '%prefix%&e你的 &6标签颜色 &e已经被 %mixed-code%混合&e!'
ShowFirstColorItem: true
Name:
  FirstColor: '&e当前颜色: %ColorName%'
NormalColors:
  BLACK:
    Name: '&0黑色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:15'
  DARK_BLUE:
    Name: '&1深蓝色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:11'
  DARK_GREEN:
    Name: '&2深绿色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:13'
  DARK_AQUA:
    Name: '&3深海蓝'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:9'
  DARK_RED:
    Name: '&4深红色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '171:14'
  DARK_PURPLE:
    Name: '&5深紫色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:10'
  GOLD:
    Name: '&6金色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '171:4'
  GRAY:
    Name: '&7灰色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:8'
  DARK_GRAY:
    Name: '&8深灰色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:7'
  BLUE:
    Name: '&9蓝色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:3'
  GREEN:
    Name: '&a绿色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:5'
  AQUA:
    Name: '&b海蓝'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '171:9'
  RED:
    Name: '&c红色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '171:14'
  LIGHT_PURPLE:
    Name: '&d淡紫色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:2'
  YELLOW:
    Name: '&e黄色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:4'
  WHITE:
    Name: '&f白色'
    Lore:
    - '&6左键单击 &e以选择此颜色!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '35:0'
SpecialColors:
  MAGIC:
    Name: '&k魔法'
    Lore:
    - '&6左键单击 &e以将你的第一种颜色与魔法混合&6!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '171:1'
  BOLD:
    Name: '&l粗体'
    Lore:
    - '&6左键单击 &e以将你的第一种颜色与粗体混合&6!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '171:2'
  STRIKETHROUGH:
    Name: '&m删除线'
    Lore:
    - '&6左键单击 &e以将你的第一种颜色与删除线混合&6!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '171:3'
  UNDERLINE:
    Name: '&n下划线'
    Lore:
    - '&6左键单击 &e以将你的第一种颜色与下划线混合&6!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '171:4'
  ITALIC:
    Name: '&o斜体'
    Lore:
    - '&6左键单击 &e以将你的第一种颜色与斜体混合&6!'
    - '&6右键单击 &e以将此颜色与其他颜色混合'
    ItemID: '171:5'

🌈 彩虹效果 (v1.2 新增)

现在所有颜色类型(名称颜色、标签颜色、告示牌颜色、聊天颜色)都支持彩虹效果。

添加到颜色界面的权限:<Color>.rainbow

配置文件的扩展:

如果玩家选择了彩虹色,它会将所选颜色更改为彩虹色,但仅使用列表中的颜色。例如,如果删除除 &0&1 之外的所有颜色,它会使它与 &0&1 混合成彩虹色。

如果 random 设置为 false

如果 random 设置为 true

random 设置为 false 时,它每次都会选择相同的颜色序列。如果设置为 true,它每次都会从颜色列表中选择完全随机的颜色。

如果 MySQL 未激活,ColorConfig 文件只会保存玩家的所有数据。如果您不 100% 清楚自己在做什么,则不应触摸它。

generalconfig 文件中,您可以编辑诸如前缀和消息之类的内容,如果您没有使用命令的权限。

🖋️ 字体

字体是 Premium 资源的新功能。您可以在 FontConfig 文件中创建字体,并让玩家从中选择。您还可以设置用户需要的自定义权限,以便它会显示在字体图形界面中。

FontConfig 示例


title: '&6选择你的字体:'
size: 27
Message:
  font:
    reset: '&e%prefix% 你已经将你的字体设置回正常!'
    changed: '&e%prefix% 你已经将你的字体更改为 %font-name%'
DefaultFont: NormalFont
Reset:
  Name: '&4点击重置你的字体!'
  Lore:
  - '&6将你的字体改回正常!'
  ItemID: 20
  InventoryPosition: 18
Fonts:
  ExampleFont:
    letter-small: ⓐⓑⓒⓓⓔⓕⓖⓗⓘⓙⓚⓛⓜⓝⓞⓟⓠⓡⓢⓣⓤⓥⓦⓧⓨⓩ
    letter-big: ⒶⒷⒸⒹⒺⒻⒼⒽⒾⒿⓀⓁⓂⓃⓄⓅⓆⓇⓈⓉⓊⓋⓌⓍⓎⓏ
    Permission: ExampleFont.use
    ItemID: '1'
    ItemTitle: '&e点击选择示例字体!'
  NormalFont:
    letter-small: abcdefghijklmnopqrstuvwxyz
    letter-big: ABCDEFGHIJKLMNOPQRSTUVWXYZ
    Permission: NormalFont.use
    ItemID: 276
    ItemTitle: '&e点击选择正常字体!'

🗄️ MySQL 支持

如果您想将数据保存在 MySQL 数据库中而不是文件中,只需将 MySqlConfig 中的 ACTIVE 更改为 true,并将数据库的信息放入文件中。如果插件可以连接到数据库,它将被使用。否则,插件将继续将数据保存在文件中。

✅ 未来计划

  • 彩虹支持 (已完成!)
  • Essentials 昵称支持 (已完成!)
  • PlaceholderAPI 支持 (已完成!)

👨‍💻 API 使用

要使用 API,请将文件添加到您的项目中。


您可以使用的API:

ChatColorPlus.setColor(ColorEnum, Player, String colorCode, String colorName);

要设置玩家的颜色,例如,使用 ColorEnum.CHATCOLOR 更改用户的聊天颜色。
颜色代码例如 &6 表示深红色,颜色名称在这种情况下为 dark_red。如果您要混合一种颜色,例如 &6&l,则使用此作为颜色代码,并将颜色名称作为您创建的任何名称。提示:如果没有特定名称,请在此处放置相同的颜色代码。

ChatColorPlus.getColor(ColorEnum, Player);

这将返回一个字符串,其中包含 Players ColorEnum 颜色的颜色代码。

ChatColorPlus.getColorName(ColorEnum, Player);

这将返回一个字符串,其中包含 Players ColorEnum 颜色的颜色名称

ChatColorPlus.getPrefix();

返回一个字符串,其中包含服务器所有者为 chatcolor+ 选择的前缀

💖 支持作者

如果您想感谢我的工作/更新/功能,我会添加您,您可以通过向我的 PayPal 捐赠任意金额来做到这一点: [email protected]

📜 软件许可协议

购买此插件即表示您接受软件许可协议。

软件许可协议摘要

  • 允许商业用途
  • 不得修改源代码或二进制代码以用于任何目的(不得创建衍生作品)
  • 必须按照指定的方式署名软件创建者: 被许可人必须清楚地说明您从何处获得此软件
  • 附加条款: 不要对该软件进行逆向工程,包括反编译分发的代码。

软件 - 条款和条件

前言:本协议规定了使用 [ChatColor+ Premium](以下简称:软件)的条款、权利、限制和义务,该软件由 Chemmic 创建和拥有,Chemmic 是本软件的原始作者和版权所有者,详情如下。本协议在您购买之日或您获得本软件之日签署[以下简称:生效日期],管辖您(获得本软件的人)、商业实体(以下简称:被许可人)和许可方,许可方隶属关系的主要营业地点是(以下简称:许可方)之间的关系。

许可授予:许可方特此授予被许可人个人的、不可转让和不可让与的、商业的、免版税的、无权创建衍生作品的、非独占的许可,所有许可均符合第 3 方软件使用时规定的条款和其他法律限制。

有限:被许可人可以将软件用于以下目的:

  • 在被许可人的网站和服务器上运行软件;
  • 允许第三方在被许可人的网站和服务器上运行软件;
  • 将软件的输出发布给被许可人和第三方;
  • 分发软件输出的逐字副本(包括已编译的二进制文件);

不可转让和不可让与:被许可人不得转让或转让其在本许可下的权利和义务。

商业、免版税:被许可人可以将软件用于任何目的,包括付费服务,而无需支付任何版税。

具有署名要求:被许可人必须清楚地说明您从何处获得此软件。

期限和终止:本许可的期限应直至终止为止。在发生以下情况时,许可方可以终止本协议,包括被许可人的许可:

  • 已无力偿债或以其他方式进入任何清算程序;或者
  • 将本软件出口到任何许可方可能无法在本协议下强制执行其权利的司法管辖区;或者
  • 被许可人违反了本许可的任何条款和条件,并且此类违约未立即在通知后纠正;或者
  • 被许可人违反了本许可第 2 条的任何条款;或者
  • 被许可人以其他方式达成了任何安排,导致许可方无法在本许可下强制执行其权利。

付款:考虑到第 2 条下授予的许可,被许可人应通过信用卡、PayPal 或许可方认为适当的任何其他方式向许可方支付费用。未能履行付款应视为严重违反本协议。

升级、更新和修复:许可方可能会不时向被许可人提供升级、更新或修复,如本文所述并根据其自行决定。被许可人特此保证使本软件保持最新状态并安装所有相关的更新和修复,并且可以根据许可方设定的费率自行决定购买升级。许可方应免费提供任何更新或修复;但是,本协议中的任何内容均不要求许可方提供更新或修复。

升级:就本许可而言,升级应是本软件中的重大修改,其中包含新功能和/或重大的性能改进,并且应标记为新的版本号。例如,如果被许可人在版本 1.X.X 下购买本软件,则升级应在编号 2.0.0 下开始。

更新:就本许可而言,更新应是本软件中的次要修改,其中可能包含新功能或次要改进,并且应标记为新的子版本号。例如,如果被许可人在版本 1.1.X 下购买本软件,则升级应在编号 1.2.0 下开始。

修复:就本许可而言,修复应是本软件中的次要修改,旨在消除错误或更改会损害本软件功能的次要功能。修复应标记为新的子子版本号。例如,如果被许可人在版本 1.1.1 下购买软件,则升级应在编号 1.1.2 下开始。

支持:本软件按“原样”提供,不提供任何支持、更新或维护。本协议中的任何内容均不要求许可方为被许可人提供支持或修复本软件中的任何错误、故障、错误执行或其他缺陷。

错误通知:被许可人可以及时且毫不拖延地向许可方提供有关本软件中任何错误、缺陷或故障的详细信息;被许可人应遵守许可方对有关错误、缺陷或故障的信息的要求,并向其提供信息、屏幕截图并尝试重现此类错误、缺陷或故障。

功能请求:被许可人可以请求软件中的其他功能,前提是 (i) 如果该功能由许可方开发,则被许可人应放弃对此类功能的任何声明或权利;(ii) 禁止被许可人开发该功能,或向任何与许可方直接竞争的第三方或在开发该功能后可能与许可方直接竞争的任何第三方披露此类功能请求或功能;(iii) 被许可人保证该功能不侵犯任何第三方的专利、商标、商业秘密或任何其他知识产权;并且 (iv) 被许可人完全由自己开发、设想或创建了该功能。

责任:在法律允许的范围内,本软件按“原样”提供。许可方绝不对因本软件的行为、故障、错误和/或本软件与被许可人的终端设备、计算机、其他软件或任何第三方、终端设备、计算机或服务之间的任何其他交互而导致被许可人产生的任何损害、成本、费用或任何其他付款承担责任,且没有任何限制。此外,当被许可人依赖本软件或使用本软件的源代码时,许可方绝不对被许可人编写的源代码中的任何缺陷承担责任。

保证:

知识产权:许可方特此保证,本软件不违反或侵犯任何第三方就知识产权、专利和/或商标提出的任何声明,并且据其所知,尚未就任何侵权或违反任何第三方知识产权的行为对其采取任何法律行动。

无保证:本软件不提供任何保证;许可方特此否认本软件将没有错误、没有缺陷或代码可能对被许可人的计算机或被许可人造成损害,以及本软件将是功能的任何保证。被许可人应对因操作软件而造成的任何损害、缺陷或损失承担全部责任,并承担在本软件的服务器和网站上运行本软件所包含的风险。

事先检查:被许可人特此声明,他已彻底检查了本软件,发现它令人满意且足以满足他的需求,它不会干扰他的常规操作,并且它确实符合他的计算机系统和体系结构的标准和范围。被许可人发现本软件与他的开发、网站和服务器环境交互,并且它不侵犯被许可人在执行其服务时可能使用的任何软件的任何最终用户许可协议。被许可人特此放弃有关本软件的不兼容性、性能、结果和功能的任何声明,并保证他已检查了本软件。

不退款:被许可人保证他已根据第 7(c) 条检查了本软件,并且它足以满足他的需求。因此,由于本软件是无形商品,被许可人永远无权获得任何退款、回扣、补偿或赔偿,无论出于何种原因,即使本软件包含重大缺陷。

赔偿:被许可人特此保证,对于因被许可人使用本软件而违反、违反或以其他方式规避本许可、许可方的知识产权或许可方在本软件中的所有权而提起的任何诉讼,被许可人应保证许可方免受损害并赔偿许可方。如果发生此类法律行动,许可方应立即通知被许可人,并在就与此类诉讼或索赔相关的任何和解达成一致之前要求被许可人的同意。

管辖法律、管辖权:被许可人特此同意不针对许可方提起与本许可相关的集体诉讼,并且如果被许可人针对许可方提出的任何索赔被部分或全部拒绝,则应补偿许可方任何法律费用、成本或律师费。

ChatColor+ 现在并将永远免费,虽然如果您喜欢我的作品并想支持我的作品,您可以向我的 PayPal 捐赠任意金额:[email protected]

🤝 捐赠者列表

  • NullBlox - 查看他的服务器:kroniczombie.net

注意:我不允许您反编译我的插件并使用代码。