Class TowerTree
- Namespace
- TDMaker.Editor
- Assembly
- TDMaker.Editor.dll
Project-wide queries and undoable edits on tower upgrade graphs.
public static class TowerTree
- Inheritance
-
TowerTree
- Inherited Members
Methods
AllTowers()
Loads every TowerAsset in the project.
public static List<TowerAsset> AllTowers()
Returns
CreateUpgrade(TowerAsset, bool)
Creates a new tier next to parent (a copy with no upgrades), links it as an upgrade and
returns it. The parent change is undoable; the new asset file stays on disk.
public static TowerAsset CreateUpgrade(TowerAsset parent, bool branch)
Parameters
parentTowerAssetbranchbool
Returns
Investment(TowerAsset, List<TowerAsset>)
Gold spent to reach tower from its root along the first-parent chain.
public static int Investment(TowerAsset tower, List<TowerAsset> all = null)
Parameters
towerTowerAssetallList<TowerAsset>
Returns
Parents(TowerAsset, List<TowerAsset>)
Towers whose upgrade list contains child.
public static List<TowerAsset> Parents(TowerAsset child, List<TowerAsset> all = null)
Parameters
childTowerAssetallList<TowerAsset>
Returns
Root(TowerAsset, List<TowerAsset>)
Walks first parents up to the root of the tree (stops on cycles).
public static TowerAsset Root(TowerAsset tower, List<TowerAsset> all = null)
Parameters
towerTowerAssetallList<TowerAsset>
Returns
Unlink(TowerAsset, TowerAsset)
Removes the link from parent to child (the asset is kept).
public static void Unlink(TowerAsset parent, TowerAsset child)
Parameters
parentTowerAssetchildTowerAsset