C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十八) 经典式属性设计及完美的物理攻击系统
2010-09-30 20:47:09 来源:WEB开发网核心提示: 通过圆来构造攻击范围并实施判断在范围型攻击魔法中同样被广泛应用到,这是后话了,C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十八) 经典式属性设计及完美的物理攻击系统(5),步骤三,当主角向敌人挥剑并击中对方时,这样,我们为每个精灵控件添加一个名为Eff
通过圆来构造攻击范围并实施判断在范围型攻击魔法中同样被广泛应用到,这是后话了。
步骤三,当主角向敌人挥剑并击中对方时,运行计算公式并显示伤害输出。这里涉及到精灵动作的分帧处理(分帧处理架构的优势在此体现得淋漓尽致),也就是根据精灵当前动作的进度来实现相应功能。举个最简单的例子,当精灵死亡时会运行死亡的一系列动作帧,当播放到最后一帧(精灵躺在地上)时才算真正的死亡,此后我们才会对其进行例如线程释放、控件移除等相关处理:
本游戏中的主角攻击动作由7帧组成,当播放到第6帧时才会实质性的对敌人产生伤害:
而这列帧在主角的动作合成图中所处的位置为第20列,这样,我们为每个精灵控件添加一个名为EffectiveFrame(起效帧)的属性,当精灵动作播放到此帧时,即会启动相应的处理:
private void Timer_Tick(object sender, EventArgs e) {
……
//如果触动起效帧
if (FrameCounter == EffectiveFrame[(int)Action]) {
Super.DoInjure(this);
}
}
Tags:开发 WPF Silverlight
编辑录入:爽爽 [复制链接] [打 印]- ››开发Android 日历教程
- ››开发学院总结 Win 8实用技巧大全
- ››开发学院原创教程:把win8的IE10放桌面上方法(非...
- ››silverlight全屏显示图片
- ››Silverlight MVVM 模式(一) 切近实战
- ››开发者眼中的Windows Phone和Android
- ››开发学院教你用SQL 语句最快速清空MySQL 数据表的...
- ››WPF学习笔记12. Binding (5)
- ››WPF学习笔记11. Binding (4)
- ››WPF学习笔记10. Binding (3)
- ››WPF学习笔记9. Binding (2)
- ››WPF学习笔记8. Binding
更多精彩
赞助商链接