Second commit

This commit is contained in:
ThomasCharester committed 2026-09-20 15:26:03 +03:00
commit 36840f3ad4
999 files changed
+61364

No files matched your search

@@ -0,0 +1,43 @@
//
// This file is part of the Tremble package by Tiny Goose.
// Copyright (c) 2024-2026 TinyGoose Ltd., All Rights Reserved.
//
namespace TinyGoose.Tremble.Editor
{
[ManualPage("Import from Other Games/Texture FGDs from other games")]
public class ImportFgdPage : ManualPageBase
{
protected override void OnGUI()
{
Text("When importing maps from other games, Tremble might encounter entities which it does not recognise.");
Text("For example, if you import a map from Quake®, it will contain (among others) an",
"'info_player_start' entity to define where the player should spawn.");
Text("If you import the map and use Map Repair, you can either:");
Number("Map an existing MonoBehaviour from your game to this unknown entity, or");
Number("Have Tremble generate a new MonoBehaviour, by making assumptions based on what's in the map.");
Text("However, this can be problematic. If the map doesn't contain data for a given field,",
"Tremble will have no knowledge of it and won't generate complete C# script for it.");
Text("Tremble will never generate anything invalid, but you may be missing functionality.");
Text("This is where importing an FGD file can help!");
Foldout("What's an FGD file?", () =>
{
Text("A Forge Game Data file. It contains a list of all entities in a game, and what",
"fields they support.");
Text("It can also contain helpful tooltips and hints as to how each field is used.");
});
H1("Importing an FGD file");
Text("To import an FGD file, simply drag it into your project.");
Text("Tremble will extract the FGD classes into a folder of the same name.");
}
}
}
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: e85c2df6351a493aaeea88ae4c9fdae4
timeCreated: 1724661376
AssetOrigin:
serializedVersion: 1
productId: 277805
packageName: Tremble - Map Importer
packageVersion: 1.11.1
assetPath: Assets/Tremble/Editor/Manual/Pages/OtherGames/ImportFgdPage.cs
uploadId: 939664
@@ -0,0 +1,28 @@
//
// This file is part of the Tremble package by Tiny Goose.
// Copyright (c) 2024-2026 TinyGoose Ltd., All Rights Reserved.
//
namespace TinyGoose.Tremble.Editor
{
[ManualPage("Import from Other Games/Texture WADs from other games")]
public class ImportWadPage : ManualPageBase
{
protected override void OnGUI()
{
Text("Unfortunately, you cannot supply a WAD file in your TrenchBroom map files for Tremble to use.");
Text("However, Tremble does support extracting WAD files into your Unity project, which in turn",
"makes them available to TrenchBroom.");
Callout("Note: Only WAD2 (Quake) format WAD files are supported at the moment.",
"WAD3 (Valve) are not supported (yet?)");
Text("To get started, simply drop a WAD file into your Unity project.");
Text("This process can take a while for a large WAD file - up to a minute or two.",
"It only needs to be done once.");
Image("T_Manual_WadImport2");
}
}
}
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 418c0e37fc314aa489c2459b11529dbf
timeCreated: 1723449354
AssetOrigin:
serializedVersion: 1
productId: 277805
packageName: Tremble - Map Importer
packageVersion: 1.11.1
assetPath: Assets/Tremble/Editor/Manual/Pages/OtherGames/ImportWadPage.cs
uploadId: 939664
@@ -0,0 +1,30 @@
//
// This file is part of the Tremble package by Tiny Goose.
// Copyright (c) 2024-2026 TinyGoose Ltd., All Rights Reserved.
//
namespace TinyGoose.Tremble.Editor
{
[ManualPage("Import from Other Games/FGD Comparison", title: "The difference made by importing an FGD file", showInTree: false)]
public class MapRepairFgdComparisonPage : ManualPageBase
{
protected override void OnGUI()
{
Text("With an FGD file imported, you'll see that Tremble has the proper names and",
"descriptions of all the fields of the map classes - rather than just the ones",
"that happened to be set in the map.");
Text("It's recommended to import the FGD whenever importing 'foreign' maps to make",
"them easier to work with.");
CustomPropertyDescription("No FGD File", () =>
{
Image("T_Manual_MapRepair_NoFGD", width: 700f, centred: false);
});
CustomPropertyDescription("With FGD File", () =>
{
Image("T_Manual_MapRepair_WithFGD", width: 700f, centred: false);
});
}
}
}
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 937a21eaecb54e83a8e4180905259474
timeCreated: 1723549012
AssetOrigin:
serializedVersion: 1
productId: 277805
packageName: Tremble - Map Importer
packageVersion: 1.11.1
assetPath: Assets/Tremble/Editor/Manual/Pages/OtherGames/MapRepairFgdComparisonPage.cs
uploadId: 939664
@@ -0,0 +1,82 @@
//
// This file is part of the Tremble package by Tiny Goose.
// Copyright (c) 2024-2026 TinyGoose Ltd., All Rights Reserved.
//
using UnityEngine;
namespace TinyGoose.Tremble.Editor
{
[ManualPage("Import from Other Games/Maps from other games")]
public class MapRepairForeignPage : ManualPageBase
{
private static readonly string[] TAB_NAMES = new[]
{
"Materials/Textures", "Entities"
};
private int m_SelectedTabIdx;
protected override void OnGUI()
{
Image("T_Manual_MapRepair_Required", width: 220f);
Text("You can also use Map Repair to patch up what Tremble terms 'foreign maps' (maps",
"from other games) to work with your Tremble/Unity project. This also allows you to",
"import/export maps between your own projects, or even import maps from other games",
"(such as Quake®!).");
Text("For any unrecognised entities in maps, Map Repair will generate new MonoBehaviour classes",
"to match them. This saves time creating C# classes for brand new entities you've",
"added to the map.");
Text("These generated classes will allow Tremble to import these new entities and will",
"bring any values from the map into Unity - but of course, it won't provide any game",
"logic such as movement or AI - you'd have to code that yourself.");
H2("Available Tabs");
{
switch (Tabs(ref m_SelectedTabIdx, TAB_NAMES, width: 420f))
{
case 0: // Textures
GUILayout.BeginHorizontal();
{
Image("T_Manual_MapRepair_Textures", width: 400f);
GUILayout.BeginVertical();
{
Text("This tab shows a list of all of the map's textures, and Tremble’s best guess",
"at which project Materials match those textures.");
Bullet("You can then change which material each texture maps to manually, if you desire.");
Bullet("You can click the small '!' button to apply a given material to all missing materials",
"(for example, if you want to apply a single material to all unknown materials in a map)");
}
GUILayout.EndVertical();
}
GUILayout.EndHorizontal();
break;
case 1: // Entities
GUILayout.BeginHorizontal();
{
Image("T_Manual_MapRepair_Entities", width: 400f);
GUILayout.BeginVertical();
{
Text("This tab shows a list of all the map's point and brush entities, and Tremble’s best guess",
"at which MonoBehaviour classes match those entities.");
Bullet("You can then change which class each entity maps to manually, if you desire.");
Bullet("Leave an unknown entity class as 'Generate new class' to ask Tremble to generate",
"a new MonoBehaviour class that matches the entity. This may need manual tweaking",
"afterwards, but will be valid and able to parse the map supplied.");
Bullet("At the bottom of this tab, you are able to designate where new classes",
"are generated and an optional namespace to use for them.");
}
GUILayout.EndVertical();
}
GUILayout.EndHorizontal();
break;
}
}
}
}
}
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: e510aaa0a33f4bceb10e55cb90bbedd1
timeCreated: 1723448767
AssetOrigin:
serializedVersion: 1
productId: 277805
packageName: Tremble - Map Importer
packageVersion: 1.11.1
assetPath: Assets/Tremble/Editor/Manual/Pages/OtherGames/MapRepairForeignPage.cs
uploadId: 939664