Skip to content

Commit

Permalink
Merge pull request #4104 from wowsims/apl
Browse files Browse the repository at this point in the history
Reimplement #4088 (reverted in #4091) with bugfix
  • Loading branch information
jimmyt857 authored Dec 23, 2023
2 parents 4ce80f8 + d7f2516 commit f8200b5
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 11 deletions.
2 changes: 1 addition & 1 deletion sim/core/apl.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ func (rot *APLRotation) doAndRecordWarnings(warningsList *[]string, isPrepull bo
}

func (unit *Unit) newAPLRotation(config *proto.APLRotation) *APLRotation {
if config == nil || config.Type != proto.APLRotation_TypeAPL {
if config == nil || !unit.IsUsingAPL {
return nil
}

Expand Down
5 changes: 4 additions & 1 deletion sim/core/character.go
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,10 @@ func NewCharacter(party *Party, partyIndex int, player *proto.Player) Character
ChannelClipDelay: max(0, time.Duration(player.ChannelClipDelayMs)*time.Millisecond),
DistanceFromTarget: player.DistanceFromTarget,
NibelungAverageCasts: player.NibelungAverageCasts,
IsUsingAPL: player.Rotation != nil && player.Rotation.Type == proto.APLRotation_TypeAPL,
IsUsingAPL: player.Rotation != nil &&
(player.Rotation.Type == proto.APLRotation_TypeAPL ||
player.Rotation.Type == proto.APLRotation_TypeAuto ||
player.Rotation.Type == proto.APLRotation_TypeSimple),
},

Name: player.Name,
Expand Down
10 changes: 7 additions & 3 deletions ui/core/player.ts
Original file line number Diff line number Diff line change
Expand Up @@ -822,11 +822,15 @@ export class Player<SpecType extends Spec> {
const type = this.getRotationType();
if (type == APLRotationType.TypeAuto && this.autoRotationGenerator) {
// Clone to avoid modifying preset rotations, which are often returned directly.
return APLRotation.clone(this.autoRotationGenerator(this));
const rot = APLRotation.clone(this.autoRotationGenerator(this));
rot.type = APLRotationType.TypeAuto;
return rot;
} else if (type == APLRotationType.TypeSimple && this.simpleRotationGenerator) {
// Clone to avoid modifying preset rotations, which are often returned directly.
const rot = APLRotation.clone(this.simpleRotationGenerator(this, this.getRotation(), this.getCooldowns()));
rot.type = APLRotationType.TypeAPL; // Set this here for convenience, so the generator functions don't need to.
const simpleRot = this.getRotation();
const rot = APLRotation.clone(this.simpleRotationGenerator(this, simpleRot, this.getCooldowns()));
rot.simple = this.aplRotation.simple;
rot.type = APLRotationType.TypeSimple;
return rot;
} else {
return this.aplRotation;
Expand Down
8 changes: 2 additions & 6 deletions ui/feral_druid/sim.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,8 @@ import {
Class,
Debuffs,
Faction,
GemColor,
IndividualBuffs,
ItemSlot,
PartyBuffs,
Profession,
PseudoStat,
Race,
RaidBuffs,
Expand All @@ -19,7 +16,6 @@ import { Gear } from '../core/proto_utils/gear.js';
import { PhysicalDPSGemOptimizer } from '../core/components/suggest_gems_action.js';
import { Stats } from '../core/proto_utils/stats.js';
import { getSpecIcon, specNames } from '../core/proto_utils/utils.js';
import { TypedEvent } from '../core/typed_event.js';
import { Player } from '../core/player.js';

import * as IconInputs from '../core/components/icon_inputs.js';
Expand Down Expand Up @@ -171,7 +167,7 @@ const SPEC_CONFIG = registerSpecConfig(Spec.SpecFeralDruid, {
},

autoRotation: (_player: Player<Spec.SpecFeralDruid>): APLRotation => {
return Presets.ROTATION_PRESET_LEGACY_DEFAULT.rotation.rotation!;
return Presets.APL_ROTATION_DEFAULT.rotation.rotation!;
},

raidSimPresets: [
Expand Down Expand Up @@ -212,7 +208,7 @@ export class FeralDruidSimUI extends IndividualSimUI<Spec.SpecFeralDruid> {
constructor(parentElem: HTMLElement, player: Player<Spec.SpecFeralDruid>) {
super(parentElem, player, SPEC_CONFIG);

const gemOptimizer = new FeralGemOptimizer(this);
const _gemOptimizer = new FeralGemOptimizer(this);
}
}

Expand Down

0 comments on commit f8200b5

Please sign in to comment.