public int Add(BuildUnitModel model)
        {
            BuildUnit ent = model.ToORMEntity <BuildUnit>();
            int       re  = dbContext.BuildUnit.Insert(ent);

            return(re);
        }
Exemple #2
0
    void Setup()
    {
        Debug.Log("Build set up");

        // Build unit and time
        Manager_Game gameManager = GameObject.FindGameObjectWithTag("GameManager").GetComponent <Manager_Game>();        // Grab copy of UI Manager

        buildUnit = gameManager.GetCommander(unitTeam).GetBuildUnit(buildUnitIndex);

        startTime  = Time.time;
        finishTime = buildUnit.buildTime;

        if (gameRules.useTestValues)
        {
            finishTime = finishTime * gameRules.TEST_timeMultBuild;
        }

        // UI
        Manager_UI uiManager = GameObject.FindGameObjectWithTag("UIManager").GetComponent <Manager_UI>();        // Grab copy of UI Manager

        progBar = Instantiate(progBarPrefab);
        progBar.transform.SetParent(uiManager.Canvas.transform, false);
        progBarOffset = uiManager.UIRules.BPB_offset;

        UpdateUI();
    }
Exemple #3
0
    // Use this for initialization
    public void BuildBody(UnitData unitData)
    {
        GameObject go = (GameObject)Instantiate(bodyPrefab, transform);

        GetComponent <CharacterMovement>().SetBody(go);
        BuildUnit.Build(go, unitData);
        Destroy(this);
    }
Exemple #4
0
    public void BlockRoad(BuildUnit unit)
    {
        List <HexCell> cells = HexGrid.instance.GetRangeCells(unit.Cell, unit.property.range);

        for (int i = 0; i < cells.Count; i++)
        {
            FindRoad.instance.BlockRoad(cells[i]);
        }
    }
Exemple #5
0
    public override int CalculationOfInjury(BuildUnit attacker)
    {
        int result = attacker.property.attack * 2 - battleUnitProperty.defence;

        if (result < 0)
        {
            result = 0;
        }
        return(result);
    }
Exemple #6
0
    public override void Hit(BuildUnit attacker)
    {
        isRefreshInjuryHUD = true;
        int injury = CalculationOfInjury(attacker);

        hud.data.text             = injury.ToString();
        battleUnitProperty.nowHP -= injury;
        if (battleUnitProperty.nowHP <= 0)
        {
            StartCoroutine(WaitHUDAnimDie());
        }
    }
Exemple #7
0
 bool CanAttack(BuildUnit attacker, Unit hiter)
 {
     if (attacker.Cell.coordinates.DistanceToOther(hiter.Cell.coordinates)
         < attacker.property.attackDistance)//+ (attacker.Cell.Elevation - hiter.Cell.Elevation))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
        public void Initialize()
        {
            switch (BuildUnit.ToUpper().Trim())
            {
            case "SUPPLYDEPO":
                BuildingUnitID = Units.SUPPLY_DEPOT;
                MineralsNeeded = 100;
                break;

            case "BARRACKS":
                BuildingUnitID = Units.BARRACKS;
                MineralsNeeded = 150;
                break;
            }
        }
Exemple #9
0
    public List <Unit> FindCanAttack(BuildUnit attacker)
    {
        List <Unit> result = new List <Unit>();

        foreach (KeyValuePair <int, List <BattleUnit> > child in battleUnitPowerDic)
        {
            List <BattleUnit> childValues = child.Value;
            if (child.Key == attacker.power)
            {
                continue;
            }
            else
            {
                for (int i = 0; i < childValues.Count; i++)
                {
                    if (CanAttack(attacker, childValues[i]))
                    {
                        result.Add(childValues[i]);
                    }
                }
            }
        }

        foreach (KeyValuePair <int, List <BuildUnit> > child in buildUnitPowerDic)
        {
            List <BuildUnit> childValues = child.Value;
            if (child.Key == attacker.power)
            {
                continue;
            }
            else
            {
                for (int i = 0; i < childValues.Count; i++)
                {
                    if (CanAttack(attacker, childValues[i]))
                    {
                        result.Add(childValues[i]);
                    }
                }
            }
        }
        return(result);
    }
 public BuildController( EntityController.Select entityControllerSelect,
     BuildViewPresenter unitViewPresenter,
     BaseUnit.UnitCharacteristics unitCharacteristics,
     EntityController.GetTarget getTarget,
     EntityController.Faction faction,
     DeathDestroy updateDeath, 
     BaraksModel.SetUpdeteCharacteristicsDelegate setUpdeteCharacteristicsDelegate )
     : base(entityControllerSelect, 
         unitViewPresenter, 
         unitCharacteristics, 
         getTarget, 
         faction, 
         updateDeath, 
         setUpdeteCharacteristicsDelegate)
 {
     this.updateDeath = updateDeath;
     EffectsController effectsController = new EffectsController();
     unitBehaviour.CallDeathFSMEvent();
     unitBehaviour = new BuildBehaviour( getTarget, faction, unitViewPresenter, animationController );
     unitModel = new BuildUnit( unitCharacteristics, faction, effectsController, _UpdateCharacteristics, UpdateDeath, setUpdeteCharacteristicsDelegate, DeleteVisualEffect );
     BuildView unitView = new BuildView( unitViewPresenter, Selected, ((BuildUnit)unitModel).GetDamage );
     this.unitView = unitView;
 }
Exemple #11
0
 public virtual int CalculationOfInjury(BuildUnit attacker)
 {
     return(0);
 }
Exemple #12
0
 public virtual void Hit(BuildUnit attacker)
 {
 }
Exemple #13
0
 public void AttackBuilder(BuildUnit hiter)
 {
     StartCoroutine(WaitForMove(hiter));
     isAttack = true;
 }
Exemple #14
0
 public void AttackBuilder(BuildUnit hiter)
 {
 }
Exemple #15
0
 public override int CalculationOfInjury(BuildUnit attacker)
 {
     return(base.CalculationOfInjury(attacker));
 }
Exemple #16
0
 //This is a temoprary class for building sprites, the build should be called from the units main script
 void Awake()
 {
     BuildUnit.Build(this.gameObject, uD);
 }
Exemple #17
0
 public override void Hit(BuildUnit attacker)
 {
 }