void Update() { if (Input.GetKeyDown(KeyCode.Space) || Input.GetKeyDown(KeyCode.Mouse0)) { var bullet = Projectile.Instantiate(prefabs.laserBlast); float extra = worldParameters.CalcDeltaT(0.15f); bullet.Kickoff(m_ring_space_t + extra, lat_space_t); AudioSource.PlayClipAtPoint(laserClip, transform.position); } }
void MovementUpdate(float dt) { // # ring movement CalcOrientation(m_ring_space_t, m_lat_space_t, positive, worldParameters, out var actorPos, out var actorRotation); // TODO: spherecast transform.position = actorPos; transform.rotation = actorRotation; float speed = moverConfig.defaultSpeed; float spaceDelta = speed * dt; float parameterDelta_t = worldParameters.CalcDeltaT(spaceDelta); m_ring_space_t = Mathf.Repeat(m_ring_space_t + parameterDelta_t, 1f); // # Lateral deviation // float latSpaceDelta = inputX * dt * moverConfig.lateralSpeed; // float lat_space_deltaT = latSpaceDelta / worldParameters.halfWidth; // m_lat_space_t += lat_space_deltaT; // m_lat_space_t = Mathf.Clamp(m_lat_space_t, -1f, 1f); }