Exemple #1
0
        public override void OnLoad(BWindow Window)
        {
            base.OnLoad(Window);

            // Initialising our player
            Player = new Player(
                new Vector2((Level.playerStartPos.X + 0.5f) * AppInfo.GRIDSIZE, (Level.playerStartPos.Y + 0.5f) * AppInfo.GRIDSIZE),
                BGraphics.LoadTexture("Characters/player.png"),
                BMovementType.FollowPath
                );

            // Initialise the navmesh
            this.NavMesh = new BNavigationGrid(0, 0, Level.Width, Level.Height, AppInfo.GRIDSIZE, (int)(Player.CollisionBox.Width * 1.25f), (int)(Player.CollisionBox.Height * 1.25f));
            NavMesh.Update(Level);


            // Initialise our camera settings
            Camera.SetPosition(Player.position);
            Camera.Zoom = 1.0f;

            // Lets put some fences in the game
            for (int i = 0; i < 6; i++)
            {
                Level.CreateEntity(new Fence(new Vector2(500 + (i * 32), 600), Textures[1], new Vector2(32f), new RectangleF(256f, 0, 256f, 256f)));
            }
        }
Exemple #2
0
 public override void OnLoad(BWindow Window)
 {
     base.OnLoad(Window);
     Camera = new BCamera(Vector2.Zero, 1.0, 0.0);
     InitialiseTextures();
     BBlocks.Initialise();
     InitialiseBlocks();
     InitialiseLevel();
 }
Exemple #3
0
        public override void OnLoad(BWindow Window)
        {
            base.OnLoad(Window);

            // Initialise our menu buttons
            BMenuButton[] buttons = new BMenuButton[] {
                new BMenuButton(SwitchState, BGraphics.LoadTexture("Textures/Menu/play.png"), 300f, 300f, 250f, 60f),
                new BMenuButton(Window.ExitWindow, BGraphics.LoadTexture("Textures/Menu/quit.png"), 300f, 380f, 250f, 60f)
            };
            InitialiseMenu(buttons);
        }
Exemple #4
0
        private void SwitchState(object obj)
        {
            BWindow window = (BWindow)obj;

            if (window != null)
            {
                window.SwitchState(new Game());
            }
            else
            {
                throw new InvalidCastException();
            }
        }
Exemple #5
0
/*
 *      private void Cb_CanExecute(object sender, System.Windows.Input.CanExecuteRoutedEventArgs e)
 *      {
 *                      if(e.Parameter==null) return;
 *                      e.CanExecute=true;
 *                  object[]  parameter= (object[]) e.Parameter ;
 *
 *
 *              NinjaTrader.Gui.NinjaScript.StrategiesGridEntry ge=   parameter[0] as NinjaTrader.Gui.NinjaScript.StrategiesGridEntry;
 *
 *                      System.Windows.Controls.CheckBox cb=parameter[1] as System.Windows.Controls.CheckBox;
 *                      Print("Cb_PreviewExecuted: BarsInProgress="+BarsInProgress.ToString()+" Strategy.State:"+ge.Strategy.State.ToString()+" "+cb.IsChecked.ToString());
 *
 *                      if(ge.Strategy==this && ge.Strategy.State==State.Realtime && cb.IsChecked==false ) {
 *                              // Print("our strategy, CloseWindow()");
 *                              //CloseWindow();
 *                      }
 *
 *      }
 *
 */

        public void CloseWindow()
        {
            bool basync = false;

            if (basync && _a != null)
            {
                _a.Dispatcher.InvokeAsync(new Action(() => _a.Close()));
            }

            if (!basync && _a != null && flag)
            {
                _a.Dispatcher.Invoke(new Action(() => _a.Close()));

                _a   = null;
                flag = false;
            }
        }
Exemple #6
0
 public override void OnLoad(BWindow Window)
 {
     base.OnLoad(Window);
 }
Exemple #7
0
 public virtual void OnLoad(BWindow Window)
 {
     this.Window = Window;
 }
Exemple #8
0
        protected override void OnStateChange()
        {
            int threadid = System.Threading.Thread.CurrentThread.ManagedThreadId;

            //Print("State="+State.ToString()+", id="+this.Id.ToString()+", mtid="+threadid.ToString());
            if (State == State.SetDefaults)
            {
                Description                  = @"Enter the description for your new custom Strategy here.";
                Name                         = "ShowWpfPropertyGridError2";
                Calculate                    = Calculate.OnBarClose;
                EntriesPerDirection          = 1;
                EntryHandling                = EntryHandling.AllEntries;
                IsExitOnSessionCloseStrategy = true;
                ExitOnSessionCloseSeconds    = 30;
                IsFillLimitOnTouch           = false;
                MaximumBarsLookBack          = MaximumBarsLookBack.TwoHundredFiftySix;
                OrderFillResolution          = OrderFillResolution.Standard;
                Slippage                     = 0;
                StartBehavior                = StartBehavior.WaitUntilFlat;
                TimeInForce                  = TimeInForce.Gtc;
                TraceOrders                  = false;
                RealtimeErrorHandling        = RealtimeErrorHandling.StopCancelClose;
                StopTargetHandling           = StopTargetHandling.PerEntryExecution;
                BarsRequiredToTrade          = 20;
                // Disable this property for performance gains in Strategy Analyzer optimizations
                // See the Help Guide for additional information
                IsInstantiatedOnEachOptimizationIteration = true;
                TradingHoursSerializable = "Default 24 x 7";
                StartBehavior            = StartBehavior.ImmediatelySubmit;
            }
            else if (State == State.Configure)
            {
                //Print("State="+State.ToString()+", BarsInProgress="+BarsInProgress.ToString());
                AddDataSeries(strLeg2Instrument, BarsPeriod.BarsPeriodType, BarsPeriod.Value);

                bconfig = true;

                /*
                 * NinjaTrader.Gui.NinjaScript.StrategiesGrid sg=Zweistein.NinjaTraderExtension.StrategiesGrid();
                 * foreach(CommandBinding cb in sg.CommandBindings)
                 * {
                 * if(cb.Command == NinjaTrader.Gui.NinjaScript.StrategyCommands.EnableDisableSingleStrategyCommand)
                 * {
                 * cb.CanExecute += Cb_CanExecute;
                 * }
                 * }
                 *
                 * // xamdg=Zweistein.NinjaTraderExtension.StrategiesNTGrid();
                 */
            }
            else if (State == State.DataLoaded)
            {
                if (_a == null)
                {
                    Core.Globals.RandomDispatcher.Invoke(new Action(() =>
                    {
                        _a = new BWindow();
                        if (_a != null)
                        {
                            _a.Dispatcher.Invoke(new Action(() => _a.InitializeComponent()));
                            _a.Dispatcher.Invoke(new Action(() => _a.Show()));
                            _a.Dispatcher.Invoke(new Action(() => _a.setCurrency(Account.Denomination)));
                        }

                        flag = true;
                    }));
                }
            }

            else if (State == State.Transition)
            {
                //	Print("State="+State.ToString()+", BarsInProgress="+BarsInProgress.ToString());

                if (_a != null)
                {
                    _a.Dispatcher.Invoke(new Action(() => _a.FillPG(this)));
                }
            }
            else if (State == State.Terminated)
            {
                CloseWindow();
                if (bconfig)
                {
                    //Print("State="+State.ToString()+", BarsInProgress="+BarsInProgress.ToString());

                    /*
                     * NinjaTrader.Gui.NinjaScript.StrategiesGrid sg=Zweistein.NinjaTraderExtension.StrategiesGrid();
                     * foreach(CommandBinding cb in sg.CommandBindings)
                     * {
                     * if(cb.Command == NinjaTrader.Gui.NinjaScript.StrategyCommands.EnableDisableSingleStrategyCommand)
                     * {
                     * cb.CanExecute -= Cb_CanExecute;
                     * }
                     * }
                     */
                }
            }
        }