mirror of
https://github.com/Melledy/Grasscutter.git
synced 2024-11-26 20:05:19 +00:00
Merge remote-tracking branch 'origin/development' into development
This commit is contained in:
commit
68e1c8d75a
@ -12,7 +12,7 @@ import java.util.List;
|
||||
|
||||
import static emu.grasscutter.utils.Language.translate;
|
||||
|
||||
@Command(label = "givechar", usage = "givechar <avatarId> [level]", aliases = {"givec"}, permission = "player.givechar", permissionTargeted = "player.givechar.others", description = "commands.giveChar.description")
|
||||
@Command(label = "givechar", usage = "givechar <player> <avatarId> [level]", aliases = {"givec"}, permission = "player.givechar", permissionTargeted = "player.givechar.others", description = "commands.giveChar.description")
|
||||
public final class GiveCharCommand implements CommandHandler {
|
||||
|
||||
@Override
|
||||
@ -26,7 +26,7 @@ public final class GiveCharCommand implements CommandHandler {
|
||||
level = Integer.parseInt(args.get(1));
|
||||
} catch (NumberFormatException ignored) {
|
||||
// TODO: Parse from avatar name using GM Handbook.
|
||||
CommandHandler.sendMessage(sender, translate(sender, "commands.execution.invalid.avatarLevel"));
|
||||
CommandHandler.sendMessage(sender, translate(sender, "commands.generic.invalid.avatarLevel"));
|
||||
return;
|
||||
} // Cheeky fall-through to parse first argument too
|
||||
case 1:
|
||||
@ -34,7 +34,7 @@ public final class GiveCharCommand implements CommandHandler {
|
||||
avatarId = Integer.parseInt(args.get(0));
|
||||
} catch (NumberFormatException ignored) {
|
||||
// TODO: Parse from avatar name using GM Handbook.
|
||||
CommandHandler.sendMessage(sender, translate(sender, "commands.execution.invalid.avatarId"));
|
||||
CommandHandler.sendMessage(sender, translate(sender, "commands.generic.invalid.avatarId"));
|
||||
return;
|
||||
}
|
||||
break;
|
||||
@ -45,13 +45,13 @@ public final class GiveCharCommand implements CommandHandler {
|
||||
|
||||
AvatarData avatarData = GameData.getAvatarDataMap().get(avatarId);
|
||||
if (avatarData == null) {
|
||||
CommandHandler.sendMessage(sender, translate(sender, "commands.execution.invalid.avatarId"));
|
||||
CommandHandler.sendMessage(sender, translate(sender, "commands.generic.invalid.avatarId"));
|
||||
return;
|
||||
}
|
||||
|
||||
// Check level.
|
||||
if (level > 90) {
|
||||
CommandHandler.sendMessage(sender, translate(sender, "commands.execution.invalid.avatarLevel"));
|
||||
CommandHandler.sendMessage(sender, translate(sender, "commands.generic.invalid.avatarLevel"));
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -215,7 +215,7 @@ public final class SetStatsCommand implements CommandHandler {
|
||||
CommandHandler.sendMessage(sender, translate(sender, "commands.setStats.set_self", stat.name, valueStr));
|
||||
} else {
|
||||
String uidStr = targetPlayer.getAccount().getId();
|
||||
CommandHandler.sendMessage(sender, translate(sender, "commands.setStats.set_self", stat.name, uidStr, valueStr));
|
||||
CommandHandler.sendMessage(sender, translate(sender, "commands.setStats.set_for_uid", stat.name, uidStr, valueStr));
|
||||
}
|
||||
} else {
|
||||
CommandHandler.sendMessage(sender, usage);
|
||||
|
@ -97,7 +97,7 @@ public final class DatabaseHelper {
|
||||
}
|
||||
|
||||
public static Account getAccountByPlayerId(int playerId) {
|
||||
return DatabaseManager.getGameDatastore().find(Account.class).filter(Filters.eq("playerId", playerId)).first();
|
||||
return DatabaseManager.getGameDatastore().find(Account.class).filter(Filters.eq("reservedPlayerId", playerId)).first();
|
||||
}
|
||||
|
||||
public static void deleteAccount(Account target) {
|
||||
|
@ -303,6 +303,13 @@ public class EnergyManager {
|
||||
}
|
||||
}
|
||||
public void handleMonsterEnergyDrop(EntityMonster monster, float hpBeforeDamage, float hpAfterDamage) {
|
||||
// Make sure this is actually a monster.
|
||||
// Note that some wildlife also has that type, like boars or birds.
|
||||
String type = monster.getMonsterData().getType();
|
||||
if (!type.equals("MONSTER_ORDINARY") && !type.equals("MONSTER_BOSS")) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Calculate the HP tresholds for before and after the damage was taken.
|
||||
float maxHp = monster.getFightProperty(FightProperty.FIGHT_PROP_MAX_HP);
|
||||
float thresholdBefore = hpBeforeDamage / maxHp;
|
||||
|
@ -156,5 +156,30 @@
|
||||
"dropId": 22003100,
|
||||
"dropList": [
|
||||
]
|
||||
},
|
||||
{
|
||||
"dropId": 22001000,
|
||||
"dropList": [
|
||||
]
|
||||
},
|
||||
{
|
||||
"dropId": 22000100,
|
||||
"dropList": [
|
||||
]
|
||||
},
|
||||
{
|
||||
"dropId": 22003000,
|
||||
"dropList": [
|
||||
]
|
||||
},
|
||||
{
|
||||
"dropId": 22001100,
|
||||
"dropList": [
|
||||
]
|
||||
},
|
||||
{
|
||||
"dropId": 22000000,
|
||||
"dropList": [
|
||||
]
|
||||
}
|
||||
]
|
@ -159,7 +159,7 @@
|
||||
"description": "Gives the player a specified artifact"
|
||||
},
|
||||
"giveChar": {
|
||||
"usage": "Usage: givechar <player> <itemID|itemName> [level]",
|
||||
"usage": "Usage: givechar <player> <avatarId> [level]",
|
||||
"given": "Given %s with level %s to %s.",
|
||||
"invalid_avatar_id": "Invalid avatar ID.",
|
||||
"invalid_avatar_level": "Invalid avatar level.",
|
||||
|
@ -146,7 +146,7 @@
|
||||
"success": "Dano %s dla %s."
|
||||
},
|
||||
"giveChar": {
|
||||
"usage": "Użycie: givechar <gracz> <id przedmiotu | nazwa przedmiotu> [ilość]",
|
||||
"usage": "Użycie: givechar <gracz> <avatarId> [ilość]",
|
||||
"given": "Dano %s z poziomem %s dla %s.",
|
||||
"invalid_avatar_id": "Błędne ID postaci.",
|
||||
"invalid_avatar_level": "Błędny poziom postaci.",
|
||||
|
@ -104,7 +104,7 @@
|
||||
"modify": "修改用户账号",
|
||||
"invalid": "无效的UID。",
|
||||
"exists": "账号已存在。",
|
||||
"create": "已创建账号,UID 为 %s。",
|
||||
"create": "已创建 UID 为 %s 的账号。",
|
||||
"delete": "账号已删除。",
|
||||
"no_account": "账号不存在。",
|
||||
"command_usage": "用法:account <create|delete> <用户名> [UID]",
|
||||
@ -163,7 +163,7 @@
|
||||
"description": "给予指定圣遗物"
|
||||
},
|
||||
"giveChar": {
|
||||
"usage": "用法:givechar <玩家> <角色ID|角色名> [等级]",
|
||||
"usage": "用法:givechar <玩家> <角色ID> [等级]",
|
||||
"given": "已将角色 %s [等级 %s] 给与 %s。",
|
||||
"invalid_avatar_id": "无效的角色ID。",
|
||||
"invalid_avatar_level": "无效的角色等级。",
|
||||
@ -251,7 +251,7 @@
|
||||
},
|
||||
"sendMail": {
|
||||
"usage": "用法:sendmail <用户ID|all|help> [模板ID]",
|
||||
"user_not_exist": "用户 %s 不存在。",
|
||||
"user_not_exist": "用户 '%s' 不存在。",
|
||||
"start_composition": "开始撰写邮件。\n请使用 '/sendmail <标题>' 继续。\n你可以随时使用 '/sendmail stop' 停止。",
|
||||
"templates": "邮件模板尚未实装...",
|
||||
"invalid_arguments": "无效的参数。",
|
||||
|
@ -159,7 +159,7 @@
|
||||
"description": "給予指定聖遺物。"
|
||||
},
|
||||
"giveChar": {
|
||||
"usage": "用法:givechar <player> <itemId|itemName> [level]",
|
||||
"usage": "用法:givechar <player> <avatarId> [level]",
|
||||
"given": "已將 %s 等級 %s 給予 %s。",
|
||||
"invalid_avatar_id": "無效的角色ID。",
|
||||
"invalid_avatar_level": "無效的角色等級。.",
|
||||
|
Loading…
Reference in New Issue
Block a user