Assets/Resources/Items/IronSword.assetAssets/Resources/Items/LeatherArmor.assetAssets/Resources/Monsters/Goblin.assetIn MazeSceneBuilder (or wherever you spawn agents):
// Create agent with starting equipment
var agentStats = new CharacterStats();
var agentSheet = new CharacterSheet(agentStats);
agentSheet.EquipWeapon(iw); // Load from resources
agentSheet.EquipArmor(la);
var agent = new MazeAgent("Agent_0", startRoom, agentSheet);
In MazeGenerator.GenerateConnectedRoom() or room creation code:
var goblin = Resources.Load<Monster>("Monsters/Goblin");
var encounter = new MonsterEncounter();
encounter.SpawnMonsters(new[] { goblin }, 1, 2);
room.Encounter = encounter;
Initialize() on AutonomousAgentBrain with a retreat thresholdWhen an agent enters a room with monsters, add combat logic:
if (room.Encounter != null && room.Encounter.HasLivingMonsters)
{
// TODO: Trigger combat
// - Resolve turns based on Speed stat
// - Apply damage (attack vs defense)
// - Award loot on victory
// - Mark agent as dead on defeat
}
See Combat/README.md for the full architecture.