Foro: usar el personaje de más nivel de la cuenta (en vez de aleatorio)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -400,7 +400,7 @@ export async function resolvePosters(ids: number[]): Promise<Map<number, PosterI
|
||||
|
||||
// Clase del personaje de más nivel de cada cuenta (para el avatar). Se tolera que
|
||||
// acore_characters no exista o esté vacía: el avatar cae a guerrero por defecto.
|
||||
// Personaje ALEATORIO por cuenta (nombre, raza, género, clase, nivel).
|
||||
// Personaje de MÁS NIVEL por cuenta (nombre, raza, género, clase, nivel).
|
||||
const charByAccount = new Map<number, { guid: number; name: string; race: number; gender: number; class: number; level: number }>()
|
||||
try {
|
||||
const [chars] = await db(DB.characters).query<RowDataPacket[]>(
|
||||
@@ -414,7 +414,7 @@ export async function resolvePosters(ids: number[]): Promise<Map<number, PosterI
|
||||
byAcc.get(acc)!.push(c)
|
||||
}
|
||||
for (const [acc, list] of byAcc) {
|
||||
const c = list[Math.floor(Math.random() * list.length)]
|
||||
const c = list.reduce((best, cur) => (Number(cur.level) > Number(best.level) ? cur : best), list[0])
|
||||
charByAccount.set(acc, {
|
||||
guid: Number(c.guid), name: String(c.name), race: Number(c.race),
|
||||
gender: Number(c.gender), class: Number(c.class), level: Number(c.level),
|
||||
|
||||
Reference in New Issue
Block a user