728x90
반응형
fDown = Input.GetButton("Fire1");
공격을 클릭시가 아니라 클릭을 유지하면 계속 반복하도록 변경합니다.
public int maxAmmo; //전체 탄약
public int curAmmo; //현재 탄약
재장전을 위해 변수를 선언합니다.
재장전 키를 추가합니다.
재장전 애니메이션과 트리거를 설정합니다.
bool rDown; //재장전
bool isReload; //재장전 플래그변수
fDown = Input.GetButtonDown("Reload");
void Reload()
{
if (equipWeapon == null)
return;
if (equipWeapon.type == Weapon.Type.Melee)
return;
if (ammo == 0)
return;
if(rDown && !isJump && !isDodge && !isSwap && !isFireReady)
{
anim.SetTrigger("doReload");
isReload = true;
Invoke("ReloadOut", 3f);
}
}
void ReloadOut()
{
int reAmmo = ammo < equipWeapon.maxAmmo ? ammo : equipWeapon.maxAmmo;
equipWeapon.curAmmo = reAmmo;
ammo -= reAmmo;
isReload = false;
}
원거리 공격시 탄환을 소모하고 추가로 재장전에 대한 스크립트를 작성합니다.
728x90
반응형
'유니티 > AA(3D 쿼터뷰 액션 게임)' 카테고리의 다른 글
AA(19) - 벽 뚫기 방지 (0) | 2021.09.17 |
---|---|
AA(18) - 공격 방향 설정 (1) | 2021.09.17 |
AA(16) - 원거리무기 공격 구현 (0) | 2021.09.17 |
AA(15) - 근접무기 공격 구현 (0) | 2021.09.15 |
AA(14) - 폭탄아이템 횟수 표시&회전 (0) | 2021.09.15 |