static void Main(string[] args) { HouseBuilding c = new HouseBuilding(); object o = c.getMinimum(new string[] {}); PrintObj(o); System.Console.In.ReadLine(); }
public static void Postfix(HouseBuilding __instance) { if (__instance.State == HouseBuilding.HouseConstructionState.Waiting) { if (StageScript.Instance.LocalPlayer.IsFarmOwner) { Traverse.Create(__instance).Field("constructionTimeElapsed").SetValue(__instance.Definition.ConstructionStepInterval); } } }
public static void Postfix(HouseBuilding __instance) { if (IsLoadFarm()) { if (mod.Enabled) { if (__instance.State == HouseBuilding.HouseConstructionState.Waiting) { Traverse.Create(__instance).Field("constructionTimeElapsed").SetValue(__instance.Definition.ConstructionStepInterval); } } } }
void Awake() { if (!isAdult) { // Turn child transform.localScale = new Vector3(0.3f, 0.3f, 1f); moveSpeed = 0; bornDuration = 6f; } // Find center and warehouse CenterEntity[] centers = (CenterEntity[])FindObjectsOfType(typeof(CenterEntity)); if (centers.Length > 0) { center = centers[0]; } WarehouseEntity[] warehouses = (WarehouseEntity[])FindObjectsOfType(typeof(WarehouseEntity)); if (warehouses.Length > 0) { warehouse = warehouses[0]; } HouseBuilding[] houses = (HouseBuilding[])FindObjectsOfType(typeof(HouseBuilding)); foreach (HouseBuilding hos in houses) { if (hos.full || !hos.blueprint.done) { continue; } if (hos.addAgent()) { house = hos; break; } } // No house, add house request if (house == null) { Building building = new Building("Prefabs/Buildings/House", 100, 100, 3, 1); center.addNewBuildingRequest(building); } }
void Start() { ressources = new Dictionary <ressource, int>(); foreach (ressource res in ressource.GetValues(typeof(ressource))) { ressources.Add(res, 0); } days = 0; MakeTile(0, 0, true); storageHutBuilding = new StorageHutBuilding(); storageHutButtonText = storageHutButton.GetComponentInChildren <Text>(); firePitBuilding = new FirePitBuilding(); firePitButtonText = firePitButton.GetComponentInChildren <Text>(); houseBuilding = new HouseBuilding(); houseButtonText = houseButton.GetComponentInChildren <Text>(); kitchenBuilding = new KitchenBuilding(); kitchenButtonText = kitchenButton.GetComponentInChildren <Text>(); monumentBuilding = new MonumentBuilding(); monumentButtonText = monumentButton.GetComponentInChildren <Text>(); }
static void Main(string[] args) { HouseBuilding houseBuilding = new HouseBuilding(); houseBuilding.startBuilding(); }
// Flood fill technique to check house size and find the outer line for wall checking public static bool FloorFloodFill(Vector2Int firstTile, TileBase[] wallTiles, TileBase[] floorTiles, TileBase[] doorTiles, Tilemap tilemap, /*Temporary Value*/ TileBase whiteTile, Tilemap houseTilemap, TileBase[] roofTiles) { // Stack that expands and shrinks as you find more elements Stack <Vector2Int> existFloor = new Stack <Vector2Int>(); // Temporary stack that holds checked floor coordinates Stack <Vector2Int> checkedFloor = new Stack <Vector2Int>(); Stack <TileBase> floorTilesStack = new Stack <TileBase>(floorTiles); existFloor.Push(firstTile); while (existFloor.Count > 0) { Vector2Int pos = existFloor.Pop(); if (!checkedFloor.Contains(new Vector2Int(pos.x, pos.y))) { for (int y = -1; y <= 1; y++) { for (int x = -1; x <= 1; x++) { if (floorTilesStack.Contains(tilemap.GetTile(new Vector3Int(pos.x + x, pos.y + y, 0)))) { existFloor.Push(new Vector2Int(pos.x + x, pos.y + y)); } } } checkedFloor.Push(new Vector2Int(pos.x, pos.y)); } } // returns true if building is surrounded by walls Vector2Int[] wallPos = HouseBuilding.FloorEdgeFound(checkedFloor, wallTiles, floorTiles, doorTiles, tilemap); if (wallPos.Length <= 0) { return(false); } Debug.Log("Still going!"); // bool to make sure a door is built // if house is missing a door it won't build bool doorCheck = false; //Checks that a door is placed to be able to enter the house for (int i = 0; i < wallPos.Length; i++) { for (int j = 0; j < doorTiles.Length; j++) { if (tilemap.GetTile(new Vector3Int(wallPos[i].x, wallPos[i].y, 0)) == doorTiles[j]) { doorCheck = true; } } } // returns false and won't build the home if door isnt recognized if (!doorCheck) { return(false); } Stack <Vector2Int> roofPos = BuildWalls(wallTiles, doorTiles, floorTiles, wallPos, tilemap, whiteTile, houseTilemap); GetRoofTilePosition(wallTiles, floorTiles, roofTiles, tilemap, /* TEMPORARY VARIABLE */ whiteTile, houseTilemap, roofPos); return(true); }
private static Boolean KawigiEdit_RunTest(int testNum, string[] p0, Boolean hasAnswer, int p1) { Console.Write("Test " + testNum + ": [" + "{"); for (int i = 0; p0.Length > i; ++i) { if (i > 0) { Console.Write(","); } Console.Write("\"" + p0[i] + "\""); } Console.Write("}"); Console.WriteLine("]"); HouseBuilding obj; int answer; obj = new HouseBuilding(); DateTime startTime = DateTime.Now; answer = obj.getMinimum(p0); DateTime endTime = DateTime.Now; Boolean res; res = true; Console.WriteLine("Time: " + (endTime - startTime).TotalSeconds + " seconds"); if (hasAnswer) { Console.WriteLine("Desired answer:"); Console.WriteLine("\t" + p1); } Console.WriteLine("Your answer:"); Console.WriteLine("\t" + answer); if (hasAnswer) { res = answer == p1; } if (!res) { Console.WriteLine("DOESN'T MATCH!!!!"); } else if ((endTime - startTime).TotalSeconds >= 2) { Console.WriteLine("FAIL the timeout"); res = false; } else if (hasAnswer) { Console.WriteLine("Match :-)"); } else { Console.WriteLine("OK, but is it right?"); } Console.WriteLine(""); return res; }
public override void SetBuilding(Building building) { this.building = (HouseBuilding)building; }