C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十八) 经典式属性设计及完美的物理攻击系统
2010-09-30 20:47:09 来源:WEB开发网步骤二,跑向敌人时,只要敌人进入攻击范围时即发起攻击:
/// <summary>
/// 判断是否将要向锁定对象发起攻击
/// </summary>
private bool WillAttack(QXSpirit attacker, QXSpirit defenser) {
return defenser == null ? false : Super.InCircle(attacker.X, attacker.Y, defenser.X, defenser.Y, attacker.AttackRange);
}
/// <summary>
/// 判断点是否在圆内
/// </summary>
/// <param name="targetX">目标点X坐标</param>
/// <param name="targetY">目标点Y坐标</param>
/// <param name="centerX">圆心X坐标</param>
/// <param name="centerY">圆心X坐标</param>
/// <param name="radius">圆半径</param>
/// <returns></returns>
public static bool InCircle(double targetX, double targetY, double centerX, double centerY, double radius){
return Math.Pow(targetX - centerX, 2) + Math.Pow(targetY - centerY, 2) <= Math.Pow(radius, 2) ? true : false;
}
我设定的主角发起实质性攻击的前提条件是:主角进入为以敌人脚底为圆心以主角攻击距离(范围)为半径的圆内:
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
更多精彩
赞助商链接