Ejemplo n.º 1
0
        // Use this for initialization
        public void Initialize()
        {
            this.guiinfo = this.gameObject.GetComponent <GuiInformation>();
            this.GuiView = this.gameObject.GetComponent <GuiViewHandler>();

            hasPriority = false;
            if (PlayerCamera == null)
            {
                PlayerCamera = Camera.main;
            }

            engmodel = Engine.EngineModel;


            engmodel.EventManager.Register(new Trigger <PlayerGainedPriorityEvent>(evt => hasPriority = evt.Player == guiinfo.Player));
            engmodel.EventManager.Register(new Trigger <PlayerAllowedToDeclareMoveAttackEvent>(evt => allowedToDeclare = (evt.Player == guiinfo.Player && evt.Allowed)));



            //foreach (var player in this.JoinedPlayers)
            //{
            //    foreach(Phases phase in (Phases[])Enum.GetValues(typeof(Phases)))
            //    {
            //        var texture = guiinfo.GetSkipPhaseButton(player, phase);
            //        if (texture == null)
            //            continue;

            //        var buttonHandler = texture.GetComponent<GUIButtonHandler>();
            //        var selectedPlayer = player;
            //        var selectedPhase = phase;
            //        buttonHandler.MouseDownEvent += (sender, evt) =>
            //        {
            //            if (this.hasPriority && this.ControllerType == ControllerType.Shared || this.ControllerType == ControllerType.Full)
            //            {
            //                //this.PerformCommand(new ToggleStopPriorityCommand(SkipController, selectedPlayer, selectedPhase));
            //            }
            //        };
            //    }
            //}

            foreach (Phases ph in (Phases[])Enum.GetValues(typeof(Phases)))
            {
                var texture       = guiinfo[ph];
                var buttonhandler = texture.GetComponent <GUIButtonHandler>();
                var selectedPhase = ph;

                buttonhandler.MouseDownEvent += (sender, evt) =>
                {
                    if (hasPriority)
                    {
                        this.PerformCommand(new SkipToPhaseCommand(SkipController, selectedPhase));
                    }
                };
            }

            var buyXp = this.guiinfo.XPButton.GetComponent <GUIButtonHandler>();

            buyXp.MouseDownEvent += new EventHandler(buyXp_MouseDownEvent);
        }
 public PhaseSkipToController(GuiInformation guiinfo, Player owner)
 {
     // TODO: Complete member initialization
     this.guiinfo = guiinfo;
     this.owner = owner;
     owner.EventManager.Register(new Trigger<PlayersTurnChangedEvent>(evt => { currentPlayersTurn = evt.PlayersTurn; shouldSkipToPhase = false; }));
     owner.EventManager.Register(new Trigger<PhaseChangedEvent>(evt => { lastGainPrio = null; prioritiesHasBeenReset = false; curPhase = evt.NewPhase; }));
     owner.EventManager.Register(new Trigger<PlayerGainedPriorityEvent>(this.OnPlayerGainPriority));
     owner.EventManager.Register(new Trigger<ResetPrioritiesEvent>(evt => prioritiesHasBeenReset = true));
 }
Ejemplo n.º 3
0
 public void Initialize(UnityFactory Factory, GuiInformation ginfo, bool isNotMainPlayer)
 {
     this.Factory         = Factory;
     this.ginfo           = ginfo;
     this.isNotMainPlayer = isNotMainPlayer;
     ginfo.Player.Register(new Trigger <PlayerGainedXPEvent>(OnXPGain));
     xpscaler  = this.ginfo.XPBar.GetComponent <GUITextureAutoScaler>();
     initwidth = xpscaler.CurPlacement.width;
     CheckXp();
 }
Ejemplo n.º 4
0
 public void Initialize(UnityFactory factory, GuiInformation info, XmasModel engine, bool reversed)
 {
     this.Factory  = factory;
     this.GUIInfo  = info;
     this.Engine   = engine;
     this.reversed = reversed;
     Engine.EventManager.Register(new Trigger <ManaCrystalAddedEvent>(evt => evt.Owner == this.GUIInfo.Player, OnManaAdded));
     Engine.EventManager.Register(new Trigger <ManaCrystalSpentEvent>(evt => evt.Owner == this.GUIInfo.Player, OnManaSpent));
     Engine.EventManager.Register(new Trigger <ManaRechargedEvent>(evt => evt.Owner == this.GUIInfo.Player, OnManaRecharged));
 }
Ejemplo n.º 5
0
 public void Initialize(UnityFactory Factory, GuiInformation ginfo, bool isNotMainPlayer)
 {
     this.Factory = Factory;
     this.ginfo = ginfo;
     this.isNotMainPlayer = isNotMainPlayer;
     ginfo.Player.Register(new Trigger<PlayerGainedXPEvent>(OnXPGain));
     xpscaler = this.ginfo.XPBar.GetComponent<GUITextureAutoScaler>();
     initwidth = xpscaler.CurPlacement.width;
     CheckXp();
 }
 public PhaseSkipToController(GuiInformation guiinfo, Player owner)
 {
     // TODO: Complete member initialization
     this.guiinfo = guiinfo;
     this.owner   = owner;
     owner.EventManager.Register(new Trigger <PlayersTurnChangedEvent>(evt => { currentPlayersTurn = evt.PlayersTurn; shouldSkipToPhase = false; }));
     owner.EventManager.Register(new Trigger <PhaseChangedEvent>(evt => { lastGainPrio = null; prioritiesHasBeenReset = false; curPhase = evt.NewPhase; }));
     owner.EventManager.Register(new Trigger <PlayerGainedPriorityEvent>(this.OnPlayerGainPriority));
     owner.EventManager.Register(new Trigger <ResetPrioritiesEvent>(evt => prioritiesHasBeenReset = true));
 }
