本游戏利用C#实现了目前市场上主流2D游戏的各项功能,包括角色、召唤角色、怪物的所有类属性设计;界面设计,包括地图设计,按钮设计,血条设计,头像设计,升级条设计,物品栏设计,包裹栏设计等;游戏运行的引擎设计,包括设计角色、召唤角色及怪物的移动系统,攻击系统,防御系统,闪避系统,暴击系统,装备系统、随机爆装备系统、随机攻击技能算法、物品栏包裹栏物品交换系统设计、物品栏提示框系统设计、消息提示系统设计、顺序捡入包裹算法设计等;声音系统设计。其他设计,包括动态刷新24帧鼠标设计,内挂设计等。
本文在第四章给出了普遍2D游戏编写的难点和重点,并给出了解决方案,引入新的概念nowX和nowY解决动作图片差额问题。利用PV操作解决mousedown事件及keydown事件内部和之间的互斥问题。创新算法角色的移动算法/其他角色移动算法/调整攻击方向算法、创新召唤角色的引擎设计、创新升级系统算法、创新模拟物品拖拽系统算法、创新降低频率算法设计、创新内挂设计。
本文在第五章给出创新算法的一些bug,并给出了解决方案。
游戏引擎详细设计
3.2.1界面设计
(1)开始界面设计
(2)游戏界面设计
3.2.2 Role 和summonRole以及怪物的属性设计
(1) Role 和summonRole属性设计
(2) 怪物的属性设计
3.2.3 角色的基本动作设计->角色各种状态的设计
3.2.4 游戏人物引擎设计原理:通过枚举所有游戏人物的状态,判断所有人物在某一时刻,应该执行的动作、帧数以及坐标,并在timer控件里面刷出相应的图片
3.2.5 游戏基本运行引擎设计
(1)Role的移动系统
(2)Role的攻击系统
(3)summonRole的逼近算法-套用Role的移动算法
(4)summonRole的攻击系统
(a)随机攻击技能系统:用最简单的随机数来模拟
(b)闪避系统 :随机数
(c)暴击系统 :随机数
(d)吸血系统:
3.2.6 其他引擎的设计
(1)模拟升级系统:while
(2)声音系统Soundplay / api
(3)物品系统
(a)装备系统,药品系统属性设计
(b)包裹栏设计
(c)物品栏设计
(d)物品栏物品交换系统设计mouseup+mouseenter
(e)物品栏提示框系统mousehover+mouseleave
(f)消息提示系统设计
(g)随机爆装备系统
(h)顺序捡入包裹算法
(4)怪物血条设计,角色血条设计
(5)头顶数字显血设计
(6)动态刷新24帧鼠标设计
(7)内挂设计