솔져가 E스킬을 사용하면 해당 범위에 있는 아군 캐릭터의 Hp가 서서히 증가해야 합니다.
현재 Hp가 미동이 없습니다...
[ESkill.cs]
public class ESkill : MonoBehaviour
{
public UnitController unitController;
float time;
private void OnTriggerStay(Collider other)
{
if (other.gameObject.tag == "Unit")
{
if (unitController.currHp > unitController.maxHp)
return;
Debug.Log("heal");
time += Time.deltaTime * 20f;
unitController.currHp += time;
}
}
}
time을 사용하기 전에 Unit태그가 접촉하면,
Debug.Log("유닛 체력 +20")를 써서 프레임마다 호출이 되었는데
조건을 조금 추가하니까 저 "heal"도 한 번만 출력되고
체력은 조금도 변하질않습니다. 컴포넌트창에서 봐보니 time이 변하질않더라구요..
왜그럴까요??
'Unity > Unity FPS게임 프로젝트(오버워치라이크)' 카테고리의 다른 글
[Unity 게임프로젝트] FPS게임<오버워치> - 솔져 생체장 스킬 기능 완성 (0) | 2024.06.10 |
---|---|
[Unity 게임프로젝트] FPS게임<오버워치>(6) - 캐릭터 애니메이션 조정(미완성) (0) | 2024.05.29 |
[Untiy 게임프로젝트] FPS 게임<오버워치>(5) - 캐릭터 스킬 기능 (0) | 2024.05.23 |
[Unity 게임프로젝트] FPS 게임<오버워치>(4) - 적 봇 생성, 총 슈팅 기능, 재장전 모드 구현 (0) | 2024.05.22 |
[Unity 게임프로젝트] FPS 게임<오버워치>(3) - 캐릭터 점프, 앉기 기능 구현 (0) | 2024.05.15 |