protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            SetContentView(Resource.Layout.lite_list_demo);

            // Set a custom list adapter for a list of locations
            adapter          = new MapAdapter(this, LIST_LOCATIONS);
            list             = SupportFragmentManager.FindFragmentById(Resource.Id.list).JavaCast <AndroidX.Fragment.App.ListFragment> ();
            list.ListAdapter = adapter;

            // Set a RecyclerListener to clean up MapView from ListView
            list.ListView.Recycler += (sender, e) => {
                var holder = (ViewHolder)e.View.Tag;
                if (holder != null && holder.Map != null)
                {
                    // Clear the map and free up resources by changing the map type to none
                    holder.Map.Clear();
                    holder.Map.MapType = GoogleMap.MapTypeNone;
                }
            };
        }
 Map(object item, MapAdapter adapter)
 {
Exemple #3
0
        //mapItems = new Wall(120, 210, new Blue(), mapAdapter, mapItems);

        //for (int i = 1; i <= 10; i++)
        //{
        //    mapItems = new Wall(i*10, 30, new Blue(), mapAdapter, mapItems);
        //}

        //PowerUpCrateBuildDirector director = new PowerUpCrateBuildDirector();
        //IPowerUpCrateBuilder builder = new QuantityCrateBuilder();
        //director.Construct(builder, 300, 300, mapAdapter, mapItems);
        //mapItems = builder.GetCrate();

        private async Task TryToCreateMap(Form form)
        {
            // MAP
            IMap      mapAdapter = new MapAdapter();
            IMapItems mapItems   = mapAdapter;

            // WALLS LOGIC
            mapItems = new Wall(0, 40, new Blue(), mapAdapter, mapItems);
            mapItems = new Wall(0, 542, new Blue(), mapAdapter, mapItems);
            mapItems = new Wall(0, 0, new Blue(), mapAdapter, mapItems);
            mapItems = new Wall(565, 0, new Blue(), mapAdapter, mapItems);


            PowerUpCrateBuildDirector director = new PowerUpCrateBuildDirector();
            PowerUpCrateBuilder       builder  = new QuantityCrateBuilder();
            PowerUpCrateBuilder       builders = new SpeedCrateBuilder();

            director.Construct(builder, 60, 60, mapAdapter, mapItems);
            mapItems = builder.GetCrate();

            director.Construct(builder, 60, 450, mapAdapter, mapItems);
            mapItems = builder.GetCrate();

            director.Construct(builders, 450, 450, mapAdapter, mapItems);
            mapItems = builders.GetCrate();
            mapItems.AddMapItem();

            Iterator mapIterator = mapAdapter.GetMap().GetIterator();
            int      wallIndex   = 0;

            //mapItems.AddMapItem();
            for (IGameObject gameObject = (IGameObject)mapIterator.First(); !mapIterator.IsDone(); gameObject = (IGameObject)mapIterator.Next())
            {
                if (gameObject is Crate)
                {
                    //IColor c = (Crate)VARIABLE.
                    form.Controls.Add(new PictureBox {
                        Name = "Crate", Location = new Point(gameObject.x, gameObject.y), Size = new Size(25, 25), BackColor = (gameObject as Crate).GetColor().GetColor()
                    });
                    Crate c = (Crate)gameObject;
                    c.Type = c.powerUp.getPowerUpType();
                    HttpResponseMessage response = await client.PostAsJsonAsync(cratesData, c);
                }
                else if (gameObject is Wall)
                {
                    if (wallIndex < 2)
                    {
                        form.Controls.Add(new PictureBox {
                            Name = "Wall", Location = new Point(gameObject.x, gameObject.y), Size = new Size(600, 20), BackColor = Color.DarkSlateBlue
                        });
                    }
                    else
                    {
                        form.Controls.Add(new PictureBox {
                            Name = "Wall", Location = new Point(gameObject.x, gameObject.y), Size = new Size(20, 600), BackColor = Color.DarkSlateBlue
                        });
                    }
                    roomWalls.Add((Wall)gameObject);
                    HttpResponseMessage response = await client.PostAsJsonAsync(wallsData, gameObject);

                    wallIndex++;
                }
            }
        }