feat: add map drawing
This commit is contained in:
58
Client/Application/ViewModels/MapBlockViewModel.cs
Normal file
58
Client/Application/ViewModels/MapBlockViewModel.cs
Normal file
@ -0,0 +1,58 @@
|
||||
using Client.Domain.Common;
|
||||
using Client.Domain.ValueObjects;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Media;
|
||||
|
||||
namespace Client.Application.ViewModels
|
||||
{
|
||||
public class MapBlockViewModel : ObservableObject
|
||||
{
|
||||
public string ImageSource => "/Assets/maps/" + mapBlock.BlockX + "_" + mapBlock.BlockY + ".jpg";
|
||||
public float DeltaX => mapBlock.DeltaX;
|
||||
public float DeltaY => mapBlock.DeltaY;
|
||||
public float Size => mapBlock.Size;
|
||||
public bool Visible
|
||||
{
|
||||
get => visible;
|
||||
set
|
||||
{
|
||||
if (visible != value)
|
||||
{
|
||||
visible = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
public MapBlock MapBlock => mapBlock;
|
||||
|
||||
public MapBlockViewModel(MapBlock mapBlock)
|
||||
{
|
||||
this.mapBlock = mapBlock;
|
||||
|
||||
mapBlock.PropertyChanged += MapBlock_PropertyChanged;
|
||||
}
|
||||
|
||||
private void MapBlock_PropertyChanged(object? sender, System.ComponentModel.PropertyChangedEventArgs e)
|
||||
{
|
||||
if (e.PropertyName == "DeltaX")
|
||||
{
|
||||
OnPropertyChanged("DeltaX");
|
||||
}
|
||||
if (e.PropertyName == "DeltaY")
|
||||
{
|
||||
OnPropertyChanged("DeltaY");
|
||||
}
|
||||
if (e.PropertyName == "Size")
|
||||
{
|
||||
OnPropertyChanged("Size");
|
||||
}
|
||||
}
|
||||
|
||||
private readonly MapBlock mapBlock;
|
||||
private bool visible = true;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user