本文整理汇总了C#中Projectile.CheckAxis方法的典型用法代码示例。如果您正苦于以下问题:C# Projectile.CheckAxis方法的具体用法?C# Projectile.CheckAxis怎么用?C# Projectile.CheckAxis使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Projectile
的用法示例。
在下文中一共展示了Projectile.CheckAxis方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ProjectileDetect
public bool ProjectileDetect(Projectile p)
{
SPoint pCtr, prV;
bool pHitFlag=false;
for (int i = 0; i < tBox.iLength; i++) {
float[] prAngs = new float[tBox.GetJlength (i)];
pCtr = new SPoint (p.pos.x, p.pos.y);
int pJl = tBox.GetJlength (i) - 1;
float lastAng = Mathf.Atan2 ((tBox.pBounds [i] [pJl].y - pCtr.y), (tBox.pBounds [i] [pJl].x - pCtr.x));
pHitFlag = true;
for (int j = 0; j < tBox.GetJlength(i); j++){
if (!p.CheckAxis(tBox.GetSPoint(i, j), tBox.GetAng(i, j), p.pos, tBox.pBounds[i], tBox.jLength[i]))
{ //no axis intersection
pHitFlag = false;
j = tBox.GetJlength(i);//exit loop early
}
}
/*for (int j = 0; j < tBox.GetJlength(i); j++) {
prV = new SPoint (tBox.pBounds [i] [j].x - pCtr.x, tBox.pBounds [i] [j].y - pCtr.y);
prAngs [j] = Mathf.Atan2 (prV.y, prV.x);
if ((lastAng > prAngs [j]) && (lastAng -prAngs [j] < Mathf.PI )){
pHitFlag = false;
}
if ((lastAng < prAngs [j]) && (lastAng -prAngs [j] < - Mathf.PI )){
pHitFlag = false;
}
lastAng = prAngs [j];
}*/
if (pHitFlag){
return true;
}
}
return pHitFlag;
}