public void OnClick(object sender, EventArgs e) { if (_world.ActualPosition is MapZone) { if ((MapZone)_world.ActualPosition != ((MapZone)((Button)sender).Tag)) { foreach (MapZone zone in _instance.listZones) { if (zone == ((MapZone)((Button)sender).Tag)) { if (_instance.ChangeActualZone(zone)) { Reload(); Meet uc = new Meet(_instance.EventRandom(zone.Visited), _contextForm, _world, zone); zone.Visited = true; //Racial bonus elf int count = 0; foreach (Character c in _world.Team.Members) { if (c.Race == "ELFE") { count++; } } foreach (Character c in _world.Team.Members) { c.Heal((c.Health / 100) * count); } _contextForm.ToMenu(uc, false); } } } } } else { if (((MapZone)((Button)sender).Tag) == _instance.listZones[0]) { _world.ActualPosition = ((MapZone)((Button)sender).Tag); Reload(); } } }