public void attachTo(BattleBuilding building) { building.units.add(units.count); _attachedToBuilding = true; _hp = 0; units.change(getUnits()); }
public void setInfoFrom(BattleBuilding building) { var damage = building.infoLevel.Damage; transform.setFrom(building.transform); _damage = building.engine.players.getPlayer(building.ownerId).modifier.calculate(Modifiers.ModifierType.BUILDING_DAMAGE, damage, building.info.Id); }
private void attachUnits(BattleBuilding building, BattleUnit unit) { unit.attachTo(building); var evt = engine.output.enqueueByFactory <UnitAttachedEvent>() as UnitAttachedEvent; evt.tick = tick; evt.buildingObjectId = _buildingObjectId; evt.unitObjectId = unit.objectId; evt.buildingUnits = building.units.count; }
public void initialize(BattleBuilding from, BattleBuilding to, int unitCount) { _attachedToBuilding = false; setOwnerId(from.ownerId); _level = from.level; _info = engine.configuration.unitRecords.GetBy(from.info.Levels[from.level].UnitId, from.info.Race); _infoLevel = _info.Levels[_level]; _move.moveTo(to.transform); transform.setFrom(from.transform); _unitHP = engine.players.getPlayer(from.ownerId).modifier.calculate(ModifierType.UNITS_HP, _infoLevel.Hp, _info.Id); _hp = _unitHP * unitCount; units.setCount(getUnits()); }