void StartMap() { Debug.Log("START MAP"); if (m_useRandomMap) { m_mapSeed = Random.Range(0, System.Int32.MaxValue); } // Randomize 90 deg increments m_orientationOddsTable = new OddsTable(); m_orientationOddsTable.Add("0", 5, 0); m_orientationOddsTable.Add("90", 5, 90); m_orientationOddsTable.Add("180", 5, 180); m_orientationOddsTable.Add("270", 5, 270); // Define the odds for the tile damage on the very bottom of the path damage m_tileOddsTable = new OddsTable(); m_tileOddsTable.Add("Full", 5, m_pathTile1); m_tileOddsTable.Add("Damaged 75%", 5, m_pathTile2); m_tileOddsTable.Add("Damaged 50%", 2, m_pathTile3); m_tileOddsTable.Add("Damaged 25%", 2, m_pathTile4); // Define the odds of the shrubbary m_treeOddsTable = new OddsTable(); m_treeOddsTable.Add("CherryTree", 3, m_treeCherry); m_treeOddsTable.Add("Trees1", 4, m_trees1); m_treeOddsTable.Add("Trees2", 4, m_trees2); m_treeOddsTable.Add("Trees3", 4, m_trees3); m_treeOddsTable.Add("Trees4", 0.2F, m_trees4); m_treeOddsTable.Add("Trees5", 3, m_trees4); m_bushOddsTable = new OddsTable(); m_bushOddsTable.Add("Bush1", 4, m_bush1); m_bushOddsTable.Add("Bush2", 4, m_bush2); m_bushOddsTable.Add("Bush3", 4, m_bush3); m_bushOddsTable.Add("Bush4", 4, m_bush4); m_bushOddsTable.Add("Bush5", 4, m_bush5); m_bushOddsTable.Add("Crystals1", 1F, m_crystals1); // Since perlin noise has an effect have a high chance of having fire and tent together m_objectOddsTable = new OddsTable(); int n = 0; int times = 30; float campFireSum = 1.5f; float tentSum = 2.0f; float nothingSum = 2.0f; float campfire = campFireSum / times; float tent = tentSum / times; float nothing = nothingSum / times; m_objectOddsTable.Add("Nothing" + (++n), 0.5F, null); for (int i = 0; i < times; ++i) { m_objectOddsTable.Add("Nothing" + (++n), nothing, null); m_objectOddsTable.Add("CampFire" + (++n), campfire, m_campFire1); m_objectOddsTable.Add("Tent" + (++n), tent, m_tent1); } m_objectOddsTable.Add("Nothing" + (++n), 0.5F, null); m_shrubOddsTable = new OddsTable(); //m_shrubOddsTable.Add("BlankGrass1", 3, m_blankGrass1); // subtle difference in texture m_shrubOddsTable.Add("Grass1", 3, m_grass1); m_shrubOddsTable.Add("Grass2", 2, m_grass2); m_shrubOddsTable.Add("Grass3", 3, m_grass3); m_environmentOddsTable = new OddsTable(); m_environmentOddsTable.Add("Nothing", 5, null); m_environmentOddsTable.Add("Shrubs", 20, m_shrubOddsTable); m_environmentOddsTable.Add("Camp", 20, m_objectOddsTable); m_environmentOddsTable.Add("Bush", 30, m_bushOddsTable); m_environmentOddsTable.Add("Trees", 80, m_treeOddsTable); if (m_useRandomMap) { // Apply a random map template m_currentMapTemplate = GenerateMapTemplateFromSeed(m_mapSeed); m_mapSeed = m_currentMapTemplate.GetMapSeed(); } else { m_currentMapTemplate = GenerateMapTemplateFromSeed(m_mapSeed); // Load map template from file //m_currentMapTemplate = LoadMapTemplateFromFile("defaultMap.json"); } ApplyTemplateToMap(m_currentMapTemplate); if (m_waypoints != null) { m_waypoints.CreateWaypoints(); } }