title: Unity Game Engine Tutorial?
body: <p>My game is a 2D RTS, and I was wondering if anyone knew of a good tutorial for Unity, or if someone well-versed in the syntax of it could tell me what I could have done wrong.</p>
  
  <p>So, I have my camera object, and my player object, both tagged. The player object just has a sprite on it, and is set to rigidbody. The script goes as follows:</p>
  
  <pre><code>using UnityEngine;
  using System.Collections;
  
  public class AIsciript : MonoBehaviour
  {
  private bool thisIsPlayer = true;
  private GameObject objPlayer;
  private GameObject objCamera;
  
  //input variables (variables used to process and handle input)
  private Vector3 inputRotation;
  private Vector3 inputMovement;
  
  //identity variables (variables specific to the game object)
  public float moveSpeed = 100f;
  
  // calculation variables (variables used for calculation)
  private Vector3 tempVector;
  private Vector3 tempVector2;
  
  // Use this for initialization
  void Start()
  {
      objPlayer = (GameObject)GameObject.FindWithTag("Player");
      objCamera = (GameObject)GameObject.FindWithTag("MainCamera");
      if (gameObject.tag == "Player")
      {
          thisIsPlayer = true;
      }
  }
  
  // Update is called once per frame
  void Update()
  {
      FindInput();
      ProcessMovement();
      if (thisIsPlayer == true)
      {
          HandleCamera();
      }
  }
  
  void FindInput()
  {
      if (thisIsPlayer == true)
      {
          FindPlayerInput();
      }
      else
      {
          FindAIInput();
      }
  }
  void FindPlayerInput()
  {
      //find vector to move
      inputMovement = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
  
      //find vector to the mouse
      tempVector2 = new Vector3(Screen.width * 0.5f, 0, Screen.height * 0.5f);
  
      // the position of the middle of the screen
      tempVector = Input.mousePosition;
  
      // find the position of the mouse on screen
      tempVector.z = tempVector.y;
  
      tempVector.y = 0;
      Debug.Log(tempVector);
      inputRotation = tempVector - tempVector2;
  }
  void FindAIInput()
  {
  
  }
  void ProcessMovement()
  {
      rigidbody.AddForce(inputMovement.normalized * moveSpeed * Time.deltaTime);
      objPlayer.transform.rotation = Quaternion.LookRotation(inputRotation);
      objPlayer.transform.eulerAngles = new Vector3(0, transform.eulerAngles.y + 180, 0);
      objPlayer.transform.position = new Vector3(transform.position.x, 0, transform.position.z);
  }
  void HandleCamera()
  {
      objCamera.transform.position = new Vector3(transform.position.x, 15, transform.position.z);
      objCamera.transform.eulerAngles = new Vector3(90, 0, 0);
  }
  }
  </code></pre>
  
  <p>I just figured I would post the code just in case, but I figure it's probably not the issue, as I tried to force it to move in <code>Start()</code> and nothing happened.</p>