@Rodrigez321

Пишу скрипт для противника в Unity, пытанся реализовать отталкивание врага при получении урона столкнулся с проблемой кто поможет?

На предпоследней строчке Unity пишет,что оператор "-" для операнда типа "Vector2" и "Vector3" является неоднозначным.
Что это значит и можете ли помочь решить данную проблему?

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

public class Ememy : MonoBehaviour
{
    [SerializeField]
    int lives;

    [SerializeField]
    float pushPower;

    private Rigidbody2D rb;


    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        
    }

    private void Awake()
    {
        rb = GetComponent<Rigidbody2D>();
    }

    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.gameObject.name == "AttackHitBox")
        {
            lives--;
            PushAway(transform.position, 50f);
        }
    }

    public void PushAway(Vector2 pushFrom, float pushPowe)
    {
        if (rb == null || pushPower == 0)
        {
            return;
          
        }
        var pushDirection = (pushFrom - transform.position).Normalize();
        rb.AddForce(pushDirection * pushPower);
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ответы на вопрос 1
ShockWave2048
@ShockWave2048
imposter
public void PushAway(Vector3 pushFrom, float pushPower)


не надо приводить ссылку к другому типу (Vector3 -> Vector2)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы