Objective
Objective
Objective 는 SigAchievement 에서 자체적으로 추적하는 수치가 아닌 내부 / 외부 플러그인에서 제공하는 papi 를 그대로 읽어옵니다.
PlaceholderAPI 기반으로 작동하기 때문에, native 구현이 필요 없으므로 자체 제작 플러그인 / 외부 플러그인을 따로 가리지 않습니다.
퍼포먼스를 위해 자동으로 값을 가져오지는 않으며, 해당 objective 가 요청될 때만 값을 가져옵니다.
objective:
activejob_fight_level: # id , 뭘로 해도 상관은 없지만, 보통 id 와 일치시키는 것이 좋은 방법입니다.
id: activejob_fight_level # locale id 와 반드시 일치해야 합니다.
papi: sigjob_activejob_fight_level # 실제로 어떤 papi 를 가져오는지를 설정합니다. Objective 를 등록한다면 , 실제 퀘스트에서 사용 될 때 어떤 방식으로 보여지는지를 설정해야 합니다. 해당 부분은 localization.yml 의 QUEST 항목 아래에 업데이트 해야 합니다.
QUEST:
ACTIVEJOB_FIGHT_LEVEL:
icon: CLOCK
name: '&f𠎃 &a&l전투 직업 레벨 &7&l올리기&r'
lore:
- '&e/직업&7을 통해 전투 직업 하나를 선택하고'
- '&7전투 직업 레벨을 올리세요.'
- ''
- '&f𠎕 &7전투 직업 레벨을 올려 더 강력한 몬스터와'
- ' &7보스를 상대할 수 있습니다.'
- ''Locale 이 존재하지 않는다면 로그에서 locale id missing 에러를 내므로 해당 부분을 확인하여 수정하면 됩니다.
Statistic Objective
statistic_objective 는 SigAchievement 에서 자체적으로 통계를 추적하는 종류입니다.
따로 설정되어 있지 않다면 통계는 일일(DAILY) , 주간(WEEKLY) , 평생(LIFE_TIME) 으로 자동 추적됩니다.
적용 가능한 statistic의 종류는 문서를 참고하세요.
Example
SigDrop 예제
life_miner.yml
SigCrafting 예제
oven.yml
Objective Placeholder
SigAchievement는 등록된 Objective에 대해 자동으로 Placeholder를 등록합니다. 그 규칙은 다음과 같습니다.
{id}는 statistic 종류의 id를 소문자로 만든 값을 말합니다. 단, 일부 종류는 id가 다릅니다.{timeType}은daily,weekly,life_time을 말합니다.
objective에 등록된 경우
objective에 등록된 경우이 경우 %sigachievement_{timeType}_{id}% 의 placeholder를 만듭니다.
예) %sigachievement_life_time_block_break%
statistic_objective 에 등록된 경우
statistic_objective 에 등록된 경우이 경우 %sigachievement_{timeType}_{id}_{subId}% 의 placeholder를 만듭니다.
예) %sigachievement_weekly_ore_break_emerald_ore%
Last updated