delete skill trees
This commit is contained in:
@@ -49,9 +49,6 @@ public sealed partial class CP14ClientSkillSystem : CP14SharedSkillSystem
|
||||
var netEv = new CP14TryLearnSkillMessage(GetNetEntity(target.Value), skill.ID);
|
||||
RaiseNetworkEvent(netEv);
|
||||
|
||||
if (_proto.TryIndex(skill.Tree, out var indexedTree))
|
||||
{
|
||||
_audio.PlayGlobal(indexedTree.LearnSound, target.Value, AudioParams.Default.WithVolume(6f));
|
||||
}
|
||||
_audio.PlayGlobal(skill.LearnSound, target.Value, AudioParams.Default.WithVolume(6f));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,7 +38,6 @@ public sealed class CP14SkillUIController : UIController, IOnStateEntered<Gamepl
|
||||
private IEnumerable<CP14SkillPrototype> _allSkills = [];
|
||||
|
||||
private CP14SkillPrototype? _selectedSkill;
|
||||
private CP14SkillTreePrototype? _selectedSkillTree;
|
||||
|
||||
private MenuButton? SkillButton => UIManager
|
||||
.GetActiveUIWidgetOrNull<Client.UserInterface.Systems.MenuBar.Widgets.GameTopMenuBar>()
|
||||
@@ -220,9 +219,6 @@ public sealed class CP14SkillUIController : UIController, IOnStateEntered<Gamepl
|
||||
if (_window is null)
|
||||
return;
|
||||
|
||||
if (_selectedSkillTree == null)
|
||||
return;
|
||||
|
||||
if (!EntityManager.TryGetComponent<CP14SkillStorageComponent>(_targetPlayer, out var storage))
|
||||
return;
|
||||
|
||||
@@ -233,9 +229,6 @@ public sealed class CP14SkillUIController : UIController, IOnStateEntered<Gamepl
|
||||
var learned = storage.LearnedSkills;
|
||||
foreach (var skill in _allSkills)
|
||||
{
|
||||
if (skill.Tree != _selectedSkillTree)
|
||||
continue;
|
||||
|
||||
foreach (var req in skill.Restrictions)
|
||||
{
|
||||
switch (req)
|
||||
@@ -244,9 +237,6 @@ public sealed class CP14SkillUIController : UIController, IOnStateEntered<Gamepl
|
||||
if (!_proto.TryIndex(prerequisite.Prerequisite, out var prerequisiteSkill))
|
||||
continue;
|
||||
|
||||
if (prerequisiteSkill.Tree != _selectedSkillTree)
|
||||
continue;
|
||||
|
||||
nodeTreeEdges.Add((skill.ID, prerequisiteSkill.ID));
|
||||
break;
|
||||
}
|
||||
@@ -264,11 +254,7 @@ public sealed class CP14SkillUIController : UIController, IOnStateEntered<Gamepl
|
||||
_window.GraphControl.UpdateState(
|
||||
new CP14NodeTreeUiState(
|
||||
nodes: nodeTreeElements,
|
||||
edges: nodeTreeEdges,
|
||||
frameIcon: _selectedSkillTree.FrameIcon,
|
||||
hoveredIcon: _selectedSkillTree.HoveredIcon,
|
||||
selectedIcon: _selectedSkillTree.SelectedIcon,
|
||||
learnedIcon: _selectedSkillTree.LearnedIcon
|
||||
edges: nodeTreeEdges
|
||||
)
|
||||
);
|
||||
}
|
||||
@@ -283,63 +269,11 @@ public sealed class CP14SkillUIController : UIController, IOnStateEntered<Gamepl
|
||||
if (!EntityManager.TryGetComponent<CP14SkillStorageComponent>(_targetPlayer, out var storage))
|
||||
return;
|
||||
|
||||
//If tree not selected, select the first one
|
||||
if (_selectedSkillTree == null && storage.Progress.Count > 0)
|
||||
{
|
||||
var firstTree = storage.Progress.First().Key;
|
||||
|
||||
if (_proto.TryIndex(firstTree, out var indexedTree))
|
||||
{
|
||||
SelectTree(indexedTree, storage); // Set the first tree from the player's progress
|
||||
}
|
||||
}
|
||||
|
||||
if (_selectedSkillTree == null)
|
||||
return;
|
||||
|
||||
// Reselect for update state
|
||||
SelectNode(_selectedSkill);
|
||||
UpdateGraphControl();
|
||||
|
||||
// Update the experience points for the selected tree
|
||||
var playerProgress = storage.Progress;
|
||||
if (playerProgress.TryGetValue(_selectedSkillTree, out var skillPoint))
|
||||
{
|
||||
_window.ExpPointLabel.Text = skillPoint.ToString();
|
||||
}
|
||||
|
||||
_window.LevelLabel.Text = $"{storage.SkillsSumExperience}/{storage.ExperienceMaxCap}";
|
||||
|
||||
_window.TreeTabsContainer.RemoveAllChildren();
|
||||
foreach (var (tree, _) in storage.Progress)
|
||||
{
|
||||
if (!_proto.TryIndex(tree, out var indexedTree))
|
||||
continue;
|
||||
|
||||
var treeButton2 = new CP14SkillTreeButtonControl(indexedTree.Color, Loc.GetString(indexedTree.Name));
|
||||
treeButton2.ToolTip = Loc.GetString(indexedTree.Desc ?? string.Empty);
|
||||
treeButton2.OnPressed += () =>
|
||||
{
|
||||
SelectTree(indexedTree, storage);
|
||||
};
|
||||
|
||||
_window.TreeTabsContainer.AddChild(treeButton2);
|
||||
}
|
||||
}
|
||||
|
||||
private void SelectTree(CP14SkillTreePrototype tree, CP14SkillStorageComponent storage)
|
||||
{
|
||||
if (_window == null)
|
||||
return;
|
||||
|
||||
_selectedSkillTree = tree;
|
||||
_window.ParallaxBackground.ParallaxPrototype = tree.Parallax;
|
||||
_window.TreeName.Text = Loc.GetString(tree.Name);
|
||||
|
||||
var playerProgress = storage.Progress;
|
||||
_window.ExpPointLabel.Text = playerProgress.TryGetValue(tree, out var skillpoint) ? skillpoint.ToString() : "0";
|
||||
|
||||
UpdateGraphControl();
|
||||
}
|
||||
|
||||
private void CharacterDetached(EntityUid uid)
|
||||
|
||||
@@ -66,20 +66,12 @@
|
||||
HorizontalExpand="True" HorizontalAlignment="Center" />
|
||||
</BoxContainer>
|
||||
<PanelContainer Margin="10 10 10 10" HorizontalExpand="True" VerticalExpand="True" RectClipContent="True">
|
||||
<parallax:ParallaxControl Name="ParallaxBackground" ScaleX="4" ScaleY="4" Access="Public" SpeedX="10" SpeedY="5"/>
|
||||
<parallax:ParallaxControl Name="ParallaxBackground" ParallaxPrototype="AspidParallax" ScaleX="4" ScaleY="4" Access="Public" SpeedX="10" SpeedY="5"/>
|
||||
<BoxContainer Margin="10 10 10 10" Orientation="Horizontal" HorizontalExpand="True" VerticalExpand="True">
|
||||
<nodeTree:CP14NodeTreeGraphControl Name="GraphControl" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Access="Public"/>
|
||||
</BoxContainer>
|
||||
<!-- Tree Tabs -->
|
||||
<BoxContainer Margin="10 10 10 10" VerticalAlignment="Top" HorizontalAlignment="Right" Orientation="Vertical" VerticalExpand="True">
|
||||
<BoxContainer Name="TreeTabsContainer" Orientation="Vertical" HorizontalExpand="True" VerticalExpand="True" Access="Public"/>
|
||||
</BoxContainer>
|
||||
<!-- Experience Data -->
|
||||
<BoxContainer Margin="10 10 10 10" VerticalAlignment="Bottom" HorizontalAlignment="Center" Orientation="Horizontal" VerticalExpand="True">
|
||||
<RichTextLabel VerticalAlignment="Center" HorizontalAlignment="Left" Text="{Loc 'cp14-skill-menu-skillpoints'}" StyleClasses="LabelKeyText"/>
|
||||
<TextureRect VerticalAlignment="Center" HorizontalAlignment="Center" TextureScale="2, 2" TexturePath="/Textures/_CP14/Interface/Misc/skillpoint.png"/>
|
||||
<RichTextLabel Margin="0 0 20 0" Name="ExpPointLabel" VerticalAlignment="Center" HorizontalAlignment="Left" Text="0" StyleClasses="LabelKeyText" Access="Public"/>
|
||||
|
||||
<RichTextLabel VerticalAlignment="Center" HorizontalAlignment="Left" Text="{Loc 'cp14-skill-menu-level'}" StyleClasses="LabelKeyText"/>
|
||||
<TextureRect VerticalAlignment="Center" HorizontalAlignment="Center" TextureScale="2, 2" TexturePath="/Textures/_CP14/Interface/Misc/skillpoint.png"/>
|
||||
<RichTextLabel Margin="0 0 0 0" Name="LevelLabel" VerticalAlignment="Center" HorizontalAlignment="Left" Text="0" StyleClasses="LabelKeyText" Access="Public"/>
|
||||
|
||||
@@ -57,5 +57,5 @@ public sealed partial class LoadoutPrototype : IPrototype, IEquipmentLoadout
|
||||
/// CP14 - it is possible to give skill trees to players who have taken this loadout
|
||||
/// </summary>
|
||||
[DataField]
|
||||
public Dictionary<ProtoId<CP14SkillTreePrototype>, FixedPoint2> SkillTree = new();
|
||||
public HashSet<ProtoId<CP14SkillPrototype>> Skills = new();
|
||||
}
|
||||
|
||||
@@ -102,9 +102,9 @@ public abstract class SharedStationSpawningSystem : EntitySystem
|
||||
_action.AddAction(entity, action);
|
||||
}
|
||||
|
||||
foreach (var tree in loadout.SkillTree)
|
||||
foreach (var skill in loadout.Skills)
|
||||
{
|
||||
_skill.TryAddExperience(entity, tree.Key, tree.Value);
|
||||
_skill.TryAddSkill(entity, skill);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -83,55 +83,6 @@ public abstract partial class CP14SharedSkillSystem : EntitySystem
|
||||
return component.LearnedSkills.Contains(skill);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Adds experience to the specified skill tree for the player.
|
||||
/// </summary>
|
||||
public bool TryAddExperience(EntityUid target,
|
||||
ProtoId<CP14SkillTreePrototype> tree,
|
||||
FixedPoint2 exp,
|
||||
CP14SkillStorageComponent? component = null)
|
||||
{
|
||||
if (!Resolve(target, ref component, false))
|
||||
return false;
|
||||
|
||||
if (component.Progress.TryGetValue(tree, out var currentExp))
|
||||
{
|
||||
// If the tree already exists, add experience to it
|
||||
component.Progress[tree] = currentExp + exp;
|
||||
}
|
||||
else
|
||||
{
|
||||
// If the tree doesn't exist, initialize it with the experience
|
||||
component.Progress[tree] = exp;
|
||||
}
|
||||
|
||||
Dirty(target, component);
|
||||
return true;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Removes experience from the specified skill tree for the player.
|
||||
/// </summary>
|
||||
public bool TryRemoveExperience(EntityUid target,
|
||||
ProtoId<CP14SkillTreePrototype> tree,
|
||||
FixedPoint2 exp,
|
||||
CP14SkillStorageComponent? component = null)
|
||||
{
|
||||
if (!Resolve(target, ref component, false))
|
||||
return false;
|
||||
|
||||
if (!component.Progress.TryGetValue(tree, out var currentExp))
|
||||
return false;
|
||||
|
||||
if (currentExp < exp)
|
||||
return false;
|
||||
|
||||
component.Progress[tree] = FixedPoint2.Max(0, component.Progress[tree] - exp);
|
||||
|
||||
Dirty(target, component);
|
||||
return true;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Checks if the player can learn the specified skill.
|
||||
/// </summary>
|
||||
@@ -158,12 +109,6 @@ public abstract partial class CP14SharedSkillSystem : EntitySystem
|
||||
if (!AllowedToLearn(target, skill, component))
|
||||
return false;
|
||||
|
||||
//Experience check
|
||||
if (!component.Progress.TryGetValue(skill.Tree, out var currentExp))
|
||||
return false;
|
||||
if (currentExp < skill.LearnCost)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -182,7 +127,7 @@ public abstract partial class CP14SharedSkillSystem : EntitySystem
|
||||
return false;
|
||||
|
||||
//Check max cap
|
||||
if (component.SkillsSumExperience + skill.LearnCost >= component.ExperienceMaxCap)
|
||||
if (component.SkillsSumExperience + skill.LearnCost > component.ExperienceMaxCap)
|
||||
return false;
|
||||
|
||||
//Restrictions check
|
||||
@@ -211,9 +156,6 @@ public abstract partial class CP14SharedSkillSystem : EntitySystem
|
||||
if (!CanLearnSkill(target, skill, component))
|
||||
return false;
|
||||
|
||||
if (!TryRemoveExperience(target, indexedSkill.Tree, indexedSkill.LearnCost, component))
|
||||
return false;
|
||||
|
||||
if (!TryAddSkill(target, skill, component))
|
||||
return false;
|
||||
|
||||
|
||||
@@ -15,7 +15,6 @@ public abstract partial class CP14SharedSkillSystem
|
||||
[Dependency] private readonly IPrototypeManager _proto = default!;
|
||||
|
||||
private IEnumerable<CP14SkillPrototype>? _allSkills;
|
||||
private IEnumerable<CP14SkillTreePrototype>? _allTrees;
|
||||
private void InitializeAdmin()
|
||||
{
|
||||
SubscribeLocalEvent<CP14SkillStorageComponent, GetVerbsEvent<Verb>>(OnGetAdminVerbs);
|
||||
@@ -36,7 +35,6 @@ public abstract partial class CP14SharedSkillSystem
|
||||
private void UpdateCachedSkill()
|
||||
{
|
||||
_allSkills = _proto.EnumeratePrototypes<CP14SkillPrototype>();
|
||||
_allTrees = _proto.EnumeratePrototypes<CP14SkillTreePrototype>();
|
||||
}
|
||||
|
||||
|
||||
@@ -45,32 +43,11 @@ public abstract partial class CP14SharedSkillSystem
|
||||
if (!_admin.HasAdminFlag(args.User, AdminFlags.Admin))
|
||||
return;
|
||||
|
||||
if (_allSkills is null || _allTrees is null)
|
||||
if (_allSkills is null)
|
||||
return;
|
||||
|
||||
var target = args.Target;
|
||||
|
||||
//Add skill points
|
||||
foreach (var tree in _allTrees)
|
||||
{
|
||||
FixedPoint2 current = 0;
|
||||
ent.Comp.Progress.TryGetValue(tree, out current);
|
||||
|
||||
var name = Loc.GetString(tree.Name);
|
||||
args.Verbs.Add(new Verb
|
||||
{
|
||||
Text = name,
|
||||
Message = $"{name} EXP {current} -> {current + 1}",
|
||||
Category = VerbCategory.CP14AdminSkillAdd,
|
||||
Icon = tree.Icon,
|
||||
Act = () =>
|
||||
{
|
||||
TryAddExperience(target, tree.ID, 1);
|
||||
},
|
||||
Priority = 2,
|
||||
});
|
||||
}
|
||||
|
||||
//Add Skill
|
||||
foreach (var skill in _allSkills)
|
||||
{
|
||||
@@ -91,30 +68,6 @@ public abstract partial class CP14SharedSkillSystem
|
||||
});
|
||||
}
|
||||
|
||||
//Remove skill points
|
||||
foreach (var tree in _allTrees)
|
||||
{
|
||||
FixedPoint2 current = 0;
|
||||
ent.Comp.Progress.TryGetValue(tree, out current);
|
||||
|
||||
if (current < 1)
|
||||
continue;
|
||||
|
||||
var name = Loc.GetString(tree.Name);
|
||||
args.Verbs.Add(new Verb
|
||||
{
|
||||
Text = name,
|
||||
Message = $"{name} EXP {current} -> {current - 1}",
|
||||
Category = VerbCategory.CP14AdminSkillRemove,
|
||||
Icon = tree.Icon,
|
||||
Act = () =>
|
||||
{
|
||||
TryRemoveExperience(target, tree.ID, 1);
|
||||
},
|
||||
Priority = 2,
|
||||
});
|
||||
}
|
||||
|
||||
//Remove Skill
|
||||
foreach (var skill in ent.Comp.LearnedSkills)
|
||||
{
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
using Content.Shared._CP14.Skill.Components;
|
||||
using Content.Shared._CP14.Skill.Prototypes;
|
||||
using Content.Shared.Bed.Sleep;
|
||||
using Content.Shared.Examine;
|
||||
using Content.Shared.FixedPoint;
|
||||
using Content.Shared.Mobs.Components;
|
||||
using Content.Shared.Mobs.Systems;
|
||||
using Robust.Shared.Map;
|
||||
using Robust.Shared.Prototypes;
|
||||
|
||||
namespace Content.Shared._CP14.Skill;
|
||||
|
||||
public abstract partial class CP14SharedSkillSystem
|
||||
{
|
||||
[Dependency] private readonly EntityLookupSystem _lookup = default!;
|
||||
[Dependency] private readonly ExamineSystemShared _examine = default!;
|
||||
[Dependency] private readonly MobStateSystem _mobState = default!;
|
||||
|
||||
public void GiveExperienceInRadius(EntityCoordinates position, ProtoId<CP14SkillTreePrototype> tree, FixedPoint2 points, float radius = 5)
|
||||
{
|
||||
var entities = _lookup.GetEntitiesInRange<CP14SkillStorageComponent>(position, radius, LookupFlags.Uncontained);
|
||||
|
||||
foreach (var ent in entities)
|
||||
{
|
||||
//Cant learn if the position is not in range or obstructed
|
||||
if (!_examine.InRangeUnOccluded(ent, position, radius))
|
||||
continue;
|
||||
|
||||
//Cant learn when dead
|
||||
if (TryComp<MobStateComponent>(ent, out var mobState) && !_mobState.IsAlive(ent, mobState))
|
||||
continue;
|
||||
|
||||
//Cant learn if the entity is sleeping
|
||||
if (HasComp<SleepingComponent>(ent))
|
||||
continue;
|
||||
|
||||
TryAddExperience(ent, tree, points);
|
||||
}
|
||||
}
|
||||
|
||||
public void GiveExperienceInRadius(EntityUid uid,
|
||||
ProtoId<CP14SkillTreePrototype> tree,
|
||||
FixedPoint2 points,
|
||||
float radius = 5)
|
||||
{
|
||||
GiveExperienceInRadius(Transform(uid).Coordinates, tree, points, radius);
|
||||
}
|
||||
}
|
||||
@@ -22,12 +22,6 @@ public sealed partial class CP14SkillStorageComponent : Component
|
||||
[DataField, AutoNetworkedField]
|
||||
public FixedPoint2 SkillsSumExperience = 0;
|
||||
|
||||
/// <summary>
|
||||
/// Keeps track of progress points in the knowledge areas available to the player. Important: The absence of a specific area means that the player CANNOT progress in that area.
|
||||
/// </summary>
|
||||
[DataField, AutoNetworkedField]
|
||||
public Dictionary<ProtoId<CP14SkillTreePrototype>, FixedPoint2> Progress = new();
|
||||
|
||||
/// <summary>
|
||||
/// The maximum ceiling of experience points that can be spent on learning skills. Not tied to a category.
|
||||
/// </summary>
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
using System.Numerics;
|
||||
using Content.Shared._CP14.Skill.Effects;
|
||||
using Content.Shared._CP14.Skill.Restrictions;
|
||||
using Robust.Shared.Audio;
|
||||
using Robust.Shared.Prototypes;
|
||||
using Robust.Shared.Utility;
|
||||
|
||||
@@ -26,12 +27,6 @@ public sealed partial class CP14SkillPrototype : IPrototype
|
||||
[DataField]
|
||||
public LocId? Desc;
|
||||
|
||||
/// <summary>
|
||||
/// The tree this skill belongs to. This is used to group skills together in the UI.
|
||||
/// </summary>
|
||||
[DataField(required: true)]
|
||||
public ProtoId<CP14SkillTreePrototype> Tree = default!;
|
||||
|
||||
/// <summary>
|
||||
/// The cost to learn this skill. This is used to determine how many progress points are needed to learn the skill.
|
||||
/// </summary>
|
||||
@@ -62,4 +57,7 @@ public sealed partial class CP14SkillPrototype : IPrototype
|
||||
/// </summary>
|
||||
[DataField]
|
||||
public List<CP14SkillRestriction> Restrictions = new();
|
||||
|
||||
[DataField]
|
||||
public SoundSpecifier LearnSound = new SoundCollectionSpecifier("CP14LearnSkill");
|
||||
}
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
using Robust.Shared.Audio;
|
||||
using Robust.Shared.Prototypes;
|
||||
using Robust.Shared.Utility;
|
||||
|
||||
namespace Content.Shared._CP14.Skill.Prototypes;
|
||||
|
||||
/// <summary>
|
||||
/// A group of skills combined into one “branch”
|
||||
/// </summary>
|
||||
[Prototype("cp14SkillTree")]
|
||||
public sealed partial class CP14SkillTreePrototype : IPrototype
|
||||
{
|
||||
[IdDataField] public string ID { get; } = default!;
|
||||
|
||||
[DataField(required: true)]
|
||||
public LocId Name;
|
||||
|
||||
[DataField]
|
||||
public SpriteSpecifier? FrameIcon;
|
||||
|
||||
[DataField]
|
||||
public SpriteSpecifier? HoveredIcon;
|
||||
|
||||
[DataField]
|
||||
public SpriteSpecifier? SelectedIcon;
|
||||
|
||||
[DataField]
|
||||
public SpriteSpecifier? LearnedIcon;
|
||||
|
||||
[DataField]
|
||||
public SpriteSpecifier? AvailableIcon;
|
||||
|
||||
[DataField]
|
||||
public string Parallax = "AspidParallax";
|
||||
|
||||
[DataField]
|
||||
public LocId? Desc;
|
||||
|
||||
[DataField]
|
||||
public Color Color;
|
||||
|
||||
[DataField]
|
||||
public SoundSpecifier LearnSound = new SoundCollectionSpecifier("CP14LearnSkill");
|
||||
|
||||
[DataField]
|
||||
public SpriteSpecifier? Icon = null;
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
cp14-skill-tree-blaksmithing-name = Blacksmithing
|
||||
cp14-skill-tree-blaksmithing-desc = Explore and create new items from metal.
|
||||
|
||||
cp14-skill-tree-pyrokinetic-name = Pyrokinetic
|
||||
cp14-skill-tree-pyrokinetic-desc = Master the magic of fire, allowing you to warm, illuminate, and destroy.
|
||||
|
||||
cp14-skill-tree-hydrosophistry-name = Hydrosophistry
|
||||
cp14-skill-tree-hydrosophistry-desc = Master the magic of water and frost to create items from water and ice, and freeze enemies.
|
||||
|
||||
cp14-skill-tree-metamagic-name = Metamagic
|
||||
cp14-skill-tree-metamagic-desc = Explore ways to subtly manipulate magic to affect spells and items.
|
||||
|
||||
cp14-skill-tree-illusion-name = Illusoriness
|
||||
cp14-skill-tree-illusion-desc = Explore the nature of light to create illusions, light sources and shadows.
|
||||
|
||||
cp14-skill-tree-healing-name = Lifecation
|
||||
cp14-skill-tree-healing-desc = Explore the ways in which magic affects living creatures.
|
||||
|
||||
cp14-skill-tree-dimension-name = Dimensium
|
||||
cp14-skill-tree-dimension-desc = Immerse yourself in the nature of space and void.
|
||||
|
||||
# Body
|
||||
|
||||
cp14-skill-tree-atlethic-name = Atlethic
|
||||
cp14-skill-tree-atlethic-desc = Develop your body by pushing the boundaries of what is available.
|
||||
@@ -1,27 +0,0 @@
|
||||
cp14-skill-tree-blaksmithing-name = Кузнечное дело
|
||||
cp14-skill-tree-blaksmithing-desc = Исследуйте и создавайте новые предметы из металла.
|
||||
|
||||
# Magic
|
||||
|
||||
cp14-skill-tree-pyrokinetic-name = Пирокинетика
|
||||
cp14-skill-tree-pyrokinetic-desc = Овладейте магией огня, позволяющей вам согревать, освещать и уничтожать.
|
||||
|
||||
cp14-skill-tree-hydrosophistry-name = Гидрософистика
|
||||
cp14-skill-tree-hydrosophistry-desc = Овладейте магией воды и мороза, чтобы создавать предметы из воды и льда, и замораживать врагов.
|
||||
|
||||
cp14-skill-tree-metamagic-name = Метамагия
|
||||
cp14-skill-tree-metamagic-desc = Исследуйте способы тонкой манипуляции магии, чтобы влиять на заклинания и предметы.
|
||||
|
||||
cp14-skill-tree-illusion-name = Иллюзорность
|
||||
cp14-skill-tree-illusion-desc = Исследуйте природу света, чтобы создавать иллюзии, источники света и тени.
|
||||
|
||||
cp14-skill-tree-healing-name = Жизнетворение
|
||||
cp14-skill-tree-healing-desc = Изучайте способы влияния магии на живые создания.
|
||||
|
||||
cp14-skill-tree-dimension-name = Дименсиум
|
||||
cp14-skill-tree-dimension-desc = Погрузитесь в природу пространства и пустоты.
|
||||
|
||||
# Body
|
||||
|
||||
cp14-skill-tree-atlethic-name = Атлетика
|
||||
cp14-skill-tree-atlethic-desc = Развивайте свое тело, расширяя границы доступного.
|
||||
@@ -1,7 +1,6 @@
|
||||
- type: roleLoadout
|
||||
id: JobCP14Adventurer
|
||||
groups:
|
||||
- CP14SkillTree
|
||||
- CP14GeneralHead
|
||||
- CP14GeneralOuterClothing
|
||||
- CP14GeneralEyes
|
||||
@@ -18,7 +17,6 @@
|
||||
- type: roleLoadout
|
||||
id: JobCP14Apprentice
|
||||
groups:
|
||||
- CP14SkillTree
|
||||
- CP14GeneralHead
|
||||
- CP14GeneralOuterClothing
|
||||
- CP14GeneralEyes
|
||||
@@ -33,7 +31,6 @@
|
||||
- type: roleLoadout
|
||||
id: JobCP14Alchemist
|
||||
groups:
|
||||
- CP14SkillTree
|
||||
- CP14AlchemistHead #
|
||||
- CP14GeneralOuterClothing
|
||||
- CP14AlchemistEyes #
|
||||
@@ -49,7 +46,6 @@
|
||||
- type: roleLoadout
|
||||
id: JobCP14Innkeeper
|
||||
groups:
|
||||
- CP14SkillTree
|
||||
- CP14GeneralHead
|
||||
- CP14GeneralOuterClothing
|
||||
- CP14GeneralEyes
|
||||
@@ -64,7 +60,6 @@
|
||||
- type: roleLoadout
|
||||
id: JobCP14Blacksmith
|
||||
groups:
|
||||
- CP14SkillTree
|
||||
- CP14GeneralHead
|
||||
- CP14GeneralOuterClothing
|
||||
- CP14GeneralEyes
|
||||
@@ -79,7 +74,6 @@
|
||||
- type: roleLoadout
|
||||
id: JobCP14GuardCommander
|
||||
groups:
|
||||
- CP14SkillTree
|
||||
- CP14GuardHead
|
||||
- CP14GeneralOuterClothing
|
||||
- CP14GeneralEyes
|
||||
@@ -95,7 +89,6 @@
|
||||
- type: roleLoadout
|
||||
id: JobCP14Guard
|
||||
groups:
|
||||
- CP14SkillTree
|
||||
- CP14GuardHead
|
||||
- CP14GeneralOuterClothing
|
||||
- CP14GeneralEyes
|
||||
@@ -111,7 +104,6 @@
|
||||
- type: roleLoadout
|
||||
id: JobCP14Commandant
|
||||
groups:
|
||||
- CP14SkillTree
|
||||
- CP14MerchantOuterClothing
|
||||
- CP14GeneralEyes
|
||||
- CP14MerchantShirt
|
||||
@@ -123,7 +115,6 @@
|
||||
- type: roleLoadout
|
||||
id: JobCP14Guildmaster
|
||||
groups:
|
||||
- CP14SkillTree
|
||||
- CP14GuildmasterOuterClothing
|
||||
- CP14GeneralEyes
|
||||
- CP14GuildmasterHead
|
||||
@@ -138,7 +129,6 @@
|
||||
- type: roleLoadout
|
||||
id: JobCP14Merchant
|
||||
groups:
|
||||
- CP14SkillTree
|
||||
- CP14MerchantHead
|
||||
- CP14MerchantOuterClothing
|
||||
- CP14GeneralEyes
|
||||
|
||||
@@ -1,119 +0,0 @@
|
||||
- type: loadoutGroup
|
||||
id: CP14SkillTree
|
||||
name: cp14-loadout-skill-tree
|
||||
minLimit: 2
|
||||
maxLimit: 2
|
||||
loadouts:
|
||||
- CP14SkillTreeMetamagic
|
||||
- CP14SkillTreeHydrosophistry
|
||||
- CP14SkillTreePyrokinetic
|
||||
- CP14SkillTreeIllusion
|
||||
- CP14SkillTreeHealing
|
||||
- CP14SkillTreeAtlethic
|
||||
#- CP14SkillTreeDimension Disabled until teleport & grab collider fix
|
||||
|
||||
- type: entity
|
||||
id: CP14SkillTreePyrokineticLoadoutDummy
|
||||
name: Pyrokinetic
|
||||
categories: [ HideSpawnMenu ]
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: pyro
|
||||
|
||||
- type: loadout
|
||||
id: CP14SkillTreePyrokinetic
|
||||
dummyEntity: CP14SkillTreePyrokineticLoadoutDummy
|
||||
skillTree:
|
||||
Pyrokinetic: 2
|
||||
|
||||
- type: entity
|
||||
id: CP14SkillTreeHydrosophistryLoadoutDummy
|
||||
name: Hydrosophistry
|
||||
categories: [ HideSpawnMenu ]
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: water
|
||||
|
||||
- type: loadout
|
||||
id: CP14SkillTreeHydrosophistry
|
||||
dummyEntity: CP14SkillTreeHydrosophistryLoadoutDummy
|
||||
skillTree:
|
||||
Hydrosophistry: 2
|
||||
|
||||
- type: entity
|
||||
id: CP14SkillTreeIllusionLoadoutDummy
|
||||
name: Illusion
|
||||
categories: [ HideSpawnMenu ]
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: light
|
||||
|
||||
- type: loadout
|
||||
id: CP14SkillTreeIllusion
|
||||
dummyEntity: CP14SkillTreeIllusionLoadoutDummy
|
||||
skillTree:
|
||||
Illusion: 2
|
||||
|
||||
- type: entity
|
||||
id: CP14SkillTreeMetamagicLoadoutDummy
|
||||
name: Metamagic
|
||||
categories: [ HideSpawnMenu ]
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: meta
|
||||
|
||||
- type: loadout
|
||||
id: CP14SkillTreeMetamagic
|
||||
dummyEntity: CP14SkillTreeMetamagicLoadoutDummy
|
||||
skillTree:
|
||||
Metamagic: 2
|
||||
|
||||
- type: entity
|
||||
id: CP14SkillTreeHealingLoadoutDummy
|
||||
name: Healing
|
||||
categories: [ HideSpawnMenu ]
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: heal
|
||||
|
||||
- type: loadout
|
||||
id: CP14SkillTreeHealing
|
||||
dummyEntity: CP14SkillTreeHealingLoadoutDummy
|
||||
skillTree:
|
||||
Healing: 2
|
||||
|
||||
- type: entity
|
||||
id: CP14SkillTreeAtlethicLoadoutDummy
|
||||
name: Atlethic
|
||||
categories: [ HideSpawnMenu ]
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: atlethic
|
||||
|
||||
- type: loadout
|
||||
id: CP14SkillTreeAtlethic
|
||||
dummyEntity: CP14SkillTreeAtlethicLoadoutDummy
|
||||
skillTree:
|
||||
Atlethic: 2
|
||||
|
||||
- type: entity
|
||||
id: CP14SkillTreeDimensionLoadoutDummy
|
||||
name: Dimension
|
||||
categories: [ HideSpawnMenu ]
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: dimension
|
||||
|
||||
- type: loadout
|
||||
id: CP14SkillTreeDimension
|
||||
dummyEntity: CP14SkillTreeDimensionLoadoutDummy
|
||||
skillTree:
|
||||
Dimension: 2
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellKick
|
||||
skillUiPosition: 0, 0
|
||||
tree: Atlethic
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/physical.rsi
|
||||
state: kick
|
||||
@@ -10,8 +9,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellSprint
|
||||
skillUiPosition: 0, 2
|
||||
tree: Atlethic
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/physical.rsi
|
||||
state: sprint
|
||||
@@ -20,9 +18,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellSprintGoblin
|
||||
skillUiPosition: 2, 2
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 0
|
||||
tree: Atlethic
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/physical.rsi
|
||||
state: sprint
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellShadowGrab
|
||||
skillUiPosition: 0, 0
|
||||
tree: Dimension
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/dimension.rsi
|
||||
state: shadow_grab
|
||||
@@ -10,8 +9,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellShadowSwap
|
||||
skillUiPosition: 0, 2
|
||||
tree: Dimension
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/dimension.rsi
|
||||
state: shadow_swap
|
||||
@@ -20,9 +18,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellShadowStep
|
||||
skillUiPosition: 0, 4
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 2
|
||||
tree: Dimension
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/dimension.rsi
|
||||
state: shadow_step
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellCureBurn
|
||||
skillUiPosition: 0, 0
|
||||
tree: Healing
|
||||
learnCost: 1
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/healing.rsi
|
||||
@@ -11,9 +10,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellBloodPurification
|
||||
skillUiPosition: 2, 0
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 1
|
||||
tree: Healing
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/healing.rsi
|
||||
state: cure_poison
|
||||
@@ -22,9 +20,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellCureWounds
|
||||
skillUiPosition: 4, 0
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 1
|
||||
tree: Healing
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/healing.rsi
|
||||
state: cure_wounds
|
||||
@@ -33,8 +30,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellPlantGrowth
|
||||
skillUiPosition: 0, 2
|
||||
tree: Healing
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/healing.rsi
|
||||
state: plant_growth
|
||||
@@ -43,9 +39,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellHealBallade
|
||||
skillUiPosition: 0, 6
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 1
|
||||
tree: Healing
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/healing.rsi
|
||||
state: heal_music
|
||||
@@ -54,8 +49,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellPeaceBallade
|
||||
skillUiPosition: 0, 8
|
||||
tree: Healing
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/healing.rsi
|
||||
state: peace_music
|
||||
@@ -64,8 +58,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellSpeedBallade
|
||||
skillUiPosition: 0, 10
|
||||
tree: Healing
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/healing.rsi
|
||||
state: speed_music
|
||||
@@ -74,8 +67,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellSheepPolymorph
|
||||
skillUiPosition: 4, 10
|
||||
tree: Healing
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/misc.rsi
|
||||
state: polymorph
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellFreeze
|
||||
skillUiPosition: 0, 4
|
||||
tree: Hydrosophistry
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/water.rsi
|
||||
state: freeze
|
||||
@@ -11,7 +10,6 @@
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellWaterCreation
|
||||
skillUiPosition: 0, 0
|
||||
tree: Hydrosophistry
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/water.rsi
|
||||
state: water_creation
|
||||
@@ -20,8 +18,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellBeerCreation
|
||||
skillUiPosition: 2, 0
|
||||
tree: Hydrosophistry
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/water.rsi
|
||||
state: beer_creation
|
||||
@@ -33,8 +30,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellIceShards
|
||||
skillUiPosition: 0, 6
|
||||
tree: Hydrosophistry
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/water.rsi
|
||||
state: ice_shards
|
||||
@@ -43,8 +39,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellIceDagger
|
||||
skillUiPosition: 0, 8
|
||||
tree: Hydrosophistry
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/water.rsi
|
||||
state: ice_dagger
|
||||
@@ -53,8 +48,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellIceArrow
|
||||
skillUiPosition: 0, 10
|
||||
tree: Hydrosophistry
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/water.rsi
|
||||
state: ice_arrow
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellSphereOfLight
|
||||
skillUiPosition: 0, 0
|
||||
tree: Illusion
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/light.rsi
|
||||
state: sphere_of_light
|
||||
@@ -10,8 +9,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellFlashLight
|
||||
skillUiPosition: 2, 0
|
||||
tree: Illusion
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/light.rsi
|
||||
state: flash_light
|
||||
@@ -20,9 +18,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellSignalLightRed
|
||||
skillUiPosition: 0, 4
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 0.5
|
||||
tree: Illusion
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/light.rsi
|
||||
state: signal_light_red
|
||||
@@ -31,9 +28,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellSignalLightYellow
|
||||
skillUiPosition: 0, 6
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 0.5
|
||||
tree: Illusion
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/light.rsi
|
||||
state: signal_light_yellow
|
||||
@@ -42,9 +38,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellSignalLightBlue
|
||||
skillUiPosition: 0, 8
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 0.5
|
||||
tree: Illusion
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/light.rsi
|
||||
state: signal_light_blue
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellMagicSplitting
|
||||
skillUiPosition: 0, 0
|
||||
tree: Metamagic
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/meta.rsi
|
||||
state: counter_spell
|
||||
@@ -10,9 +9,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellManaGift
|
||||
skillUiPosition: 0, 2
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 0.5
|
||||
tree: Metamagic
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/meta.rsi
|
||||
state: mana_gift
|
||||
@@ -21,9 +19,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellManaGiftElf
|
||||
skillUiPosition: 2, 2
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 0.5
|
||||
tree: Metamagic
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/meta.rsi
|
||||
state: mana_gift
|
||||
@@ -38,9 +35,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellManaConsume
|
||||
skillUiPosition: 0, 4
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 0.5
|
||||
tree: Metamagic
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/meta.rsi
|
||||
state: mana_consume
|
||||
@@ -49,9 +45,8 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellManaConsumeElf
|
||||
skillUiPosition: 2, 4
|
||||
skillUiPosition: 0, 0
|
||||
learnCost: 0.5
|
||||
tree: Metamagic
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/meta.rsi
|
||||
state: mana_consume
|
||||
@@ -66,8 +61,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellMagicBallade
|
||||
skillUiPosition: 0, 6
|
||||
tree: Metamagic
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/meta.rsi
|
||||
state: magic_music
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellFlameCreation
|
||||
skillUiPosition: 0, 0
|
||||
tree: Pyrokinetic
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/fire.rsi
|
||||
state: flame_creation
|
||||
@@ -10,8 +9,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellHellBallade
|
||||
skillUiPosition: 0, 2
|
||||
tree: Pyrokinetic
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/fire.rsi
|
||||
state: fire_music
|
||||
@@ -23,8 +21,7 @@
|
||||
|
||||
- type: cp14Skill
|
||||
id: CP14ActionSpellTieflingInnerFire
|
||||
skillUiPosition: 0, 4
|
||||
tree: Pyrokinetic
|
||||
skillUiPosition: 0, 0
|
||||
icon:
|
||||
sprite: _CP14/Actions/Spells/fire.rsi
|
||||
state: tiefling_revenge
|
||||
|
||||
@@ -1,62 +0,0 @@
|
||||
- type: cp14SkillTree
|
||||
id: Pyrokinetic
|
||||
name: cp14-skill-tree-pyrokinetic-name
|
||||
desc: cp14-skill-tree-pyrokinetic-desc
|
||||
color: "#b52400"
|
||||
icon:
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: pyro
|
||||
|
||||
- type: cp14SkillTree
|
||||
id: Hydrosophistry
|
||||
name: cp14-skill-tree-hydrosophistry-name
|
||||
desc: cp14-skill-tree-hydrosophistry-desc
|
||||
color: "#1554a1"
|
||||
icon:
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: water
|
||||
|
||||
- type: cp14SkillTree
|
||||
id: Illusion
|
||||
name: cp14-skill-tree-illusion-name
|
||||
desc: cp14-skill-tree-illusion-desc
|
||||
color: "#f55faf"
|
||||
icon:
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: light
|
||||
|
||||
- type: cp14SkillTree
|
||||
id: Metamagic
|
||||
name: cp14-skill-tree-metamagic-name
|
||||
desc: cp14-skill-tree-metamagic-desc
|
||||
color: "#56e5f5"
|
||||
icon:
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: meta
|
||||
|
||||
- type: cp14SkillTree
|
||||
id: Healing
|
||||
name: cp14-skill-tree-healing-name
|
||||
desc: cp14-skill-tree-healing-desc
|
||||
color: "#51cf72"
|
||||
icon:
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: heal
|
||||
|
||||
- type: cp14SkillTree
|
||||
id: Atlethic
|
||||
name: cp14-skill-tree-atlethic-name
|
||||
desc: cp14-skill-tree-atlethic-desc
|
||||
color: "#b32e37"
|
||||
icon:
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: atlethic
|
||||
|
||||
- type: cp14SkillTree
|
||||
id: Dimension
|
||||
name: cp14-skill-tree-dimension-name
|
||||
desc: cp14-skill-tree-dimension-desc
|
||||
color: "#ac66be"
|
||||
icon:
|
||||
sprite: _CP14/Actions/skill_tree.rsi
|
||||
state: dimension
|
||||
Reference in New Issue
Block a user