mirror of
https://github.com/Ottermandias/Glamourer.git
synced 2025-12-15 21:24:18 +01:00
Merge pull request #80 from mohlek/feat/apply_multiple_designs
Allow multiple designs to be applied by fixed designs
This commit is contained in:
commit
8940e813ec
1 changed files with 13 additions and 8 deletions
|
|
@ -127,16 +127,21 @@ namespace Glamourer.Designs
|
||||||
if (!EnabledDesigns.TryGetValue(name, out var designs))
|
if (!EnabledDesigns.TryGetValue(name, out var designs))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
var design = designs.OrderBy(d => d.Jobs.Count).FirstOrDefault(d => d.Jobs.Fits(character.ClassJob.Id));
|
var applicableDesigns = designs.OrderBy(d => d.Jobs.Count).Where(d => d.Jobs.Fits(character.ClassJob.Id));
|
||||||
if (design == null)
|
|
||||||
return;
|
|
||||||
|
|
||||||
|
bool designApplied = false;
|
||||||
|
foreach (var design in applicableDesigns) {
|
||||||
PluginLog.Debug("Redrawing {CharacterName} with {DesignName} for job {JobGroup}.", name, design.Design.FullName(),
|
PluginLog.Debug("Redrawing {CharacterName} with {DesignName} for job {JobGroup}.", name, design.Design.FullName(),
|
||||||
design.Jobs.Name);
|
design.Jobs.Name);
|
||||||
design.Design.Data.Apply(character);
|
design.Design.Data.Apply(character);
|
||||||
Glamourer.PlayerWatcher.UpdatePlayerWithoutEvent(character);
|
Glamourer.PlayerWatcher.UpdatePlayerWithoutEvent(character);
|
||||||
|
designApplied = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (designApplied) {
|
||||||
Glamourer.Penumbra.RedrawObject(character, RedrawType.Redraw, false);
|
Glamourer.Penumbra.RedrawObject(character, RedrawType.Redraw, false);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void Add(string name, Design design, JobGroup group, bool enabled = false)
|
public void Add(string name, Design design, JobGroup group, bool enabled = false)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue