dapt: adapt to GMLIB v0.13.8

This commit is contained in:
子沐呀
2024-11-04 16:33:20 +08:00
Unverified
parent ea77ebe7a2
commit c16046e405
11 changed files with 93 additions and 91 deletions
+51 -43
View File
@@ -2,99 +2,107 @@
#include "Global.h"
void RegisterDamageDefinition() {
GMLIB::Mod::DamageCause::setCustomDamageCauseEnabled();
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Anvil, "anvil");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::EntityAttack, "mob");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::RamAttack, "mob");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Drowning, "drown");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::FallingBlock, "fallingBlock");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Fire, "inFire");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::FireTick, "onFire");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Fireworks, "fireworks");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::FlyIntoWall, "flyIntoWall");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Freezing, "freeze");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Lava, "lava");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Lightning, "lightningBolt");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Wither, "wither");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Magic, "indirectMagic");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Magma, "hotFloor");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Stalactite, "stalactite");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Stalagmite, "stalagmite");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Starve, "starve");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Suffocation, "inWall");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::SonicBoom, "sonicBoom");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Void, "outOfWorld");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::SelfDestruct, "genericKill");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Projectile, "thrown");
GMLIB::Mod::DamageCause::setVanillaCauseMessage(ActorDamageCause::Thorns, "thorns");
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::setCustomDamageCauseEnabled();
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Anvil, "anvil");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::EntityAttack, "mob");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::RamAttack, "mob");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Drowning, "drown");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::FallingBlock, "fallingBlock");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Fire, "inFire");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::FireTick, "onFire");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Fireworks, "fireworks");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::FlyIntoWall, "flyIntoWall");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Freezing, "freeze");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Lava, "lava");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Lightning, "lightningBolt");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Wither, "wither");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Magic, "indirectMagic");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Magma, "hotFloor");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Stalactite, "stalactite");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Stalagmite, "stalagmite");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Starve, "starve");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Suffocation, "inWall");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::SonicBoom, "sonicBoom");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Void, "outOfWorld");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::SelfDestruct, "genericKill");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Projectile, "thrown");
gmlib::mod::damage::DamageCauseRegistry::setVanillaCauseMessage(ActorDamageCause::Thorns, "thorns");
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::Projectile,
"death.attack.fireball.item",
"minecraft:small_fireball"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::Projectile,
"death.attack.trident.item",
"minecraft:thrown_trident"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::Projectile,
"death.attack.spit",
"minecraft:llama_spit"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::Projectile,
"death.attack.bullet",
"minecraft:shulker_bullet"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::Projectile,
"death.attack.arrow.item",
"minecraft:arrow"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::Projectile,
"death.attack.explosion.player",
"minecraft:fireball"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::Projectile,
"death.attack.mob",
"minecraft:breeze_wind_charge_projectile"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(ActorDamageCause::Magic, "death.attack.magic", "empty");
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::Magic,
"death.attack.magic",
"empty"
);
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::SonicBoom,
"death.attack.sonicBoom",
"minecraft:warden"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(ActorDamageCause::Thorns, "death.attack.generic", "empty");
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::Thorns,
"death.attack.generic",
"empty"
);
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::EntityExplosion,
"death.attack.explosion.player",
"all"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::EntityExplosion,
"minecraft:wither_skull",
"death.attack.witherSkull.item"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::EntityExplosion,
"minecraft:wither_skull_dangerous",
"death.attack.witherSkull.item"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::EntityAttack,
"minecraft:player",
"death.attack.player.item"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::EntityAttack,
"minecraft:bee",
"death.attack.sting.item"
);
GMLIB::Mod::DamageCause::registerCustomDeathMessage(
gmlib::mod::damage::DamageCauseRegistry::registerCustomDeathMessage(
ActorDamageCause::RamAttack,
"minecraft:player",
"death.attack.player.item"
@@ -116,8 +124,8 @@ void ListenEvents() {
});
}
if (config.ConsoleLog.DeathMessage) {
eventBus.emplaceListener<GMLIB::Event::EntityEvent::DeathMessageAfterEvent>(
[](GMLIB::Event::EntityEvent::DeathMessageAfterEvent& ev) {
eventBus.emplaceListener<gmlib::event::entity::DeathMessageAfterEvent>(
[](gmlib::event::entity::DeathMessageAfterEvent& ev) {
auto msg = ev.getDeathMessage();
auto info = tr(msg.first, msg.second);
deathLogger.info(info);
+6 -7
View File
@@ -2,7 +2,7 @@
#include "Global.h"
#include "Language.h"
ll::Logger logger(PLUGIN_NAME);
ll::Logger logger(MOD_NAME);
ll::Logger deathLogger("Death");
ll::Logger infoLogger("Server");
@@ -47,7 +47,7 @@ bool Entry::unload() {
Config& Entry::getConfig() { return mConfig.value(); }
std::optional<LangI18n> Entry::getI18n() { return mI18n; }
std::optional<gmlib::i18n::LangI18n> Entry::getI18n() { return mI18n; }
void Entry::loadI18n() {
mI18n.emplace(getSelf().getLangDir(), getConfig().ServerSideTranslation.Language);
@@ -58,21 +58,20 @@ void Entry::loadI18n() {
}
void Entry::loadResourcePack() {
GMLIB::Mod::VanillaFix::setFixI18nEnabled();
gmlib::tools::VanillaFix::setFixI18nEnabled();
std::string resourcePath = "./plugins/DeathMessages/resource/";
auto resource = GMLIB::Files::ResourceLanguage::ResourceLanguage(resourcePath, PLUGIN_NAME, 0, 8, 0);
auto resource = gmlib::i18n::ResourceI18n(resourcePath, MOD_NAME, 0, 8, 0);
resource.addLanguage("en_US", en_US);
resource.addLanguage("zh_CN", zh_CN);
resource.initLanguage();
}
} // namespace DeathMessages
LL_REGISTER_PLUGIN(DeathMessages::Entry, DeathMessages::Entry::getInstance());
LL_REGISTER_MOD(DeathMessages::Entry, DeathMessages::Entry::getInstance());
std::string tr(std::string const& key, std::vector<std::string> const& params) {
if (auto i18n = DeathMessages::Entry::getInstance()->getI18n()) {
return i18n->get(key, params);
}
return I18nAPI::get(key, params);
return gmlib::world::I18nAPI::get(key, params);
}
+10 -12
View File
@@ -4,41 +4,39 @@
namespace DeathMessages {
using namespace GMLIB::Files::I18n;
class Entry {
public:
static std::unique_ptr<Entry>& getInstance();
Entry(ll::plugin::NativePlugin& self) : mSelf(self) {}
Entry(ll::mod::NativeMod& self) : mSelf(self) {}
[[nodiscard]] ll::plugin::NativePlugin& getSelf() const { return mSelf; }
[[nodiscard]] ll::mod::NativeMod& getSelf() const { return mSelf; }
/// @return True if the plugin is loaded successfully.
/// @return True if the mod is loaded successfully.
bool load();
/// @return True if the plugin is enabled successfully.
/// @return True if the mod is enabled successfully.
bool enable();
/// @return True if the plugin is disabled successfully.
/// @return True if the mod is disabled successfully.
bool disable();
/// @return True if the plugin is unloaded successfully.
/// @return True if the mod is unloaded successfully.
bool unload();
Config& getConfig();
std::optional<LangI18n> getI18n();
std::optional<gmlib::i18n::LangI18n> getI18n();
void loadI18n();
void loadResourcePack();
private:
ll::plugin::NativePlugin& mSelf;
std::optional<Config> mConfig;
std::optional<LangI18n> mI18n;
ll::mod::NativeMod& mSelf;
std::optional<Config> mConfig;
std::optional<gmlib::i18n::LangI18n> mI18n;
};
} // namespace DeathMessages
+3 -4
View File
@@ -1,7 +1,7 @@
#pragma once
#include <include_all.h>
#include <headers/include_all.h>
#define PLUGIN_NAME "DeathMessages"
#define MOD_NAME "DeathMessages"
extern ll::Logger logger;
extern ll::Logger deathLogger;
@@ -10,5 +10,4 @@ extern ll::Logger infoLogger;
extern std::string tr(std::string const& key, std::vector<std::string> const& data = {});
extern void RegisterDamageDefinition();
extern void ListenEvents();
extern void initPlugin();
extern void ListenEvents();
+2 -2
View File
@@ -1,5 +1,5 @@
// This file will make your plugin use LeviLamina's memory operators by default.
// This improves the memory management of your plugin and is recommended to use.
// This file will make your mod use LeviLamina's memory operators by default.
// This improves the memory management of your mod and is recommended to use.
#define LL_MEMORY_OPERATORS