5 Commits

Author SHA1 Message Date
GreenComfyTea
cd1d90b66b Map Primordial Malzeno part names 2023-06-08 09:52:38 +03:00
GreenComfyTea
788152aecd Rename mystery core to anomaly core 2023-06-07 19:44:41 +03:00
GreenComfyTea
e51185892a Change Anomaly Core break hook 2023-06-07 19:44:01 +03:00
GreenComfyTea
6862331ca9 Rename damage types 2023-06-06 11:50:29 +03:00
GreenComfyTea
59f11c4933 Add Anomaly Core Break Damage to Total Damage 2023-06-05 19:36:55 +03:00
16 changed files with 293 additions and 255 deletions

View File

@@ -282,7 +282,7 @@ local function main_loop()
draw_modules(config.current_config.global_settings.module_visibility.reward_screen, "Reward Screen"); draw_modules(config.current_config.global_settings.module_visibility.reward_screen, "Reward Screen");
elseif quest_status.flow_state == quest_status.flow_states.SUMMARY_SCREEN then elseif quest_status.flow_state == quest_status.flow_states.SUMMARY_SCREEN then
draw_modules(config.current_config.global_settings.module_visibility.summary_screen, "Summary Screen"); draw_modules(config.current_config.global_settings.module_visibility.summary_screen, "Summary Screen");
end end
end end
-- #endregion -- #endregion

View File

