C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十四)制作主角属性面板及加点器
2010-09-30 22:36:17 来源:WEB开发网根据前面对RepeatButton工作原理的描述,在这种模式下,我通过创建一个DispatcherTimer,当它Tick时触发public event EventHandler RepeatClick;事件。其中配合控件自身的 MouseLeftButtonDown、MouseLeftButtonUp及MouseLeave来开停Timer及设置它的间隔。
接着,我们就可以将此控件应用到主角属性面板中制作属性加点器了。配合上相应逻辑,当属性点数加完并提交后,主角的新属性值会立即更新反映到界面中。按照第二十八节的属性设置,主角拥有5大基本属性,当修改这些属性时会分别影响相关的值数据。例如,默认情况下主角的智慧为30,魔法攻击基本伤害范围为460-615(不包括魔法自身的攻击力),此时用激光魔法攻击敌人可造成约600左右伤血:
查看原图(大图)
而当我将智慧加到200并点击确定后,魔法攻击到了3010-4015,此时攻击敌人可以造成3500左右的伤害,很酷吧。嘿嘿:
查看原图(大图)
本教程示例游戏中,我为主角赋予了1000点的潜能点,大家可以自由分配到不同的属性上,例如增加力量属性可以增加物理攻击力,增加体格可以提升血上限及防御等,增加敏捷可以加快移动及施法速度等,增加幸运可以提高暴击率等等,测试起来还是相当有趣的呢~
不过目前的属性加点器还不能通用,毕竟不同的游戏中加点器的实现都有差异。例如有些只有加没有减,每次点击都会直接提交,这种处理最简单;而有的每次加点都会直接反应到界面上,且中途如果不满意取消后又会恢复原样,这种模式做起来相对复杂些,需要一些临时字段来存储数据,只有提交后才更新到服务器。本节功能上我选择了折中的处理方式。
游戏中的面板基本上大同小异,前面章节中的对象监视面板、雷达地图面板、寻路地图面板、主角属性面板的制作基本上含盖了大多数情况,后面的章节我将不再围绕面板这个罗嗦的话题了,打算将重心放到装备、物品、技能存放与拖动的实现方面,敬请关注。
本节源码请到目录中下载,在线演示地址:http://silverfuture.cn
出处:http://alamiye010.cnblogs.com/
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
更多精彩
赞助商链接