Enhance character name resolution logic in MessagesDialog component
- Improved character name extraction by prioritizing names resolved from the backend over those from notification values. - Simplified fallback mechanisms for character names, ensuring a more robust handling of character IDs. - Streamlined the logic for handling character names in various effect types, enhancing clarity and maintainability of the code.
This commit is contained in:
@@ -353,11 +353,13 @@ export default {
|
||||
params.percent = value.money_change_percent;
|
||||
}
|
||||
|
||||
// Charakternamen aus value extrahieren
|
||||
if (value.character_first_name || value.character_last_name) {
|
||||
const firstName = value.character_first_name || '';
|
||||
const lastName = value.character_last_name || '';
|
||||
params.characterName = `${firstName} ${lastName}`.trim() || value.character_id ? `#${value.character_id}` : null;
|
||||
// Charakternamen: Priorität auf vom Backend aufgelösten Namen (n.characterName)
|
||||
if (n.characterName) {
|
||||
params.characterName = n.characterName;
|
||||
} else if (value.characterName) {
|
||||
params.characterName = value.characterName;
|
||||
} else if (value.character_id) {
|
||||
params.characterName = `#${value.character_id}`;
|
||||
}
|
||||
if (value.character_id) {
|
||||
params.character_id = value.character_id;
|
||||
@@ -384,27 +386,20 @@ export default {
|
||||
params.percent = effect.percent;
|
||||
}
|
||||
} else if (effect.type === 'character_health_change') {
|
||||
// Charakternamen aus Effect haben Vorrang
|
||||
if (effect.character_first_name || effect.character_last_name) {
|
||||
const firstName = effect.character_first_name || '';
|
||||
const lastName = effect.character_last_name || '';
|
||||
params.characterName = `${firstName} ${lastName}`.trim();
|
||||
}
|
||||
if (effect.character_id) {
|
||||
// Charakternamen: Backend-aufgelöst hat Vorrang
|
||||
if (!params.characterName && effect.character_id) {
|
||||
params.character_id = effect.character_id;
|
||||
params.characterName = n.characterName || `#${effect.character_id}`;
|
||||
}
|
||||
if (effect.change !== undefined) {
|
||||
params.change = effect.change;
|
||||
params.healthChange = effect.change > 0 ? `+${effect.change}` : `${effect.change}`;
|
||||
}
|
||||
} else if (effect.type === 'character_death') {
|
||||
if (effect.character_first_name || effect.character_last_name) {
|
||||
const firstName = effect.character_first_name || '';
|
||||
const lastName = effect.character_last_name || '';
|
||||
params.characterName = `${firstName} ${lastName}`.trim();
|
||||
}
|
||||
if (effect.character_id) {
|
||||
// Charakternamen: Backend-aufgelöst hat Vorrang
|
||||
if (!params.characterName && effect.character_id) {
|
||||
params.character_id = effect.character_id;
|
||||
params.characterName = n.characterName || `#${effect.character_id}`;
|
||||
}
|
||||
} else if (effect.type === 'storage_damage') {
|
||||
if (effect.inventory_damage_percent !== undefined) {
|
||||
@@ -429,10 +424,7 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
// Fallback: Charakternamen aus Notification-Spalte
|
||||
if (!params.characterName && n.characterName) {
|
||||
params.characterName = n.characterName;
|
||||
}
|
||||
// Fallback: character_id als letzter Ausweg
|
||||
if (!params.characterName && n.character_id) {
|
||||
params.characterName = `#${n.character_id}`;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user