C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十八) 落雷!治疗!陷阱!连锁闪电!多段群伤!魔法之终极五重奏①
来源:互联网 发布:宠物的世界淘宝 编辑:程序博客网 时间:2024/06/09 17:25
是否还记得《传奇》中那一道道从天而降落的闪电,《笑傲江湖网络版》中娥眉救死扶伤的治疗,《剑侠世界》中五毒神出鬼没般的陷阱,《英雄无敌》中超经典的连锁闪电以及《魔兽争霸》中法师之终极魔法-暴风雪。这些家伙都曾在当年的玩家们心中打下深深的烙印,如能将此些经典之作添加进游戏中,毫无疑问将大幅提升游戏的华丽度与趣味性,战斗不就涂个爽快吗?这才是魔法的终极魅力!
首先来看闪电(落雷类型)魔法的制作。
从天而降,单体伤害,给予目标麻痹附加效果。与上一节的单体飞行魔法不同的是,施放就好比第三十二节中的群攻魔法,瞬间从目标点出现,并于起效帧时触发伤害,攻击对象为单体,算比较简单且实用的魔法之一。实际游戏制作中的瞬发型单体魔法并非只有闪电,可以说几乎所有游戏中的基础系魔法均可从此类型衍生出来,比如《三国群英传》中的地矛等:
接下来是单体治疗类型魔法,由于本教程示例游戏是单机的,因此我将此治疗魔法设定为可以对任意对象进行加血操作以展示其灵活性。治疗魔法的原理就好比落雷,仅仅不同的是它所产生的效果是加血而不是伤血,实际制作中可以将它们归为一类,处理伤害时通过+-来判断完成即可,同时拓展衍生一下,群体加血不就是将群攻魔法进行反向即减血操作即可,其实魔法设计是有规律可寻的,为要因为那些魔法在表现时的花花绿绿五花八门而无从下手,当你从中发现规律时,一切就简单多了:
再下来是陷阱类型魔法,在《暗黑破坏神》和《剑侠世界》等游戏中均有很不错的体现,那么本节中我借用《剑侠世界》的素材来制作陷阱。别看实际使用时是那么的牛X,但制作时需要考虑的因素还是挺多的,例如每个角色能同时拥有几个陷阱在地图中;陷阱如一直未被触发那么它的消失时间是多长;陷阱是相对于敌对精灵不可见,而非敌对玩家则以半透明的形式出现;陷阱有一定的作用范围,当埋设后并不产生伤害,只有当敌对精灵进入该范围内时才触发伤害,并出现陷阱被触发的新动画以及对该精灵进行附加效果如中毒等处理。在本示例教程中,我仅仅以简化的方式实现了类似的陷阱:一个精灵只允许同时拥有一个陷阱,且如果该陷阱不被触发或不去施放新的陷阱则一直存在:
更精彩的还在下一节,连锁闪电那可是《英雄无敌》的招牌,不同级别的连锁闪电可以连锁的敌人个数不同,作者用“酷毙了”去形容都仍觉的欠些火候,想看吗?敬请关注。
本节源码请到目录中下载,在线演示地址:http://silverfuture.cn
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十八) 落雷!治疗!陷阱!连锁闪电!多段群伤!魔法之终极五重奏①
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十九) 落雷!治疗!陷阱!连锁闪电!多段群伤!魔法之终极五重奏②
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十一) 超酷万变的矢量魔法
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十三) 锦上添花之魔法特效装饰
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十九)向Silverlight移植①
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十七)远距离单体攻击与单体魔法
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十七)远距离单体攻击与单体魔法
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十七) 完美精灵之八面玲珑(WPF Only)①
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十)向Silverlight移植②
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十八) 完美精灵之八面玲珑(WPF Only)②
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十九) 完美精灵之八面玲珑(WPF Only)③
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(六)完美移动
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):目录
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十一)地图遮罩层的实现
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十二)神奇的副本地图
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十四)地图编辑器诞生啦!
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十七)地图自适应区域加载
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):目录
- 使用游标实现 mysql 存储过程中的循环
- Vector 与ArrayList的区别
- Wince5.0下如何将Public和Private下的代码移植到BSP下
- WinCE中的Debug Zone调试(转载)
- INFORMIX 外部表 External table 使用说明
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十八) 落雷!治疗!陷阱!连锁闪电!多段群伤!魔法之终极五重奏①
- 毕业后5年决定你的命运
- 突然发现的关于控制进程停止和运行的命令
- Git和Repo扫盲——如何取得Android源代码
- jquery滑动效果
- WinCE Target Control调试介绍(转载)
- (转载)Putty 使用教程 一
- 通用权限管理设计篇(一)
- 请假也有错