diff --git a/src/services/guildService.ts b/src/services/guildService.ts index 54922d7a..44df7b96 100644 --- a/src/services/guildService.ts +++ b/src/services/guildService.ts @@ -151,6 +151,27 @@ export const getDojoClient = async ( entry.entryType = 1; needSave = true; } + + let newTier: number | undefined; + switch (dojoComponent.pf) { + case "/Lotus/Levels/ClanDojo/ClanDojoBarracksShadow.level": + newTier = 2; + break; + case "/Lotus/Levels/ClanDojo/ClanDojoBarracksStorm.level": + newTier = 3; + break; + case "/Lotus/Levels/ClanDojo/ClanDojoBarracksMountain.level": + newTier = 4; + break; + case "/Lotus/Levels/ClanDojo/ClanDojoBarracksMoon.level": + newTier = 5; + break; + } + if (newTier) { + logger.debug(`clan finished building barracks, updating to tier ${newTier}`); + guild.Tier = newTier; + needSave = true; + } } if (dojoComponent.DestructionTime) { if (Date.now() >= dojoComponent.DestructionTime.getTime()) { @@ -195,6 +216,7 @@ export const getDojoClient = async ( if (needSave) { await guild.save(); } + dojo.Tier = guild.Tier; return dojo; }; @@ -222,6 +244,21 @@ export const removeDojoRoom = (guild: TGuildDatabaseDocument, componentId: Types guild.RoomChanges.splice(index, 1); } } + + switch (component.pf) { + case "/Lotus/Levels/ClanDojo/ClanDojoBarracksShadow.level": + guild.Tier = 1; + break; + case "/Lotus/Levels/ClanDojo/ClanDojoBarracksStorm.level": + guild.Tier = 2; + break; + case "/Lotus/Levels/ClanDojo/ClanDojoBarracksMountain.level": + guild.Tier = 3; + break; + case "/Lotus/Levels/ClanDojo/ClanDojoBarracksMoon.level": + guild.Tier = 4; + break; + } }; export const removeDojoDeco = (