初始版
This commit is contained in:
parent
be4cd7ac7f
commit
a6a377857a
BIN
out/artifacts/DemonLevelReward/DemonLevelReward.jar
Normal file
BIN
out/artifacts/DemonLevelReward/DemonLevelReward.jar
Normal file
Binary file not shown.
|
@ -1,8 +1,14 @@
|
|||
package com.yaohun.levelreward;
|
||||
|
||||
import com.yaohun.levelreward.config.Config;
|
||||
import com.yaohun.levelreward.data.PlayerData;
|
||||
import com.yaohun.levelreward.gui.RewardGui;
|
||||
import com.yaohun.levelreward.manage.PlayerManager;
|
||||
import com.yaohun.levelreward.util.ToolsUtil;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
public class LevelReward extends JavaPlugin {
|
||||
|
@ -14,6 +20,7 @@ public class LevelReward extends JavaPlugin {
|
|||
@Override
|
||||
public void onEnable() {
|
||||
instance = this;
|
||||
Config.reloadConfig(this);
|
||||
playerManager = new PlayerManager();
|
||||
}
|
||||
|
||||
|
@ -25,6 +32,7 @@ public class LevelReward extends JavaPlugin {
|
|||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
|
||||
if("open".equalsIgnoreCase(args[0])){
|
||||
RewardGui.OpenGui((Player) sender);
|
||||
return true;
|
||||
}
|
||||
if(!sender.isOp()) {
|
||||
|
@ -33,16 +41,24 @@ public class LevelReward extends JavaPlugin {
|
|||
if (args.length == 0) {
|
||||
sender.sendMessage("");
|
||||
sender.sendMessage("§e------- ======= §6等级成长礼包 §e======= -------");
|
||||
sender.sendMessage("§2/"+label+" add §e[方案] §2<玩家> §f- §2增加礼包");
|
||||
sender.sendMessage("§2/"+label+" reset §e[方案] §2<玩家> §f- §2重置礼包");
|
||||
sender.sendMessage("§2/"+label+" show §e[方案] §f- §2查看礼包内容");
|
||||
sender.sendMessage("§2/"+label+" edit §e[方案] §f- §2设置礼包内容");
|
||||
sender.sendMessage("§2/"+label+" list §f- §2查看礼包方案");
|
||||
sender.sendMessage("§2/"+label+" open §f- §2打开界面");
|
||||
sender.sendMessage("§2/"+label+" skull §f- §2查看头颅码");
|
||||
sender.sendMessage("§2/"+label+" reload §f- §2重载配置文件");
|
||||
sender.sendMessage("§e------- ======= §6等级成长礼包 §e======= -------");
|
||||
sender.sendMessage("");
|
||||
return true;
|
||||
}
|
||||
if("skull".equalsIgnoreCase(args[0])){
|
||||
Player player = (Player) sender;
|
||||
ItemStack stack = player.getInventory().getItemInMainHand();
|
||||
sender.sendMessage("[查询头颅] Base64ID: "+ToolsUtil.getHandSkullBase64(stack));
|
||||
return true;
|
||||
}
|
||||
if("reload".equalsIgnoreCase(args[0])){
|
||||
Config.reloadConfig(this);
|
||||
sender.sendMessage("[等级礼包] 配置文件已重载.");
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
70
src/main/java/com/yaohun/levelreward/config/Config.java
Normal file
70
src/main/java/com/yaohun/levelreward/config/Config.java
Normal file
|
@ -0,0 +1,70 @@
|
|||
package com.yaohun.levelreward.config;
|
||||
|
||||
import com.yaohun.levelreward.LevelReward;
|
||||
import com.yaohun.levelreward.data.RewardData;
|
||||
import me.Demon.DemonPlugin.DemonAPI;
|
||||
import me.Demon.DemonPlugin.data.GuiItemData;
|
||||
import me.Demon.DemonPlugin.data.LangData;
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.configuration.file.FileConfiguration;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
public class Config {
|
||||
|
||||
public static LangData langData;
|
||||
private static HashMap<String, GuiItemData> guiItemDataMap = new HashMap<>();
|
||||
private static List<RewardData> rewardDataList = new ArrayList<>();
|
||||
|
||||
public static void reloadConfig(LevelReward plugin) {
|
||||
// 调用了DemonAPI中的LangData
|
||||
// 需要在AuLangs目录中创建一个 LevelReward.yml 文件存语言配置
|
||||
langData = DemonAPI.getLangData("LevelReward");
|
||||
plugin.reloadConfig();
|
||||
plugin.saveConfig();
|
||||
FileConfiguration config = plugin.getConfig();
|
||||
loadGuiItemData(config);
|
||||
loadRewardSettings(config);
|
||||
}
|
||||
|
||||
private static void loadRewardSettings(FileConfiguration config){
|
||||
rewardDataList.clear();
|
||||
ConfigurationSection section = config.getConfigurationSection("RewardSettings");
|
||||
if(section == null) {return;}
|
||||
for (String rewardKey : section.getKeys(false)){
|
||||
rewardDataList.add(new RewardData(rewardKey,section));
|
||||
}
|
||||
}
|
||||
|
||||
private static void loadGuiItemData(FileConfiguration configuration){
|
||||
guiItemDataMap.clear();
|
||||
ConfigurationSection section = configuration.getConfigurationSection("GuiItemData");
|
||||
if(section == null){return;}
|
||||
for (String itemKey : section.getKeys(false)){
|
||||
guiItemDataMap.put(itemKey,new GuiItemData(itemKey,section));
|
||||
}
|
||||
}
|
||||
|
||||
public static ItemStack getItemStack(String itemKey) {
|
||||
if(guiItemDataMap.containsKey(itemKey)){
|
||||
return guiItemDataMap.get(itemKey).getItemStack().clone();
|
||||
}
|
||||
return DemonAPI.getErrItems();
|
||||
}
|
||||
|
||||
public static List<RewardData> getRewardDataList() {
|
||||
return rewardDataList;
|
||||
}
|
||||
|
||||
public static RewardData getRewardData(String rewardKey) {
|
||||
for (RewardData rewardData : rewardDataList){
|
||||
if(rewardData.getRewardKey().equals(rewardKey)){
|
||||
return rewardData;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
|
@ -19,6 +19,8 @@ public class PlayerData {
|
|||
private final File file;
|
||||
private final FileConfiguration configuration;
|
||||
|
||||
private final String playerName;
|
||||
|
||||
/**
|
||||
* 存储玩家奖励的列表
|
||||
*/
|
||||
|
@ -30,6 +32,7 @@ public class PlayerData {
|
|||
* @param playerName 玩家名称,用于标识和加载对应的玩家数据文件
|
||||
*/
|
||||
public PlayerData(String playerName){
|
||||
this.playerName = playerName;
|
||||
// 初始化文件路径
|
||||
this.file = new File("plugins/AuData/LevelReward", playerName + ".yml");
|
||||
// 检查并创建玩家数据文件的父目录
|
||||
|
@ -43,6 +46,10 @@ public class PlayerData {
|
|||
this.rewardList = this.configuration.getStringList("RewardList");
|
||||
}
|
||||
|
||||
public String getPlayerName() {
|
||||
return playerName;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存玩家数据到文件
|
||||
* 将玩家的奖励列表保存到配置文件中,并写入磁盘
|
||||
|
|
62
src/main/java/com/yaohun/levelreward/data/RewardData.java
Normal file
62
src/main/java/com/yaohun/levelreward/data/RewardData.java
Normal file
|
@ -0,0 +1,62 @@
|
|||
package com.yaohun.levelreward.data;
|
||||
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class RewardData {
|
||||
|
||||
private String rewardKey;
|
||||
|
||||
private int slot;
|
||||
|
||||
private String base64;
|
||||
|
||||
private int needLevel;
|
||||
|
||||
private List<String> rewardList;
|
||||
|
||||
private List<String> commandList;
|
||||
|
||||
public RewardData(String rewardKey, ConfigurationSection section){
|
||||
this.rewardKey = rewardKey;
|
||||
this.slot = section.getInt(rewardKey+".slot");
|
||||
this.needLevel = section.getInt(rewardKey+".level");
|
||||
this.base64 = section.getString(rewardKey+".base64","default");
|
||||
this.rewardList = section.getStringList(rewardKey+".reward");
|
||||
this.commandList = section.getStringList(rewardKey+".commands");
|
||||
}
|
||||
|
||||
public String getRewardKey() {
|
||||
return rewardKey;
|
||||
}
|
||||
|
||||
public int getSlot() {
|
||||
return slot;
|
||||
}
|
||||
|
||||
public String getBase64() {
|
||||
return base64;
|
||||
}
|
||||
|
||||
public List<String> getRewardList() {
|
||||
return rewardList;
|
||||
}
|
||||
|
||||
public int getNeedLevel() {
|
||||
return needLevel;
|
||||
}
|
||||
|
||||
public void carryOutCommands(Player player){
|
||||
String playerName = player.getName();
|
||||
for(String command : commandList) {
|
||||
if (command.contains("msg:")) {
|
||||
player.sendMessage(command.replace("msg:", ""));
|
||||
} else {
|
||||
command = command.replace("%p%", playerName);
|
||||
player.performCommand(command);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,7 +1,41 @@
|
|||
package com.yaohun.levelreward.gui;
|
||||
|
||||
import com.yaohun.levelreward.config.Config;
|
||||
import com.yaohun.levelreward.data.RewardData;
|
||||
import com.yaohun.levelreward.util.MessageUtil;
|
||||
import com.yaohun.levelreward.util.StackUtil;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Sound;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.inventory.Inventory;
|
||||
|
||||
public class RewardGui implements Listener {
|
||||
public class RewardGui {
|
||||
|
||||
private static String invTitle = Config.langData.getMessage("invTitle");
|
||||
|
||||
public static boolean isTimeOut60Day(Player player){
|
||||
long firstPlayed = player.getFirstPlayed();
|
||||
if(firstPlayed == 0){
|
||||
return false;
|
||||
}
|
||||
long nowTime = System.currentTimeMillis();
|
||||
long days = (nowTime - firstPlayed) / (1000 * 60 * 60 * 24);
|
||||
if(days < 60){
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
public static void OpenGui(Player player) {
|
||||
// 获取玩家入服时间 并判断是否已超过60天
|
||||
if(isTimeOut60Day(player)){
|
||||
MessageUtil.sendMessage(player,"timeOutDay", Sound.ENTITY_BLAZE_DEATH);
|
||||
return;
|
||||
}
|
||||
Inventory inv = Bukkit.createInventory(null,27, invTitle);
|
||||
for (RewardData rewardData : Config.getRewardDataList()){
|
||||
inv.setItem(rewardData.getSlot(), StackUtil.getGiftPack(player, rewardData));
|
||||
}
|
||||
player.openInventory(inv);
|
||||
}
|
||||
}
|
||||
|
|
41
src/main/java/com/yaohun/levelreward/util/MessageUtil.java
Normal file
41
src/main/java/com/yaohun/levelreward/util/MessageUtil.java
Normal file
|
@ -0,0 +1,41 @@
|
|||
package com.yaohun.levelreward.util;
|
||||
|
||||
import com.yaohun.levelreward.config.Config;
|
||||
import org.bukkit.Sound;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class MessageUtil {
|
||||
|
||||
public static void sendMessage(CommandSender sender, String message) {
|
||||
if(sender instanceof Player){
|
||||
Player player = (Player) sender;
|
||||
player.sendMessage(message);
|
||||
} else {
|
||||
sender.sendMessage(message);
|
||||
}
|
||||
}
|
||||
|
||||
public static void sendMessage(CommandSender sender, String message, Sound sound) {
|
||||
if(sender instanceof Player){
|
||||
Player player = (Player) sender;
|
||||
player.sendMessage(message);
|
||||
player.playSound(player.getLocation(), sound, 0.5f, 1.2f);
|
||||
} else {
|
||||
sender.sendMessage(message);
|
||||
}
|
||||
}
|
||||
|
||||
public static void sendMessageKey(CommandSender sender, String langKey, Sound sound) {
|
||||
String message = Config.langData.getMessage(langKey);
|
||||
if(sender instanceof Player){
|
||||
Player player = (Player) sender;
|
||||
player.sendMessage(message);
|
||||
player.playSound(player.getLocation(), sound, 0.5f, 1.2f);
|
||||
} else {
|
||||
sender.sendMessage(message);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
58
src/main/java/com/yaohun/levelreward/util/StackUtil.java
Normal file
58
src/main/java/com/yaohun/levelreward/util/StackUtil.java
Normal file
|
@ -0,0 +1,58 @@
|
|||
package com.yaohun.levelreward.util;
|
||||
|
||||
import com.mojang.authlib.GameProfile;
|
||||
import com.mojang.authlib.properties.Property;
|
||||
import com.yaohun.levelreward.config.Config;
|
||||
import com.yaohun.levelreward.data.PlayerData;
|
||||
import com.yaohun.levelreward.data.RewardData;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
import org.bukkit.inventory.meta.SkullMeta;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
public class StackUtil {
|
||||
|
||||
public static ItemStack getGiftPack(Player player, RewardData rewardData){
|
||||
ItemStack stack = Config.getItemStack("LevelGiftPack");
|
||||
if(rewardData.getRewardKey().contains("kejin")){
|
||||
stack = Config.getItemStack("PayGiftPack");
|
||||
}
|
||||
stack.setType(Material.SKULL_ITEM);
|
||||
stack.setDurability((short) 3);
|
||||
SkullMeta meta = (SkullMeta) stack.getItemMeta();
|
||||
GameProfile profile = new GameProfile(UUID.randomUUID(), null);
|
||||
String base64 = rewardData.getBase64();
|
||||
profile.getProperties().put("textures", new Property("textures", base64));
|
||||
try {
|
||||
Field profileField = meta.getClass().getDeclaredField("profile");
|
||||
profileField.setAccessible(true);
|
||||
profileField.set(meta, profile);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
String itemName = meta.getDisplayName();
|
||||
meta.setDisplayName(itemName.replace("{level}",String.valueOf(rewardData.getNeedLevel())));
|
||||
List<String> lore = meta.getLore();
|
||||
List<String> newLore = new ArrayList<>();
|
||||
for (String line : lore) {
|
||||
if (line.contains("{name}")) {
|
||||
newLore.add(line.replace("{name}", player.getName()));
|
||||
} else if (line.contains("{player_level}")) {
|
||||
newLore.add(line.replace("{player_level}", String.valueOf(player.getLevel())));
|
||||
} else if (line.contains("{rewardLore}")) {
|
||||
newLore.addAll(rewardData.getRewardList());
|
||||
} else {
|
||||
newLore.add(line);
|
||||
}
|
||||
}
|
||||
meta.setLore(newLore);
|
||||
stack.setItemMeta(meta);
|
||||
return stack;
|
||||
}
|
||||
}
|
40
src/main/java/com/yaohun/levelreward/util/ToolsUtil.java
Normal file
40
src/main/java/com/yaohun/levelreward/util/ToolsUtil.java
Normal file
|
@ -0,0 +1,40 @@
|
|||
package com.yaohun.levelreward.util;
|
||||
|
||||
import com.mojang.authlib.GameProfile;
|
||||
import com.mojang.authlib.properties.Property;
|
||||
import me.Demon.DemonPlugin.DemonAPI;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.SkullMeta;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
|
||||
public class ToolsUtil {
|
||||
|
||||
public static String getHandSkullBase64(ItemStack stack){
|
||||
if(DemonAPI.itemIsNull(stack) || stack.getType() != Material.SKULL_ITEM){
|
||||
return "无";
|
||||
}
|
||||
if(!(stack.getItemMeta() instanceof SkullMeta)){
|
||||
return "无";
|
||||
}
|
||||
SkullMeta meta = (SkullMeta) stack.getItemMeta();
|
||||
try {
|
||||
Field profileField = meta.getClass().getDeclaredField("profile");
|
||||
profileField.setAccessible(true);
|
||||
GameProfile profile = (GameProfile) profileField.get(meta);
|
||||
|
||||
if (profile == null) {
|
||||
return "无";
|
||||
}
|
||||
for (Property prop : profile.getProperties().get("textures")) {
|
||||
String base64 = prop.getValue();
|
||||
System.out.println("[HeadBase64] 读取头颅皮肤:\n" + base64);
|
||||
return base64;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return "无";
|
||||
}
|
||||
}
|
326
src/main/resources/config.yml
Normal file
326
src/main/resources/config.yml
Normal file
|
@ -0,0 +1,326 @@
|
|||
GuiItemData:
|
||||
LevelGiftPack:
|
||||
Material: SKULL_ITEM
|
||||
DisplayName: "§e萌新助力宝箱 §7[§b{level}§7]"
|
||||
Lore:
|
||||
- "§A§L✔§7点击领取奖励"
|
||||
- "§A§L★§7玩家名称: §d{name}"
|
||||
- "§c§l★§7当前等级: §dLv.{player_level}"
|
||||
- "§7§l★§7奖励如下:"
|
||||
- "§7---------------------"
|
||||
- "{rewardLore}"
|
||||
- "§7---------------------"
|
||||
- "§6PS:领取前请确认背包空间是否充足!"
|
||||
PayGiftPack:
|
||||
Material: SKULL_ITEM
|
||||
DisplayName: "§e土豪助力宝箱 §7[§b80§7]"
|
||||
Lore:
|
||||
- "§A§L✔§7点击领取奖励"
|
||||
- "§A§L★§7玩家名称: §d{name}"
|
||||
- "§c§l★§7累计充值: §b1288软妹币"
|
||||
- "§e§l★§7当前累计: §b{coins}软妹币"
|
||||
- "§7§l★§7奖励如下:"
|
||||
- "§7---------------------"
|
||||
- "{rewardLore}"
|
||||
- "§7---------------------"
|
||||
- "§6PS:领取前请确认背包空间是否充足!"
|
||||
RewardSettings:
|
||||
expup_15:
|
||||
slot: 10
|
||||
level: 15
|
||||
base64: xxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
reward:
|
||||
- §71. §7§l★§71 §65000金币
|
||||
- §72. §7§l★§75 §e百年灵环
|
||||
- §73. §7§l★§73 §d千年灵环
|
||||
- §74. §7§l★§72 §e学院的认可
|
||||
- §75. §7§l★§732 §f[§6食物§f]§d粉汤圆
|
||||
- §76. §7§l★§73 §f[§6碎片§f]§e暴食娃娃
|
||||
- §77. §7§l★§75 §f[§a繁花§f]§e灵环抽奖钥匙
|
||||
commands:
|
||||
- eco give %p% 5000
|
||||
- ditem give 学院的认可 2 %p%
|
||||
- ditem give 食物_粉汤圆 32 %p%
|
||||
- ditem give 暴食娃娃碎片 3 %p%
|
||||
- dgroupcmd %p% 随机百年灵环 5
|
||||
- dgroupcmd %p% 随机千年灵环 3
|
||||
- ditem give 魂环抽奖箱钥匙 5 %p%
|
||||
- bcm &7[&c公告&7] &a玩家&e%p%&a成功领取到了&e&l[Lv.15]&a萌新助力礼包
|
||||
- msg:&f[&c消息&f] &a成功领取 &e&lLv.15 &a萌新助力礼包。
|
||||
expup_25:
|
||||
slot: 11
|
||||
level: 25
|
||||
base64: xxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
reward:
|
||||
- §71. §7§l★§71 §610000金币
|
||||
- §72. §7§l★§74 §d千年灵环
|
||||
- §73. §7§l★§72 §7万年灵环
|
||||
- §74. §7§l★§75 §e学院的认可
|
||||
- §75. §7§l★§71 §2暗器·蛇蛊毒镖
|
||||
- §76. §7§l★§732 §f[§6食物§f]§d粉汤圆′
|
||||
- §77. §7§l★§71 §d经验+200%§f(持续30分钟)
|
||||
- §78. §7§l★§73 §f[§6碎片§f]§e暴食娃娃
|
||||
- §79. §7§l★§75 §f[§a繁花§f]§e灵环抽奖钥匙
|
||||
commands:
|
||||
- eco give %p% 10000
|
||||
- ditem give 学院的认可 5 %p%
|
||||
- auforge 暗器_蛇蛊毒镖 %p%
|
||||
- ditem give 食物_粉汤圆 32 %p%
|
||||
- ditem give 暴食娃娃碎片 3 %p%
|
||||
- dpotion add %p% 200 30
|
||||
- dgroupcmd %p% 随机千年灵环 4
|
||||
- dgroupcmd %p% 随机万年灵环 2
|
||||
- ditem give 魂环抽奖箱钥匙 5 %p%
|
||||
- bcm &7[&c公告&7] &a玩家&e%p%&a成功领取到了&e&l[Lv.25]&a萌新助力礼包
|
||||
- msg:&f[&c消息&f] &a成功领取 &e&lLv.25 &a萌新助力礼包。
|
||||
expup_35:
|
||||
slot: 12
|
||||
level: 35
|
||||
base64: xxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
reward:
|
||||
- §71. §7§l★§71 §615800金币
|
||||
- §72. §7§l★§76 §d千年灵环
|
||||
- §73. §7§l★§72 §7万年灵环
|
||||
- §74. §7§l★§78 §e学院的认可
|
||||
- §75. §7§l★§71 §2暗器·蛇蛊毒镖
|
||||
- §76. §7§l★§732 §f[§6食物§f]§d粉汤圆
|
||||
- §77. §7§l★§71 §d经验+200%§f(持续30分钟)
|
||||
- §78. §7§l★§73 §f[§6碎片§f]§e暴食娃娃
|
||||
- §79. §7§l★§710 §f[§a繁花§f]§e灵环抽奖钥匙
|
||||
commands:
|
||||
- eco give %p% 15800
|
||||
- ditem give 学院的认可 8 %p%
|
||||
- auforge 暗器_蛇蛊毒镖 %p%
|
||||
- ditem give 食物_粉汤圆 32 %p%
|
||||
- ditem give 暴食娃娃碎片 3 %p%
|
||||
- dpotion add %p% 200 30
|
||||
- dgroupcmd %p% 随机千年灵环 6
|
||||
- dgroupcmd %p% 随机万年灵环 2
|
||||
- ditem give 魂环抽奖箱钥匙 10 %p%
|
||||
- bcm &7[&c公告&7] &a玩家&e%p%&a成功领取到了&e&l[Lv.35]&a萌新助力礼包
|
||||
- msg:&f[&c消息&f] &a成功领取 &e&lLv.35 &a萌新助力礼包。
|
||||
expup_45:
|
||||
slot: 13
|
||||
level: 45
|
||||
base64: xxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
reward:
|
||||
- §71. §7§l★§71 §620800金币
|
||||
- §72. §7§l★§78 §d千年灵环
|
||||
- §73. §7§l★§73 §7万年灵环
|
||||
- §74. §7§l★§78 §e学院的认可
|
||||
- §75. §7§l★§78 §b天外灵玉
|
||||
- §76. §7§l★§71 §f暗器·锻钢飞刀
|
||||
- §77. §7§l★§732 §f[§6食物§f]§d粉汤圆
|
||||
- §78. §7§l★§71 §d经验+200%§f(持续30分钟)
|
||||
- §79. §7§l★§73 §f[§6碎片§f]§e暴食娃娃
|
||||
- §710. §7§l★§710 §f[§a繁花§f]§e灵环抽奖钥匙
|
||||
commands:
|
||||
- eco give %p% 20800
|
||||
- ditem give 学院的认可 8 %p%
|
||||
- ditem give 天外灵玉 8 %p%
|
||||
- auforge 暗器_锻钢飞刀 %p%
|
||||
- ditem give 食物_粉汤圆 32 %p%
|
||||
- ditem give 暴食娃娃碎片 3 %p%
|
||||
- dpotion add %p% 200 30
|
||||
- dgroupcmd %p% 随机千年灵环 8
|
||||
- dgroupcmd %p% 随机万年灵环 3
|
||||
- ditem give 魂环抽奖箱钥匙 10 %p%
|
||||
- bcm &7[&c公告&7] &a玩家&e%p%&a成功领取到了&e&l[Lv.45]&a萌新助力礼包
|
||||
- msg:&f[&c消息&f] &a成功领取 &e&lLv.45 &a萌新助力礼包。
|
||||
expup_55:
|
||||
slot: 14
|
||||
level: 55
|
||||
base64: xxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
reward:
|
||||
- §71. §7§l★§71 §625800金币
|
||||
- §72. §7§l★§78 §d千年灵环
|
||||
- §73. §7§l★§74 §7万年灵环
|
||||
- §74. §7§l★§76 §c赤心炼狱珠
|
||||
- §75. §7§l★§76 §b玄玉冰心珠
|
||||
- §76. §7§l★§71 §f暗器·锻钢飞刀
|
||||
- §77. §7§l★§732 §f[§6食物§f]§d粉汤圆
|
||||
- §78. §7§l★§71 §d经验+300%§f(持续30分钟)
|
||||
- §79. §7§l★§73 §f[§6碎片§f]§e暴食娃娃
|
||||
- §710. §7§l★§715 §f[§a繁花§f]§e灵环抽奖钥匙
|
||||
commands:
|
||||
- eco give %p% 25800
|
||||
- ditem give 赤心炼狱珠 6 %p%
|
||||
- ditem give 玄玉冰心珠 6 %p%
|
||||
- auforge 暗器_锻钢飞刀 %p%
|
||||
- ditem give 食物_粉汤圆 32 %p%
|
||||
- ditem give 暴食娃娃碎片 3 %p%
|
||||
- dpotion add %p% 300 30
|
||||
- dgroupcmd %p% 随机千年灵环 8
|
||||
- dgroupcmd %p% 随机万年灵环 4
|
||||
- ditem give 魂环抽奖箱钥匙 15 %p%
|
||||
- bcm &7[&c公告&7] &a玩家&e%p%&a成功领取到了&e&l[Lv.55]&a萌新助力礼包
|
||||
- msg:&f[&c消息&f] &a成功领取 &e&lLv.55 &a萌新助力礼包。
|
||||
expup_65:
|
||||
slot: 15
|
||||
level: 65
|
||||
base64: xxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
reward:
|
||||
- §71. §7§l★§71 §629800金币
|
||||
- §72. §7§l★§712 §d千年灵环
|
||||
- §73. §7§l★§76 §c异变§d千年灵环
|
||||
- §74. §7§l★§76 §7万年灵环
|
||||
- §75. §7§l★§78 §b天外灵玉
|
||||
- §76. §7§l★§78 §c杀怒之石
|
||||
- §77. §7§l★§71 §c暗器·赤心回旋镖
|
||||
- §78. §7§l★§71 §d经验+300%§f(持续30分钟)
|
||||
- §79. §7§l★§73 §f[§6碎片§f]§e暴食娃娃
|
||||
- §710. §7§l★§715 §f[§a繁花§f]§e灵环抽奖钥匙
|
||||
commands:
|
||||
- eco give %p% 29800
|
||||
- ditem give 天外灵玉 8 %p%
|
||||
- ditem give 杀怒之石 8 %p%
|
||||
- auforge 暗器_赤心回旋镖 %p%
|
||||
- ditem give 食物_粉汤圆 32 %p%
|
||||
- ditem give 暴食娃娃碎片 3 %p%
|
||||
- dpotion add %p% 300 30
|
||||
- dskills stone 1 %p%
|
||||
- dgroupcmd %p% 随机异变千年灵环 6
|
||||
- dgroupcmd %p% 随机万年灵环 6
|
||||
- dgroupcmd %p% 随机千年灵环 12
|
||||
- ditem give 魂环抽奖箱钥匙 15 %p%
|
||||
- bcm &7[&c公告&7] &a玩家&e%p%&a成功领取到了&e&l[Lv.65]&a萌新助力礼包
|
||||
- msg:&f[&c消息&f] &a成功领取 &e&lLv.65 &a萌新助力礼包。
|
||||
expup_75:
|
||||
slot: 16
|
||||
level: 75
|
||||
base64: xxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
reward:
|
||||
- §71. §7§l★§71 §636800金币
|
||||
- §72. §7§l★§71 §d40点券
|
||||
- §73. §7§l★§79 §c异变§d千年灵环
|
||||
- §74. §7§l★§76 §7万年灵环
|
||||
- §75. §7§l★§72 §c异变灵环
|
||||
- §76. §7§l★§710 §b天外灵玉
|
||||
- §77. §7§l★§710 §c杀怒之石
|
||||
- §78. §7§l★§71 §c暗器·赤心回旋镖
|
||||
- §79. §7§l★§71 §d经验+300%§f(持续30分钟)
|
||||
- §710. §7§l★§720 §f[§a繁花§f]§e灵环抽奖钥匙
|
||||
- §711. §7§l★§71 §c§l十万年巨兽泰坦灵环
|
||||
commands:
|
||||
- eco give %p% 36800
|
||||
- points give %p% 40
|
||||
- dhhqc give 十万年_巨兽泰坦灵环 1 %p% true
|
||||
- ditem give 天外灵玉 10 %p%
|
||||
- ditem give 杀怒之石 10 %p%
|
||||
- auforge 暗器_赤心回旋镖 %p%
|
||||
- dpotion add %p% 300 30
|
||||
- dgroupcmd %p% 随机异变灵环 2
|
||||
- dgroupcmd %p% 随机万年灵环 6
|
||||
- dgroupcmd %p% 随机异变千年灵环 9
|
||||
- ditem give 魂环抽奖箱钥匙 20 %p%
|
||||
- bcm &7[&c公告&7] &a玩家&e%p%&a成功领取到了&e&l[Lv.75]&a萌新助力礼包
|
||||
- msg:&f[&c消息&f] &a成功领取 &e&lLv.75 &a萌新助力礼包。
|
||||
expup_80:
|
||||
slot: 20
|
||||
level: 80
|
||||
base64: xxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
reward:
|
||||
- §71. §7§l★§71 §642800金币
|
||||
- §72. §7§l★§71 §d80点券
|
||||
- §73. §7§l★§76 §7万年灵环
|
||||
- §74. §7§l★§72 §c异变灵环
|
||||
- §75. §7§l★§76 §e冰火灵石
|
||||
- §76. §7§l★§76 §b灵环精片
|
||||
- §77. §7§l★§71 §e超级灵环抽奖钥匙
|
||||
- §78. §7§l★§71 §d经验+300%§f(持续30分钟)
|
||||
- §79. §7§l★§720 §f[§a繁花§f]§e灵环抽奖钥匙
|
||||
- §710. §7§l★§71 §c§l十万年巨兽泰坦灵环
|
||||
commands:
|
||||
- eco give %p% 42800
|
||||
- points give %p% 80
|
||||
- dhhqc give 十万年_巨兽泰坦灵环 1 %p% true
|
||||
- ditem give 冰火灵石 6 %p%
|
||||
- ditem give 灵环精片 6 %p%
|
||||
- ditem give 超级魂环抽奖箱钥匙 1 %p%
|
||||
- dpotion add %p% 300 30
|
||||
- dgroupcmd %p% 随机异变灵环 2
|
||||
- dgroupcmd %p% 随机万年灵环 6
|
||||
- ditem give 魂环抽奖箱钥匙 20 %p%
|
||||
- bcm &7[&c公告&7] &a玩家&e%p%&a成功领取到了&e&l[Lv.80]&a萌新助力礼包
|
||||
- msg:&f[&c消息&f] &a成功领取 &e&lLv.80 &a萌新助力礼包。
|
||||
expup_85:
|
||||
slot: 22
|
||||
level: 85
|
||||
base64: xxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
reward:
|
||||
- §71. §7§l★§71 §658800金币
|
||||
- §72. §7§l★§71 §d100点券
|
||||
- §73. §7§l★§76 §7万年灵环
|
||||
- §74. §7§l★§74 §c异变灵环
|
||||
- §75. §7§l★§78 §e冰火灵石
|
||||
- §76. §7§l★§78 §b灵环精片
|
||||
- §77. §7§l★§72 §e超级灵环抽奖钥匙
|
||||
- §78. §7§l★§71 §d经验+400%§f(持续30分钟)
|
||||
- §79. §7§l★§71 §c§l十万年巨兽泰坦灵环
|
||||
- §710. §7§l★§710 §f[§a繁花§f]§e超级灵环钥匙
|
||||
commands:
|
||||
- eco give %p% 58800
|
||||
- points give %p% 100
|
||||
- dhhqc give 十万年_巨兽泰坦灵环 1 %p% true
|
||||
- ditem give 冰火灵石 8 %p%
|
||||
- ditem give 灵环精片 8 %p%
|
||||
- dpotion add %p% 400 30
|
||||
- dgroupcmd %p% 随机万年灵环 6
|
||||
- dgroupcmd %p% 随机异变灵环 4
|
||||
- ditem give 超级魂环抽奖箱钥匙 10 %p%
|
||||
- bcm &7[&c公告&7] &a玩家&e%p%&a成功领取到了&e&l[Lv.85]&a萌新助力礼包
|
||||
- msg:&f[&c消息&f] &a成功领取 &e&lLv.85 &a萌新助力礼包。
|
||||
expup_90:
|
||||
slot: 24
|
||||
level: 90
|
||||
base64: xxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
reward:
|
||||
- §71. §7§l★§71 §658800金币
|
||||
- §72. §7§l★§71 §d120点券
|
||||
- §73. §7§l★§74 §c异变灵环
|
||||
- §74. §7§l★§710 §e冰火灵石
|
||||
- §75. §7§l★§710 §b灵环精片
|
||||
- §76. §7§l★§73 §f[§a繁花§f]§e幸运夺宝箱钥匙
|
||||
- §77. §7§l★§710 §f[§a繁花§f]§e灵环抽奖钥匙
|
||||
- §78. §7§l★§75 §f[§a繁花§f]§e超级灵环抽奖钥匙
|
||||
- §79. §7§l★§71 §d经验+400%§f(持续30分钟)
|
||||
- §710. §7§l★§71 §c§l十万年青天牛马灵环
|
||||
- §711. §7§l★§71 §c§l十万年奇灵舞魅兔灵环
|
||||
commands:
|
||||
- eco give %p% 58800
|
||||
- points give %p% 120
|
||||
- dhhqc give 十万年_青天牛马灵环 1 %p% true
|
||||
- dhhqc give 十万年_奇灵舞魅兔灵环 1 %p% true
|
||||
- ditem give 冰火灵石 10 %p%
|
||||
- ditem give 灵环精片 10 %p%
|
||||
- ditem give 幸运夺宝钥匙 3 %p%
|
||||
- ditem give 魂环抽奖箱钥匙 10 %p%
|
||||
- ditem give 超级魂环抽奖箱钥匙 5 %p%
|
||||
- dpotion add %p% 400 30
|
||||
- dgroupcmd %p% 随机异变灵环 4
|
||||
- bcm &7[&c公告&7] &a玩家&e%p%&a成功领取到了&e&l[Lv.90]&a萌新助力礼包
|
||||
- msg:&f[&c消息&f] &a成功领取 &e&lLv.90 &a萌新助力礼包。
|
||||
expup_kejin:
|
||||
slot: 4
|
||||
level: 80
|
||||
base64: xxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
reward:
|
||||
- §71. §7§l★§710 §e灵环抽奖钥匙
|
||||
- §72. §7§l★§710 §e超级灵环抽奖钥匙
|
||||
- §73. §7§l★§75 §e幸运夺宝箱钥匙
|
||||
- §74. §7§l★§72 §e次元§5精灵§d秘药
|
||||
- §75. §7§l★§72 §6大财主金币袋
|
||||
- §76. §7§l★§71 §c§l十万年巨兽泰坦灵环§d(献祭)
|
||||
- §77. §7§l★§71 §c§l十万年青天牛马灵环§d(献祭)
|
||||
- §78. §7§l★§71 §c§l十万年奇灵舞魅兔灵环§d(献祭)
|
||||
commands:
|
||||
- ditem give 大财主金币袋 2 %p%
|
||||
- dpotion give 次元精灵秘药 2 %p%
|
||||
- ditem give 幸运夺宝钥匙 5 %p%
|
||||
- ditem give 魂环抽奖箱钥匙 10 %p%
|
||||
- ditem give 超级魂环抽奖箱钥匙 10 %p%
|
||||
- dhhqc givepro 十万年_巨兽泰坦灵环 1 %p% true
|
||||
- dhhqc givepro 十万年_青天牛马灵环 1 %p% true
|
||||
- dhhqc givepro 十万年_奇灵舞魅兔灵环 1 %p% true
|
||||
- bcm &7[&c公告&7] &a玩家&e%p%&a成功领取到了&e&l[Lv.80]&a土豪助力宝箱
|
||||
- msg:&f[&c消息&f] &a成功领取 &e&lLv.80 &a土豪助力宝箱。
|
Loading…
Reference in New Issue
Block a user