public void AddWall(Vector2 position, Rectangle textureOffset) { if (ManagerResources.CompareGold(managerUnits.index, 100)) { ManagerResources.ReduceGold(managerUnits.index, 100); managerUnits.managerMap.AddWalls(position, textureOffset); } }
public void Update() { if (worker.workState == WorkigState.WORKING && goldMine.workers.Count > 0) { goldMine.animations.Change("working"); elapsed += 0.1f; if (elapsed >= 10) { worker.workState = WorkigState.GO_TO_WORK; cityHall = managerBuildings.buildings.Find((b) => (b.information as InformationBuilding).Type == Util.Buildings.TOWN_HALL || (b.information as InformationBuilding).Type == Util.Buildings.GREAT_HALL) as CityHall; if (cityHall == null) { goldMine.Fire(); } else { if (currentState == State.MINER) { worker.Move((int)cityHall.Position.X / 32, (int)cityHall.Position.Y / 32); worker.animations.currentAnimation = Util.AnimationType.GOLD; goldMine.QUANITY -= 100; goldMine.animations.Change("normal"); currentState = State.TOWN_HALL; } else { worker.Move((int)goldMine.Position.X / 32, (int)goldMine.Position.Y / 32); worker.animations.currentAnimation = Util.AnimationType.WALKING; ManagerResources.ReduceGold(managerUnits.index, -100); if (goldMine.QUANITY <= 0) { goldMine.Fire(); } goldMine.animations.Change("working"); currentState = State.MINER; } } elapsed = 0; } } }
public bool execute() { if (!go && ManagerResources.CompareGold(managerUnits.index, informationUnit.CostGold) && ManagerResources.CompareFood(managerUnits.index, informationUnit.CostFood)) { ManagerResources.ReduceGold(managerUnits.index, informationUnit.CostGold); ManagerResources.ReduceFood(managerUnits.index, informationUnit.CostFood); go = true; completed = false; remove = false; return(true); } return(false); }
public bool execute() { if (ManagerResources.CompareGold(managerUnits.index, building.information.CostGold)) // && ManagerResources.CompareFood(managerUnits.index, building.information.CostWood)) { ManagerResources.ReduceGold(managerUnits.index, building.information.CostGold); if ((building.information as InformationBuilding).Type == Util.Buildings.CHICKEN_FARM || (building.information as InformationBuilding).Type == Util.Buildings.PIG_FARM) { ManagerResources.ReduceFood(managerUnits.index, -5); } builder.workState = WorkigState.WAITING_PLACE; building.builder(); return(true); } return(false); }