207207function calcs .calcFullDPS (build , mode , override , specEnv )
208208 local fullEnv , cachedPlayerDB , cachedEnemyDB , cachedMinionDB = calcs .initEnv (build , mode , override , specEnv )
209209 local usedEnv = nil
210- local prepassState = calcs .performActorPrepass (fullEnv , { snapshotDBs = true })
211- local skillPassPlayerDB = prepassState .cachedPlayerDB or cachedPlayerDB
212- local skillPassEnemyDB = prepassState .cachedEnemyDB or cachedEnemyDB
213- local skillPassMinionDB = prepassState .cachedMinionDB or cachedMinionDB
214210
215211 local fullDPS = {
216212 combinedDPS = 0 ,
@@ -233,16 +229,12 @@ function calcs.calcFullDPS(build, mode, override, specEnv)
233229 local igniteSource = " "
234230 local burningGroundSource = " "
235231 local causticGroundSource = " "
236-
237- -- initEnv() is the shared actor-global prepass for the FullDPS run. Each included
238- -- skill then runs through the hot skill-local path on the reused env, while perform()
239- -- continues to populate the slim cache for trigger/source reuse within the generation.
240232 for _ , activeSkill in ipairs (fullEnv .player .activeSkillList ) do
241233 if activeSkill .socketGroup and activeSkill .socketGroup .includeInFullDPS then
242234 local activeSkillCount , enabled = getActiveSkillCount (activeSkill )
243235 if enabled then
244236 fullEnv .player .mainSkill = activeSkill
245- calcs .performSkillPass (fullEnv , true , prepassState )
237+ calcs .perform (fullEnv , true )
246238 usedEnv = fullEnv
247239 local output = usedEnv .player .output
248240 local minionOutput = usedEnv .minion and usedEnv .minion .output or nil
@@ -376,9 +368,9 @@ function calcs.calcFullDPS(build, mode, override, specEnv)
376368 everything = true ,
377369 }
378370 fullEnv , _ , _ , _ = calcs .initEnv (build , mode , override , {
379- cachedPlayerDB = skillPassPlayerDB ,
380- cachedEnemyDB = skillPassEnemyDB ,
381- cachedMinionDB = skillPassMinionDB ,
371+ cachedPlayerDB = cachedPlayerDB ,
372+ cachedEnemyDB = cachedEnemyDB ,
373+ cachedMinionDB = cachedMinionDB ,
382374 env = fullEnv ,
383375 accelerate = accelerationTbl ,
384376 cacheGeneration = fullEnv .cacheGeneration ,
@@ -453,26 +445,13 @@ function calcs.buildActiveSkill(env, mode, skill, targetUUID, limitedProcessingF
453445 end
454446 recursionGuards .buildingSkills [guardKey ] = true
455447
456- local accelerationTbl = env .cachedSkillBuildEnv and {
457- nodeAlloc = true ,
458- requirementsItems = true ,
459- requirementsGems = true ,
460- skills = true ,
461- everything = true ,
462- } or nil
463- local cachedSkillPrepassState = env .cachedSkillBuildPrepassState
464448 local fullEnv , _ , _ , _ = calcs .initEnv (env .build , mode , env .override , {
465- cachedPlayerDB = cachedSkillPrepassState and cachedSkillPrepassState .cachedPlayerDB or env .cachedPlayerDB ,
466- cachedEnemyDB = cachedSkillPrepassState and cachedSkillPrepassState .cachedEnemyDB or env .cachedEnemyDB ,
467- cachedMinionDB = cachedSkillPrepassState and cachedSkillPrepassState .cachedMinionDB or env .cachedMinionDB ,
468- env = env .cachedSkillBuildEnv ,
469- accelerate = accelerationTbl ,
449+ cachedPlayerDB = env .cachedPlayerDB ,
450+ cachedEnemyDB = env .cachedEnemyDB ,
451+ cachedMinionDB = env .cachedMinionDB ,
470452 cacheGeneration = env .cacheGeneration ,
471453 recursionGuards = recursionGuards ,
472454 })
473- env .cachedSkillBuildEnv = fullEnv
474- local prepassState = cachedSkillPrepassState or calcs .performActorPrepass (fullEnv , { snapshotDBs = true })
475- env .cachedSkillBuildPrepassState = prepassState
476455
477456 -- env.limitedSkills contains a map of uuids that should be limited in calculation
478457 -- this is in order to prevent infinite recursion loops
@@ -489,7 +468,7 @@ function calcs.buildActiveSkill(env, mode, skill, targetUUID, limitedProcessingF
489468 if activeSkillUUID == targetUUID then
490469 fullEnv .player .mainSkill = activeSkill
491470 fullEnv .requestedSkillUUID = targetUUID
492- calcs .performSkillPass (fullEnv , true , prepassState )
471+ calcs .perform (fullEnv , true )
493472 fullEnv .requestedSkillUUID = nil
494473 recursionGuards .buildingSkills [guardKey ] = nil
495474 return true
0 commit comments