@@ -50,6 +50,7 @@ local is_boss_enemy_method = enemy_character_base_type_def:get_method("get_isBos
local check_die_method = enemy_character_base_type_def:get_method("checkDie"); local check_die_method = enemy_character_base_type_def:get_method("checkDie");
local stock_direct_marionette_finish_shoot_hit_parts_damage_method = enemy_character_base_type_def:get_method("stockDirectMarionetteFinishShootHitPartsDamage"); local stock_direct_marionette_finish_shoot_hit_parts_damage_method = enemy_character_base_type_def:get_method("stockDirectMarionetteFinishShootHitPartsDamage");
local get_mystery_core_break_damage_rate_method = enemy_character_base_type_def:get_method("getMysteryCoreBreakDamageRate");
local enemy_calc_damage_info_type_def = sdk.find_type_definition("snow.hit.EnemyCalcDamageInfo.AfterCalcInfo_DamageSide"); local enemy_calc_damage_info_type_def = sdk.find_type_definition("snow.hit.EnemyCalcDamageInfo.AfterCalcInfo_DamageSide");
local get_attacker_id_method = enemy_calc_damage_info_type_def:get_method("get_AttackerID"); local get_attacker_id_method = enemy_calc_damage_info_type_def:get_method("get_AttackerID");
@@ -69,8 +70,6 @@ local get_condition_type2_method = enemy_calc_damage_info_type_def:get_method("g
local get_condition_damage3_method = enemy_calc_damage_info_type_def:get_method("get_ConditionDamage3"); local get_condition_damage3_method = enemy_calc_damage_info_type_def:get_method("get_ConditionDamage3");
local get_condition_type3_method = enemy_calc_damage_info_type_def:get_method("get_ConditionDamageType3"); local get_condition_type3_method = enemy_calc_damage_info_type_def:get_method("get_ConditionDamageType3");
local stock_mystery_core_break_damage_type_def = sdk.find_type_definition("snow.enemy.EnemyCharacterBase.stockMysteryCoreBreakDamage");
local quest_manager_type_def = sdk.find_type_definition("snow.QuestManager"); local quest_manager_type_def = sdk.find_type_definition("snow.QuestManager");
local quest_forfeit_method = quest_manager_type_def:get_method("questForfeit"); local quest_forfeit_method = quest_manager_type_def:get_method("questForfeit");
@@ -79,24 +78,27 @@ local packet_quest_forfeit_type_def = sdk.find_type_definition("snow.QuestManage
local dead_player_id_field = packet_quest_forfeit_type_def:get_field("_DeadPlIndex"); local dead_player_id_field = packet_quest_forfeit_type_def:get_field("_DeadPlIndex");
local is_from_host_field = packet_quest_forfeit_type_def:get_field("_IsFromQuestHostPacket"); local is_from_host_field = packet_quest_forfeit_type_def:get_field("_IsFromQuestHostPacket");
local enemy_mystery_core_parts_type_def = sdk.find_type_definition("snow.enemy.EnemyMysteryCoreParts");
local on_break_method = enemy_mystery_core_parts_type_def:get_method("onBreak");
function this.get_damage_source_type(damage_source_type_id, is_marionette_attack) function this.get_damage_source_type(damage_source_type_id, is_marionette_attack)
if is_marionette_attack then if is_marionette_attack then
return "wyvern riding"; return players.damage_types.wyvern_riding;
elseif damage_source_type_id == 0 or damage_source_type_id == 7 or damage_source_type_id == 11 or damage_source_type_id == 13 then elseif damage_source_type_id == 0 or damage_source_type_id == 7 or damage_source_type_id == 11 or damage_source_type_id == 13 then
return "player"; return players.damage_types.player;
elseif damage_source_type_id == 1 or damage_source_type_id == 8 then elseif damage_source_type_id == 1 or damage_source_type_id == 8 then
return "bomb"; return players.damage_types.bombs;
elseif damage_source_type_id == 9 then elseif damage_source_type_id == 9 then
return "kunai"; return players.damage_types.kunai;
elseif damage_source_type_id >= 14 and damage_source_type_id <= 20 then elseif damage_source_type_id >= 14 and damage_source_type_id <= 20 then
return "installation"; return players.damage_types.installations;
elseif damage_source_type_id >= 21 and damage_source_type_id <= 23 then elseif damage_source_type_id >= 21 and damage_source_type_id <= 23 then
return "otomo"; return players.damage_types.otomo;
elseif damage_source_type_id >= 25 and damage_source_type_id <= 32 then elseif damage_source_type_id >= 25 and damage_source_type_id <= 32 then
return "endemic life"; return players.damage_types.endemic_life;
end end
return "other"; return players.damage_types.other;
end end
-- snow.hit.EnemyCalcDamageInfo.AfterCalcInfo_DamageSide -- snow.hit.EnemyCalcDamageInfo.AfterCalcInfo_DamageSide
@@ -226,12 +228,35 @@ function this.update_damage(enemy, enemy_calc_damage_info)
players.update_damage(players.total, damage_source_type, is_large_monster, damage_object); players.update_damage(players.total, damage_source_type, is_large_monster, damage_object);
players.update_damage(player, damage_source_type, is_large_monster, damage_object); players.update_damage(player, damage_source_type, is_large_monster, damage_object);
--[[xy = string.format(
PhysicalPartsVitalDamage(): %s
PhysicalPartsBreakVitalDamage(): %s
PhysicalPartsLossVitalDamage(): %s
PhysicalMultiPartsVitalDamage(): %s
ElementPartsVitalDamage(): %s
ElementPartsBreakVitalDamage(): %s
ElementPartsLossVitalDamage(): %s
ElementMultiPartsVitalDamage(): %s
IsBreakPartsDamage(): %s
,
tostring(enemy_calc_damage_info:get_PhysicalPartsVitalDamage()),
tostring(enemy_calc_damage_info:get_PhysicalPartsBreakVitalDamage()),
tostring(enemy_calc_damage_info:get_PhysicalPartsLossVitalDamage()),
tostring(enemy_calc_damage_info:get_PhysicalMultiPartsVitalDamage()),
tostring(enemy_calc_damage_info:get_ElementPartsVitalDamage()),
tostring(enemy_calc_damage_info:get_ElementPartsBreakVitalDamage()),
tostring(enemy_calc_damage_info:get_ElementPartsLossVitalDamage()),
tostring(enemy_calc_damage_info:get_ElementMultiPartsVitalDamage()),
tostring(enemy_calc_damage_info:get_IsBreakPartsDamage())
);]]
end end
--function damage_hook.on_mystery_core_break(enemy)
--end
function this.cart(dead_player_id, flag_cat_skill_insurance) function this.cart(dead_player_id, flag_cat_skill_insurance)
-- flag_cat_skill_insurance = 0 -- flag_cat_skill_insurance = 0
-- flag_cat_skill_insurance = 1 -- flag_cat_skill_insurance = 1
@@ -309,6 +334,45 @@ function this.on_stock_direct_marionette_finish_shoot_hit_parts_damage(enemy, da
players.update_damage(player, damage_source_type, true, large_monster_damage_object); players.update_damage(player, damage_source_type, true, large_monster_damage_object);
end end
function this.on_anomaly_core_break(anomaly_core_part)
local anomaly_monster = nil;
for enemy, monster in pairs(large_monster.list) do
if monster.is_anomaly then
for part_id, part in pairs(monster.parts) do
if part.anomaly_core_ref == anomaly_core_part then
anomaly_monster = monster;
break;
end
end
if anomaly_monster ~= nil then
break;
end
end
end
if anomaly_monster == nil then
return;
end
local anomaly_core_break_damage_rate = get_mystery_core_break_damage_rate_method:call(anomaly_monster.enemy);
if anomaly_core_break_damage_rate == nil then
return;
end
local anomaly_core_break_damage = utils.math.round(anomaly_core_break_damage_rate * anomaly_monster.max_health);
local damage_object = {};
damage_object.total_damage = anomaly_core_break_damage;
damage_object.physical_damage = 0;
damage_object.elemental_damage = 0;
damage_object.ailment_damage = anomaly_core_break_damage;
players.update_damage(players.total, players.damage_types.anomaly_core, true, damage_object);
end
function this.init_module() function this.init_module()
quest_status = require("MHR_Overlay.Game_Handler.quest_status"); quest_status = require("MHR_Overlay.Game_Handler.quest_status");
players = require("MHR_Overlay.Damage_Meter.players"); players = require("MHR_Overlay.Damage_Meter.players");
@@ -344,11 +408,15 @@ function this.init_module()
return retval; return retval;
end); end);
--sdk.hook(stock_mystery_core_break_damage_type_def, function(args) sdk.hook(on_break_method, function(args)
-- pcall(damage_hook.on_mystery_core_break, sdk.to_managed_object(args[2])); -- break core group is same as hit group?
--end, function(retval) -- break core group is part id which exploded
-- return retval; local anomaly_core_part = sdk.to_managed_object(args[2]);
--end);
this.on_anomaly_core_break(anomaly_core_part);
end, function(retval)
return retval;
end);
end end
return this; return this;

View File

@@ -9,6 +9,7 @@ local quest_status;
local drawing; local drawing;
local language; local language;
local non_players; local non_players;
local utils;
local sdk = sdk; local sdk = sdk;
local tostring = tostring; local tostring = tostring;
@@ -51,6 +52,22 @@ this.display_list = {};
this.highlighted_damage_UI = nil; this.highlighted_damage_UI = nil;
this.damage_types = {
["player"] = "player",
["bombs"] = "bombs",
["kunai"] = "kunai",
["installations"] = "installations",
["otomo"] = "otomo",
["wyvern_riding"] = "wyvern_riding",
["poison"] = "poison",
["otomo_poison"] = "otomo_poison",
["blast"] = "blast",
["otomo_blast"] = "otomo_blast",
["endemic_life"] = "endemic_life",
["anomaly_core"] = "anomaly_core",
["other"] = "other"
};
this.types = { this.types = {
["myself"] = 0, ["myself"] = 0,
["other_player"] = 1, ["other_player"] = 1,
@@ -60,8 +77,7 @@ this.types = {
["servant_otomo"] = 16, ["servant_otomo"] = 16,
["total"] = 32, ["total"] = 32,
["highlight"] = 64 ["highlight"] = 64
};
}
function this.new(id, name, master_rank, hunter_rank, type) function this.new(id, name, master_rank, hunter_rank, type)
local player = {}; local player = {};
@@ -78,7 +94,7 @@ function this.new(id, name, master_rank, hunter_rank, type)
player.first_hit_time = -1; player.first_hit_time = -1;
player.dps = 0; player.dps = 0;
player.small_monsters = this.init_damage_sources() player.small_monsters = this.init_damage_sources();
player.large_monsters = this.init_damage_sources(); player.large_monsters = this.init_damage_sources();
player.display = {}; player.display = {};
@@ -98,78 +114,15 @@ end
function this.init_damage_sources() function this.init_damage_sources()
local monster_type = {}; local monster_type = {};
monster_type.total_damage = 0; for damage_type_name, _ in pairs(this.damage_types) do
monster_type.physical_damage = 0; monster_type[damage_type_name] = {
monster_type.elemental_damage = 0; total_damage = 0,
monster_type.ailment_damage = 0; physical_damage = 0,
elemental_damage = 0,
monster_type.bombs = {}; ailment_damage = 0
monster_type.bombs.total_damage = 0; };
monster_type.bombs.physical_damage = 0; end
monster_type.bombs.elemental_damage = 0;
monster_type.bombs.ailment_damage = 0;
monster_type.kunai = {};
monster_type.kunai.total_damage = 0;
monster_type.kunai.physical_damage = 0;
monster_type.kunai.elemental_damage = 0;
monster_type.kunai.ailment_damage = 0;
monster_type.installations = {};
monster_type.installations.total_damage = 0;
monster_type.installations.physical_damage = 0;
monster_type.installations.elemental_damage = 0;
monster_type.installations.ailment_damage = 0;
monster_type.otomo = {};
monster_type.otomo.total_damage = 0;
monster_type.otomo.physical_damage = 0;
monster_type.otomo.elemental_damage = 0;
monster_type.otomo.ailment_damage = 0;
monster_type.wyvern_riding = {};
monster_type.wyvern_riding.total_damage = 0;
monster_type.wyvern_riding.physical_damage = 0;
monster_type.wyvern_riding.elemental_damage = 0;
monster_type.wyvern_riding.ailment_damage = 0;
monster_type.poison = {};
monster_type.poison.total_damage = 0;
monster_type.poison.physical_damage = 0;
monster_type.poison.elemental_damage = 0;
monster_type.poison.ailment_damage = 0;
monster_type.otomo_poison = {};
monster_type.otomo_poison.total_damage = 0;
monster_type.otomo_poison.physical_damage = 0;
monster_type.otomo_poison.elemental_damage = 0;
monster_type.otomo_poison.ailment_damage = 0;
monster_type.blast = {};
monster_type.blast.total_damage = 0;
monster_type.blast.physical_damage = 0;
monster_type.blast.elemental_damage = 0;
monster_type.blast.ailment_damage = 0;
monster_type.otomo_blast = {};
monster_type.otomo_blast.total_damage = 0;
monster_type.otomo_blast.physical_damage = 0;
monster_type.otomo_blast.elemental_damage = 0;
monster_type.otomo_blast.ailment_damage = 0;
monster_type.endemic_life = {};
monster_type.endemic_life.total_damage = 0;
monster_type.endemic_life.physical_damage = 0;
monster_type.endemic_life.elemental_damage = 0;
monster_type.endemic_life.ailment_damage = 0;
monster_type.other = {};
monster_type.other.total_damage = 0;
monster_type.other.physical_damage = 0;
monster_type.other.elemental_damage = 0;
monster_type.other.ailment_damage = 0;
return monster_type; return monster_type;
end end
@@ -191,37 +144,10 @@ function this.update_damage(player, damage_source_type, is_large_monster, damage
player.first_hit_time = time.total_elapsed_script_seconds; player.first_hit_time = time.total_elapsed_script_seconds;
end end
local player_monster_type = player.small_monsters;
if is_large_monster then if is_large_monster then
player_monster_type = player.large_monsters; this.merge_damage(player.large_monsters[damage_source_type], damage_object);
end
if damage_source_type == "player" then
this.merge_damage(player_monster_type, damage_object);
elseif damage_source_type == "bomb" then
this.merge_damage(player_monster_type.bombs, damage_object);
elseif damage_source_type == "kunai" then
this.merge_damage(player_monster_type.kunai, damage_object);
elseif damage_source_type == "installation" then
this.merge_damage(player_monster_type.installations, damage_object);
elseif damage_source_type == "otomo" then
this.merge_damage(player_monster_type.otomo, damage_object);
elseif damage_source_type == "wyvern riding" then
this.merge_damage(player_monster_type.wyvern_riding, damage_object);
elseif damage_source_type == "poison" then
this.merge_damage(player_monster_type.poison, damage_object);
elseif damage_source_type == "blast" then
this.merge_damage(player_monster_type.blast, damage_object);
elseif damage_source_type == "otomo poison" then
this.merge_damage(player_monster_type.otomo_poison, damage_object);
elseif damage_source_type == "otomo blast" then
this.merge_damage(player_monster_type.otomo_blast, damage_object);
elseif damage_source_type == "endemic life" then
this.merge_damage(player_monster_type.endemic_life, damage_object);
elseif damage_source_type == "other" then
this.merge_damage(player_monster_type.other, damage_object);
else else
this.merge_damage(player_monster_type, damage_object); this.merge_damage(player.small_monsters[damage_source_type], damage_object);
end end
this.update_display(player); this.update_display(player);
@@ -250,23 +176,23 @@ function this.update_display(player)
end end
for _, monster_type in ipairs(monster_types) do for _, monster_type in ipairs(monster_types) do
if cached_config.tracked_damage_types.player_damage then if cached_config.tracked_damage_types.players then
this.merge_damage(player.display, monster_type); this.merge_damage(player.display, monster_type.player);
end end
if cached_config.tracked_damage_types.bomb_damage then if cached_config.tracked_damage_types.bombs then
this.merge_damage(player.display, monster_type.bombs); this.merge_damage(player.display, monster_type.bombs);
end end
if cached_config.tracked_damage_types.kunai_damage then if cached_config.tracked_damage_types.kunai then
this.merge_damage(player.display, monster_type.kunai); this.merge_damage(player.display, monster_type.kunai);
end end
if cached_config.tracked_damage_types.installation_damage then if cached_config.tracked_damage_types.installations then
this.merge_damage(player.display, monster_type.installations); this.merge_damage(player.display, monster_type.installations);
end end
if cached_config.tracked_damage_types.otomo_damage then if cached_config.tracked_damage_types.otomos then
if player.type == this.types.myself then if player.type == this.types.myself then
if not cached_config.settings.show_my_otomos_separately then if not cached_config.settings.show_my_otomos_separately then
@@ -303,11 +229,11 @@ function this.update_display(player)
end end
end end
if cached_config.tracked_damage_types.wyvern_riding_damage then if cached_config.tracked_damage_types.wyvern_riding then
this.merge_damage(player.display, monster_type.wyvern_riding); this.merge_damage(player.display, monster_type.wyvern_riding);
end end
if cached_config.tracked_damage_types.poison_damage then if cached_config.tracked_damage_types.poison then
this.merge_damage(player.display, monster_type.poison); this.merge_damage(player.display, monster_type.poison);
if player.type == this.types.myself then if player.type == this.types.myself then
@@ -347,7 +273,7 @@ function this.update_display(player)
end end
end end
if cached_config.tracked_damage_types.blast_damage then if cached_config.tracked_damage_types.blast then
this.merge_damage(player.display, monster_type.blast); this.merge_damage(player.display, monster_type.blast);
if player.type == this.types.myself then if player.type == this.types.myself then
@@ -386,11 +312,15 @@ function this.update_display(player)
end end
end end
if cached_config.tracked_damage_types.endemic_life_damage then if cached_config.tracked_damage_types.endemic_life then
this.merge_damage(player.display, monster_type.endemic_life); this.merge_damage(player.display, monster_type.endemic_life);
end end
if cached_config.tracked_damage_types.other_damage then if cached_config.tracked_damage_types.anomaly_cores then
this.merge_damage(player.display, monster_type.anomaly_core);
end
if cached_config.tracked_damage_types.other then
this.merge_damage(player.display, monster_type.other); this.merge_damage(player.display, monster_type.other);
end end
end end
@@ -702,6 +632,7 @@ function this.init_module()
drawing = require("MHR_Overlay.UI.drawing"); drawing = require("MHR_Overlay.UI.drawing");
language = require("MHR_Overlay.Misc.language"); language = require("MHR_Overlay.Misc.language");
non_players = require("MHR_Overlay.Damage_Meter.non_players"); non_players = require("MHR_Overlay.Damage_Meter.non_players");
utils = require("MHR_Overlay.Misc.utils");
this.init(); this.init();
end end

View File

@@ -1495,7 +1495,7 @@ function this.init_default()
}, },
body_parts = { body_parts = {
visibility = true, visibility = false,
offset = { offset = {
x = 10, x = 10,
@@ -5918,16 +5918,17 @@ function this.init_default()
}, },
tracked_damage_types = { tracked_damage_types = {
player_damage = true, players = true,
bomb_damage = true, bombs = true,
kunai_damage = true, kunai = true,
installation_damage = true, -- hunting_installations like ballista, cannon, etc. installations = true, -- hunting_installations like ballista, cannon, etc.
otomo_damage = true, otomos = true,
wyvern_riding_damage = true, wyvern_riding = true,
poison_damage = true, poison = true,
blast_damage = true, blast = true,
endemic_life_damage = true, endemic_life = true,
other_damage = true -- note that installations during narwa fight are counted as other damage anomaly_cores = true,
other = true -- note that installations during narwa fight are counted as other damage
}, },
spacing = { spacing = {

View File

@@ -377,14 +377,18 @@ this.default_language = {
small_monsters = "Small Monsters", small_monsters = "Small Monsters",
large_monsters = "Large Monsters", large_monsters = "Large Monsters",
player_damage = "Player Damage", players = "Players",
bomb_damage = "Bomb Damage", bombs = "Bombs",
kunai_damage = "Kunai Damage", kunai = "Kunai",
installation_damage = "Installation Damage", installations = "Installations",
otomo_damage = "Buddy Damage", otomos = "Buddies",
monster_damage = "Monster Damage", monsters = "Monsters",
poison_damage = "Poison Damage", wyvern_riding = "Wyvern Riding",
blast_damage = "Blast Damage", poison = "Poison",
blast = "Blast",
endemic_life = "Endemic Life",
anomaly_cores = "Anomaly Cores",
other = "Other",
damage = "Damage", damage = "Damage",
@@ -466,10 +470,6 @@ this.default_language = {
master_rank = "Master Rank", master_rank = "Master Rank",
other_damage = "Other Damage",
wyvern_riding_damage = "Wyvern Riding Damage",
endemic_life_damage = "Endemic Life Damage",
hide_myself = "Hide Myself", hide_myself = "Hide Myself",
hide_other_players = "Hide Other Players", hide_other_players = "Hide Other Players",
hide_servants = "Hide Followers", hide_servants = "Hide Followers",

View File

@@ -543,7 +543,7 @@ function this.init()
language.current_language.parts.right_foreleg, language.current_language.parts.right_foreleg,
language.current_language.parts.hind_legs, language.current_language.parts.hind_legs,
language.current_language.parts.wings, language.current_language.parts.wings,
language.current_language.parts.tail, language.current_language.parts.tail
}, },
[19] = -- Daimyo Hermitaur 19 [19] = -- Daimyo Hermitaur 19
{ {
@@ -920,6 +920,27 @@ function this.init()
language.current_language.parts.left_leg, language.current_language.parts.left_leg,
language.current_language.parts.right_leg language.current_language.parts.right_leg
}, },
--SUNBREAK BONUS UPDATE
[1412] = -- Primordial Malzeno 1412
{
language.current_language.parts.head,
language.current_language.parts.torso,
language.current_language.parts.left_foreleg,
language.current_language.parts.right_foreleg,
language.current_language.parts.hind_legs,
language.current_language.parts.wings,
language.current_language.parts.tail,
}
}; };
end end

View File

@@ -755,20 +755,20 @@ function this.apply_ailment_damage(monster, ailment_type, ailment_damage)
return; return;
end end
local damage_source_type = ""; local damage_source_type = players.damage_types.other;
local otomo_damage_source_type = ""; local otomo_damage_source_type = players.damage_types.other;
local buildup_share = monster.ailments[ailment_type].buildup_share; local buildup_share = monster.ailments[ailment_type].buildup_share;
local otomo_buildup_share = monster.ailments[ailment_type].otomo_buildup_share; local otomo_buildup_share = monster.ailments[ailment_type].otomo_buildup_share;
if ailment_type == this.poison_id then if ailment_type == this.poison_id then
damage_source_type = "poison"; damage_source_type = players.damage_types.poison;
otomo_damage_source_type = "otomo poison"; otomo_damage_source_type = players.damage_types.otomo_poison;
buildup_share = monster.ailments[ailment_type].cached_buildup_share; buildup_share = monster.ailments[ailment_type].cached_buildup_share;
otomo_buildup_share = monster.ailments[ailment_type].cached_otomo_buildup_share; otomo_buildup_share = monster.ailments[ailment_type].cached_otomo_buildup_share;
elseif ailment_type == this.blast_id then elseif ailment_type == this.blast_id then
damage_source_type = "blast"; damage_source_type = players.damage_types.blast;
otomo_damage_source_type = "otomo blast"; otomo_damage_source_type = players.damage_types.otomo_blast;
else else
return; return;
end end

View File

@@ -70,6 +70,7 @@ function this.new(id, name)
part.break_count = 0; part.break_count = 0;
part.break_max_count = 0; part.break_max_count = 0;
part.anomaly_ref = nil;
part.anomaly_health = -9; part.anomaly_health = -9;
part.anomaly_max_health = -10; part.anomaly_max_health = -10;
part.anomaly_health_percentage = 0; part.anomaly_health_percentage = 0;
@@ -160,7 +161,7 @@ function this.update_loss(part, part_loss_current, part_loss_max, is_severed)
end end
function this.update_anomaly(part, part_anomaly_current, part_anomaly_max, part_is_active) function this.update_anomaly(part, part_anomaly_ref, part_anomaly_current, part_anomaly_max, part_is_active)
if part.anomaly_health ~= part_anomaly_current then if part.anomaly_health ~= part_anomaly_current then
part.last_change_time = time.total_elapsed_script_seconds; part.last_change_time = time.total_elapsed_script_seconds;
end end
@@ -173,10 +174,11 @@ function this.update_anomaly(part, part_anomaly_current, part_anomaly_max, part_
part.last_change_time = time.total_elapsed_script_seconds; part.last_change_time = time.total_elapsed_script_seconds;
end end
part.anomaly_core_ref = part_anomaly_ref;
part.anomaly_health = part_anomaly_current; part.anomaly_health = part_anomaly_current;
part.anomaly_max_health = part_anomaly_max; part.anomaly_max_health = part_anomaly_max;
part.anomaly_is_active = part_is_active; part.anomaly_is_active = part_is_active;
if part.anomaly_max_health ~= 0 then if part.anomaly_max_health ~= 0 then
part.anomaly_health_percentage = part.anomaly_health / part.anomaly_max_health; part.anomaly_health_percentage = part.anomaly_health / part.anomaly_max_health;
end end

View File

@@ -114,6 +114,7 @@ function this.new(enemy)
monster.king_border = 10; monster.king_border = 10;
monster.crown = ""; monster.crown = "";
monster.is_anomaly = false;
monster.parts = {}; monster.parts = {};
monster.ailments = ailments.init_ailments(); monster.ailments = ailments.init_ailments();
@@ -253,6 +254,7 @@ local enemy_mystery_core_parts_type_def = sdk.find_type_definition("snow.enemy.E
local core_parts_get_vital_method = enemy_mystery_core_parts_type_def:get_method("get_Vital"); local core_parts_get_vital_method = enemy_mystery_core_parts_type_def:get_method("get_Vital");
local core_parts_get_is_active_method = enemy_mystery_core_parts_type_def:get_method("get_IsActive"); local core_parts_get_is_active_method = enemy_mystery_core_parts_type_def:get_method("get_IsActive");
local core_parts_get_dying_vital_threashold_method = enemy_mystery_core_parts_type_def:get_method("get_DyingVitalThreashold"); local core_parts_get_dying_vital_threashold_method = enemy_mystery_core_parts_type_def:get_method("get_DyingVitalThreashold");
local on_break_method = enemy_mystery_core_parts_type_def:get_method("onBreak");
function this.init(monster, enemy) function this.init(monster, enemy)
local enemy_type = enemy_type_field:get_data(enemy); local enemy_type = enemy_type_field:get_data(enemy);
@@ -331,6 +333,7 @@ function this.init(monster, enemy)
local mystery_param = get_mystery_param_method:call(enemy); local mystery_param = get_mystery_param_method:call(enemy);
local is_anomaly = mystery_param ~= nil; local is_anomaly = mystery_param ~= nil;
monster.is_anomaly = is_anomaly;
monster.is_capturable = is_capture_enable and not is_anomaly; monster.is_capturable = is_capture_enable and not is_anomaly;
end end
@@ -921,7 +924,7 @@ function this.update_anomaly_parts(enemy, monster, mystery_param)
goto continue; goto continue;
end end
body_part.update_anomaly(part, part_current, part_max, part_is_active); body_part.update_anomaly(part, core_part, part_current, part_max, part_is_active);
end end

View File

@@ -1740,62 +1740,68 @@ function this.draw_damage_meter_UI()
if imgui.tree_node(language.current_language.customization_menu.tracked_damage_types) then if imgui.tree_node(language.current_language.customization_menu.tracked_damage_types) then
changed, cached_config.tracked_damage_types.player_damage = imgui.checkbox( changed, cached_config.tracked_damage_types.players = imgui.checkbox(
language.current_language.customization_menu.player_damage, cached_config.tracked_damage_types.player_damage); language.current_language.customization_menu.players, cached_config.tracked_damage_types.players);
config_changed = config_changed or changed; config_changed = config_changed or changed;
damage_display_changed = damage_display_changed or changed; damage_display_changed = damage_display_changed or changed;
changed, cached_config.tracked_damage_types.bomb_damage = imgui.checkbox( changed, cached_config.tracked_damage_types.bombs = imgui.checkbox(
language.current_language.customization_menu.bomb_damage, cached_config.tracked_damage_types.bomb_damage); language.current_language.customization_menu.bombs, cached_config.tracked_damage_types.bombs);
config_changed = config_changed or changed; config_changed = config_changed or changed;
damage_display_changed = damage_display_changed or changed; damage_display_changed = damage_display_changed or changed;
changed, cached_config.tracked_damage_types.kunai_damage = imgui.checkbox( changed, cached_config.tracked_damage_types.kunai = imgui.checkbox(
language.current_language.customization_menu.kunai_damage, cached_config.tracked_damage_types.kunai_damage); language.current_language.customization_menu.kunai, cached_config.tracked_damage_types.kunai);
config_changed = config_changed or changed; config_changed = config_changed or changed;
damage_display_changed = damage_display_changed or changed; damage_display_changed = damage_display_changed or changed;
changed, cached_config.tracked_damage_types.installation_damage = imgui.checkbox( changed, cached_config.tracked_damage_types.installations = imgui.checkbox(
language.current_language.customization_menu.installation_damage, cached_config.tracked_damage_types.installation_damage); language.current_language.customization_menu.installations, cached_config.tracked_damage_types.installations);
config_changed = config_changed or changed; config_changed = config_changed or changed;
damage_display_changed = damage_display_changed or changed; damage_display_changed = damage_display_changed or changed;
changed, cached_config.tracked_damage_types.otomo_damage = imgui.checkbox( changed, cached_config.tracked_damage_types.otomos = imgui.checkbox(
language.current_language.customization_menu.otomo_damage, cached_config.tracked_damage_types.otomo_damage); language.current_language.customization_menu.otomos, cached_config.tracked_damage_types.otomos);
config_changed = config_changed or changed; config_changed = config_changed or changed;
damage_display_changed = damage_display_changed or changed; damage_display_changed = damage_display_changed or changed;
changed, cached_config.tracked_damage_types.wyvern_riding_damage = imgui.checkbox( changed, cached_config.tracked_damage_types.wyvern_riding = imgui.checkbox(
language.current_language.customization_menu.wyvern_riding_damage, cached_config.tracked_damage_types.wyvern_riding_damage); language.current_language.customization_menu.wyvern_riding, cached_config.tracked_damage_types.wyvern_riding);
config_changed = config_changed or changed; config_changed = config_changed or changed;
damage_display_changed = damage_display_changed or changed; damage_display_changed = damage_display_changed or changed;
changed, cached_config.tracked_damage_types.poison_damage = imgui.checkbox( changed, cached_config.tracked_damage_types.poison = imgui.checkbox(
language.current_language.customization_menu.poison_damage, cached_config.tracked_damage_types.poison_damage); language.current_language.customization_menu.poison, cached_config.tracked_damage_types.poison);
config_changed = config_changed or changed; config_changed = config_changed or changed;
damage_display_changed = damage_display_changed or changed; damage_display_changed = damage_display_changed or changed;
changed, cached_config.tracked_damage_types.blast_damage = imgui.checkbox( changed, cached_config.tracked_damage_types.blast = imgui.checkbox(
language.current_language.customization_menu.blast_damage, cached_config.tracked_damage_types.blast_damage); language.current_language.customization_menu.blast, cached_config.tracked_damage_types.blast);
config_changed = config_changed or changed; config_changed = config_changed or changed;
damage_display_changed = damage_display_changed or changed; damage_display_changed = damage_display_changed or changed;
changed, cached_config.tracked_damage_types.endemic_life_damage = imgui.checkbox( changed, cached_config.tracked_damage_types.endemic_life = imgui.checkbox(
language.current_language.customization_menu.endemic_life_damage, cached_config.tracked_damage_types.endemic_life_damage); language.current_language.customization_menu.endemic_life, cached_config.tracked_damage_types.endemic_life);
config_changed = config_changed or changed; config_changed = config_changed or changed;
damage_display_changed = damage_display_changed or changed; damage_display_changed = damage_display_changed or changed;
changed, cached_config.tracked_damage_types.other_damage = imgui.checkbox( changed, cached_config.tracked_damage_types.anomaly_cores = imgui.checkbox(
language.current_language.customization_menu.other_damage, cached_config.tracked_damage_types.other_damage); language.current_language.customization_menu.anomaly_cores, cached_config.tracked_damage_types.anomaly_cores);
config_changed = config_changed or changed;
damage_display_changed = damage_display_changed or changed;
changed, cached_config.tracked_damage_types.other = imgui.checkbox(
language.current_language.customization_menu.other, cached_config.tracked_damage_types.other);
config_changed = config_changed or changed; config_changed = config_changed or changed;
damage_display_changed = damage_display_changed or changed; damage_display_changed = damage_display_changed or changed;

View File

@@ -49,6 +49,7 @@
"ailments": "Ailments", "ailments": "Ailments",
"all_UI": "All UI", "all_UI": "All UI",
"anchor": "Anchor", "anchor": "Anchor",
"anomaly_cores": "Anomaly Cores",
"anomaly_filter": "Anomaly Core", "anomaly_filter": "Anomaly Core",
"anomaly_health": "Anomaly Core Health", "anomaly_health": "Anomaly Core Health",
"anomaly_health_percentage": "Anomaly Core Health Percentage", "anomaly_health_percentage": "Anomaly Core Health Percentage",
@@ -57,10 +58,10 @@
"auto_highlight": "Auto-highlight", "auto_highlight": "Auto-highlight",
"background": "Background", "background": "Background",
"bar": "Bar", "bar": "Bar",
"blast_damage": "Blast Damage", "blast": "Blast",
"body_parts": "Body Parts", "body_parts": "Body Parts",
"bold": "Bold", "bold": "Bold",
"bomb_damage": "Bomb Damage", "bombs": "Bombs",
"bottom_left": "Bottom-Left", "bottom_left": "Bottom-Left",
"bottom_right": "Bottom-Right", "bottom_right": "Bottom-Right",
"bottom_to_top": "Bottom to Top", "bottom_to_top": "Bottom to Top",
@@ -111,8 +112,8 @@
"dynamically_positioned": "Dynamically Positioned", "dynamically_positioned": "Dynamically Positioned",
"enable_for": "Enable for", "enable_for": "Enable for",
"enabled": "Enabled", "enabled": "Enabled",
"endemic_life": "Endemic Life",
"endemic_life_UI": "Endemic Life UI", "endemic_life_UI": "Endemic Life UI",
"endemic_life_damage": "Endemic Life Damage",
"family": "Family", "family": "Family",
"farthest": "Farthest", "farthest": "Farthest",
"fight_time": "Fight Time", "fight_time": "Fight Time",
@@ -171,11 +172,11 @@
"in_training_area": "In Training Area", "in_training_area": "In Training Area",
"include": "Include", "include": "Include",
"inside": "Inside", "inside": "Inside",
"installation_damage": "Installation Damage", "installations": "Installations",
"italic": "Italic", "italic": "Italic",
"join_time": "Join Time", "join_time": "Join Time",
"killcam": "Killcam", "killcam": "Killcam",
"kunai_damage": "Kunai Damage", "kunai": "Kunai",
"language": "Language", "language": "Language",
"large_monster_UI": "Large Monster UI", "large_monster_UI": "Large Monster UI",
"large_monster_dynamic_UI": "Large Monster Dynamic UI", "large_monster_dynamic_UI": "Large Monster Dynamic UI",
@@ -204,10 +205,10 @@
"module_visibility_based_on_game_state": "Module Visibility based on Game State", "module_visibility_based_on_game_state": "Module Visibility based on Game State",
"modules": "Modules", "modules": "Modules",
"monster_can_be_captured": "Monster can be captured", "monster_can_be_captured": "Monster can be captured",
"monster_damage": "Monster Damage",
"monster_id": "Monster ID", "monster_id": "Monster ID",
"monster_name": "Monster Name", "monster_name": "Monster Name",
"monster_name_label": "Monster Name Label", "monster_name_label": "Monster Name Label",
"monsters": "Monsters",
"my_damage_bar_location": "My Damage Bar Location", "my_damage_bar_location": "My Damage Bar Location",
"my_otomos": "My Buddies", "my_otomos": "My Buddies",
"myself": "Myself", "myself": "Myself",
@@ -220,10 +221,10 @@
"offset_is_relative_to_parts": "Offset is Relative to Parts", "offset_is_relative_to_parts": "Offset is Relative to Parts",
"opacity_falloff": "Opacity Falloff", "opacity_falloff": "Opacity Falloff",
"orientation": "Orientation", "orientation": "Orientation",
"other_damage": "Other Damage", "other": "Other",
"other_player_otomos": "Other Player Buddies", "other_player_otomos": "Other Player Buddies",
"other_players": "Other Players", "other_players": "Other Players",
"otomo_damage": "Buddy Damage", "otomos": "Buddies",
"outline": "Outline", "outline": "Outline",
"outside": "Outside", "outside": "Outside",
"part_health": "Part Health", "part_health": "Part Health",
@@ -231,12 +232,12 @@
"part_name_label": "Part Name Label", "part_name_label": "Part Name Label",
"percentage_label": "Percentage Label", "percentage_label": "Percentage Label",
"performance": "Performance", "performance": "Performance",
"player_damage": "Player Damage",
"player_name_label": "Player Name Label", "player_name_label": "Player Name Label",
"player_name_size_limit": "Player Name Size Limit", "player_name_size_limit": "Player Name Size Limit",
"player_spacing": "Player Spacing", "player_spacing": "Player Spacing",
"players": "Players",
"playing_quest": "Playing Quest", "playing_quest": "Playing Quest",
"poison_damage": "Poison Damage", "poison": "Poison",
"position": "Position", "position": "Position",
"press_any_key": "Press any key...", "press_any_key": "Press any key...",
"prioritize_large_monsters": "Large Monsters on High Priority", "prioritize_large_monsters": "Large Monsters on High Priority",
@@ -316,7 +317,7 @@
"visible": "Visible", "visible": "Visible",
"width": "Width", "width": "Width",
"world_offset": "World Offset", "world_offset": "World Offset",
"wyvern_riding_damage": "Wyvern Riding Damage", "wyvern_riding": "Wyvern Riding",
"x": "X", "x": "X",
"y": "Y", "y": "Y",
"z": "Z" "z": "Z"

View File

@@ -49,6 +49,7 @@
"ailments": "状態異常表示", "ailments": "状態異常表示",
"all_UI": "全てのUI", "all_UI": "全てのUI",
"anchor": "固定", "anchor": "固定",
"anomaly_cores": "Anomaly Cores",
"anomaly_filter": "Anomaly Core", "anomaly_filter": "Anomaly Core",
"anomaly_health": "Anomaly Core Health", "anomaly_health": "Anomaly Core Health",
"anomaly_health_percentage": "Anomaly Core Health Percentage", "anomaly_health_percentage": "Anomaly Core Health Percentage",
@@ -57,10 +58,10 @@
"auto_highlight": "Auto-highlight", "auto_highlight": "Auto-highlight",
"background": "背景色", "background": "背景色",
"bar": "バー", "bar": "バー",
"blast_damage": "爆破ダメージ", "blast": "爆破",
"body_parts": "部位", "body_parts": "部位",
"bold": "ボールド", "bold": "ボールド",
"bomb_damage": "爆弾ダメージ", "bombs": "Bombs",
"bottom_left": "左下", "bottom_left": "左下",
"bottom_right": "右下", "bottom_right": "右下",
"bottom_to_top": "Bottom to Top", "bottom_to_top": "Bottom to Top",
@@ -111,8 +112,8 @@
"dynamically_positioned": "モンスターに追随して表示", "dynamically_positioned": "モンスターに追随して表示",
"enable_for": "有効にする", "enable_for": "有効にする",
"enabled": "有効", "enabled": "有効",
"endemic_life": "Endemic Life",
"endemic_life_UI": "環境生物UI", "endemic_life_UI": "環境生物UI",
"endemic_life_damage": "環境生物のダメージ",
"family": "Family", "family": "Family",
"farthest": "Farthest", "farthest": "Farthest",
"fight_time": "戦闘時間", "fight_time": "戦闘時間",
@@ -171,11 +172,11 @@
"in_training_area": "In Training Area", "in_training_area": "In Training Area",
"include": "含める情報", "include": "含める情報",
"inside": "Inside", "inside": "Inside",
"installation_damage": "設備のダメージ", "installations": "Installations",
"italic": "イタリック", "italic": "イタリック",
"join_time": "参加時間", "join_time": "参加時間",
"killcam": "Killcam", "killcam": "Killcam",
"kunai_damage": "クナイダメージ", "kunai": "Kunai",
"language": "表示言語", "language": "表示言語",
"large_monster_UI": "大型モンスターUI", "large_monster_UI": "大型モンスターUI",
"large_monster_dynamic_UI": "大型モンスターのダイナミック表示UI", "large_monster_dynamic_UI": "大型モンスターのダイナミック表示UI",
@@ -204,10 +205,10 @@
"module_visibility_based_on_game_state": "Module Visibility based on Game State", "module_visibility_based_on_game_state": "Module Visibility based on Game State",
"modules": "モジュール", "modules": "モジュール",
"monster_can_be_captured": "捕獲可能なモンスター", "monster_can_be_captured": "捕獲可能なモンスター",
"monster_damage": "モンスターダメージ",
"monster_id": "モンスターID", "monster_id": "モンスターID",
"monster_name": "モンスター名", "monster_name": "モンスター名",
"monster_name_label": "モンスター名ラベル", "monster_name_label": "モンスター名ラベル",
"monsters": "Monsters",
"my_damage_bar_location": "自身のダメージバーの場所", "my_damage_bar_location": "自身のダメージバーの場所",
"my_otomos": "My Buddies", "my_otomos": "My Buddies",
"myself": "Myself", "myself": "Myself",
@@ -220,10 +221,10 @@
"offset_is_relative_to_parts": "部位表示に対する相対的な位置", "offset_is_relative_to_parts": "部位表示に対する相対的な位置",
"opacity_falloff": "透明度を上げる", "opacity_falloff": "透明度を上げる",
"orientation": "並べ方", "orientation": "並べ方",
"other_damage": "その他のダメージ", "other": "Other",
"other_player_otomos": "Other Player Buddies", "other_player_otomos": "Other Player Buddies",
"other_players": "他のプレイヤー", "other_players": "他のプレイヤー",
"otomo_damage": "オトモのダメージ", "otomos": "Buddies",
"outline": "Outline", "outline": "Outline",
"outside": "Outside", "outside": "Outside",
"part_health": "部位体力", "part_health": "部位体力",
@@ -231,12 +232,12 @@
"part_name_label": "部位名ラベル", "part_name_label": "部位名ラベル",
"percentage_label": "パーセンテージラベル", "percentage_label": "パーセンテージラベル",
"performance": "パフォーマンス", "performance": "パフォーマンス",
"player_damage": "プレイヤーダメージ",
"player_name_label": "プレイヤー名ラベル", "player_name_label": "プレイヤー名ラベル",
"player_name_size_limit": "プレイヤー名のサイズ上限", "player_name_size_limit": "プレイヤー名のサイズ上限",
"player_spacing": "プレイヤー表示の間隔", "player_spacing": "プレイヤー表示の間隔",
"players": "Players",
"playing_quest": "Playing Quest", "playing_quest": "Playing Quest",
"poison_damage": "毒ダメージ", "poison": "毒",
"position": "位置", "position": "位置",
"press_any_key": "何かボタンを押してください。", "press_any_key": "何かボタンを押してください。",
"prioritize_large_monsters": "大型モンスターを優先する", "prioritize_large_monsters": "大型モンスターを優先する",
@@ -316,7 +317,7 @@
"visible": "表示する", "visible": "表示する",
"width": "幅", "width": "幅",
"world_offset": "表示位置", "world_offset": "表示位置",
"wyvern_riding_damage": "操竜ダメージ", "wyvern_riding": "Wyvern Riding",
"x": "X", "x": "X",
"y": "Y", "y": "Y",
"z": "Z" "z": "Z"

View File

@@ -49,6 +49,7 @@
"ailments": "상태이상", "ailments": "상태이상",
"all_UI": "모든 UI", "all_UI": "모든 UI",
"anchor": "기준", "anchor": "기준",
"anomaly_cores": "Anomaly Cores",
"anomaly_filter": "Anomaly Core", "anomaly_filter": "Anomaly Core",
"anomaly_health": "Anomaly Core Health", "anomaly_health": "Anomaly Core Health",
"anomaly_health_percentage": "Anomaly Core Health Percentage", "anomaly_health_percentage": "Anomaly Core Health Percentage",
@@ -57,10 +58,10 @@
"auto_highlight": "자동 타겟 설정", "auto_highlight": "자동 타겟 설정",
"background": "배경색", "background": "배경색",
"bar": "막대", "bar": "막대",
"blast_damage": "폭파 대미지", "blast": "폭파",
"body_parts": "부위", "body_parts": "부위",
"bold": "굵게", "bold": "굵게",
"bomb_damage": "폭탄 대미지", "bombs": "Bombs",
"bottom_left": "좌하단", "bottom_left": "좌하단",
"bottom_right": "우하단", "bottom_right": "우하단",
"bottom_to_top": "Bottom to Top", "bottom_to_top": "Bottom to Top",
@@ -111,8 +112,8 @@
"dynamically_positioned": "유동 위치 UI", "dynamically_positioned": "유동 위치 UI",
"enable_for": "표시 대상", "enable_for": "표시 대상",
"enabled": "사용함", "enabled": "사용함",
"endemic_life": "Endemic Life",
"endemic_life_UI": "환경생물 UI", "endemic_life_UI": "환경생물 UI",
"endemic_life_damage": "환경생물 대미지",
"family": "글꼴", "family": "글꼴",
"farthest": "가장 멀리있는", "farthest": "가장 멀리있는",
"fight_time": "전투 시간", "fight_time": "전투 시간",
@@ -171,11 +172,11 @@
"in_training_area": "훈련구역 내", "in_training_area": "훈련구역 내",
"include": "포함", "include": "포함",
"inside": "내부", "inside": "내부",
"installation_damage": "설비 대미지", "installations": "Installations",
"italic": "기울임", "italic": "기울임",
"join_time": "참가 시간", "join_time": "참가 시간",
"killcam": "처치 영상", "killcam": "처치 영상",
"kunai_damage": "쿠나이 대미지", "kunai": "Kunai",
"language": "언어", "language": "언어",
"large_monster_UI": "대형 몬스터 UI", "large_monster_UI": "대형 몬스터 UI",
"large_monster_dynamic_UI": "대형 몬스터 유동 UI", "large_monster_dynamic_UI": "대형 몬스터 유동 UI",
@@ -204,10 +205,10 @@
"module_visibility_based_on_game_state": "게임 상태에 따라 모듈 표시", "module_visibility_based_on_game_state": "게임 상태에 따라 모듈 표시",
"modules": "UI", "modules": "UI",
"monster_can_be_captured": "몬스터 포획 가능", "monster_can_be_captured": "몬스터 포획 가능",
"monster_damage": "몬스터 대미지",
"monster_id": "몬스터 ID", "monster_id": "몬스터 ID",
"monster_name": "몬스터명", "monster_name": "몬스터명",
"monster_name_label": "몬스터명 정보", "monster_name_label": "몬스터명 정보",
"monsters": "Monsters",
"my_damage_bar_location": "내 대미지 막대 위치", "my_damage_bar_location": "내 대미지 막대 위치",
"my_otomos": "내 동반자", "my_otomos": "내 동반자",
"myself": "나", "myself": "나",
@@ -220,10 +221,10 @@
"offset_is_relative_to_parts": "오프셋을 부위 기준으로", "offset_is_relative_to_parts": "오프셋을 부위 기준으로",
"opacity_falloff": "투명도 감소", "opacity_falloff": "투명도 감소",
"orientation": "방향", "orientation": "방향",
"other_damage": "기타 대미지", "other": "Other",
"other_player_otomos": "다른 플레이어 동반자", "other_player_otomos": "다른 플레이어 동반자",
"other_players": "다른 헌터", "other_players": "다른 헌터",
"otomo_damage": "동반자 대미지", "otomos": "Buddies",
"outline": "외곽선", "outline": "외곽선",
"outside": "외부", "outside": "외부",
"part_health": "부위 수치", "part_health": "부위 수치",
@@ -231,12 +232,12 @@
"part_name_label": "부위 정보", "part_name_label": "부위 정보",
"percentage_label": "비율 정보", "percentage_label": "비율 정보",
"performance": "성능", "performance": "성능",
"player_damage": "헌터 대미지",
"player_name_label": "헌터명 정보", "player_name_label": "헌터명 정보",
"player_name_size_limit": "헌터명 크기 제한", "player_name_size_limit": "헌터명 크기 제한",
"player_spacing": "플레이어 간격", "player_spacing": "플레이어 간격",
"players": "Players",
"playing_quest": "퀘스트 중", "playing_quest": "퀘스트 중",
"poison_damage": "독 대미지", "poison": "독",
"position": "위치", "position": "위치",
"press_any_key": "설정할 키를 누르세요...", "press_any_key": "설정할 키를 누르세요...",
"prioritize_large_monsters": "대형 몬스터를 우선적으로", "prioritize_large_monsters": "대형 몬스터를 우선적으로",
@@ -316,7 +317,7 @@
"visible": "표시함", "visible": "표시함",
"width": "너비", "width": "너비",
"world_offset": "전역 오프셋", "world_offset": "전역 오프셋",
"wyvern_riding_damage": "용조종 대미지", "wyvern_riding": "Wyvern Riding",
"x": "X", "x": "X",
"y": "Y", "y": "Y",
"z": "Z" "z": "Z"

View File

@@ -49,6 +49,7 @@
"ailments": "Аномальные статусы", "ailments": "Аномальные статусы",
"all_UI": "Весь интерфейс", "all_UI": "Весь интерфейс",
"anchor": "Привязка", "anchor": "Привязка",
"anomaly_cores": "Ядра аномалии",
"anomaly_filter": "Ядро аномалии", "anomaly_filter": "Ядро аномалии",
"anomaly_health": "Здоровье ядра аномалии", "anomaly_health": "Здоровье ядра аномалии",
"anomaly_health_percentage": "Здоровье ядра аномалии в процентах", "anomaly_health_percentage": "Здоровье ядра аномалии в процентах",
@@ -57,10 +58,10 @@
"auto_highlight": "Автофокус", "auto_highlight": "Автофокус",
"background": "Фон", "background": "Фон",
"bar": "Шкала", "bar": "Шкала",
"blast_damage": "Урон от взрыва", "blast": "Взрыв",
"body_parts": "Части тела", "body_parts": "Части тела",
"bold": "Жирный", "bold": "Жирный",
"bomb_damage": "Урон от бомб", "bombs": "Бомбы",
"bottom_left": "Левый нижний угол", "bottom_left": "Левый нижний угол",
"bottom_right": "Правй нижний угол", "bottom_right": "Правй нижний угол",
"bottom_to_top": "Снизу вверх", "bottom_to_top": "Снизу вверх",
@@ -111,8 +112,8 @@
"dynamically_positioned": "Рассположенный динамично", "dynamically_positioned": "Рассположенный динамично",
"enable_for": "Показывать для", "enable_for": "Показывать для",
"enabled": "Включить", "enabled": "Включить",
"endemic_life": "Местная живность",
"endemic_life_UI": "Интерфейс местной живности", "endemic_life_UI": "Интерфейс местной живности",
"endemic_life_damage": "Урон от окружения",
"family": "Семейство", "family": "Семейство",
"farthest": "Самый дальний", "farthest": "Самый дальний",
"fight_time": "Время в бою", "fight_time": "Время в бою",
@@ -171,11 +172,11 @@
"in_training_area": "В тренировочной зоне", "in_training_area": "В тренировочной зоне",
"include": "Элементы", "include": "Элементы",
"inside": "Внутри", "inside": "Внутри",
"installation_damage": "Урон от установок", "installations": "Установки",
"italic": "Курсив", "italic": "Курсив",
"join_time": "Время присоединения", "join_time": "Время присоединения",
"killcam": "Камера смерти", "killcam": "Камера смерти",
"kunai_damage": "Урон от кунаев", "kunai": "Кунаи",
"language": "Язык", "language": "Язык",
"large_monster_UI": "Интерфейс больший монстров", "large_monster_UI": "Интерфейс больший монстров",
"large_monster_dynamic_UI": "Динамический интерфейс больших монстров", "large_monster_dynamic_UI": "Динамический интерфейс больших монстров",
@@ -204,10 +205,10 @@
"module_visibility_based_on_game_state": "Видимость модулей в зависимости от состояния игры", "module_visibility_based_on_game_state": "Видимость модулей в зависимости от состояния игры",
"modules": "Модули", "modules": "Модули",
"monster_can_be_captured": "Монстр может быть схвачен", "monster_can_be_captured": "Монстр может быть схвачен",
"monster_damage": "Урон от монстров",
"monster_id": "ИД монстра", "monster_id": "ИД монстра",
"monster_name": "Имя монстра", "monster_name": "Имя монстра",
"monster_name_label": "Метка имени монстра", "monster_name_label": "Метка имени монстра",
"monsters": "Монстры",
"my_damage_bar_location": "Позиция моей шкалы урона", "my_damage_bar_location": "Позиция моей шкалы урона",
"my_otomos": "Мои спутники", "my_otomos": "Мои спутники",
"myself": "Я", "myself": "Я",
@@ -220,10 +221,10 @@
"offset_is_relative_to_parts": "Сдвиг относителен к частям тела", "offset_is_relative_to_parts": "Сдвиг относителен к частям тела",
"opacity_falloff": "Увеличение прозрачности от расстояния", "opacity_falloff": "Увеличение прозрачности от расстояния",
"orientation": "Ориентация", "orientation": "Ориентация",
"other_damage": "Другой урон", "other": "Другое",
"other_player_otomos": "Спутники других игроков", "other_player_otomos": "Спутники других игроков",
"other_players": "Другие игроки", "other_players": "Другие игроки",
"otomo_damage": "Урон от спутников", "otomos": "Спутники",
"outline": "Обводка", "outline": "Обводка",
"outside": "Снаружи", "outside": "Снаружи",
"part_health": "Здоровье части", "part_health": "Здоровье части",
@@ -231,12 +232,12 @@
"part_name_label": "Метка имени части тела", "part_name_label": "Метка имени части тела",
"percentage_label": "Метка процентов", "percentage_label": "Метка процентов",
"performance": "Производительность", "performance": "Производительность",
"player_damage": "Урон игрока",
"player_name_label": "Метка имени игрока", "player_name_label": "Метка имени игрока",
"player_name_size_limit": "Ограничить ширину имени игрока", "player_name_size_limit": "Ограничить ширину имени игрока",
"player_spacing": "Расстояние между игроками", "player_spacing": "Расстояние между игроками",
"players": "Игроки",
"playing_quest": "Во время квеста", "playing_quest": "Во время квеста",
"poison_damage": "Урон от отравления", "poison": "Отравление",
"position": "Расположение", "position": "Расположение",
"press_any_key": "Нажмите любую клавишу...", "press_any_key": "Нажмите любую клавишу...",
"prioritize_large_monsters": "Большие монстры в приоритете", "prioritize_large_monsters": "Большие монстры в приоритете",
@@ -316,7 +317,7 @@
"visible": "Включить", "visible": "Включить",
"width": "Ширина", "width": "Ширина",
"world_offset": "Сдвиг в игровом пространстве", "world_offset": "Сдвиг в игровом пространстве",
"wyvern_riding_damage": "Урон от езды на виверне", "wyvern_riding": "Езда на виверне",
"x": "X", "x": "X",
"y": "Y", "y": "Y",
"z": "Z" "z": "Z"

View File

@@ -49,6 +49,7 @@
"ailments": "状态异常", "ailments": "状态异常",
"all_UI": "所有UI", "all_UI": "所有UI",
"anchor": "锚点", "anchor": "锚点",
"anomaly_cores": "Anomaly Cores",
"anomaly_filter": "Anomaly Core", "anomaly_filter": "Anomaly Core",
"anomaly_health": "Anomaly Core Health", "anomaly_health": "Anomaly Core Health",
"anomaly_health_percentage": "Anomaly Core Health Percentage", "anomaly_health_percentage": "Anomaly Core Health Percentage",
@@ -57,10 +58,10 @@
"auto_highlight": "自动高亮", "auto_highlight": "自动高亮",
"background": "背景", "background": "背景",
"bar": "状态条", "bar": "状态条",
"blast_damage": "爆破伤害", "blast": "爆破",
"body_parts": "身体部位", "body_parts": "身体部位",
"bold": "粗体", "bold": "粗体",
"bomb_damage": "爆弹桶伤害", "bombs": "Bombs",
"bottom_left": "左下", "bottom_left": "左下",
"bottom_right": "右下", "bottom_right": "右下",
"bottom_to_top": "Bottom to Top", "bottom_to_top": "Bottom to Top",
@@ -111,8 +112,8 @@
"dynamically_positioned": "动态位置", "dynamically_positioned": "动态位置",
"enable_for": "开启", "enable_for": "开启",
"enabled": "开启", "enabled": "开启",
"endemic_life": "Endemic Life",
"endemic_life_UI": "环境生物UI", "endemic_life_UI": "环境生物UI",
"endemic_life_damage": "环境生物伤害",
"family": "字体", "family": "字体",
"farthest": "最远", "farthest": "最远",
"fight_time": "战斗时间", "fight_time": "战斗时间",
@@ -171,11 +172,11 @@
"in_training_area": "在修炼场", "in_training_area": "在修炼场",
"include": "包含", "include": "包含",
"inside": "里面", "inside": "里面",
"installation_damage": "设施伤害", "installations": "Installations",
"italic": "斜体", "italic": "斜体",
"join_time": "加入时间", "join_time": "加入时间",
"killcam": "击杀镜头", "killcam": "击杀镜头",
"kunai_damage": "苦无伤害", "kunai": "Kunai",
"language": "语言", "language": "语言",
"large_monster_UI": "大型怪物UI", "large_monster_UI": "大型怪物UI",
"large_monster_dynamic_UI": "大型怪物浮动UI", "large_monster_dynamic_UI": "大型怪物浮动UI",
@@ -204,10 +205,10 @@
"module_visibility_based_on_game_state": "基于游戏状态的模组可视化设置", "module_visibility_based_on_game_state": "基于游戏状态的模组可视化设置",
"modules": "模块", "modules": "模块",
"monster_can_be_captured": "可捕获的怪物", "monster_can_be_captured": "可捕获的怪物",
"monster_damage": "怪物伤害",
"monster_id": "怪物ID", "monster_id": "怪物ID",
"monster_name": "怪物名", "monster_name": "怪物名",
"monster_name_label": "怪物名标签", "monster_name_label": "怪物名标签",
"monsters": "Monsters",
"my_damage_bar_location": "我的伤害条位置", "my_damage_bar_location": "我的伤害条位置",
"my_otomos": "我的随从", "my_otomos": "我的随从",
"myself": "我自己", "myself": "我自己",
@@ -220,10 +221,10 @@
"offset_is_relative_to_parts": "根据部位偏移", "offset_is_relative_to_parts": "根据部位偏移",
"opacity_falloff": "透明度增加", "opacity_falloff": "透明度增加",
"orientation": "方向", "orientation": "方向",
"other_damage": "其他伤害", "other": "Other",
"other_player_otomos": "其他玩家的随从", "other_player_otomos": "其他玩家的随从",
"other_players": "其他玩家", "other_players": "其他玩家",
"otomo_damage": "随从伤害", "otomos": "Buddies",
"outline": "轮廓", "outline": "轮廓",
"outside": "外面", "outside": "外面",
"part_health": "部位生命值", "part_health": "部位生命值",
@@ -231,12 +232,12 @@
"part_name_label": "部位名标签", "part_name_label": "部位名标签",
"percentage_label": "百分比标签", "percentage_label": "百分比标签",
"performance": "性能", "performance": "性能",
"player_damage": "玩家伤害",
"player_name_label": "玩家名标签", "player_name_label": "玩家名标签",
"player_name_size_limit": "玩家名长度限制", "player_name_size_limit": "玩家名长度限制",
"player_spacing": "玩家间距", "player_spacing": "玩家间距",
"players": "Players",
"playing_quest": "操作界面/正常游玩时", "playing_quest": "操作界面/正常游玩时",
"poison_damage": "中毒伤害", "poison": "中毒",
"position": "位置", "position": "位置",
"press_any_key": "按任意键...", "press_any_key": "按任意键...",
"prioritize_large_monsters": "大型怪物优先", "prioritize_large_monsters": "大型怪物优先",
@@ -289,7 +290,7 @@
"timer": "计时器", "timer": "计时器",
"timer_label": "计时器标签", "timer_label": "计时器标签",
"top_buildup": "最高积累值", "top_buildup": "最高积累值",
"top_damage": "最高伤害", "top_damage": "Top Damage",
"top_dps": "最高DPS", "top_dps": "最高DPS",
"top_left": "左上", "top_left": "左上",
"top_right": "右上", "top_right": "右上",
@@ -316,7 +317,7 @@
"visible": "可见", "visible": "可见",
"width": "宽度", "width": "宽度",
"world_offset": "整体偏移", "world_offset": "整体偏移",
"wyvern_riding_damage": "御龙伤害", "wyvern_riding": "Wyvern Riding",
"x": "X轴", "x": "X轴",
"y": "Y轴", "y": "Y轴",
"z": "Z轴" "z": "Z轴"

View File

@@ -49,6 +49,7 @@
"ailments": "異常狀態", "ailments": "異常狀態",
"all_UI": "全部UI", "all_UI": "全部UI",
"anchor": "錨點", "anchor": "錨點",
"anomaly_cores": "Anomaly Cores",
"anomaly_filter": "Anomaly Core", "anomaly_filter": "Anomaly Core",
"anomaly_health": "Anomaly Core Health", "anomaly_health": "Anomaly Core Health",
"anomaly_health_percentage": "Anomaly Core Health Percentage", "anomaly_health_percentage": "Anomaly Core Health Percentage",
@@ -57,10 +58,10 @@
"auto_highlight": "自動高亮", "auto_highlight": "自動高亮",
"background": "圖形化顯示條的背景底色", "background": "圖形化顯示條的背景底色",
"bar": "圖形化顯示條", "bar": "圖形化顯示條",
"blast_damage": "爆破傷害", "blast": "爆破",
"body_parts": "身體部位", "body_parts": "身體部位",
"bold": "粗體", "bold": "粗體",
"bomb_damage": "爆炸傷害", "bombs": "Bombs",
"bottom_left": "左下", "bottom_left": "左下",
"bottom_right": "右下", "bottom_right": "右下",
"bottom_to_top": "Bottom to Top", "bottom_to_top": "Bottom to Top",
@@ -111,8 +112,8 @@
"dynamically_positioned": "浮動的魔物資訊", "dynamically_positioned": "浮動的魔物資訊",
"enable_for": "啟用對象", "enable_for": "啟用對象",
"enabled": "啟用", "enabled": "啟用",
"endemic_life": "Endemic Life",
"endemic_life_UI": "環境生物 UI", "endemic_life_UI": "環境生物 UI",
"endemic_life_damage": "環境生物傷害",
"family": "字體", "family": "字體",
"farthest": "最遠的", "farthest": "最遠的",
"fight_time": "戰鬥時間", "fight_time": "戰鬥時間",
@@ -171,11 +172,11 @@
"in_training_area": "In Training Area", "in_training_area": "In Training Area",
"include": "細部資訊調整", "include": "細部資訊調整",
"inside": "內部", "inside": "內部",
"installation_damage": "設備傷害", "installations": "Installations",
"italic": "斜體", "italic": "斜體",
"join_time": "加入時間", "join_time": "加入時間",
"killcam": "Killcam", "killcam": "Killcam",
"kunai_damage": "苦無傷害", "kunai": "Kunai",
"language": "語言", "language": "語言",
"large_monster_UI": "大型魔物 UI", "large_monster_UI": "大型魔物 UI",
"large_monster_dynamic_UI": "大型魔物浮動 UI", "large_monster_dynamic_UI": "大型魔物浮動 UI",
@@ -204,10 +205,10 @@
"module_visibility_based_on_game_state": "Module Visibility based on Game State", "module_visibility_based_on_game_state": "Module Visibility based on Game State",
"modules": "模組", "modules": "模組",
"monster_can_be_captured": "可捕獲的魔物", "monster_can_be_captured": "可捕獲的魔物",
"monster_damage": "魔物傷害",
"monster_id": "Monster ID", "monster_id": "Monster ID",
"monster_name": "魔物名稱", "monster_name": "魔物名稱",
"monster_name_label": "魔物名稱", "monster_name_label": "魔物名稱",
"monsters": "Monsters",
"my_damage_bar_location": "我的傷害條", "my_damage_bar_location": "我的傷害條",
"my_otomos": "My Buddies", "my_otomos": "My Buddies",
"myself": "Myself", "myself": "Myself",
@@ -220,10 +221,10 @@
"offset_is_relative_to_parts": "與部位顯示相對偏移", "offset_is_relative_to_parts": "與部位顯示相對偏移",
"opacity_falloff": "透明度提高", "opacity_falloff": "透明度提高",
"orientation": "對齊方式", "orientation": "對齊方式",
"other_damage": "其他傷害", "other": "Other",
"other_player_otomos": "Other Player Buddies", "other_player_otomos": "Other Player Buddies",
"other_players": "其他玩家", "other_players": "其他玩家",
"otomo_damage": "隨從傷害", "otomos": "Buddies",
"outline": "描邊", "outline": "描邊",
"outside": "外部", "outside": "外部",
"part_health": "部位血量", "part_health": "部位血量",
@@ -231,12 +232,12 @@
"part_name_label": "部位名稱", "part_name_label": "部位名稱",
"percentage_label": "百分比", "percentage_label": "百分比",
"performance": "效能", "performance": "效能",
"player_damage": "玩家傷害量",
"player_name_label": "玩家名稱", "player_name_label": "玩家名稱",
"player_name_size_limit": "玩家名稱大小限制", "player_name_size_limit": "玩家名稱大小限制",
"player_spacing": "玩家間格", "player_spacing": "玩家間格",
"players": "Players",
"playing_quest": "Playing Quest", "playing_quest": "Playing Quest",
"poison_damage": "毒傷害", "poison": "毒",
"position": "位置", "position": "位置",
"press_any_key": "輸入任意鍵...", "press_any_key": "輸入任意鍵...",
"prioritize_large_monsters": "大型魔物優先", "prioritize_large_monsters": "大型魔物優先",
@@ -316,7 +317,7 @@
"visible": "可見", "visible": "可見",
"width": "寬度", "width": "寬度",
"world_offset": "地圖中的位置", "world_offset": "地圖中的位置",
"wyvern_riding_damage": "操龍傷害", "wyvern_riding": "Wyvern Riding",
"x": "X軸", "x": "X軸",
"y": "Y軸", "y": "Y軸",
"z": "Z軸" "z": "Z軸"