public void UpdateEntities(NpcOccupierResult npcOccupierResult, long time) { foreach (var entityStats in EntitiesStats) { var entity = entityStats.Key; if (entity.Id != npcOccupierResult.Npc || !entity.IsBoss || !npcOccupierResult.HasReset) { continue; } DeleteEntity(entity); return; } }
public void UpdateEntities(NpcOccupierResult npcOccupierResult, long time) { foreach (var entityStats in EntitiesStats) { var entity = entityStats.Key; if (entity.Id != npcOccupierResult.Npc || !entity.IsBoss || !npcOccupierResult.HasReset) { continue; } /* * Instead of deleting the entity directly, we store what entity need to be deleted. * With that, we are able to keep data on try run (without that, if you try the queen in DS2, when you wipe, all stats are deleted) * Now, with that, the data will be keep until the next try against the boss */ _toDelete.Add(entity); return; } }
public void UpdateEntities(NpcOccupierResult npcOccupierResult, long time) { if (!npcOccupierResult.HasReset) { return; } var entity = NetworkController.Instance.EntityTracker.GetOrNull(npcOccupierResult.Npc); if (!(entity is NpcEntity)) { return; } var npcEntity = entity as NpcEntity; if (npcEntity.Info.Boss) { _toDelete.Add(entity); } }
public void UpdateEntities(NpcOccupierResult npcOccupierResult, long time) { if (!npcOccupierResult.HasReset) { return; } var entity = NetworkController.Instance.EntityTracker.GetOrNull(npcOccupierResult.Npc); if (!(entity is NpcEntity)) return; var npcEntity = entity as NpcEntity; if (npcEntity.Info.Boss) { _toDelete.Add(entity); } }