嘿,大家我是C#的新手,我遇到了一些问题。我目前正在为学校做一项任务,而我真的被困在这个部分。我一直在盯着它看,几个小时都在Google上搜索,我很幸运。我已经包括了我迄今为止的内容。有关枚举方法的C#
方向不是很好。
“创建4个图像状态的公共枚举CharacterState:攻击,防御,空闲,和死 现在创建一个成员变量状态,以保持角色状态,并用获得 并设置公共属性State为。现在,填写get和set的默认行为来返回/设置状态的值。“
任何帮助将大大appeciated!谢谢
namespace WPFBattle
{
class CharacterImage: System.Windows.Controls.Image
{
public enum Attacking{
}
public enum Defending{
}
public enum Idle{
}
public enum Dead{
}
public ImageSource IdleImageSource { get; set; }
public ImageSource AttackingImageSource { get; set; }
public ImageSource TakeDamageImageSource { get; set; }
public ImageSource DeadImageSource { get; set; }
protected void UpdateImageSource()
{
switch (State)
{
case CharacterState.Attacking:
this.Source = AttackingImageSource;
break;
case CharacterState.TakeDamage:
this.Source = TakeDamageImageSource;
break;
case CharacterState.Dead:
this.Source = DeadImageSource;
break;
case CharacterState.Idle:
default:
this.Source = IdleImageSource;
break;
}
}
protected override void OnRender(DrawingContext dc)
{
UpdateImageSource();
base.OnRender(dc);
}
public CharacterState State
{
get { return state; }
set
{
state = value;
this.Dispatcher.Invoke((Action)(() =>
{
UpdateImageSource();
}));
}
}
}
}
好了,你有4个空的枚举,而不是只是一个有4个值。 – Kinetic
什么是您的代码中的CharacterState? – Kinetic
而且我还不确定你的问题到底是什么。 – Kinetic