public AbstractBuilding Build(string type, Game.Point coords) { AbstractBuilding building = null; switch (type) { case ("Farm"): { building = new Farm(coords); break; } case ("Barrack"): { building = new Barrack(coords); break; } case ("BowWorkshop"): { building = new BowWorkshop(coords); break; } case ("Tower"): { building = new Tower(coords); break; } default: break; } return building; }
public override void Open(Building building) { barrack = (Barrack)building; base.Open(building); CloseUnitList(); InitOrUpdateUnitList(); }
public void UnitClick() { Barrack barrack = GameObject.FindGameObjectsWithTag("Barrack") [barrackID - 1].GetComponent <Barrack> (); barrack.unit_count++; barrack.spawnUnit(); }
public static string Add(string name, int capacity) { using (ArmyBaseContext db = new ArmyBaseContext()) { string error = null; Barrack newBarrack = new Barrack(); newBarrack.Name = name; newBarrack.Capacity = capacity; var context = new ValidationContext(newBarrack, null, null); var result = new List <ValidationResult>(); Validator.TryValidateObject(newBarrack, context, result, true); foreach (var x in result) { error = error + x.ErrorMessage + "\n"; } if (error == null) { db.Barracks.Add(newBarrack); db.SaveChanges(); } return(error); } }
public void ReloadScene(int scene) { this.START_METHOD("ReloadScene"); Vector3 obstacle1Pos = new Vector3(10f, 0f, 15f); Cannon cannon = (Cannon)charaManager.SpawnChar(CharaData.CharClassType.BUILDING, (int)CharaData.BuildingModel.CANNON, 1, 1, obstacle1Pos, new Vector3(0, 0, 0), CharaStatus.Pose.Idle); Vector3 obstacle2Pos = new Vector3(19f, 0f, 13f); cannon = (Cannon)charaManager.SpawnChar(CharaData.CharClassType.BUILDING, (int)CharaData.BuildingModel.CANNON, 1, 1, obstacle2Pos, new Vector3(0, 0, 0), CharaStatus.Pose.Idle); Vector3 obstacle3Pos = new Vector3(9.77f, 0f, 9.30f); Barrack barrack = (Barrack)charaManager.SpawnChar(CharaData.CharClassType.BUILDING, (int)CharaData.BuildingModel.BARRACK, 1, 1, obstacle3Pos, new Vector3(0, 0, 0), CharaStatus.Pose.Idle); Vector3 obstacle4Pos = new Vector3(13.17f, 0f, 9.73f); barrack = (Barrack)charaManager.SpawnChar(CharaData.CharClassType.BUILDING, (int)CharaData.BuildingModel.BARRACK, 1, 1, obstacle4Pos, new Vector3(0, 0, 0), CharaStatus.Pose.Idle); Vector3 obstacle5Pos = new Vector3(10.63f, 0f, 21.06f); barrack = (Barrack)charaManager.SpawnChar(CharaData.CharClassType.BUILDING, (int)CharaData.BuildingModel.BARRACK, 1, 1, obstacle5Pos, new Vector3(0, 0, 0), CharaStatus.Pose.Idle); Vector3 obstacle6Pos = new Vector3(30.75f, 0f, 18.58f); barrack = (Barrack)charaManager.SpawnChar(CharaData.CharClassType.BUILDING, (int)CharaData.BuildingModel.BARRACK, 1, 1, obstacle6Pos, new Vector3(0, 0, 0), CharaStatus.Pose.Idle); StartCoroutine(DoDelay()); this.END_METHOD("ReloadScene"); }
private Barrack BuildBarrack(Vector2 position, GoldReserve goldReserve) { Node clickedCell = tilemapHandler.ScreenPositionToTilemapNode(position); if (clickedCell.tile.isSlot && clickedCell.isAvailable) { Vector2 clickPosition = Camera.main.ScreenToWorldPoint(position); Barrack barrack = barrackFactory.CreateBarrack(barrackID, false, playerObjective); if (goldReserve.SpendGold(barrack.ValCost)) { barrack.GameObject.transform.position = new Vector3(clickPosition.x, clickPosition.y, 0); slotService.BlockSlot(slotService.GetSlotTilesFromTile(clickedCell)); AvaliableTileSelection.ChangeMask(tilemapHandler, false); return(barrack); } else { alertManager.ShowWarningModal("Você não tem dinheiro suficiente para comprar essa caserna!"); Destroy(barrack.GameObject); } } else { AvaliableTileSelection.ChangeMask(tilemapHandler, false); alertManager.ShowWarningModal("Esse slot está bloqueado!"); } return(null); }
// 设置主兵营 public void SetMainBarrack(Barrack b) { // 移除兵营 barracks.Remove(b); // 重新将兵营插入到数组首位 barracks.Insert(0, b); }
public void ButtonClicked() { if (GameBoardViewModel.Instance.IsProductSelected()) { GameBoardViewModel.Instance.DeselectProduct(); } var buttonName = gameObject.name; GameObject createdProduct = null; IProduct product; if (buttonName.Contains("Barrack")) { product = new Barrack("Barrack", ProductType.Building, true, 0.5f); createdProduct = ViewFactory.Create <IProduct, BuildingViewModel>(product, Resources.Load <GameObject>("Prefabs/Barrack"), null); createdProduct.name = "Barrack_Template"; } if (buttonName.Contains("PowerPlant")) { product = new PowerPlant("Power Plant", ProductType.Building, true, 0.5f); createdProduct = ViewFactory.Create <IProduct, BuildingViewModel>(product, Resources.Load <GameObject>("Prefabs/PowerPlant"), null); createdProduct.name = "PowerPlant_Template"; } GameBoardViewModel.Instance.SelectProduct(createdProduct); }
private void unregisterEntityEvents(IGameEntity entity) { if (entity.info.isBarrack) { Barrack barrack = (Barrack)entity; barrack.unregister(Barrack.Actions.DAMAGED, events.DisplayUnderAttack); barrack.unregister(Barrack.Actions.DESTROYED, events.DisplayBuildingDestroyed); barrack.unregister(Barrack.Actions.CREATE_UNIT, OnUnitCreated); barrack.unregister(Barrack.Actions.BUILDING_FINISHED, events.DisplayBuildingCreated); } else if (entity.info.isResource) { Resource resourcesBuilding = (Resource)entity; resourcesBuilding.unregister(Resource.Actions.DAMAGED, events.DisplayUnderAttack); resourcesBuilding.unregister(Resource.Actions.DESTROYED, events.DisplayBuildingDestroyed); resourcesBuilding.unregister(Resource.Actions.BUILDING_FINISHED, events.DisplayBuildingCreated); resourcesBuilding.unregister(Resource.Actions.CREATE_UNIT, OnUnitCreated); } else if (entity.info.isUnit) { Unit unit = (Unit)entity; unit.unregister(Unit.Actions.DIED, events.DisplayUnitDead); unit.unregister(Unit.Actions.DAMAGED, events.DisplayUnderAttack); unit.unregister(Unit.Actions.TARGET_TERMINATED, signalMissionUpdate); unit.unregister(Unit.Actions.EAT, onUnitEats); } }
public Chara SpawnChar(CharaData.CharClassType classType,int charModelType,int camp,int level,Vector3 pos,Vector3 dir,CharaStatus.Pose pose) { this.START_METHOD("SpawnChar"); Chara tempChar = null; if(classType==CharaData.CharClassType.CHARACTER) { } else if(classType==CharaData.CharClassType.BUILDING) { if((CharaData.buildingModel)charModelType==CharaData.buildingModel.BARRACK) { Barrack chara = new Barrack();//TODO: need change class to resource pool chara.SetPos(pos); chara.SetDir(dir); chara.SetCamp(camp); tempChar = chara; } if (tempChar != null) building.Add(tempChar); else throw new UnityException("no current building type to spawn!!"); } allChara.Add(tempChar); this.END_METHOD("SpawnChar"); return tempChar; }
// 设置主兵营 public void SetMainBarrack(Barrack b) { // 移除兵营 barracks.Remove (b); // 重新将兵营插入到数组首位 barracks.Insert (0, b); }
public Core(Color color, GameObject positionCore) { this.color = color; this.PositionCore = positionCore; lvl = 1; name = "База"; peopleLimit = 1000; building.Add(this); this.eventAddArmy += AddLimitArmy; this.eventAddPeople += AddLimitPeople; workShop = new WorkShop(); building.Add(workShop); storage = new Storage(); storage.eventAddPeople += AddLimitPeople; building.Add(storage); walls = new Walls(); building.Add(walls); barrack = new Barrack(); barrack.eventAddArmy += AddLimitArmy; building.Add(barrack); portal = new Portal(); building.Add(portal); resources = new GameResources(200, 300, 500, 0); UpPriceImprovement(); }
public Barrack CreateBarrack(int codBarrack, bool isEnemy, PhaseObjectives barrackObjective) { GameObject barrackGameObject = GameObject.Instantiate(barrackPrefab); Barrack barrack = new Barrack(); BarrackScriptableObject barrackData = GetBarrackScriptableObject(codBarrack); barrack.CodBarrack = barrackData.codBarrack; barrack.CodPart = barrackData.codPart; barrack.CodTroop = barrackData.codTroop; barrack.NamBarrack = barrackData.namBarrack; barrack.DesBarrack = barrackData.desBarrack; barrack.NumTroopLimit = barrackData.numTroopLimit; barrack.ValCost = barrackData.valCost; barrack.ValSpawnFrequency = barrackData.valSpawnFrequency; barrack.GameObject = barrackGameObject; barrack.IsEnemy = isEnemy; barrack.Objective = barrackObjective; barrack.SetUpSpawner(); barrack.GameObject.GetComponent <SpriteRenderer>().sprite = barrackData.sprite; barrack.GameObject.GetComponent <Animator>().runtimeAnimatorController = barrackData.animatorController; barrack.GameObject.GetComponent <RunTimeBarrackData>().SetData(barrack); return(barrack); }
public Chara SpawnChar(CharaData.CharClassType classType, int charModelType, int camp, int level, Vector3 pos, Vector3 dir, CharaStatus.Pose pose) { this.START_METHOD("SpawnChar"); Chara tempChar = null; if (classType == CharaData.CharClassType.CHARACTER) { } else if (classType == CharaData.CharClassType.BUILDING) { if ((CharaData.buildingModel)charModelType == CharaData.buildingModel.BARRACK) { Barrack chara = new Barrack();//TODO: need change class to resource pool chara.SetPos(pos); chara.SetDir(dir); chara.SetCamp(camp); tempChar = chara; } if (tempChar != null) { building.Add(tempChar); } else { throw new UnityException("no current building type to spawn!!"); } } allChara.Add(tempChar); this.END_METHOD("SpawnChar"); return(tempChar); }
public override async Task <ExtPostContainer <string> > SaveInput(BarrackInput input) { await Validate(input); var id = !string.IsNullOrWhiteSpace(input.Id) ? input.Id : Guid.NewGuid().ToString("N"); var barrack = new Barrack { Id = id, Name = input.Name, Hectares = input.Hectares, IdPlotLand = input.IdPlotLand, IdPollinator = input.IdPollinator, IdRootstock = input.IdRootstock, IdVariety = input.IdVariety, NumberOfPlants = input.NumberOfPlants, PlantingYear = input.PlantingYear, SeasonId = input.SeasonId }; //GeoBarracks, dependencia de geospacial #if !CONNECT if (input.GeographicalPoints != null && input.GeographicalPoints.Any()) { barrack.GeographicalPoints = input.GeographicalPoints.Select(geoPoint => new Point(geoPoint.Lng, geoPoint.Lat)).ToArray(); } #endif search.DeleteElementsWithRelatedElement(EntityRelated.GEOPOINT, EntityRelated.BARRACK, barrack.Id); await SaveDb(barrack); return(await SaveSearch(barrack)); }
// 移除兵营 public void RemoveBarrack(Barrack b) { barracks.Remove (b); if (barracks.Count == 0) { // 不显示生产士兵按钮 createSoldier.SetActive (false); } }
private ArrayList barracks; // 所有兵营 #endregion Fields #region Methods // 添加兵营 public void AddBarrack(Barrack b) { barracks.Add (b); // 如果是第一次添加, 显示创建士兵的按钮 if (barracks.Count == 1) { createSoldier.SetActive (true); } }
public ActionResult DeleteConfirmed(int id) { Barrack barrack = db.Barracks.Find(id); db.Barracks.Remove(barrack); db.SaveChanges(); return(RedirectToAction("Index")); }
public BarrackDto(Barrack b) { BuildingId = b.BuildingId; Price = b.Price; Capacity = b.Capacity; Counter = b.Counter; Builder = b.Builder; }
public void addBarrack(Player owner) { Barrack bar = Instantiate(barrackPref); bar.transform.SetParent(gameObject.transform); bar.transform.position = gameObject.transform.position; bar.owner = PlayerHandler.instance.currentPlayer; bar.inic(); }
// 添加兵营 public void AddBarrack(Barrack b) { barracks.Add(b); // 如果是第一次添加, 显示创建士兵的按钮 if (barracks.Count == 1) { createSoldier.SetActive(true); } }
// 移除兵营 public void RemoveBarrack(Barrack b) { barracks.Remove(b); if (barracks.Count == 0) { // 不显示生产士兵按钮 createSoldier.SetActive(false); } }
// // GET: /Barrack/Details/5 public ActionResult Details(int id = 0) { Barrack barrack = db.Barracks.Find(id); if (barrack == null) { return(HttpNotFound()); } return(View(barrack)); }
// Constructor public JobsManager() : base() { myHuntingBuilding = new Hunting(); myFishingBuilding = new Fishing(); myShipBuilderBuilding = new ShipBuilder(); myMineralBuilding = new MineralGathering(); myWoodBuilding = new WoodGathering(); myBarrack = new Barrack(); nameJob = ""; }
void SetUpDefenceUnit() { buildTimer = 0f; Barrack.GetComponent <Barracks>().CreateUnit(1); if (numOfUnits.Count >= 2) { isDefenceSet = true; UnitBuildTime = 10f; } }
protected AbilityList BaseBarrackAbilities(Barrack barrack) { Ability[] barrackAbilities = new Ability[AbilityList.MAX_SIZE]; barrackAbilities[0] = new RepairAbility(new Tooltip()); return(new AbilityList(barrackAbilities)); }
// Use this for initialization void Start() { //get the barrack this RaxCounter is attached to rax = (gameObject.GetComponentInParent <Transform>()).gameObject.GetComponentInParent <Barrack>(); //set the spawn timer initially to the spawn rate spawnTimer = spawnRate; timerText = gameObject.GetComponentInChildren <Text>(); }
public ActionResult Edit(Barrack barrack) { if (ModelState.IsValid) { db.Entry(barrack).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.JailId = new SelectList(db.Jails, "JailId", "Name", barrack.JailId); return(View(barrack)); }
// // GET: /Barrack/Edit/5 public ActionResult Edit(int id = 0) { Barrack barrack = db.Barracks.Find(id); if (barrack == null) { return(HttpNotFound()); } ViewBag.JailId = new SelectList(db.Jails, "JailId", "Name", barrack.JailId); return(View(barrack)); }
private void BuildBarrack(BarrackScriptableObject barrackToBuild) { // TO:DO --> Use RuntimeData to create the barrack Barrack barrack = barrackFactory.CreateBarrack(barrackToBuild.codBarrack, true, bobAIObjective); Vector2 buildPosition = PickBuildPosition(); barrack.GameObject.transform.position = buildPosition; bobAIGoldReserve.SpendGold(barrack.ValCost); buildingPositions.Remove(buildPosition); }
public bool doIfBarrack(Action <Barrack> callIfTrue) { Barrack barrack = this as Barrack; if (barrack != null) { callIfTrue(barrack); return(true); } return(false); }
internal int GetTrainingTime(CharacterData Character) { List <Building> Barracks = (Character.UnitOfType == 1 ? this.Level.ComponentManager.Barracks : this.Level.ComponentManager.DarkBarracks) .FindAll(Barrack => Barrack.GetUpgradeLevel() >= Character.BarrackLevel - 1); if (Barracks.Count != 0) { return(Character.TrainingTime / Barracks.Count); } return(Character.TrainingTime); }
public ActionResult Create(Barrack barrack) { if (ModelState.IsValid) { db.Barracks.Add(barrack); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.JailId = new SelectList(db.Jails, "JailId", "Name", barrack.JailId); return(View(barrack)); }
public void SetData(Barrack barrackData) { codBarrack = barrackData.CodBarrack; codPart = barrackData.CodPart; codTroop = barrackData.CodTroop; namBarrack = barrackData.NamBarrack; desBarrack = barrackData.DesBarrack; valSpawnFrequency = barrackData.ValSpawnFrequency; valCost = barrackData.ValCost; numTroopLimit = barrackData.NumTroopLimit; isEnemy = barrackData.IsEnemy; objective = barrackData.Objective; }
public async Task <Building> postB(int id) { var country = _dbcontext.Countries.Where(c => c.CountryId == id).SingleOrDefault(); var a = new Barrack() { OwnerCountry = country }; _dbcontext.Barracks.Add(a); await _dbcontext.SaveChangesAsync(); return(a); }
public void Test_IsInAttackRange_MustMatch() { var enemy = new Infantery(); enemy.OwnerId = "2"; enemy.Position = new Vector2(500, 510); var infantery = new Infantery(); infantery.OwnerId = "1"; infantery.Position = new Vector2(0,0); var barrack = new Barrack(); barrack.OwnerId = "1"; barrack.Position = new Vector2(500,500); Assert.False(infantery.IsInAttackRange(enemy.Position)); Assert.True(enemy.IsInAttackRange(barrack.Position)); }
private void BuildUnit(Barrack barrack) { if (barrack != null) { //_busyBarracks.Add(barrack.Id); barrack.Produce(new ProduceEvent<Infantery>(HeadQuarter.OwnerId, barrack.Id, barrack.Position.X + 5, barrack.Position.Y), Agent); } }
private ProduceEvent<Infantery> GetProduceEvent(Barrack barrack, Vector2 position) { return new ProduceEvent<Infantery>(_ai.Id, barrack.Id, position.X + _random.Next(50), position.Y + _random.Next(50)); }
private IEnumerable<EnemyUnitSignature> GetEnemiesNearBarrack(Barrack x) { return GetEnemiesNearPosition(x.Position); }
public void ProduceNewInfantery(Barrack obama) { var pos = _positionHandler.GetNextUnitSpawnPosition<Infantery>(); obama.Produce(new ProduceEvent<Infantery>(_ai.Id, obama.Id, pos.X, pos.Y), _eventAgent); }