// Awake is called the moment this component is created void Start() { // player is in the house at the beginning PlayerHouse.GetComponent <PlayerHouse>().ShowPlayer(); NPCs = new List <NPC>(npcNumber); NPC_AIs = new List <NPC_AI>(npcAINumber); // get active level settings - the scene has 18% social distancing LevelSettings.GetActiveLevelSettings().SocialDistancingFactor = 18; // our NPC number LevelSettings.GetActiveLevelSettings().NumberOfNPCs = npcNumber + npcAINumber; // time-scale is slow and infection status is not shown during game LevelSettings.GetActiveLevelSettings().DayLength = 100f; LevelSettings.GetActiveLevelSettings().ShowInfectionStatus = false; // the grid cell has to be as large as the player's infection radius randomGridForHumans = GameObject.Find("RandomGrid").GetComponent <RandomGrid>(); // generate the random coordinates for humans which depend on the scale of the player (who is largest), // their infection radius, since we do not want immediate infection // and the number of humans that we want to place randomGridForHumans.GenerateRandomCoords(3 * playerPrefab.transform.localScale.x, playerPrefab.GetComponentInChildren <InfectionTrigger>().InfectionRadius, npcNumber + npcAINumber); // place humans on grid (NPC, NPC_AI, player) CreateHumans(); Player.withMask = true; // set the paths for the NPC_AIs // these are fixed floats at the moment // maybe there is a better more "relative" way do handle this SetPathsforNPC_AIs(); }
void Start() { // player is not in the house at the beginning playerHouse.GetComponent <PlayerHouse>().UnshowPlayer(); // get active level settings - the level demo scene has 18% social distancing LevelSettings.GetActiveLevelSettings().SocialDistancingFactor = 18; LevelSettings.GetActiveLevelSettings().NumberOfNPCs = npcNumber; // We do not show the infection status in this level LevelSettings.GetActiveLevelSettings().ShowInfectionStatus = false; // Set the DayLength for this level LevelSettings.GetActiveLevelSettings().DayLength = 100; // this gets the Main Camera from the Scene // the grid cell has to be as large as the player's infection radius randomGridForHumans = GameObject.Find("RandomGrid").GetComponent <RandomGrid>(); // generate the random coordinates for humans which depend on the scale of the player (who is largest), // their infection radius, since we do not want immediate infection // and the number of humans that we want to place randomGridForHumans.GenerateRandomCoords(playerPrefab.transform.localScale.x, playerPrefab.GetComponentInChildren <InfectionTrigger>().InfectionRadius, npcNumber); // place humans on grid CreateHumans(); }
void Start() { // player is in the house at the beginning playerHouse.GetComponent <PlayerHouse>().ShowPlayer(); // Get reference to the nonSpanableSpace class nonSpawnableSpaceClass = nonSpawnableSpaceObj.GetComponent <nonSpawnableSpace>(); // get active level settings - the get home scene always has 50% social distancing LevelSettings.GetActiveLevelSettings().SocialDistancingFactor = 18; LevelSettings.GetActiveLevelSettings().NumberOfNPCs = npcNumber; // We do not show the infection status in this level LevelSettings.GetActiveLevelSettings().ShowInfectionStatus = false; // Set the DayLength for this level LevelSettings.GetActiveLevelSettings().DayLength = 100; // this gets the Main Camera from the Scene // the grid cell has to be as large as the player's infection radius randomGridForHumans = GameObject.Find("RandomGrid").GetComponent <RandomGrid>(); // make screen Bounds 80% smaller so that NPCs are placed more in the middle since the player is at the edge randomGridForHumans.shrinkScreenBounds(0.8f); // generate the random coordinates for humans which depend on the scale of the player (who is largest), // their infection radius, since we do not want immediate infection // and the number of humans that we want to place randomGridForHumans.GenerateRandomCoords(playerPrefab.transform.localScale.x, playerPrefab.GetComponentInChildren <InfectionTrigger>().InfectionRadius, npcNumber, nonSpawnableSpaceClass); // place humans on grid CreateHumans(); }
// Start is called before the first frame update void Start() { // get number of NPCs from main menu levelSettings = LevelSettings.GetActiveLevelSettings(); // in every level these should get a value, otherwise the value from previous level is adopted levelSettings.ShowInfectionStatus = true; levelSettings.DayLength = 1f; npcNumber = levelSettings.NumberOfNPCs; // create our list of NPCs NPCs = new List <NPC>(npcNumber); // create the random grid with coordinates // the grid cell has to be as large as the player's infection radius randomGridForHumans = GameObject.Find("RandomGrid").GetComponent <RandomGrid>(); // generate the random coordinates for humans which depend on the scale of the player (who is largest), // their infection radius, since we do not want immediate infection // and the number of humans that we want to place randomGridForHumans.GenerateRandomCoords(playerPrefab.transform.localScale.x, playerPrefab.GetComponentInChildren <InfectionTrigger>().InfectionRadius, npcNumber); // place humans on the grid CreateHumans(); }