Format Text에 {0}이라고 작성하면 아래에 0이 생기는 것을 확인할 수 있다
해석
- Format Text 노드는 텍스트를 동적으로 조합할 때 사용된다.
{0}
과 같은 플레이스홀더(Placeholder)를 사용하면, 값을 넣을 수 있는 입력 핀이 생성된다.
- 예:
{0}
은 첫 번째 입력값, {1}
은 두 번째 입력값.
0에다가 Ammo(int값)을 연결하면 그 값이 들어간다
해석
- 플레이스홀더
{0}
에 Ammo 변수(정수형 값)를 연결하면, 해당 변수의 값이 텍스트에 삽입된다.
- 예:
Ammo
값이 30
일 경우 → 텍스트 출력: "30"
.
Get - FormatText - PrintText 구조로 연결하고 실행시켰을 때 Fire Ammo 30 이라고 출력되는 것을 확인
해석
- 노드 구성:
- Get 노드:
Ammo
값을 가져옴.
- Format Text 노드: 텍스트 템플릿(예:
"Fire Ammo: {0}"
)에 Ammo
값을 삽입.
- Print Text 노드: 텍스트를 화면에 출력.
- 출력 결과:
"Fire Ammo: 30"
.
get으로 ammo의 값을 가져와서 -1을 해주고 그 값을 set에 보내고 이 값을 count에 넣는다
해석
- 과정 설명:
- Get 노드로
Ammo
값을 가져옴.
- 값을
-1
감소.
- 감소된 값을 Set 노드를 통해
Ammo
변수에 저장.
- 업데이트된
Ammo
값을 Format Text 노드에 전달하여 출력.
이 count는 format text에서 print text로 출력된다
해석
- 감소된
Ammo
값이 Format Text 노드에 연결되고, 이를 Print Text 노드가 화면에 출력한다.
실행하면 줄어들고 있는 숫자를 확인할 수 있다. 하지만 음수까지 출력되고 있는 것이 문제이다 → 예외 체크를 해야한다
해석
- 문제점:
Ammo
값이 0보다 작아질 수 있어, 음수값이 출력된다.
- 해결 방법:
- 예외 처리를 추가하여
Ammo
가 0보다 작을 때 더 이상 감소하지 않도록 한다.
Ammo가 0보다 크다면(True)라면 이라는 것을 브랜치를 활용하여 만들어준다
해석
- Branch 노드를 사용해 조건(
Ammo > 0
)에 따라 실행 흐름을 분기:
- 조건이 True:
Ammo
를 감소시키고 출력.
- 조건이 False:
"No Ammo"
메시지 출력.
--의 기능이 블루프린트에도 존재한다
해석
- 블루프린트에서 증감 연산자(
--
)를 사용하여 값을 직접 감소시킬 수 있다.
- -- 노드: 입력값을 감소시키고, 결과를 반환.
그래서 이런 방식으로도 사용이 가능하다
해석
- 증감 연산자 노드를 활용하면 Set 노드 없이도 값을 간단히 감소시킬 수 있다.
R을 눌러서 재장전하는 블루프린트이다
해석
- R 키 입력 이벤트를 처리하여 총알 재장전을 구현.
변수는 3개를 만들었다
해석
- 재장전 기능에 필요한 변수 3가지:
- currentbullet: 현재 장전된 총알 수.
- totalbullet: 소지 중인 총알 수.
- reloadbullet: 한 번에 장전 가능한 최대 총알 수.
마우스를 좌클릭하여 총을 쏘는 부분
해석
- 좌클릭 이벤트: 총을 발사하는 기능.
- 조건:
currentbullet > 0
.
- 실행: 총알 발사 시
currentbullet
값을 -1
감소.
- 출력:
currentbullet
값 출력.
R 키를 눌렀을 때 실행되는 부분
해석
- R 키 이벤트: 재장전 기능.
- 조건:
totalbullet > 0
.
- 실행: 부족한 총알 수를
reloadbullet
로 계산하여 currentbullet
을 갱신.
- 출력: 재장전 후
currentbullet
값 출력.
🌱 총알 재장전하기
재장전 과정 설명
-
조건 확인:
- currentbullet이 최대값이 아니고, totalbullet이 부족하지 않은 경우 재장전 가능.
-
재장전 계산:
- 필요한 총알 수:
reloadbullet - currentbullet
.
totalbullet
에서 부족한 총알만큼 차감.
-
값 갱신 및 출력:
currentbullet
에 필요한 총알을 추가하여 갱신.
- 남은
totalbullet
출력.
🌱 총알 유무 판단하기
좌클릭 시 총알 부족 처리
- Branch 노드:
- 조건:
currentbullet > 0
.
- True: 총알 발사.
- False:
"Reload Required"
출력.
💡 1씩 증가하거나 빼주는 노드
해석
- 증감 연산 노드: 값을 1씩 증가/감소시키는 블루프린트 노드.
- ++ 노드: 값을 1 증가.
- -- 노드: 값을 1 감소.
- 사용 시 별도의 Set 노드 없이 값을 갱신 가능.
예제

