void Awake() { character_movement = GetComponent <PlayerMoveAction>(); look_Position = transform.GetChild(0); player_movement = GetComponentInChildren <MovementSound>(); player_statistics = GetComponent <PlayerStatistics>(); }
public void Dispose() { MovementSound.dispose(); }
/// <summary> /// Actualizar el estado interno de la cámara en cada frame /// </summary> public void updateCamera() { if (!Enable) { return; } float elapsedTime = GuiController.Instance.ElapsedTime; TgcD3dInput input = GuiController.Instance.D3dInput; if (input.keyPressed(Key.L)) { LockMouse = !LockMouse; } if (!LockMouse) { return; } // posicion // bool moved = false; Vector3 movement = new Vector3(0.0f, 0.0f, 0.0f); if (input.keyDown(Key.W)) { movement += forward * (MovementSpeed * elapsedTime * ForwardFactor); moved = true; } if (input.keyDown(Key.A)) { movement += xAxis * (-MovementSpeed * elapsedTime); moved = true; } if (input.keyDown(Key.S)) { movement += forward * (-MovementSpeed * elapsedTime); moved = true; } if (input.keyDown(Key.D)) { movement += xAxis * (MovementSpeed * elapsedTime); moved = true; } if (moved) { move(movement); MovementSound.play(); } // rotacion // // invertidos: moverse en x cambia el heading (rotacion sobre y) y viceversa. float rotY = input.XposRelative * rotationSpeed; float rotX = input.YposRelative * rotationSpeed; if (rotY != 0.0f || rotX != 0.0f) { look(rotX, rotY); } if (lockMouse) { Cursor.Position = windowCenter; } }