コード例 #1
0
        /// <summary>
        /// Runs in background thread CANNOT change visuals
        /// </summary>
        public void UpdateGameStates(UIChanges changes, double deltaTimeMS)
        {
            // update the regiments if required
            foreach (Army a in Armies.Values)
            {
                foreach (Corps c in a.Corps)
                {
                    foreach (ArmyDivision d in c.Divisons)
                    {
                        foreach (Brigade b in d.Brigades)
                        {
                            UpdatePosition(b, changes, deltaTimeMS);

                            foreach (Regiment r in b.Regiments)
                            {
                                r.FacingInDegrees += 1;
                            }
                        }
                    }
                }
            }

            //// Hack 1 regiment changes
            changes.RegimentalIds.Add(1);
        }
コード例 #2
0
        /// <summary>
        /// The dispathed timer
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void timer_Tick(object sender, EventArgs e)
        {
            lock (_locker)
            {
                try
                {
                    // textBlock.Text = lastBackgroundUpdate.ToLongTimeString();

                    mapVisualHost.UpdateGameVisualsWithChangeList(changes);
                    changes = new UIChanges();
                    UpdateSelectionDisplay();
                    //mapVisualHost.UpdateGameVisuals();

                    //this.MapCanvas.InvalidateVisual();
                    //this.MapCanvas.UpdateLayout();

                    //mapVisualHost.Refresh();
                }
                catch (Exception ex)
                {
                }
                finally
                {
                }
            }
        }
コード例 #3
0
        /*
         * public void DrawScreen(IAleaBelliGame client)
         * {
         *  // Remove all Visuals
         *  m_Visuals.ForEach(delegate (Visual v) { RemoveVisualChild(v); });
         *  m_Visuals.Clear();
         *
         *  //m_Visuals.Add(CreateDrawingVisualRectangle(client));
         *
         *  m_Visuals.ForEach(delegate (Visual v) { AddVisualChild(v); });
         * }*/

        public void UpdateGameVisualsWithChangeList(UIChanges changes)
        {
            if (changes != null)
            {
                // redraw any regimentd
                foreach (int rid in changes.RegimentalIds.ToList())
                {
                    Regiment r = game.GetRegiment(rid);
                    RedrawRegiment(r, true);
                }
            }
        }
コード例 #4
0
 public void UpdatePosition(Brigade b, UIChanges changes, double deltaTimeMS)
 {
 }