public void AddBuildActionButtons( BaraksModel.UpgradeBuildingDelegate upgradeBuildingDelegate )
 {
     actionButtonArray[actionButtonCounter].GetComponent<Button>().onClick.RemoveAllListeners();
     actionButtonArray[actionButtonCounter].SetActive( true );
     actionButtonArray[actionButtonCounter].GetComponent<Image>().sprite = uiViewPresenter.upgradeIcon;
     actionButtonArray[actionButtonCounter].GetComponent<Button>().onClick.AddListener( () => {
         upgradeBuildingDelegate();
     } );
     ++actionButtonCounter;
 }
Example #2
0
 public BuildUnit(
     UnitCharacteristics characteristics, 
     EntityController.Faction faction, 
     EffectsController effectsController, 
     BaseUnitController.UpdateCharacteristics updateCharacteristics, 
     BaseUnitController.Death updateDeath, 
     BaraksModel.SetUpdeteCharacteristicsDelegate setUpdeteCharacteristicsDelegate,
     Action deleteVisualEffect )
     : base(characteristics, 
         faction, 
         effectsController, 
         updateCharacteristics, 
         updateDeath, 
         setUpdeteCharacteristicsDelegate,
         deleteVisualEffect)
 {
 }
 public HeroUnitController( EntityController.Select entityControllerSelect,
     HeroViewPresentor unitViewPresenter,
     BaseUnit.UnitCharacteristics unitCharacteristics,
     EntityController.GetTarget getTarget,
     EntityController.Faction faction,
     DeathDestroy updateDeath, 
     EntityController.HeroResurrect heroResurrect,
     BaraksModel.SetUpdeteCharacteristicsDelegate setUpdeteCharacteristicsDelegate )
     : base(entityControllerSelect, unitViewPresenter, unitCharacteristics, getTarget, faction, updateDeath, setUpdeteCharacteristicsDelegate)
 {
     this.updateDeath = updateDeath;
     EffectsController effectsController = new EffectsController();
     this.heroResurrect = heroResurrect;
     unitBehaviour.CallDeathFSMEvent();
     unitBehaviour = new HeroBehaviour( getTarget, faction, unitViewPresenter, animationController );
     unitModel = new HeroUnit( "Unit", unitCharacteristics, SpellInit( effectsController ), faction, effectsController, _UpdateCharacteristics, UpdateDeath, LevelUpEffect, setUpdeteCharacteristicsDelegate, DeleteVisualEffect );
     unitView = new HeroView( unitViewPresenter, Selected, GetDamage, ((HeroUnit)unitModel).GetXp );
 }
Example #4
0
 public BaseUnit( 
     UnitCharacteristics characteristics, 
     EntityController.Faction faction, 
     EffectsController effectsController, 
     BaseUnitController.UpdateCharacteristics updateCharacteristics, 
     BaseUnitController.Death updateDeath,
     BaraksModel.SetUpdeteCharacteristicsDelegate setUpdeteCharacteristicsDelegate, Action deleteVisualEffect )
 {
     this.deleteVisualEffect = deleteVisualEffect;
     this.setUpdeteCharacteristicsDelegate = setUpdeteCharacteristicsDelegate;
     setUpdeteCharacteristicsDelegate( UpdateBaseCharacteristics, false );
     updateCharacteristicsDelegate = updateCharacteristics;
     this.updateDeath = updateDeath;
     baseCharacteristics = characteristics;
     currentHp = baseCharacteristics.hp;
     this.faction = faction;
     this.effectsController = effectsController;
     UpdateCharacteristics( baseCharacteristics );
 }
Example #5
0
 public HeroUnit( string name, 
     UnitCharacteristics characteristics, 
     Spell[] spells, 
     EntityController.Faction faction, 
     EffectsController effectsController, 
     BaseUnitController.UpdateCharacteristics updateCharacteristics, 
     BaseUnitController.Death updateDeath, 
     HeroUnitController.LevelUpEffectDelegate 
     levelUpEffect, BaraksModel.SetUpdeteCharacteristicsDelegate setUpdeteCharacteristicsDelegate, Action deleteVisualEffect )
     : base(characteristics, 
         faction, 
         effectsController, 
         updateCharacteristics, 
         updateDeath, 
         setUpdeteCharacteristicsDelegate, deleteVisualEffect)
 {
     this.spells = spells;
     this.levelUpEffect = levelUpEffect;
 }
    public void CreateUnit( UnitViewPresenter unitViewPresenter, BaseUnit.UnitCharacteristics unitCharacteristics, Faction faction, BaraksModel.SetUpdeteCharacteristicsDelegate setUpdeteCharacteristicsDelegate )
    {
        unitViewPresenter.faction = faction;

        unitViewPresenter.GetPlayer( player );

        BaseUnitController unitController;

        if ( unitViewPresenter.unitType == BaseUnit.UnitType.hero ) {
            unitController = new HeroUnitController( SelectUnit, (HeroViewPresentor)unitViewPresenter, unitCharacteristics, GetUnitTarget, faction, DestroyUnit, _HeroResurrect, setUpdeteCharacteristicsDelegate );
            buildController = new BuildController( SelectUnit, buildViewPresenter, unitCharacteristics, GetUnitTarget, faction, DestroyUnit, setUpdeteCharacteristicsDelegate );
        } else {
            unitController = new BaseUnitController( SelectUnit, unitViewPresenter, unitCharacteristics, GetUnitTarget, faction, DestroyUnit, setUpdeteCharacteristicsDelegate );
        }

        if ( faction == Faction.Blue ) {
            unitsControllersBlue.Add( unitController );
        } else {
            unitsControllersRed.Add( unitController );
        }
    }
    public BaseUnitController(
        EntityController.Select entityControllerSelect, 
        UnitViewPresenter unitViewPresenter, 
        BaseUnit.UnitCharacteristics unitCharacteristics, 
        EntityController.GetTarget getTarget, 
        EntityController.Faction faction, 
        DeathDestroy updateDeath,
        BaraksModel.SetUpdeteCharacteristicsDelegate setUpdeteCharacteristicsDelegate )
    {
        this.updateDeath = updateDeath;

        animationController = new AnimationController( unitViewPresenter._animation );

        EffectsController effectsController = new EffectsController();

        tempNavMeshAgent = unitViewPresenter.navMeshAgent;

        this.entityControllerSelect = entityControllerSelect;
        unitBehaviour = new BaseUnitBehaviour( getTarget, faction, unitViewPresenter, animationController );
        unitModel = new BaseUnit(unitCharacteristics, faction, effectsController, _UpdateCharacteristics, UpdateDeath, setUpdeteCharacteristicsDelegate, DeleteVisualEffect );
        unitView = new BaseUnitView( unitViewPresenter, Selected, GetDamage );
    }
 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;
 }
Example #9
0
    public void ShowBuildActionButtons( BaraksModel baraksModel )
    {
        this.baraksModel = baraksModel;

        cuiv.AddBuildActionButtons( BuildUpgrade );
    }