----------------------------------StarterPlatformGame---李明阳2015-2-20-------------------------------------
这里面比较多地依赖了默认的UTGame
AIPawn
AI在Kismet中生成,没有AI控制器(没有人工智能),物理状态是Fall,它就从上面掉下来。当着陆后Landed()函数中物理状态改成飞行状态。Tick()函数不停地获取本地玩家的控制,只要有本地玩家存在,按照它的朝向向量计算出加速度Acceleration,AI就朝向本地玩家控制的那个角色飞去,至于跑步的动画应该和默认的动画树有关系了。它的飞行方向始终是Tick计算出的一条指向玩家角色的向量。当它和玩家相碰了就执行Bump()函数(重写函数),爆炸伤害同时销毁自己。如果被玩家击毙了,就执行PlayDying()函数(重写函数),PlayDing中AI转化成刚体“布娃娃”,10秒后销毁;同时一定机率生成一个可拾取物。
Pickup
重写状态函数Pickup,筛选出可以拾取它的对象。重写函数GiveTo,当玩家Pawn拾取它的时候改变Pawn的Health,最后PickedUpBy(P)函数销毁自己。
UI
绘制文本,没有中文字体的通配符Canvas.Font =class'Engine'.static.GetMediumFont();也只能用英语。