|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 |
-- ESO-911673: When swapping out a player skill line for another player skill line pendingDeactivationLines can-- equal MAX_LINE_SWAPS temporarily until the pending deactivation player skill line is removed upon activation.-- ESO-915394: Bumping MAX_LINE_SWAPS from 2 to 3 to account for the fact that you actually can swap 3 things if you had-- already subclassed two lines, and then want to do it again and swap your player class with another player class.-- As a result of this change, it makes the fix for the prior bug (ESO-911673) moot.local MAX_LINE_SWAPS = 3 ZO_SkillsAssignmentManager_Base.Initialize(self, ZO_SkillsAndActionBarManager.OnSkillLineAssignmentManagerReady)end endend-- Training -- if #self.pendingTrainingLines < MAX_SKILL_LINES_IN_TRAINING and not self:IsSkillLinePendingTrain(skillLineData) then if not suppressCallback then end return true end return falseend local index = ZO_IndexOfElementInNumericallyIndexedTable(self.pendingTrainingLines, skillLineData:GetId()) if index then if not suppressCallback then end return true end return falseendend-- Deactivation -- local success = false local pendingActivationIndex = ZO_IndexOfElementInNumericallyIndexedTable(self.pendingActivationLines, skillLineData:GetId()) if pendingActivationIndex then success = true elseif #self.pendingDeactivationLines < MAX_LINE_SWAPS and not self:IsSkillLinePendingDeactivation(skillLineData) then success = true end if success then -- Cannot suppress this, it's necessary if not suppressCallback then end end return successendend-- Activation -- local success = false local pendingDeactivationIndex = ZO_IndexOfElementInNumericallyIndexedTable(self.pendingDeactivationLines, skillLineData:GetId()) if pendingDeactivationIndex then success = true elseif #self.pendingActivationLines < MAX_LINE_SWAPS and not self:IsSkillLinePendingActivation(skillLineData) then success = true end if success and not suppressCallback then end return successendend-- Processing -- local pendingDelta = 0 end return pendingDeltaendendendendend return #pendingTrainingLines > 0 or hasSwapendendendend local anyChangesAdded = false anyChangesAdded = true end anyChangesAdded = true end anyChangesAdded = true end return anyChangesAddedendend |