public void LaunchThorpede(MissleSide side, Object beh) { if (side == MissleSide.FRIENDLY) { friendlyInstance = (FriendlySpaceship)beh; misTmp = getFreeThorpede(side); misTmp.gameObject.transform.position = friendlyInstance.MisslesLaunchPoint.transform.position; misTmp.gameObject.transform.eulerAngles = new Vector3(270, friendlyInstance.transform.eulerAngles.y, 0); misTmp.Activate(); misTmp.hideIcon(); misTmp.gameObject.SetActive(true); activeFriendlyThorpedes.Add(misTmp); } if (side == MissleSide.ENEMY) { enemyInstance = (EnemySpaceship)beh; misTmp = getFreeThorpede(side); misTmp.gameObject.transform.position = enemyInstance.MissleLaunchPos.transform.position; misTmp.gameObject.transform.eulerAngles = new Vector3(270, enemyInstance.transform.eulerAngles.y, 0); misTmp.Activate(); misTmp.gameObject.SetActive(true); activeEnemyThorpeds.Add(misTmp); } }
public FriendlySpaceship getNearbyFriendly(MissleBehaviour attacker) { FriendlySpaceship ret = null; d = -1; v1.Set(attacker.gameObject.transform.position.x, attacker.gameObject.transform.position.z); foreach (FriendlySpaceship target in friendlySpaceships) { v2.Set(target.gameObject.transform.position.x, target.gameObject.transform.position.z); if (d < 0) { ret = target; v2.Set(v1.x - v2.x, v1.y - v2.y); d = v2.sqrMagnitude; } else { v2.Set(v1.x - v2.x, v1.y - v2.y); if (d > v2.sqrMagnitude) { ret = target; d = v2.sqrMagnitude; } } } return(ret); }
public void toggleShowAllAttackIcons(MissleBehaviour exclude) { foreach (FriendlySpaceship obj in friendlySpaceships) { obj.showAttackIcon(); } MisslePoolManager.getInstance().ToggleShowAllAttackIcons(exclude); }
public void MarkToRemoveStaticMissle(MissleBehaviour mis) { if (mis.type == MissleType.GAS) { if (mis.side == MissleSide.ENEMY) { enemyGasRemoveList.Add(mis); } if (mis.side == MissleSide.FRIENDLY) { friendlyGasRemoveList.Add(mis); } } }
public void DestroyGas(MissleBehaviour mis) { if (mis.side == MissleSide.ENEMY) { activeEnemyGasList.Remove(mis); } else if (mis.side == MissleSide.FRIENDLY) { activeFriendlyGasList.Remove(mis); } //mis.gameObject.transform.position=stackPos; mis.gameObject.SetActive(false); bringToBack(mis); }
private void bringToBack(MissleBehaviour missle) { if (missle.type == MissleType.ROCKET) { if (missle.side == MissleSide.FRIENDLY) { friendlyRockets.Add(missle); } if (missle.side == MissleSide.ENEMY) { enemyRockets.Add(missle); } } if (missle.type == MissleType.THORPEDE) { if (missle.side == MissleSide.FRIENDLY) { friendlyThorpeds.Add(missle); } if (missle.side == MissleSide.ENEMY) { enemyThorpeds.Add(missle); } } if (missle.type == MissleType.GAS) { if (missle.side == MissleSide.FRIENDLY) { friendlyGasList.Add(missle); } if (missle.side == MissleSide.ENEMY) { enemyGasList.Add(missle); } } if (missle.type == MissleType.MINES) { if (missle.side == MissleSide.FRIENDLY) { friendlyMinesList.Add(missle); } if (missle.side == MissleSide.ENEMY) { enemyMinesList.Add(missle); } } }
public void ToggleShowAllAttackIcons(MissleBehaviour exclude) { foreach (MissleBehaviour obj in activeFriendlyRockets) { if (obj != exclude) { obj.showIcon(); } } foreach (MissleBehaviour obj in activeFriendlyThorpedes) { if (obj != exclude) { obj.showIcon(); } } //THORPEDS }
public void LaunchGas(MissleSide side, Object beh) { if (side == MissleSide.FRIENDLY) { friendlyInstance = (FriendlySpaceship)beh; misTmp = getFreeGas(side); misTmp.gameObject.transform.position = friendlyInstance.transform.position; misTmp.gameObject.transform.eulerAngles = new Vector3(270, friendlyInstance.transform.eulerAngles.y, 0); misTmp.Activate(); misTmp.gameObject.SetActive(true); activeFriendlyGasList.Add(misTmp); } if (side == MissleSide.ENEMY) { enemyInstance = (EnemySpaceship)beh; misTmp = getFreeGas(side); misTmp.gameObject.transform.position = enemyInstance.transform.position; misTmp.gameObject.transform.eulerAngles = new Vector3(270, enemyInstance.transform.eulerAngles.y, 0); misTmp.Activate(); misTmp.gameObject.SetActive(true); activeEnemyGasList.Add(misTmp); } }
private MissleBehaviour getFreeThorpede(MissleSide side) { if (side == MissleSide.FRIENDLY) { foreach (MissleBehaviour missle in friendlyThorpeds) { misTmp = missle; break; } friendlyThorpeds.Remove(misTmp); return(misTmp); } if (side == MissleSide.ENEMY) { foreach (MissleBehaviour missle in enemyThorpeds) { misTmp = missle; break; } enemyThorpeds.Remove(misTmp); return(misTmp); } return(null); }
public void toggleShowAllAttackIcons(MissleBehaviour exclude) { foreach(FriendlySpaceship obj in friendlySpaceships) obj.showAttackIcon(); MisslePoolManager.getInstance().ToggleShowAllAttackIcons(exclude); }
public void DestroyGas(MissleBehaviour mis) { if(mis.side==MissleSide.ENEMY) activeEnemyGasList.Remove(mis); else if(mis.side==MissleSide.FRIENDLY) activeFriendlyGasList.Remove(mis); //mis.gameObject.transform.position=stackPos; mis.gameObject.SetActive(false); bringToBack(mis); }
public void MarkToRemoveStaticMissle(MissleBehaviour mis) { if(mis.type==MissleType.GAS) { if(mis.side==MissleSide.ENEMY) enemyGasRemoveList.Add(mis); if(mis.side==MissleSide.FRIENDLY) friendlyGasRemoveList.Add(mis); } }
public void LaunchMine(MissleSide side, Object beh) { if(side==MissleSide.FRIENDLY) { friendlyInstance=(FriendlySpaceship) beh; misTmp=getFreeMine(side); misTmp.gameObject.transform.position=friendlyInstance.transform.position; misTmp.gameObject.transform.eulerAngles=new Vector3(270,friendlyInstance.transform.eulerAngles.y,0); misTmp.Activate(); misTmp.gameObject.SetActive(true); activeFriendlyMinesList.Add(misTmp); } if(side==MissleSide.ENEMY) { enemyInstance=(EnemySpaceship) beh; misTmp=getFreeMine(side); misTmp.gameObject.transform.position=enemyInstance.transform.position; misTmp.gameObject.transform.eulerAngles=new Vector3(270,enemyInstance.transform.eulerAngles.y,0); misTmp.Activate(); misTmp.gameObject.SetActive(true); activeEnemyMinesList.Add(misTmp); } }
private MissleBehaviour getFreeThorpede(MissleSide side) { if(side==MissleSide.FRIENDLY) { foreach(MissleBehaviour missle in friendlyThorpeds) { misTmp=missle; break; } friendlyThorpeds.Remove(misTmp); return misTmp; } if(side==MissleSide.ENEMY) { foreach(MissleBehaviour missle in enemyThorpeds) { misTmp=missle; break; } enemyThorpeds.Remove(misTmp); return misTmp; } return null; }
private void bringToBack(MissleBehaviour missle) { if(missle.type==MissleType.ROCKET) { if(missle.side==MissleSide.FRIENDLY) friendlyRockets.Add(missle); if(missle.side==MissleSide.ENEMY) enemyRockets.Add(missle); } if(missle.type==MissleType.THORPEDE) { if(missle.side==MissleSide.FRIENDLY) friendlyThorpeds.Add(missle); if(missle.side==MissleSide.ENEMY) enemyThorpeds.Add(missle); } if(missle.type==MissleType.GAS) { if(missle.side==MissleSide.FRIENDLY) friendlyGasList.Add(missle); if(missle.side==MissleSide.ENEMY) enemyGasList.Add(missle); } if(missle.type==MissleType.MINES) { if(missle.side==MissleSide.FRIENDLY) friendlyMinesList.Add(missle); if(missle.side==MissleSide.ENEMY) enemyMinesList.Add(missle); } }
public void ToggleShowAllAttackIcons(MissleBehaviour exclude) { foreach(MissleBehaviour obj in activeFriendlyRockets) if(obj!=exclude) obj.showIcon(); foreach(MissleBehaviour obj in activeFriendlyThorpedes) if(obj!=exclude) obj.showIcon(); //THORPEDS }
public FriendlySpaceship getNearbyFriendly(MissleBehaviour attacker) { FriendlySpaceship ret=null; d=-1; v1.Set(attacker.gameObject.transform.position.x,attacker.gameObject.transform.position.z); foreach(FriendlySpaceship target in friendlySpaceships) { v2.Set(target.gameObject.transform.position.x,target.gameObject.transform.position.z); if(d<0) { ret=target; v2.Set(v1.x-v2.x,v1.y-v2.y); d = v2.sqrMagnitude; } else { v2.Set(v1.x-v2.x,v1.y-v2.y); if(d>v2.sqrMagnitude) { ret=target; d=v2.sqrMagnitude; } } } return ret; }