Ejemplo n.º 7
0
 public void Initialize(UnityFactory factory, GuiInformation info, XmasModel engine, bool reversed)
 {
     this.Factory = factory;
     this.GUIInfo = info;
     this.Engine = engine;
     this.reversed = reversed;
     Engine.EventManager.Register(new Trigger<ManaCrystalAddedEvent>(evt=>evt.Owner==this.GUIInfo.Player,OnManaAdded));
     Engine.EventManager.Register(new Trigger<ManaCrystalSpentEvent>(evt => evt.Owner == this.GUIInfo.Player, OnManaSpent));
     Engine.EventManager.Register(new Trigger<ManaRechargedEvent>(evt => evt.Owner == this.GUIInfo.Player, OnManaRecharged));
 }
Ejemplo n.º 8
0
        public void Initialize()
        {
            guiinfo  = this.gameObject.GetComponent <GuiInformation>();
            engmodel = Engine.EngineModel;

            engmodel.EventManager.Register(new Trigger <PlayerGainedPriorityEvent>(OnPlayerPriority));
            engmodel.EventManager.Register(new Trigger <PlayersTurnChangedEvent>(OnTurnChanged));
            engmodel.EventManager.Register(new Trigger <PhaseChangedEvent>(OnPhaseChanged));
            engmodel.EventManager.Register(new Trigger <PlayerDeclareMoveAttackEvent>(evt => evt.Player == this.guiinfo.Player, OnPlayerDeclare));
            engmodel.EventManager.Register(new Trigger <PhaseChangedEvent>(OnPhaseChangedEvt));
            engmodel.EventManager.Register(new Trigger <CardDrawnEvent>(evt => evt.Player == this.guiinfo.Player, OnPlayerDrawCard));
            setupHpText();
            this.initHPWidth = this.guiinfo.HealthBar.GetComponent <GUITextureAutoScaler>().CurPlacement.width;
        }
Ejemplo n.º 9
0
        public void Initialize()
        {
            guiinfo = this.gameObject.GetComponent<GuiInformation>();
            engmodel = Engine.EngineModel;

            engmodel.EventManager.Register(new Trigger<PlayerGainedPriorityEvent>(OnPlayerPriority));
            engmodel.EventManager.Register(new Trigger<PlayersTurnChangedEvent>(OnTurnChanged));
            engmodel.EventManager.Register(new Trigger<PhaseChangedEvent>(OnPhaseChanged));
            engmodel.EventManager.Register(new Trigger<PlayerDeclareMoveAttackEvent>(evt => evt.Player == this.guiinfo.Player,OnPlayerDeclare));
            engmodel.EventManager.Register(new Trigger<PhaseChangedEvent>(OnPhaseChangedEvt));
            engmodel.EventManager.Register(new Trigger<CardDrawnEvent>(evt => evt.Player == this.guiinfo.Player, OnPlayerDrawCard));
            setupHpText();
            this.initHPWidth = this.guiinfo.HealthBar.GetComponent<GUITextureAutoScaler>().CurPlacement.width;
        }
Ejemplo n.º 10
0
        // Use this for initialization
        public void Initialize()
        {
            this.guiinfo = this.gameObject.GetComponent<GuiInformation>();
            this.GuiView = this.gameObject.GetComponent<GuiViewHandler>();

            hasPriority = false;
            if (PlayerCamera == null)
                PlayerCamera = Camera.main;

            engmodel = Engine.EngineModel;

            engmodel.EventManager.Register(new Trigger<PlayerGainedPriorityEvent>(evt => hasPriority = evt.Player == guiinfo.Player ));
            engmodel.EventManager.Register(new Trigger<PlayerAllowedToDeclareMoveAttackEvent>(evt => allowedToDeclare = (evt.Player == guiinfo.Player && evt.Allowed)));

            //foreach (var player in this.JoinedPlayers)
            //{
            //    foreach(Phases phase in (Phases[])Enum.GetValues(typeof(Phases)))
            //    {
            //        var texture = guiinfo.GetSkipPhaseButton(player, phase);
            //        if (texture == null)
            //            continue;

            //        var buttonHandler = texture.GetComponent<GUIButtonHandler>();
            //        var selectedPlayer = player;
            //        var selectedPhase = phase;
            //        buttonHandler.MouseDownEvent += (sender, evt) =>
            //        {
            //            if (this.hasPriority && this.ControllerType == ControllerType.Shared || this.ControllerType == ControllerType.Full)
            //            {
            //                //this.PerformCommand(new ToggleStopPriorityCommand(SkipController, selectedPlayer, selectedPhase));
            //            }
            //        };
            //    }
            //}

            foreach (Phases ph in (Phases[])Enum.GetValues(typeof(Phases)))
            {
                var texture = guiinfo[ph];
                var buttonhandler = texture.GetComponent<GUIButtonHandler>();
                var selectedPhase = ph;

                buttonhandler.MouseDownEvent += (sender, evt) =>
                    {
                        if(hasPriority)
                            this.PerformCommand(new SkipToPhaseCommand(SkipController, selectedPhase));
                    };

            }

            var buyXp = this.guiinfo.XPButton.GetComponent<GUIButtonHandler>();
            buyXp.MouseDownEvent += new EventHandler(buyXp_MouseDownEvent);
        }