갑자기 끌려서 미연시 만들겠다고
렌파이 만지기 시작한지 딱 사흘 지남
if 문으로 싹다 구현하기엔 한계가 생겨서 이벤트도 구현하는 과정에서
개같이 막혀버렸는데
코딩 문외한이라 말하는 것부터 답답할 수도 있지만 도움! 한 번 외쳐봄
1. 참고한 자료
https://askance.tistory.com/44
https://askance.tistory.com/45
일단 위에 티스토리글 참고함.
2. 본격적 문재
일단 소스코드부터 적고 시작함.
label start:
$ evec = "start"
call events_run_period
d "그럼, 이야기를 시작하겠습니다."
if lost > 0 and fond == 3:
d "이벤트 테스트 2차 성공."
jump start_2
label test:
$ lost = max(lust - 7, 0 )
$ fond += 3
"이벤트 테스트 1차 성공."
return
label start_2:
$ evec = "start_2"
"3차 이벤트 테스트."
call events_run_period
jump start_3
label test_2:
"3차 이벤트 테스트 성공."
return
label start_3:
"3차 이벤트 테스트 실패."
//
init:
$ event("test", "evec == 'start'", event.only(), priority=200)
$ event("test_2", "evec == 'start_2'", "lost > 2", event.once(), priority=300)
init python:
event('test', 'evec == "start"')
event('test_2', 'evec == "start_2"')
중간에 // 기준으로 위쪽이 메인 스크립트, 아래쪽이 이벤트 스크립트임.
evec은 레이블 변수고 lost와 fond가 발동 조건에 관여하는 변수임.
lost 기본값은 20이고 fond 기본값이 0이어서
label start_2 전까진 큰 오류 없이 무사히 작동됨.
문제는 그 이후인데
조건상 lost가 2 이상이기 때문에 test_2 이벤트가 발동되는 건 확인함.
문제는 test_2 이벤트가 두 번 발동됨.
게다가 lost 값을 낮추고 계산식 좀 건드려서 발동 조건을 못 충족하게 하면
lost 조건을 무시하고 test_2 이벤트를 진행한 후에 start_3로 진행함
진짜 미치겠는데 이유 아는 사람 있음?