Unity Mouse_Input (C#)
This is a basic mouse input class to be customized for a particular game’s needs and loaded depending on device. Note that unlike the Keyboard_Input class, this requires tweaking the Input Manager in the project settings since the default are not fully compatible with this (in my opinion) more optimized script.
Mouse_Input.cs
using UnityEngine; using System.Collections; public class Mouse_Input : BaseInputController {    private Vector2 prevMousePos;    private Vector2 mouseDelta;       private float speedX = 0.05f;    private float speedY = 0.1f;       public void Start () {       prevMousePos= Input.mousePosition;    }       public override void CheckInput () {       // get input data from vertical and horizontal axis and store them internally in vert and horz so we don't       // have to access them every time we need to relay input data out             // calculate a percentage amount to use per pixel       float scalerX = 100f / Screen.width;       float scalerY = 100f / Screen.height;             // calculate and use deltas       float mouseDeltaY = Input.mousePosition.y - prevMousePos.y;       float mouseDeltaX = Input.mousePosition.x - prevMousePos.x;             // scale based on screen size       vert += ( mouseDeltaY * speedY ) * scalerY;       horz += ( mouseDeltaX * speedX ) * scalerX;             // store this mouse position for the next time we're here       prevMousePos= Input.mousePosition;             // set up some boolean values for up, down, left and right       Up   = ( vert>0 );       Down   = ( vert<0 );       Left   = ( horz<0 );       Right   = ( horz>0 );               // get fire / action buttons       Fire1= Input.GetButton( "Fire1" );    }       public void LateUpdate() {       // check inputs each LateUpdate() ready for the next tick       CheckInput();    } }
Next Up: MusicManager.cs
Many games have background music. The Music Manager is a singleton in charge of making sure music loads and is played when needed.