Графа бензина Unity C#

есть код

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

[RequireComponent(typeof(Rigidbody2D))]
[RequireComponent(typeof(CapsuleCollider2D))]

public class CharacterController2D : MonoBehaviour
{
// Move player in 2D space
public float maxSpeed = 3.4f;
public float jumpHeight = 6.5f;
public float gravityScale = 1.5f;
public Camera mainCamera;
public float residueOil = 250f; //остаток бензина
public Slider slider;



bool facingRight = true;
float moveDirection = 0;
bool isGrounded = false;
Vector3 cameraPos;
Rigidbody2D r2d;
Collider2D mainCollider;
// Check every collider except Player and Ignore Raycast
LayerMask layerMask = ~(1 << 2 | 1 << 8);
Transform t;

// Use this for initialization
void Start()
{
    t = transform;
    r2d = GetComponent<Rigidbody2D>();
    mainCollider = GetComponent<Collider2D>();
    r2d.freezeRotation = true;
    r2d.collisionDetectionMode = CollisionDetectionMode2D.Continuous;
    r2d.gravityScale = gravityScale;
    facingRight = t.localScale.x > 0;
    gameObject.layer = 8;

    if(mainCamera)
        cameraPos = mainCamera.transform.position;

}

// Update is called once per frame
void Update()
{
    moveDirection = 1;
    
  
    
    
    

    // Change facing direction
    if (moveDirection != 0)
    {
        if (moveDirection > 0 && !facingRight)
        {
            facingRight = true;
            t.localScale = new Vector3(Mathf.Abs(t.localScale.x), t.localScale.y, transform.localScale.z);
            
        }
        
    }

    // Jumping
    if (Input.GetKey("space") && residueOil > 0f) //проверяем и нажатие и остаток бензина
{
    residueOil -= jumpHeight; // уменьшаем остаток бензина на величину подъема
    r2d.velocity = new Vector2(r2d.velocity.x, jumpHeight); //двигаемся вверх
    slider.value = residueOil;
}

    // Camera follow
    if(mainCamera)
        mainCamera.transform.position = new Vector3(t.position.x, cameraPos.y, cameraPos.z);
}

void FixedUpdate()
{
    Bounds colliderBounds = mainCollider.bounds;
    Vector3 groundCheckPos = colliderBounds.min + new Vector3(colliderBounds.size.x * 0.5f, 0.1f, 0);
    // Check if player is grounded
    isGrounded = Physics2D.OverlapCircle(groundCheckPos, 0.23f, layerMask);

    // Apply movement velocity
    r2d.velocity = new Vector2((moveDirection) * maxSpeed, r2d.velocity.y);

    // Simple debug
    Debug.DrawLine(groundCheckPos, groundCheckPos - new Vector3(0, 0.23f, 0), isGrounded ? Color.green : Color.red);
}
}

нужно сделать полоску бензина,делал по этому видео https://www.youtube.com/watch?v=ZC5nDcG7opw Вроде все сделал,однако даже законнектить к спрайту не могу,пишет какая то ошибка,в чем может быть проблема?


Ответы (0 шт):