Search Unity

Need help Modifying UFO game project

Discussion in 'Scripting' started by MrGommiT, Nov 1, 2017.

  1. MrGommiT

    MrGommiT

    Joined:
    Nov 1, 2017
    Posts:
    1
    Hey I have a school project UFO game Modifying but it's kind hard.
    I am working about 1 week on it and have errors I am new at Unity and C#
    So if it's possible to have some help it would be cool
    Here what I need to do:

    I cant change the original code from the UFO game tutorial I need to modifying it

    I need a negative Pickup That lower my score when I collide with the PlayerController.
    For example NegativePick up -1

    I already have a "count" display at the top left of your scene that keeps track of how many of the original pickups the player has collected. I need to Add a "score" display at the top right that displays the player's current score, and edit your script so that this display gets updated.

    Currently, the game displays "You Win" as soon as all the pickups have been collected. I need to edits my script so that when all the pickups have been collected

    "You Win!" displays if the score is greater than 0.
    "Tie!" displays if the score is 0.
    "You Lose!" displays if the score is less than 0.

    I don't even know if I need to make the NegativePickUp on the same script of the positive One ..
    Or make on a different script separate..

    I have a problem on my script Player controller they say ..
    Assets/_Completed-Assets/Scripts/PlayerController.cs(77,4): error CS8025: Parsing error

    Here the script:


    using UnityEngine;

    using System.Collections;

    //Adding this allows us to access members of the UI namespace including Text.

    using UnityEngine.UI;

    public class PlayerController : MonoBehaviour


    {

    public float speed; //Floating point variable to store the player's movement speed.


    public Text countText; //Store a reference to the UI Text component which will display the number of pickups collected.


    public Text winText; //Store a reference to the UI Text component which will display the 'You win' message.


    private Rigidbody2D rb2d; //Store a reference to the Rigidbody2D component required to use 2D Physics.


    private int count; //Integer to store the number of pickups collected so far.


    // Use this for initialization


    void Start ()


    {

    //Get and store a reference to the Rigidbody2D component so that we can access it.


    rb2d = GetComponent<Rigidbody2D>();

    //Initialize count to zero.


    count = 0;

    //Initialze winText to a blank string since we haven't won yet at beginning.


    winText.text = "";

    //Call our SetCountText function which will update the text with the current value for count.


    SetCountText();

    }

    //FixedUpdate is called at a fixed interval and is independent of frame rate. Put physics code here.


    void FixedUpdate()


    {

    //Store the current horizontal input in the float moveHorizontal.


    float moveHorizontal = Input.GetAxis("Horizontal");

    //Store the current vertical input in the float moveVertical.


    float moveVertical = Input.GetAxis("Vertical");

    //Use the two store floats to create a new Vector2 variable movement.


    Vector2 movement = new Vector2(moveHorizontal, moveVertical);

    //Call the AddForce function of our Rigidbody2D rb2d supplying movement multiplied by speed to move our player.


    rb2d.AddForce(movement * speed);

    }

    //OnTriggerEnter2D is called whenever this object overlaps with a trigger collider.


    void OnTriggerEnter2D(Collider2D other)


    {

    //Check the provided Collider2D parameter other to see if it is tagged "PickUp", if it is...


    if (other.gameObject.CompareTag("PickUp"))

    //... then set the other object we just collided with to inactive.


    other.gameObject.SetActive(false);

    //Add one to the current value of our count variable.


    count = count + 1;

    //Update the currently displayed count by calling the SetCountText function.


    SetCountText();

    }

    //This function updates the text displaying the number of objects we've collected and displays our victory message if we've collected all of them.


    void SetCountText()


    {

    //Set the text property of our our countText object to "Count: " followed by the number stored in our count variable.


    countText.text = "Count: " + count.ToString();

    //Check if we've collected all 12 pickups. If we have...


    if (count >= 12)

    //... then set the text property of our winText object to "You win!"


    winText.text = "You win!";


    }

    I am blocking at this moment and really need help I tried tones of tutorials but not one works I restarted the project 6 times because of the errors..
    Sorry for my bad english
    Thanks
     
  2. methos5k

    methos5k

    Joined:
    Aug 3, 2015
    Posts:
    8,712
  3. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    Your PlayerController class doesn't appear to ever get closed with a "}" as it should, but it is hard to tell if that is the problem since the way you posted your code makes it almost impossible to read. Use code tags. As for all the stuff your assignment says for you to do, people aren't going to just do the assignment for you, and you haven't actually asked a question about it, so I have no idea what you are looking for help with there.

    So check for that class closing issue, and if you still have an error take a look at what your code editor says is the problem. If you're using VS you should have 1 or more lines of code with some red underlines pointing out what your problem is, and monodevelop does something similar as well. The Unity editor will also tell you a specific line number for your problem, so if you can't figure it out include that information here after you format your code so people can actually read it. Note that the forum may display line numbers differently than in your actual source file, so point out the line number as it is displayed in the forum.

    Good luck!
     
    Last edited: Nov 1, 2017