public void Launch(GameObject launchSite, int count) { // DebugScript = DebugCollider.GetComponent<DebugGameScript>(); // DebugScript.Collider = Collider; MissileCount++; missileCommnandScript.MissileLaunched(); TargetPoint = MousePosition.ToWorldSpace().ChangeZ(Z); MarkTarget(TargetPoint); var shape2d = gameObject.GetComponent <Shapes2D.Shape>(); //shape2d.enabled = false; var spriteRenderer = gameObject.GetComponent <SpriteRenderer>(); spriteRenderer.enabled = false; Vector3[] poses1 = new Vector3[2]; lineRenderer.GetPositions(poses1); var pos = launchSite.transform.position; pos.z = Z; LaunchPoint = new SpacePoint(Graphics.Space.World, pos); poses1[0] = poses1[1] = LaunchPoint.Position; lineRenderer.SetPositions(poses1); Delta = Delta(LaunchPoint, TargetPoint); lineRenderer.enabled = true; tweener = Tweener2d.LinearTweener(LaunchPoint.Position, TargetPoint.Position, Velocity).GetEnumerator(); State = PlayerMissileState.Traveling; }
void Start() { int throttleTime = 150; var scoreGameObject = GameObject.Find("Score"); ScoreText = scoreGameObject.GetComponent <TextMeshProUGUI>(); BonusUI = BonusPoints.GetComponent <BonusPoints>(); Physics2D.IgnoreLayerCollision(8, 8, true); var x = EnemyLaunch.GetComponent <MeshCollider>(); var bounds = x.bounds; Func <TimeSpan, bool> lowerLimt = _ => MousePosition.ToWorldSpace().Position.y > ToLow; var left = LeftMissileBase.GetComponent <MissileBase>(); OnKey(left.Key).Throttle(throttleTime).Where(lowerLimt).Sink(left.Launch); var center = CenterMissileBase.GetComponent <MissileBase>(); OnKey(center.Key).Throttle(throttleTime).Where(lowerLimt).Sink(center.Launch); var right = RightMissileBase.GetComponent <MissileBase>(); OnKey(right.Key).Throttle(throttleTime).Where(lowerLimt).Sink(right.Launch); }