Tirol#5418
本帖最后由 Tirol#5418 于 2023-12-31 19:39 编辑

PlayerInvite
Version 1.0本帖插件及内容禁止任何人转载到任何地方使用过程中如果遇到bug请加群沟通提交BUG反馈群653440235
▎ 功能简介

    为服务器增加邀请系统

    邀请形式
    每个玩家都会拥有一个独一无二的邀请码,被邀请者在聊天框输入邀请码来确认










    任务
    为了防止小号的嫌疑,被邀请者完成设定的任务后双方才可领取奖励
    你可以使用以下统计信息来设定任务

活动统计:

PLAY_ONE_MINUTE:游戏中的总时间(以刻为单位)。
WALK_ONE_CM:行走的距离。
SWIM_ONE_CM:游泳的距离。
FALL_ONE_CM:下落的距离。
SNEAK_TIME:潜行的时间。
CLIMB_ONE_CM:攀爬的距离(如攀爬梯子或藤蔓)。
FLY_ONE_CM:飞行的距离。
WALK_ON_WATER_ONE_CM:在水面上行走的距离。
WALK_UNDER_WATER_ONE_CM:在水下行走的距离。
物品使用统计:

MINE_BLOCK:挖掘特定类型方块的次数。
USE_ITEM:使用特定物品的次数。
BREAK_ITEM:破坏特定物品的次数。
CRAFT_ITEM:制作特定物品的次数。
DROP:丢弃物品的次数。
杀敌统计:

MOB_KILLS:杀死生物的次数。
PLAYER_KILLS:杀死其他玩家的次数。
ENTITY_KILLED_BY:被特定实体杀死的次数。
其他统计:

JUMP:跳跃的次数。
DAMAGE_DEALT:造成的总伤害。
DAMAGE_TAKEN:承受的总伤害。
DEATHS:死亡的次数。
ANIMALS_BRED:繁殖动物的次数。
FISH_CAUGHT:捕捉到的鱼的数量。
TALKED_TO_VILLAGER:与村民交谈的次数复制代码










    邀请玩家奖励
    可设定不同档位的奖励










    PlaceholderAPI支持
    插件支持PAPI显示变量,你可以在任何地方展示邀请的统计信息
# %invite_invite% 邀请玩家数
# %invite_invite_success% 成功邀请玩家数
# %invite_top_player_名次% 成功邀请玩家数排行(玩家名)
# %invite_top_value_名次% 成功邀请玩家数排行(邀请数)复制代码


▎ 插件权限

    见配置文件

▎ 插件指令

    []为必填, ()为选填
    /iv info (玩家名) 查看邀请信息
    /iv reward (玩家名) 查看所有奖励
    /iv gain 获取奖励
    /iv quest (玩家名) 查看任务进度
    /iv reload 重载配置文件

▎ 插件配置


config.yml
mysql-info:
  ip: ''
  enable: true
  port: 3306
  param: 'useSSL=false'
  user: 'root'
  password: ''
  database: 'minecraft'
  validSql: 'show databases'

setting:
  # 排行榜查询最大数量
  top-query-limit: 20
  # 排行榜刷新间隔 (分钟)
  ref-top-time: 20
  # 奖励(被邀请者完成统计后)
  invited-rewards:
    - 'give @p@ stone 1'
  format:
    CHEST_OPENED: '箱子打开次数'
    PLAY_ONE_MINUTE: '游戏时间'
  # 被邀请玩家需满足的统计信息
  invite-success-req:
#    PLAY_ONE_MINUTE: 15
    CHEST_OPENED: 10

  add-permission:
    # 输入邀请码所需权限
    InputCodePerm: 'perm1'
    # 被邀请玩家需要拥有的权限
    SuccessPerm: 'perm2'
    # 邀请玩家所需权限
    InvitePlayerPerm: 'invite.iv'复制代码
InviteReward.yml (奖励设置)
首次邀请奖励:
  #邀请人数
  invite-number: 1
  #执行指令
  rewards:
    - 'give @p@ STONE 1'
  description:
    - 'text 1'
    - 'text 2'
邀请五人奖励:
  #邀请人数
  invite-number: 5
  #执行指令
  rewards:
    - 'give @p@ STONE 5'
  description:
    - 'text 1'
    - 'text 2'复制代码
message.yml (消息文本)
prefix: '&8[&aPlayerInvite&8]'
message:
  Help:
    - '&aPlayerInvite &7HELP'
    - ''
    - '&e/invite info {p} &f查看邀请信息'
    - '&e/invite reward {p} &f查看奖励列表'
    - '&e/invite gain &f领取奖励'
    - '&e/invite quest &f查看任务进度'
    - ''
    - '&e/invite reload &f重载配置文件'
  format:
    top:
      not: '虚位以待'
    static-mes: '&e @type@ &7@current@ &f/ &c@max@'
    reward: '&r @reward@ &f(&7@current@ &f/ &c[url=home.php?mod=space&uid=2123659]@MAX@[/url] &f) - @state@'
    receive-state:
      wait: '&e可领取'
      true: '&a已领取'
      false: '&d未领取'
  PleaseInputCode: '@prefix@ &f请在聊天框输入邀请码'
  NoPerm: '@prefix@ &c你没有权限进行邀请'
  InputCodeSuccess: '@prefix@ &f邀请你的玩家是 &e@invite@ &f,完成任务可获得 &a初学者礼包 &f(输入 &c/iv quest &f查看)'
  UnableInviteSelf: '@prefix@ &f无法邀请自己!'
  QuestFull: '@prefix@ &f已完成任务,领取 &a初学者礼包'
  no-reward: '@prefix@ &f你没有可领取的奖励'
  Reload: '@prefix@ &f已重载配置文件'
  ReceiveInvited: '@prefix@ &f已经被邀请过了!'
  WaitInviteSuccess: '@prefix@ &f已经填过邀请码了,请完成任务以获得奖励 &f(输入 &c/iv quest &f查看)'
  GainReward: '@prefix@ &f邀请人数达到 &a@number@ &f,获得奖励 @reward@'
  QuestInfo:
    - ''
    - '&f你的邀请人 &a&n@invite@'
    - '&f完成进度:'
    - '@static@'
  InviteInfo:
    - ''
    - '&f 邀请码: &c&n@code@'
    - '&f 已邀请玩家数: &a@invited_number@'
    - '&f 邀请成功玩家数: &a&l@invited_success_number@'
    - ''
  RewardInfo:
    - ''
    - '@reward@'
    - ''复制代码


▎ 插件下载






PlayerInvite-1.0-SNAPSHOT.jar

(1.96 MB, 下载次数: 1)





      

▎ 插件安装

    1. 下载本插件
    2. 将文件丢入plugins文件夹
    3. 重启服务器

▎ 更新日志

功能性更新标红 重要BUG修复标蓝

V1.0.0 插件发布


▎ 使用协议
    你可以在你的服务器中随意使用此插件;
    ☒你不可以声称此插件是你编写的,禁止倒卖本插件。
本插件所用所有代码均为原创,不存在借用/抄袭等行为

第一页 上一页 下一页 最后一页