using UnityEngine;
///
/// Quick setup script to add all necessary travel system components to the current scene.
/// Run this from the context menu or attach it to a GameObject.
///
public class QuickTravelSystemSetup : MonoBehaviour
{
[ContextMenu("Setup Travel System")]
public void SetupTravelSystem()
{
Debug.Log("๐ง Setting up Travel System...");
// Find or create main components
SetupTeamTravelSystem();
SetupTravelDebugger();
Debug.Log("โ
Travel System setup complete!");
Debug.Log("๐ก Use F8 to toggle travel system debug logs");
Debug.Log("๐ก Use F9 to toggle debug overlay");
Debug.Log("๐ก Click on the map to plan travel routes");
}
private void SetupTeamTravelSystem()
{
TeamTravelSystem travelSystem = FindFirstObjectByType();
if (travelSystem == null)
{
GameObject travelObj = new GameObject("TeamTravelSystem");
travelSystem = travelObj.AddComponent();
Debug.Log("โ
Created TeamTravelSystem");
}
else
{
Debug.Log("๐ Found existing TeamTravelSystem");
}
// Enable debug logs by default
travelSystem.showDebugLogs = true;
Debug.Log("โ
Enabled travel system debug logs");
}
private void SetupTravelDebugger()
{
TravelSystemDebugger debugger = FindFirstObjectByType();
if (debugger == null)
{
GameObject debugObj = new GameObject("TravelSystemDebugger");
debugger = debugObj.AddComponent();
Debug.Log("โ
Created TravelSystemDebugger");
}
else
{
Debug.Log("๐ Found existing TravelSystemDebugger");
}
// Enable debug overlay by default
debugger.enableDebugOverlay = true;
Debug.Log("โ
Enabled debug overlay");
}
[ContextMenu("Test Travel System")]
public void TestTravelSystem()
{
Debug.Log("๐งช Testing Travel System Components...");
var mapMaker = FindFirstObjectByType();
var teamPlacement = FindFirstObjectByType();
var travelSystem = FindFirstObjectByType();
Debug.Log($"MapMaker2: {(mapMaker != null ? "โ
Found" : "โ Missing")}");
Debug.Log($"SimpleTeamPlacement: {(teamPlacement != null ? "โ
Found" : "โ Missing")}");
Debug.Log($"TeamTravelSystem: {(travelSystem != null ? "โ
Found" : "โ Missing")}");
if (teamPlacement != null)
{
Debug.Log($"Team Placed: {(teamPlacement.IsTeamPlaced() ? "โ
Yes" : "โ No")}");
if (teamPlacement.IsTeamPlaced())
{
Debug.Log($"Team Position: {teamPlacement.GetTeamPosition()}");
}
}
if (mapMaker?.GetMapData() != null)
{
var mapData = mapMaker.GetMapData();
Debug.Log($"Map Size: {mapData.Width}x{mapData.Height}");
Debug.Log($"Tile Size: {mapMaker.mapVisualizer?.tileSize ?? 1f}");
}
Debug.Log("๐งช Test complete");
}
}