public bool CreatePlayer(PlayerDTO playerDTO) { // It might have already been created. if (activePlayers.ContainsKey(PlayerId(playerDTO.id))) { return(true); } GameObject player = PlayerGenerator.GeneratePlayer(playerDTO, parentPlayerFolder); if (player == null) { return(false); } player.tag = PLAYER_TAG; player.name = PlayerId(playerDTO.id); player.AddComponent <PlayerController>(); if (playersCurrentAvatarID == playerDTO.id) { Debug.Log("Setting marker to id: " + playersCurrentAvatarID); PlayerGenerator.AppendMarker(player); } activePlayers.Add(PlayerId(playerDTO.id), player); return(true); }
public void TestPlayerGeneratorMapIDToSkin() { // ID 1 to Material 1 Material expectedSkin = PlayerGenerator.materials[1]; int playerID = 1; Material receivedSkin = PlayerGenerator.mapIDToSkin(playerID); Assert.AreSame(expectedSkin, receivedSkin); // ID 3 to Material 3 expectedSkin = PlayerGenerator.materials[3]; playerID = 3; receivedSkin = PlayerGenerator.mapIDToSkin(playerID); Assert.AreSame(expectedSkin, receivedSkin); // ID materials.Length to Material 0 expectedSkin = PlayerGenerator.materials[0]; playerID = PlayerGenerator.numberOfSkins; receivedSkin = PlayerGenerator.mapIDToSkin(playerID); Assert.AreSame(expectedSkin, receivedSkin); // ID materials.Length + 1 to Material 1 expectedSkin = PlayerGenerator.materials[1]; playerID = PlayerGenerator.numberOfSkins + 1; receivedSkin = PlayerGenerator.mapIDToSkin(playerID); Assert.AreSame(expectedSkin, receivedSkin); }
public HttpResponseMessage Get() { var players = TableManager.Get <PlayerEntity>(TableData.PlayersTable).ToList(); var captains = TableManager.Get <CaptainEntity>(TableData.CaptainsTable).ToList(); return(this.Response(() => PlayerGenerator.Generate(players, captains), null)); }
public VoteScannerTests() { var players = new Player[] { PlayerGenerator.GeneratePlayer(name: "John0", aliases: new string[] { "John" }), PlayerGenerator.GeneratePlayer(name: "Xevious", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "snowbind", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "GMass", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "Liamness", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "spork", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "Alask", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "PaulM", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "Danster", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "gospvg", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "Strategos", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "bennette98", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "Don Wiskerando", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "The Grand Pursuivant", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "Mr. Blonde", aliases: new string[0]), PlayerGenerator.GeneratePlayer(name: "Mr. Violet", aliases: new string[] { "Mr Violet", "Violet", "Mr.Violet", "MrViolet" }), PlayerGenerator.GeneratePlayer(name: "Mr. Viridian", aliases: new string[] { "Mr.Viridian", "Mr Viridian", "Viridian", "MrViridian" }), PlayerGenerator.GeneratePlayer(name: "Moderator", aliases: new string[0], participating: false), PlayerGenerator.GeneratePlayer(name: "Player With Aliases", aliases: new string[] { "PlayerWithAliases", "PWA" }), }; var mockRepo = new Mock <IRepository>(); mockRepo.Setup(m => m.FindAllPlayers()) .Returns(players); this.voteScanner = new VoteScanner(mockRepo.Object, 8); }
public GameObject getPlayer() { if (player == null) { player = PlayerGenerator.genPlayer(); } return(player); }
public void createPlayer() { // プレイヤを生成する。 mPlayerGenerator = GameObject.Find("PlayerGenerator").GetComponent <PlayerGenerator>(); PlayerController player = mPlayerGenerator.Create(); // mRippleGenerator = GameObject.Find("RippleGenerator").GetComponent <RippleGenerator>(); player.mRippleShoot = mRippleGenerator.Create(); }
private void Awake() { if (instance != null && instance != this) { Destroy(this.gameObject); return; } instance = this; }
public PrefabGeneratorWindow() { mMonsterGenerator = new MonsterGenerator(); mMonsterGenerator.Init(ANIMATION_PATH, ANIMATOR_CONTROLLER_PATH, PREFAB_PATH); mPlayerGenerator = new PlayerGenerator(); mPlayerGenerator.Init(ANIMATION_PATH, ANIMATOR_CONTROLLER_PATH, PREFAB_PATH); mTerrainGenerator = new TerrainGenerator(); mTerrainGenerator.Init(ANIMATION_PATH, ANIMATOR_CONTROLLER_PATH, PREFAB_PATH); }
public void TestGeneratePlayerByPrefab() { GameObject playersFolder = GameObject.Find("Players"); GameObject deePrefab = Resources.Load <GameObject>("Prefabs/Players/player_dee"); GameObject generatedPlayer = PlayerGenerator.GeneratePlayer(deePrefab, playersFolder); Assert.AreEqual(0, generatedPlayer.transform.localPosition.x); Assert.AreEqual(0, generatedPlayer.transform.localPosition.y); Assert.AreEqual(0, generatedPlayer.transform.localPosition.z); Assert.AreEqual(generatedPlayer.transform.parent.name, "Players"); }
public void SetUpPlayerManager() { parentStub = new GameObject("ParentStub"); playersFolder = new GameObject("PlayersFolder"); playerManager = parentStub.AddComponent <PlayerManager>(); playerManager.parentPlayerFolder = playersFolder; player = PlayerGenerator.GeneratePlayer(new PlayerDTO { id = 0, location = new Location(5, 5), orientation = "north" }, playersFolder); player.AddComponent <PlayerController>(); }
public static GameObject GeneratePlayer(PlayerDTO playerDTO, GameObject playerFolder = null) { playerFolder = playerFolder ?? playersFolder; GameObject player = Object.Instantiate( PlayerGenerator.characterPrefab, new Vector3(playerDTO.location.x, 0, playerDTO.location.y), Quaternion.identity) as GameObject; player.transform.SetParent(playerFolder.transform, false); player.transform.Find("Dee").GetComponent <Renderer>().material = PlayerGenerator.mapIDToSkin(playerDTO.id); return(player); }
private void InsertPlayers() { using (var session = _store.OpenSession()) { var players = PlayerGenerator.GetPlayers(); foreach (var player1 in players) { session.Store(player1); } session.SaveChanges(); } WaitForIndexing(_store); }
void LoadPlayer() { var playerStore = new PlayerStore(this); if (playerStore.playerPersisted) { player = playerStore.Load(); newGame = false; } else { var playerGen = new PlayerGenerator(this); player = playerGen.Generate(); } }
private void Awake() { mazeGenerator = GetComponent <MazeGenerator>(); playerGenerator = GetComponent <PlayerGenerator>(); itemGenerator = GetComponent <ItemGenerator>(); playerManager = GetComponent <PlayerManager>(); var managers = GameObject.FindWithTag("Managers"); turnManager = managers.GetComponent <TurnManager>(); var buttons = GetComponent <Buttons>(); buttons.moveColumn?.onClick.AddListener(MoveColumn); actions = new Actions(); }
static void Main(string[] args) { string json = System.IO.File.ReadAllText($"{AppContext.BaseDirectory}/appsettings.json"); AppSettings settings = Newtonsoft.Json.JsonConvert.DeserializeObject <AppSettings>(json); StandardDeckGenerator standardDeckGenerator = new StandardDeckGenerator(); var deck = standardDeckGenerator.Generate(); PlayerGenerator playerGenerator = new PlayerGenerator(); var players = playerGenerator.Generate(settings.NumberOfPlayers); Console.WriteLine("Done"); }
private void GenerateDungeonFeatures(int direction) { // Generate architecture for each tree quad recursively ArchitectureGenerator architecture = new ArchitectureGenerator(); architecture.GenerateArchitecture(dungeonGenerator.quadTree); // Generate stairs StairGenerator stairs = new StairGenerator(); stairs.Generate(); // If we cannot solve the level, we need to generate a different one if (!LevelIsSolvable()) { Debug.LogError("Dungeon level cannot be solved. Genrating again..."); GenerateDungeon(direction); return; } // Generate player PlayerGenerator player = new PlayerGenerator(); Stair stair = direction == -1 ? grid.stairDown : grid.stairUp; player.GenerateAtPos(stair.x, stair.y); // Generate furniture FurnitureGenerator furniture = new FurnitureGenerator(); furniture.Generate(); // Generate monsters MonsterGenerator monsters = new MonsterGenerator(); monsters.Generate(); //monsters.GenerateSingle(); // Generate chests ChestGenerator chests = new ChestGenerator(); chests.Generate(); // Generate items ItemGenerator items = new ItemGenerator(); items.Generate(); }
//initalize the game manager public void Init() { _prefabs = GetComponent <PrefabManager>(); _strings = GetComponent <StringManager>(); _battle = GameObject.Find("BattleManager").GetComponent <BattleManager>(); _backdrop = GameObject.Find("BattleBackdrop").GetComponent <BattleBackdropManager>(); seed = SeedGenerator.StringToInt(playerName); Debug.Log("Current Seed: " + seed.ToString()); playerCharacters = new List <PlayerChampion>(); playerCharacters.Add(PlayerGenerator.CreateNewCharacter(_prefabs.playerChampionPrefab, playerName)); mainCharacter = playerCharacters[0].gameObject; playerCharacters.Add(PlayerGenerator.CreateNewCharacter(_prefabs.playerChampionPrefab)); _battle.Init(); _backdrop.Init(); }
public static Game CreateGame() { var players = TableManager.Get <PlayerEntity>(TableData.PlayersTable).ToList(); if (players.Count < TeamPlayerCount) { throw new ArgumentException($"Number of generated players should be greater than {TeamPlayerCount}"); } var captains = TableManager.Get <CaptainEntity>(TableData.CaptainsTable).ToList(); var allPlayers = PlayerGenerator.Generate(players, captains); var shuffled = RandomSelectors.Shuffle(Seeder.Random(), allPlayers).ToList(); var game = new Game(shuffled.Take(TeamPlayerCount), shuffled.Skip(shuffled.Count - TeamPlayerCount)); Save(game); return(game); }
public void GenerateLevel(Transform root = null) { this.root = root; if (this.root == null) { this.root = CreateEmptyLevelFolder(); } SetupCamera(); SetupLighting(); CreateTerrainFolder(); CreateTerrain(); CreateGrid(); CreatePickupsFolder(); CreateObstaclesFolder(); CreatePlayerFolder(); GameObject defaultPlayerPrefab = Resources.Load <GameObject>("Prefabs/Players/player_dee"); PlayerGenerator.GeneratePlayer(defaultPlayerPrefab, avatarFolder); }
public TeamGenerator() { // Instantiate the player generator playerGenerator = new PlayerGenerator(); // Create the randomizer random = new Random(); // Create the adjectives list listAdjectives = new List<string>(); listAdjectives.Add("Flaming"); listAdjectives.Add("Mighty"); listAdjectives.Add("Icy"); listAdjectives.Add("Furious"); listAdjectives.Add("Hardy"); listAdjectives.Add("Flying"); listAdjectives.Add("Red"); listAdjectives.Add("Green"); listAdjectives.Add("Uber"); listAdjectives.Add("Rolling"); // Create the nouns list listNouns = new List<string>(); listNouns.Add("Penguins"); listNouns.Add("Bears"); listNouns.Add("Rocks"); listNouns.Add("Skates"); listNouns.Add("Fists"); listNouns.Add("Giants"); listNouns.Add("Dolphins"); listNouns.Add("Coats"); listNouns.Add("Gloves"); listNouns.Add("Masks"); listNouns.Add("Squirrels"); listNouns.Add("Waves"); listNouns.Add("Tackles"); listNouns.Add("Fighters"); }
public void TestGeneratePlayerByDTO() { PlayerDTO playerDTO = new PlayerDTO(); Location playerLocation = new Location(10, 20); GameObject playersFolder = GameObject.Find("Players"); playerDTO.location = playerLocation; playerDTO.id = 1; GameObject generatedPlayer = PlayerGenerator.GeneratePlayer(playerDTO, playersFolder); Assert.AreEqual(playerLocation.x, generatedPlayer.transform.localPosition.x); Assert.AreEqual(0, generatedPlayer.transform.localPosition.y); Assert.AreEqual(playerLocation.y, generatedPlayer.transform.localPosition.z); int noOfSkins = PlayerGenerator.numberOfSkins; Material expectedSkin = PlayerGenerator.materials[playerDTO.id % noOfSkins]; Material returnedSkin = generatedPlayer.transform.Find("Dee").GetComponent <Renderer>().sharedMaterial; Assert.IsInstanceOf <Material>(returnedSkin); Assert.AreEqual(expectedSkin, returnedSkin); Assert.AreEqual(generatedPlayer.transform.parent.name, "Players"); }
public void AddPlayer(GameObject gameObject) { PlayerGenerator player = new PlayerGenerator(); player.Generate(gameObject); }
public void Start() { generator = new PlayerGenerator(); myGrid = new Grid(); }
// Start is called before the first frame update void Start() { playerGen = GameObject.Find("PlayerGenerator").GetComponent <PlayerGenerator>(); }
public PlayerControllerTest() { _playerGenerator = new PlayerGenerator(); }
public PlayerGeneratorTests() { sut = new PlayerGenerator(); }
static void INSTALL(string inputSeed, bool skipAnimRandomizer = false) { Random random; if (inputSeed == "") { random = new Random(); } else { random = new Random(inputSeed.GetHashCode()); } if (MOD_PATH == null) { MOD_PATH = AskForDir(); } else { Console.WriteLine("\nUse previously-specified game directory? (Y/N)"); bool yes = ReadKey(ConsoleKey.Y, ConsoleKey.N) == ConsoleKey.Y; if (!yes) { MOD_PATH = AskForDir(); } } if (MOD_PATH == null) { Console.WriteLine("No EXE selected. Cancelling installation."); return; } DateTime startTime = DateTime.Now; Console.WriteLine("\nBeginning installation... This will take about one minute."); Console.WriteLine("\n" + SoyPuns.PopRandomElement(random) + "\n"); SoulsMod mod = new SoulsMod( MOD_PATH, ".smbak", Resources.GameData.GameParam_parambnd, Resources.GameData.paramdef_paramdefbnd, Resources.GameData.item_msgbnd, Resources.GameData.menu_msgbnd); mod.LoadPlayerCharacter(); mod.LoadNonPlayerCharacters(); InstallInterrootFolder("event", mod); InstallInterrootFolder("map", mod); InstallInterrootFolder("script", mod); InstallInterrootFolder("sfx", mod); InstallInterrootFolder("sound", mod); PlayerGenerator playerSetup = new PlayerGenerator(mod); #if DEBUG Console.WriteLine("Running player setup..."); #endif playerSetup.Install(); Thread.CurrentThread.Join(0); TextGenerator textSetup = new TextGenerator(mod); #if DEBUG Console.WriteLine("Running text setup..."); #endif textSetup.Install(); Thread.CurrentThread.Join(0); SpEffectGenerator spEffectSetup = new SpEffectGenerator(mod); #if DEBUG Console.WriteLine("Running SpEffect setup..."); #endif spEffectSetup.Install(); Thread.CurrentThread.Join(0); GoodsGenerator goodsSetup = new GoodsGenerator(mod); #if DEBUG Console.WriteLine("Running goods setup..."); #endif goodsSetup.Install(); Thread.CurrentThread.Join(0); SpellGenerator spellSetup = new SpellGenerator(mod, random); #if DEBUG Console.WriteLine("Running spell setup..."); #endif spellSetup.Install(); Thread.CurrentThread.Join(0); WeaponGenerator weaponSetup = new WeaponGenerator(mod, random); #if DEBUG Console.WriteLine("Running weapon setup..."); #endif weaponSetup.Install(); Thread.CurrentThread.Join(0); ArmorGenerator armorSetup = new ArmorGenerator(mod, random); #if DEBUG Console.WriteLine("Running armor setup..."); #endif armorSetup.Install(); Thread.CurrentThread.Join(0); EnemyGenerator enemySetup = new EnemyGenerator(mod, random, weaponSetup, armorSetup); #if DEBUG Console.WriteLine("Running enemy setup..."); #endif enemySetup.Install(); Thread.CurrentThread.Join(0); MapItemLotsGenerator itemLotsSetup = new MapItemLotsGenerator(mod, weaponSetup, armorSetup, random); #if DEBUG Console.WriteLine("Running item lot setup..."); #endif itemLotsSetup.Install(); Thread.CurrentThread.Join(0); EnemyAnimationGenerator animSetup = new EnemyAnimationGenerator(mod, random); #if DEBUG Console.WriteLine("Running animation setup..."); #endif animSetup.Install(skipAnimRandomizer); Thread.CurrentThread.Join(0); // Must be run AFTER weapon/armor setup. CharacterGenerator chrSetup = new CharacterGenerator(mod, random); #if DEBUG Console.WriteLine("Running chr setup..."); #endif chrSetup.Install(); Thread.CurrentThread.Join(0); Console.WriteLine(SoyPuns.PopRandomElement(random) + "\n"); #if DEBUG Console.WriteLine("Installing mod..."); #endif mod.Install(); Thread.CurrentThread.Join(0); #if DEBUG Console.WriteLine($"Installation time: {(DateTime.Now - startTime).TotalSeconds}"); #endif }
// Start is called before the first frame update void Start() { generator = gameObject.GetComponent <PlayerGenerator>(); generator.rotation = Quaternion.Euler(rotation.x, rotation.y, rotation.z); }
public static void StartScreen() { Console.CursorSize = 100; Console.WriteLine("--------------------------------------------------------------------"); Console.WriteLine("| ####### # # ## # ######## ######## ######## ## # |"); Console.WriteLine("| # # # # # # # # # # # # # # |"); Console.WriteLine("| # # # # # # # # # # # # # # |"); Console.WriteLine("| # # # # # # # # ##### ######## # # # # # |"); Console.WriteLine("| # # # # # # # # # # # # # # # |"); Console.WriteLine("| # # # # # # # # # # # # # # # |"); Console.WriteLine("| ####### ######## # ## ######## ######## ######## # ## |"); Console.WriteLine("| |"); Console.WriteLine("| ######## # # # # ######## ######## |"); Console.WriteLine("| # # # # # # # # # |"); Console.WriteLine("| # # # # # # # # # |"); Console.WriteLine("| ######## # ##### ######## ######## ######## |"); Console.WriteLine("| # # # # ## # ### |"); Console.WriteLine("| # # # # ## # # ## |"); Console.WriteLine("| ######## ######## # # ## ######## # ## |"); Console.WriteLine("--------------------------------------------------------------------"); Console.WriteLine("----------------------Developed by SongToSoft-----------------------"); Console.WriteLine("---------------------------Press Any Key----------------------------"); char command = Console.ReadKey(true).KeyChar; //Console.Clear(); //Console.WriteLine(" [1] - Start new game"); //Console.WriteLine(" [2] - Load Character"); //Console.WriteLine(" [3] - Exit game"); bool choseMenuStart = true; while (choseMenuStart) { Console.Clear(); Console.WriteLine(" [1] - Start new game"); Console.WriteLine(" [2] - Load Character"); Console.WriteLine(" [3] - Exit game"); int commandIndex = Console.ReadKey(true).KeyChar - '0'; switch (commandIndex) { case 1: choseMenuStart = false; PlayerGenerator.SetupSpecifications(Game.player); break; case 2: //TODO: Make load character DirectoryInfo dir = new DirectoryInfo(Directory.GetCurrentDirectory()); int count = 1; foreach (var item in dir.GetFiles()) { if (item.Name.EndsWith(".json")) { Console.WriteLine(" [" + count + "] " + (Path.GetFileNameWithoutExtension(item.FullName))); ++count; } } if (count == 1) { Console.WriteLine(" No one saved hero"); Console.ReadKey(true); break; } bool choseHero = true; while (choseHero) { Console.WriteLine(" Chose hero"); Console.WriteLine(" [C] - cancel"); command = Console.ReadKey(true).KeyChar; if ((command == 'C') || (command == 'c')) { break; } commandIndex = command - '0'; count = 1; foreach (var item in dir.GetFiles()) { if (item.Name.EndsWith(".json")) { if (count == commandIndex) { SaveSystem.LoadCharacter(item.Name); choseHero = false; break; } ++count; } } choseMenuStart = false; } break; case 3: Game.EndGame(); break; default: Console.WriteLine("Incorrect value"); break; } } }
public PlayerComboBoxItem(string playerName, PlayerGenerator playerGenerator) { this.playerName = playerName; this.playerGenerator = playerGenerator; }
static void INSTALL(string inputSeed) { Random random; random = inputSeed == "" ? new Random() : new Random(inputSeed.GetHashCode()); MOD_PATH = GetGameDir(); if (MOD_PATH == null) { Console.WriteLine("No EXE selected. Cancelling installation."); return; } DateTime startTime = DateTime.Now; Console.WriteLine("\nBeginning installation... This will take about one minute."); Console.WriteLine("\n" + SoyPuns.PopRandomElement(random) + "\n"); SoulsMod mod = new SoulsMod( MOD_PATH, ".rsbak", Resources.GameData.GameParam_parambnd, Resources.GameData.paramdef_paramdefbnd, Resources.GameData.item_msgbnd, Resources.GameData.menu_msgbnd); mod.LoadPlayerCharacter(); mod.LoadNonPlayerCharacters(); InstallInterrootFolder("event", mod); InstallInterrootFolder("map", mod); InstallInterrootFolder("script", mod); InstallInterrootFolder("sfx", mod); InstallInterrootFolder("sound", mod); TextGenerator textSetup = new TextGenerator(mod); #if DEBUG Console.WriteLine("Running text setup..."); #else Console.WriteLine("Studying the ancient texts..."); #endif textSetup.Install(); Thread.CurrentThread.Join(0); PlayerGenerator playerSetup = new PlayerGenerator(mod); #if DEBUG Console.WriteLine("Running player setup..."); #else Console.WriteLine("Putting the party together..."); #endif playerSetup.Install(); Thread.CurrentThread.Join(0); SpEffectGenerator spEffectSetup = new SpEffectGenerator(mod); #if DEBUG Console.WriteLine("Running SpEffect setup..."); #else Console.WriteLine("Channeling the powers that be..."); #endif spEffectSetup.Install(); Thread.CurrentThread.Join(0); GoodsGenerator goodsSetup = new GoodsGenerator(mod); #if DEBUG Console.WriteLine("Running goods setup..."); #else Console.WriteLine("Documenting the artifacts..."); #endif goodsSetup.Install(); Thread.CurrentThread.Join(0); SpellGenerator spellSetup = new SpellGenerator(mod, random); #if DEBUG Console.WriteLine("Running spell setup..."); #else Console.WriteLine("Messing with forces beyond our control..."); #endif spellSetup.Install(); Thread.CurrentThread.Join(0); WeaponGenerator weaponSetup = new WeaponGenerator(mod, random); #if DEBUG Console.WriteLine("Running weapon setup..."); #else Console.WriteLine("Spinning up the whetstone..."); #endif #if SKIP_BEHAVIORS Console.WriteLine("WARNING: Skipping weapon behaviors/attacks!"); weaponSetup.SkipBehaviors = true; #endif weaponSetup.Install(); Thread.CurrentThread.Join(0); ArmorGenerator armorSetup = new ArmorGenerator(mod, random); #if DEBUG Console.WriteLine("Running armor setup..."); #else Console.WriteLine("Polishing the armor..."); #endif armorSetup.Install(); Thread.CurrentThread.Join(0); EnemyGenerator enemySetup = new EnemyGenerator(mod, random, weaponSetup, armorSetup); #if DEBUG Console.WriteLine("Running enemy setup..."); #else Console.WriteLine("Opening the bestiary..."); #endif enemySetup.Install(); Thread.CurrentThread.Join(0); EnemyAnimationGenerator animSetup = new EnemyAnimationGenerator(mod, random); #if DEBUG Console.WriteLine("Modifying enemy animations..."); #else Console.WriteLine("Rousing the rabble..."); #endif animSetup.Install(); Thread.CurrentThread.Join(0); MapItemLotsGenerator itemLotsSetup = new MapItemLotsGenerator(mod, weaponSetup, armorSetup, random); #if DEBUG Console.WriteLine("Running item lot setup..."); #else Console.WriteLine("Burying the treasures..."); #endif itemLotsSetup.Install(); Thread.CurrentThread.Join(0); // Must be run AFTER weapon/armor setup. CharacterGenerator chrSetup = new CharacterGenerator(mod, random); #if DEBUG Console.WriteLine("Running character setup..."); #else Console.WriteLine("Assembling the party..."); #endif chrSetup.Install(); Thread.CurrentThread.Join(0); #if DEBUG Console.WriteLine("Installing mod..."); #else Console.WriteLine("Heading forth..."); #endif mod.Install(); Thread.CurrentThread.Join(0); Console.WriteLine("\nInstallation successful! Press ENTER to return to the prompt."); #if DEBUG Console.WriteLine($"Installation time: {(DateTime.Now - startTime).TotalSeconds} seconds"); #endif Console.ReadLine(); }