Farms!

Farms is een school project (Project K.I.L.M.E.R.). Ik was met dit project de enige developer in mijn groepje. (Gemaakt in jaar 1 periode 3). De game is geinspireerd door Overcooked waar je in een zo kort mogelijke tijd een order moet voltooien. Het doel is om samen met je partner zo snel mogelijk crops probeert te farmen. Je moet verschillende stappen doen voordat je crop succesvol kan groeien.

Project Info:

Teamleden: Linde M & Samantha E
Project tijd: Jaar 1 Periode 3 (Einde 11-05-2020)
Engine: Unity
Code Languages: C#


Farmland is ook belangrijk door, omdat het de game hier eigenlijk op gebouwd is op het farmen van crops de farmlands worden gebruikt voor verschillende. voor het aansturen van vogels & cropdata aanpassingen (zodat de crop groeit).

Het script van het farmland is niet groot het regelt dat de crop kan worden geplaats opgepakt en dat de tools gebruikt kunnen worden.


public void PlaceCropOnLand(GameObject Crop)
    {
        Crop.GetComponent().Play();
        Crop.GetComponent().sortingOrder = 2;
        Crop.transform.SetParent(transform);
        Crop.transform.localPosition = new Vector2(0, 0);
    }

Truck de truck is een mechanic die met heel veel andere mechanics samen werkt. Hij moet Cropdata krijgen, Order data & natuurlijk zijn eigen data, zodat hij weet wat hij moet doen.


        if (TruckStatus == TruckState.OutOfScreen)
        {
            Orders.EnterScreen();
            Ani.SetBool("ExitScreen", false);
            Ani.SetBool("ScreenEnter", true);
            TruckStatus = TruckState.OnScreen;
            Horn.Play();
        }
        else if (TruckStatus == TruckState.OnScreen)
        {
            if (transform.childCount >= FindObjectOfType().AantalNodig + 1)
            {
                TruckTimer += Time.deltaTime;
                if(TruckTimer >= 2.1f)
                {
                    Ani.SetBool("ScreenEnter", false);
                    Ani.SetBool("ExitScreen", true);
                    Orders.LeaveScreen();
                    TruckStatus = TruckState.Leaving;
                    TruckTimer = 0;
                }
            }
        }

Birds zijn die vervelende dingen die je crops aanvallen, dit had natuurlijk reden, zodat spelers continue moesten blijven opletten en soms een andere keuzen moesten maken.
Het systeem van de vogels werkt als volg: Hoe meer crops je in je farm land hebt zitten, hoe meer vogels er kunnen spawnen.


private void FixedUpdate()
    {
        if (Farm.transform.childCount == 1 && Flyback == false)
        {
            direction = farmCollider.bounds.center - transform.position;
            direction.Normalize();
        }
        else
        {
            direction = SpawnPosition - (Vector2)transform.position;
            direction.Normalize();
        }

        if (Farm.transform.childCount == 0 || Flyback == true)
        {
            if ((Vector2)transform.position == SpawnPosition)
            {
                Destroy(this.gameObject);
            }
        }
        RaycastHit2D hit = Physics2D.Raycast(transform.position, direction, MaxRange, TargetLayer);

        Movement = direction;
        MoveEnemy(Movement);
    }