Class SampleContentGenerator

Namespace
TDMaker.Editor
Assembly
TDMaker.Editor.dll

Generates the "Basic" sample: projectiles, enemies, soldiers, four tower families, five waves on two multi-lane paths, status effects (slow, poison, stun, rally buff, shield ward), purchasable abilities on final branches (including a chain-lightning ability, a knockback ability, a channelled beam, a path-transfer rift and a trap-laying barracks), a support enemy with a shield cast and a permanent pulse-only healing aura, an armored enemy that reflects damage, one hero (with life steal and a trap skill), two spells (reinforcement and area strike), a level asset and a ready-to-play scene. All content is original and uses hand-authored vector art with procedural fallbacks; the scene uses the uGUI GameHud with a theme asset, a fitted camera, a painted ground and the IMGUI HUD as an F1 debug overlay. Re-running updates the existing assets in place. The same run also generates the Crossroads and Winding Pass levels (which reuse the Basic towers, enemies and hero) and the Demo scene (title, level select, pause and result flow over all three levels), plus the English and Korean sample string tables (Samples/Text) that every sample scene's Game Settings use, and the dynamic Korean fallback font asset of the sample HUD themes (Samples/Fonts).

public static class SampleContentGenerator
Inheritance
SampleContentGenerator
Inherited Members

Fields

ArtFolder

Folder with the rendered sample art (see tools/ArtBuild).

public const string ArtFolder = "Assets/TDMaker/Samples/Art"

Field Value

string

ArtSetPath

Path of the painted sample art set (Basic scene and the demo scene).

public const string ArtSetPath = "Assets/TDMaker/Samples/Basic/Data/BasicArtSet.asset"

Field Value

string

BasicGroundArt

Painted map of the Basic level; its pivot is the world origin.

public const string BasicGroundArt = "Assets/TDMaker/Samples/Art/Terrain/twin_roads_ground.png"

Field Value

string

CampaignPath

The sample campaign (the three sample levels on the world map).

public const string CampaignPath = "Assets/TDMaker/Samples/Demo/Data/SampleCampaign.asset"

Field Value

string

CrossroadsGroundArt

Painted map of the Crossroads level (farmland crossroads); its pivot is the world origin.

public const string CrossroadsGroundArt = "Assets/TDMaker/Samples/Art/Terrain/crossroads_ground.png"

Field Value

string

CrossroadsRoot

Folder of the Crossroads sample level.

public const string CrossroadsRoot = "Assets/TDMaker/Samples/Crossroads"

Field Value

string

CrossroadsScenePath

Scene of the Crossroads sample level.

public const string CrossroadsScenePath = "Assets/TDMaker/Samples/Crossroads/CrossroadsSample.unity"

Field Value

string

DemoRoot

Folder of the demo flow sample.

public const string DemoRoot = "Assets/TDMaker/Samples/Demo"

Field Value

string

DemoScenePath

The demo scene: title, save slots, the world map of the sample campaign, the three sample levels, pause and result flow.

public const string DemoScenePath = "Assets/TDMaker/Samples/Demo/DemoSample.unity"

Field Value

string

EnglishTablePath

English sample table: every HUD and campaign screen key (English), the demo menu keys and the sample campaign levels. Copy it to start a translation.

public const string EnglishTablePath = "Assets/TDMaker/Samples/Text/Text_English.asset"

Field Value

string

FontRoot

Folder of the sample fonts (font files with their licenses, and the TextMesh Pro font assets made from them).

public const string FontRoot = "Assets/TDMaker/Samples/Fonts"

Field Value

string

InterFontRoot

Original Inter 4.1 faces and the generated static SDF assets; OFL.txt accompanies the font files.

public const string InterFontRoot = "Assets/TDMaker/Samples/Fonts/Inter"

Field Value

string

InterRegularAssetPath

public const string InterRegularAssetPath = "Assets/TDMaker/Samples/Fonts/Inter/Inter-Regular SDF.asset"

Field Value

string

KoreanFontAssetPath

Dynamic TextMesh Pro font asset made from KoreanFontFilePath; the sample HUD themes use it as a fallback.

public const string KoreanFontAssetPath = "Assets/TDMaker/Samples/Fonts/NotoSansKR-Regular SDF.asset"

Field Value

string

KoreanFontFilePath

Korean font file shipped with the samples (Noto Sans KR Regular, SIL Open Font License 1.1, see OFL.txt).

public const string KoreanFontFilePath = "Assets/TDMaker/Samples/Fonts/NotoSansKR-Regular.otf"

Field Value

string

KoreanTablePath

Korean example table.

public const string KoreanTablePath = "Assets/TDMaker/Samples/Text/Text_Korean.asset"

Field Value

string

Root

Folder that receives the sample.

public const string Root = "Assets/TDMaker/Samples/Basic"

Field Value

string

SampleGroundArtPaths

Painted ground of every sample level, index-aligned with SampleLevelPaths (the demo battles use them).

public static readonly string[] SampleGroundArtPaths

Field Value

string[]

SampleLevelPaths

Level asset paths of every generated sample level, in demo order.

public static readonly string[] SampleLevelPaths

Field Value

string[]

SampleScenePaths

Scenes of every generated sample level, in demo order.

public static readonly string[] SampleScenePaths

Field Value

string[]

ScenePath

Path of the generated sample scene.

public const string ScenePath = "Assets/TDMaker/Samples/Basic/BasicSample.unity"

Field Value

string

TextRoot

Folder of the sample string tables.

public const string TextRoot = "Assets/TDMaker/Samples/Text"

Field Value

string

UpgradeShopPath

The sample star-upgrade shop (six tracks of five ranks) used by the sample campaign.

public const string UpgradeShopPath = "Assets/TDMaker/Samples/Demo/Data/SampleUpgradeShop.asset"

Field Value

string

WindingPassGroundArt

Painted map of the Winding Pass level (rocky mountain pass); its pivot is the world origin.

public const string WindingPassGroundArt = "Assets/TDMaker/Samples/Art/Terrain/winding_pass_ground.png"

Field Value

string

WindingPassRoot

Folder of the Winding Pass sample level.

public const string WindingPassRoot = "Assets/TDMaker/Samples/WindingPass"

Field Value

string

WindingPassScenePath

Scene of the Winding Pass sample level.

public const string WindingPassScenePath = "Assets/TDMaker/Samples/WindingPass/WindingPassSample.unity"

Field Value

string

WorldMapPath

Painted world map picture of the sample campaign, rendered by tools/ArtBuild from art/src/maps/world_map.json (level points and road bends there match TDMaker.Editor.SampleContentGenerator.SampleCampaignLevels).

public const string WorldMapPath = "Assets/TDMaker/Samples/Demo/Art/world_map.png"

Field Value

string

Methods

Generate()

Generates all sample assets and the scene. Safe to call from -executeMethod.

public static void Generate()

GenerateReleaseMechanicSamples()

Adds the mine field, companion and revival samples to the existing Basic sample assets without regenerating anything else (no scenes, no waves). Safe to call from -executeMethod.

public static void GenerateReleaseMechanicSamples()

GenerateUpgradeShopSample()

Writes only the sample upgrade shop, assigns it to the sample campaign and rewrites the sample text tables (no scenes are touched). Usable with -executeMethod TDMaker.Editor.SampleContentGenerator.GenerateUpgradeShopSample.

public static void GenerateUpgradeShopSample()