올커니하면서
2013-02-12 21:42
조회: 52,607
추천: 40
WeakAuras 소개 - #2 기술정보예제를 올릴 예정이었으나 이것저것 해보는 것만으로는 습득할 수 없는 정보에 대한 체계적 텍스트가 필요하다고 생각하여 일단 WA의 기능을 설명한 문서를 일부 소개합니다. 이하의 내용은 WA 개발 페이지에 수록된 애드온 설명 문서 중 일부를 번역한 것이며 아래 링크에서 총 12개의 문건을 확인하실 수 있습니다. '13.02.13 : 링크 오류 수정, Dynamic Information 항목 중 duration info 내용 추가 Display Types Normal Display Types - 일반 디스플레이 유형 실제 정보를 담고 있으며 화면에 표시되는 유형을 칭합니다. ------------------------------------------------------------------------------------------------------ Texture - 텍스쳐 텍스쳐 유형은 가장 단순한 종류의 디스플레이입니다. 색상, 모양, 각도 등을 조절할 수 있는 맞춤형 그래픽을 표시합니다. 텍스쳐 유형은 스케일링과 회전 애니메이션을 사용할 수 있습니다. 디스플레이 옵션:
------------------------------------------------------------------------------------------------------ Progress Texture - 진행 텍스쳐 진행 텍스쳐는 더 발전된 형태의 텍스쳐 유형입니다. 두 개의 텍스쳐(보통 같은 모양이며 하나를 회색조로 처리합니다)를 전경과 배경으로 조합해서 해당 표시기의 트리거 진행을 표시합니다(예를 들어 해당 오라의 지속 시간 등). 진행 텍스쳐는 스케일 애니메이션만 지원하며 회전 애니메이션은 사용할 수 없습니다. 디스플레이 옵션:
------------------------------------------------------------------------------------------------------ Progress Bar - 진행 바 진행 바 타입은 다른 애드온의 바 형태와 유사합니다. 이 타입은 최상의 정보를 제공할 수 있도록 바 텍스쳐, 이름, 타이머, 아이콘을 표시합니다. 진행 바는 스케일 애니메이션을 지원하지만 회전 효과는 사용할 수 없습니다. 디스플레이 옵션:
------------------------------------------------------------------------------------------------------ Icon - 아이콘 아이콘 타입은 주문 아이콘을 표시합니다. 회전형 쿨다운 표시 기능도 사용 가능합니다. 아이콘 타입은 스케일 애니메이션을 지원하지만 회전 효과는 지원하지 않습니다. 디스플레이 옵션:
참고: 중첩 정보가 설정되지 않는 트리거 유형을 사용하면 표시기의 중첩 횟수 표시 기능이 숨겨집니다. ------------------------------------------------------------------------------------------------------ Text - 텍스트 텍스트 유형은 가장 단순한 종류의 디스플레이입니다. 설정된 텍스트 메시지를 표시합니다. 텍스트는 스케일이나 회전 효과를 지원하지 않습니다. 디스플레이 옵션:
------------------------------------------------------------------------------------------------------ Timer - 타이머 타이머 유형은 트리거의 지속 시간을 표시합니다. 일부 트리거는 지속 시간 정보를 전달하지 않는데, 이 경우 타이머는 "Inf - 무한대" 값을 갖습니다. 자세한 정보는 Dynamic Information 항목을 참고하세요. 디스플레이 옵션:
-- 현재 버전에는 존재하지 않는 유형입니다. ------------------------------------------------------------------------------------------------------ Group Display Types - 그룹 디스플레이 유형 일반 디스플레이 유형과 달리, 그룹 디스플레이 유형은 어떤 정보를 전달하지 않으며 보이지도 않습니다. 이 유형은 다른 표시기들을 조직화하는 역할을 합니다. 일반 디스플레이들을 그룹에 넣으면 각각의 설정을 동시에 설정할 수 있습니다. 그룹은 또한 칠드런들의 위치를 그룹화할 수 있습니다. 위치를 조직화하는 방식은 그룹의 유형에 따라 달라집니다. 이 장에서 '그룹'과 '유동적 그룹'을 통틀어 표현할 때는 그룹이라고 표현하고 '그룹'이라고 쓰면 그룹 유형을 특정지어 지칭합니다. ------------------------------------------------------------------------------------------------------ Group - '그룹' 일반 '그룹' 유형에 포함된 칠드런 개체들은 위치를 자유롭게 설정할 수 있습니다. '그룹'은 칠드런 개체의 위치가 설정되는 단일 앵커 포인트를 갖습니다. 따라서 '그룹'을 이동시키면 포함된 모든 칠드런 개체의 상대적 위치가 유지된채로 함께 이동합니다. '그룹'의 디스플레이 옵션은 다른 디스플레이 유형의 디스플레이 옵션과 달리 메모리에 저장되지 않습니다. 대신 이 옵션은 단순히 '그룹'내의 칠드런 개체들의 위치를 설정하고 각각의 설정을 읽어옵니다. 따라서 '그룹'의 디스플레이 옵션 중 하나를 설정한 것이 다른 옵션을 설정하거나 칠드런 개체의 위치를 조정하는 행동에 의해 변경될 수 있습니다. 디스플레이 옵션:
------------------------------------------------------------------------------------------------------ Dynamic Group - 유동적 그룹 유동적 그룹 타입은 일반적 '그룹' 타입과 달리 그에 속한 칠드런 개체의 위치를 명확히 설정하고, 어떤 칠드런 개체가 표시되고있는지에 따라서 위치를 유동적으로 변경합니다. 칠드런 개체들은 지정된 순서(설정 사이드바에서 지정됩니다)대로 나타나지만 숨겨진 개체들은 "닫혀져서" 자기 위치에 공간을 차지하지 않습니다. 디스플레이 옵션:
------------------------------------------------------------------------------------------------------ Default Position Options 디스플레이 유형들은 모두 개략적으로 유사한 위치 옵션을 사용합니다. WeakAuras 설정창에서 옵션을 켜면 표시기 주변에 나타나는 위치 조절창을 이용해서도 거의 다 설정할 수 있지만, 디스플레이 탭(그룹일 때는 그룹 탭)에서 설정하면 더 세밀하게 설정할 수 있습니다. Default Position Options:
Trigger Types Trigger Types - 트리거 유형 트리거 유형은 4가지가 있습니다: 오라, 상태, 개인추가 조건Custom Triggers. 앞의 세 가지는 여기에서 다루며 마지막 항목은 Custom Triggers를 확인하세요. 트리거 유형은 디스플레이 유형과 별도의 개념으로, 어떤 디스플레이 타입(그룹이 아닌 것)에든 아무 트리거나 사용할 수 있습니다. 트리거는 디스플레이에 4채널로 연동된 정보를 전달합니다: 지속시간 정보, 아이콘 정보, 이름 정보, 중첩 정보. 자세한 내용은 Dynamic Information을 참고하세요. 진행 바만이 4가지 유형의 정보를 모두 표시하는 디스플레이 유형이며 다른 유형은 일부만 나타내거나 전혀 나타내지 않습니다. 마찬가지로 일부 트리거는 4가지 모두를 제공하지 않으며 어떤 것은 전혀 제공하지 않기도 하고, 또 어떤 것은 상황에 따라 다른 유형의 정보를 제공합니다. 각각의 트리거가 제공하는 정보의 유형을 트리거 옵션, 동작방식과 함께 이 페이지에 설명할 것입니다. ------------------------------------------------------------------------------------------------------ Aura - 오라 오라는 WeakAuras에서 가장 흔히 사용되는 트리거입니다. 버프 / 디버프라고도 표현합니다. 오라는 지속시간 정보, 아이콘 정보, 이름 정보, 중첩 정보를 제공합니다. 단, 반대로 옵션을 켜면 오라 트리거는 이 정보를 전혀 제공하지 않습니다. 또한, 유닛 옵션에서 "그룹"을 선택하면 이 트리거는 지속시간 정보와 중첩 정보는 제공하지만 아이콘과 이름 정보는 제공하지 않습니다. 트리거 옵션:
------------------------------------------------------------------------------------------------------ Status - 상태 상태 트리거는 늘 체크할 수 있는 플레이어나 주변 환경의 상태 정보에 따라 동작합니다. Action Usable - 사용 가능 사용 가능 트리거는 특정 주문이 사용 가능한지 검사합니다. 이 방식은 행동 단축바에 표시되는 것과 같습니다. 행동 단축바의 주문이 회색이거나(발동 조건이 아니거나 마나/분노 등이 부족할 때) 재사용 대기중이라면 트리거는 활성화되지 않습니다. 사용 가능 트리거는 지속시간 정보, 아이콘 정보, 이름 정보를 생성하며 중첩 정보는 생성하지 않습니다. 트리거 옵션:
Combo Points - 연계 점수 연계 점수 트리거는 플레이어가 현재 대상에 몇 개의 연계 점수를 가지고 있는지 검사합니다. 연계 점수 트리거는 지속시간 정보만 생성하며 아이콘, 이름, 중첩 정보는 생성하지 않습니다. 트리거 옵션:
Cooldown Progress (Spell) - 쿨다운 진행상황 (주문) 쿨다운 진행상황 (주문) 트리거는 특정 주문의 쿨다운 진행을 추적합니다. 쿨다운 진행상황 (주문) 트리거는 지속시간, 아이콘, 이름 정보를 생성하며 중첩 정보는 제공하지 않습니다. 반대로 옵션을 켜면 지속시간은 최대치로 고정됩니다. 트리거 옵션:
Cooldown Progress (Item) - 쿨다운 진행상황 (아이템) 쿨다운 진행상황 (아이템) 트리거는 아이템의 재사용 대기시간 진행을 추적합니다. 쿨다운 진행상황 (아이템) 트리거는 지속시간 정보, 아이콘 정보, 이름 정보를 생성하며 중첩 정보는 제공하지 않습니다. 반대로 옵션을 켜면 지속시간은 최대치로 고정됩니다. 트리거 옵션:
Death Knight Rune - 죽음의 기사 룬 죽음의 기사 룬 트리거는 죽음의 기사 룬 하나를 추적합니다. 어떤 룬을 추적할지 지정할 수 있습니다. 당연히 6개의 표시기를 사용해서 모든 룬을 추적할 수 있습니다. 죽음의 기사 룬 트리거는 지속시간 정보, 아이콘 정보, 이름 정보를 생성하며 중첩 정보는 생성하지 않습니다. 트리거 옵션:
Health - 체력 생명력 트리거는 특정 유닛(플레이어가 아니어도 됩니다)의 생명력을 추적합니다. 생명력 트리거는 지속시간 정보를 제공하며 아이콘, 이름, 중첩 정보는 생성하지 않습니다. 트리거 옵션:
Holy Power - 신성한 힘 신성한 힘 트리거는 특정 유닛(플레이어가 아니어도 됩니다)이 보유한 신성한 힘 개수를 추적합니다. 성기사가 아닌 유닛에 대해서는 0개가 됩니다. 신성한 힘 트리거는 지속시간 정보만 생성하며 아이콘, 이름과 중첩 정보는 생성되지 않습니다. 트리거 옵션:
Item Count - 아이템 개수 아이템 개수 트리거는 플레이어가 특정한 아이템을 몇 개나 가지고 있는지 추적합니다. 아이템 개수 트리거는 지속시간 정보, 아이콘 정보, 이름 정보를 생성하며 중첩 정보는 생성치 아니합니다. 지속시간 정보를 생성하는 대부분 트리거들과 달리 아이템 개수 트리거는 "남은 시간" 값만 생성하며 "최대 시간" 값을 생성하지 않기 때문에 텍스트는 숫자를 표시하지만(소지한 아이템의 개수), 시각적인 표시기는 항상 최대 지속시간을 표시합니다. 디스플레이 옵션:
Item Equipped - 아이템 착용됨 아이템 착용됨 트리거는 플레이어가 지정된 아이템을 착용했는지 여부를 추적합니다. 아이템 착용됨 트리거는 dynamic information을 생성하지 않습니다. 트리거 옵션:
Power - 파워(마력) 마력 트리거는 유닛(플레이어가 아니어도 됩니다)의 마력을 추적합니다. 마나, 분노, 집중, 기력, 만족도, 룬 마력 등이 해당됩니다. 마력 트리거는 모든 종류의 마력을 다 추적하거나 특정한 종류를 지정하여 추적할 수 있습니다. 트리거 옵션:
Shards - 조각 조각 트리거는 특정 유닛(플레이어가 아니어도 됩니다)이 가진 영혼의 조각 갯수를 추적합니다. 흑마법사가 아닌 유닛의 경우 0개가 됩니다. 조각 트리거는 지속시간 정보를 생성하며 아이콘, 이름, 중첩 정보는 생성하지 않습니다. 트리거 옵션:
Stance/Form/Aura - 태세/폼/오라 태세/폼/오라 트리거는 플레이어의 형상 변환 상태를 추적합니다. 여러 직업들이 형상을 변경할 수 있으며 직업에 따라 서로 다르게 부릅니다(예: 전사는 "태세", 죽음의 기사는 "형상"). 죽음의 기사, 드루이드, 성기사, 사제, 도적, 주술사, 흑마법사, 전사는 모두 서로 다른 형상 상태를 가집니다. 성기사 오라는 형상으로 간주되지만 사냥꾼의 상은 그렇지 않습니다. 태세/폼/오라 트리거는 아이콘과 이름 정보를 생성하며 지속시간과 중첩 정보는 생성하지 않습니다. 트리거 옵션:
Threat Situation - Threat Situation위협 상태 Threat Situation 트리거는 플레이어가 어느 정도 어그로를 획득했는지 개략적으로 추적합니다. Threat Situation 트리거는 dynamic information을 생성하지 않습니다. 트리거 옵션:
Totem - 토템 토템 트리거는 네 개 토템(불, 물, 대지, 바람) 중 하나의 지속 상황을 추적합니다. 당연히 4개의 디스플레이를 사용해서 주술사의 모든 토템을 추적할 수 있습니다. 토템 트리거는 지속시간 정보, 아이콘 정보, 이름 정보를 생성하며 중첩 정보는 생성하지 않습니다. 트리거 옵션:
------------------------------------------------------------------------------------------------------ Event - 이벤트 이벤트 트리거는 일회성 이벤트에 기초하며, 일반적으로 지정된 시간동안만 활성화됩니다. Chat Message - 채팅 메세지 채팅 메시지 트리거는 플레이어가 채팅 메시지를 받을 때마다 검사합니다. 채팅 메시지 트리거는 "Timed" 숨김 설정을 지정하면 지속시간 정보를 생성하며 이외의 경우 dynamic info를 생성하지 않습니다. 트리거 옵션:
Combat Log - 전투메시지 기록 전투메시지 기록 트리거는 프리셋 트리거 중 가장 복잡한 유형입니다. 이 트리거는 전투메시지를 검색해서 지정된 전투메시지 이벤트를 찾습니다. 전투메시지 기록 트리거는 다양한 인수와 의미를 갖기 때문에 이 부분은 모두 설명하지는 않겠습니다. 대신 Wowpedia's overview on combat log messages 문건을 참조하세요. 어떤 유형은 WeakAuras로 추적할 수 없지만 대부분은 가능합니다. 또한 와우 내에서 '/전투기록' 명령어로 /Logs/WoWCombatLog.txt에 저장된 전투 기록을 확인해서 WeakAuras로 추적하고싶은 전투메시지 기록의 인수형을 찾아볼 수도 있습니다. 쿨다운 준비됨 (아이템) 쿨다운 준비됨 (아이템) 트리거는 아이템의 재사용 대기시간이 종료될 때(사용 가능해질 때) 체크됩니다. 쿨다운 준비됨 (아이템) 트리거의 특징은 화면에 잠시만 표시된다는 것입니다. 특정 아이템이 대사용 대기중이 아닐 때 표시하고 싶다면 "상태" 분류 아래의 쿨다운 진행상황 (아이템) 트리거를 "반대로" 조건으로 사용하세요. 쿨다운 준비됨 (아이템) 트리거는 지속시간 정보, 아이콘 정보, 이름 정보를 생성합니다. 트리거 옵션:
쿨다운 준비됨 (주문) 쿨다운 준비됨 (주문) 트리거는 주문의 재사용 대기시간이 종료될 때(사용 가능해질 때) 체크됩니다. 쿨다운 준비됨 (주문) 트리거의 특징은 화면에 잠시만 표시된다는 것입니다. 특정 주문이 대사용 대기중이 아닐 때 표시하고 싶다면 "상태" 분류 아래의 쿨다운 진행상황 (주문) 트리거를 "반대로" 조건으로 사용하세요. 쿨다운 준비됨 (주문) 트리거는 지속시간 정보, 아이콘 정보, 이름 정보를 생성합니다. 트리거 옵션:
------------------------------------------------------------------------------------------------------ Custom Triggers - 커스텀 조건 커스텀 트리거는 Lua를 사용할 줄 아는 유저를 위한 트리거입니다. 자세한 정보는 Custom Triggers 문건을 확인하세요. ------------------------------------------------------------------------------------------------------ Conditions -- 현재 버전에서 이 항목의 요소들은 불러오기 탭으로 이동하거나 제거되었습니다. All triggers have a section at the bottom labeled "Conditions". These are six conditions that are too long-lasting to be treated as triggers, but too temporary to be treated as load conditions. Each can be left un-enabled, enabled as "positive" (green), or enabled as "negative" (red). If a condition is enabled as "positive", the display will only be visible if the condition is met. If the condition is enabled as "negative", the display will only be visible if the condition is not met. Condition Options:
------------------------------------------------------------------------------------------------------ Multiple Triggers - 다중 조건 각각의 표시기는 적어도 하나의 트리거가 지정되어야하는데, 하나의 디스플레이에 둘 이상의 트리거를 설정할 수도 있습니다. 표시기가 나타나려면 모든 트리거가 충족되어야합니다. 다중 트리거 중 하나 이상을 만족할 때 표시하고싶으면 똑같은 디스플레이 설정으로 표시기를 여러개 만들면 됩니다. -- 현재 버전에서는 트리거를 추가한 뒤에 "모든 조건" 혹은 "아무 조건" 옵션을 통해 and / or 구성을 할 수 있습니다. 다중 트리거를 사용하려면 "조건 추가" 버튼을 누르면 됩니다. WeakAuras는 표시기당 10개의 트리거를 지원합니다. "조건 추가" 버튼 옆의 드랍다운 메뉴에서 어떤 트리거를 설정할지 선택할 수 있습니다. Main Trigger - 조건 1 - 외의 트리거는 "조건 삭제" 버튼으로 삭제할 수 있습니다. Triggers and Untriggers Triggers and Untriggers - 트리거와 Untrigger WeakAuras의 일부 상태 트리거(와 대부분의 커스텀 트리거)는 "자동"과 "개인추가Custom"중에 선택할 수 있는 숨김 옵션을 포함합니다. "자동"을 선택하면 지정된 조건이 충족되지 않을 때 자동으로 비활성화됩니다. 반면에, "개인추가Custom"을 선택하면 해당 트리거에 두 번째 조건을 지정하여 언제 해당 디스플레이가 숨김 상태가 될지 지정할 수 있습니다. 이것을 "untrigger"라고 부릅니다. 여러분이 생각하실 것과는 좀 다르게 동작하기 때문에 동작 방식을 간략히 설명하겠습니다. Untrigger에 대해 알아야할 가장 중요한 점은 트리거를 검사해서 false 값을 얻지 않으면 untrigger는 아예 검사하지 않는다는 것입니다. 디스플레이가 활성화되는 조건의 하위집합 조건으로 untrigger를 설정해서는 안된다는 뜻입니다. 예를 들어 대상의 생명력이 66% 아래로 내려가면 표시되고 33% 아래로 내려가면 숨겨지는 체력 트리거를 만든다고 하겠습니다. 트리거에 "< 66%"를 넣고 untrigger를 활성화한 뒤 "< 33%"를 넣었습니다. 이 untrigger는 작동하지 않습니다. 이 기능을 제대로 구현하는 방법은 두 개의 트리거를 만들어서 한 개는 "< 66%"로, 다른 한 개는 "> 33%"로 설정하는 것입니다. 트리거 조건의 하위 집합을 지정할 수 없다면 untrigger가 왜 필요할까요? Untrigger는 트리거가 "grey area중립 영역" -디스플레이 표시 여부가 그 디스플레이의 이전 표시 여부로만 결정되는 상태- 을 갖는 조건으로 구성할 수 있게 하기 위한 장치입니다. 예를 들어 체력 트리거를 "< 35%"로, untrigger를 "> 50%"로 설정했다고 하겠습니다. 이 표시기는 플레이어의 생명력이 35% 아래로 내려가면 표시되지만 35%에서 45%까지 회복되더라도 사라지지는 않고 50% 위로 회복되어야 사라집니다. 이 경우 35%~50% 구간은 "grey area"가 됩니다. 플레이어의 생명력이 45%라는 것 만으로는 표시기가 표시될지 숨겨질지를 알 수 없습니다. 45%가 되기 직전에 생명력이 35% 아래였다면 표시기는 나타나있을 것이고 45%가 되기 직전에 50% 위였다면 표시기는 보이지 않을 것입니다. 커스텀 트리거의 경우에 트리거 - untrigger 패러다임이 특히 중요한데 이를 활용해서 많은 이벤트를 무시할 수 있기 때문입니다. 예를 들어, 플레이어가 주문을 시전 시작할 때 활성화되고 시전 종료시 비활성화되는 트리거를 만든다고 하겠습니다. 이 경우 커스텀 트리거에 COMBAT_LOG_EVENT_UNFILTERED 이벤트를 등록해야합니다. 여기에는 SPELL_CAST_START와 SPELL_CAST_SUCCESS 외에도 수많은 이벤트가 포함됩니다. 트리거와 untrigger를 구분하면 커스텀 트리거가 SPELL_CAST_START가 감지될 때 활성화되고 SPELL_CAST_SUCCESS가 감지될 때 비활성화되게 만들어 다른 타입의 메시지를 무시할 수 있습니다. 이 시스템은 "상태" 유형의 커스텀 트리거에서는 비효율적일 때도 있는데, 이런 유형에서는 정확히 트리거가 false일 때 untrigger가 true가 되는 경우가 많은데도 따로 구성해야 하기 때문입니다. 하지만 대체로 트리거 - untrigger 분리 방식은 grey area를 구현할 수 있기 때문에 더 유연하게 사용할 수 있습니다. Custom Triggers Custom Triggers - 개인추가 조건 커스텀 트리거는 Lua를 활용할 수 있는 유저를 위한 고급 기능입니다. 따라서, 이하의 내용은 여러분이 Lua와, 관련된 프로그래밍 개념을 이해한다고 가정하고 작성하였습니다. Lua에 대한 상세한 정보는 Programming In Lua를 참고하세요. ------------------------------------------------------------------------------------------------------ 커스텀 트리거는 사용자가 임의의 Lua 코드를 사용해서 WeakAuras 디스플레이를 트리거하기위한 도구입니다. "상태"와 "이벤트" 두 종류의 커스텀 트리거가 있습니다. Status - 상태 상태 유형의 커스텀 트리거 기능은 항상 결정될 수 있는 값을 체크한다는 가정하에 구현되었습니다. 상태 유형의 커스텀 트리거는 특정한 이벤트가 발생할 때 체크하거나 그냥 매 프레임마다 체크할 수도 있습니다. 어떤 방식이든 상태 유형은 이벤트 유형과 달리 이벤트 인수를 전달받지 않으며, 지정된 이벤트가 발생하지 않아도 특정한 시점에는 트리거가 "강제로" 갱신됩니다 - 예. WeakAuras 설정 창을 닫을 때. Event - 이벤트 이벤트 타입 커스텀 트리거는 관련된 정보를 포함하는 이벤트에 기반해 사용한다는 가정하에 구현되었습니다. 따라서, 해당 이벤트가 이벤트 인수를 전달한다는 점이 상태 유형의 커스텀 트리거와 다릅니다. 그러므로 상태 유형의 커스텀 트리거가 강제 업데이트될 때도 이벤트 유형은 그렇지 않습니다. 이벤트 유형 커스텀 트리거는 지정된 시간 후에 숨기거나 커스텀 untrigger를 구현할 수 있습니다. ------------------------------------------------------------------------------------------------------ 트리거 옵션 Check On... - 체크... 상태 유형의 커스텀 트리거에서만 설정합니다. "매 프레임"으로 설정하면 이벤트를 설정하지 않고 OnUpdate 스크립트를 사용해서 체크합니다. Event(s) - 이벤트 커스텀 트리거 함수(트리거 함수가 false를 반환하는 경우 untrigger 함수도)를 호출할 이벤트 목록입니다. 다중 이벤트는 공백과 쉼표(혹은 '공백 또는 쉼표')로 구분합니다. Custom Trigger - 개인추가 조건 커스텀 트리거 영역은 트리거가 활성화될 때 true를 반환하는 익명함수이어야합니다. 상태 유형의 커스텀 트리거라면 함수는 어떤 인수도 전달받지 않습니다. 이벤트 타입의 커스텀 트리거일 때는 함수에 이벤트 이름부터 시작하는, 이벤트가 지정한 모든 인수가 전달됩니다. 함수 리턴값이 false, nil이거나 적절한 값을 갖지 않으면 트리거는 그냥 비활성화되지 않고 untrigger 함수를 호출합니다. Custom Untrigger Custom untrigger 영역 역시 트리거 함수와 마찬가지로 익명함수이어야하며, 트리거 함수와 같은 인수를 전달받습니다. 다만, 이 함수는 트리거가 비활성화되는 조건(디스플레이를 숨길 때)에서 true값을 반환해야합니다. Untrigger 함수값이 false, nil이나 값이 없으면 아무 일도 발생하지 않습니다. 현재 표시중이라면 계속 디스플레이가 표시되며, 숨김 상태라면 계속 숨김 상태입니다. 대부분의 경우, 상태 유형 커스텀 트리거에서 untrigger 함수는 정확히 트리거 함수의 논리적 반대항으로 구성하게 됩니다. 하지만 "grey area"가 존재하도록 트리거와 untrigger를 구성하는 것이 유용할 때도 있습니다. 자세한 내용은 Triggers and Untriggers 항목을 확인하세요. Hide - 숨김 이벤트 유형 커스텀 트리거에서만 설정합니다. "Timed"로 설정하면 Custom Untrigger 설정 영역이 표시되지 않고 커스텀 트리거는 지정된 시간만큼만 활성화됩니다. "개인추가Custom"로 설정하면 Custom Untrigger 함수를 지정할 수 있습니다. ------------------------------------------------------------------------------------------------------ Dynamic Information 현재, 커스텀 트리거는 Dynamic Information(지속시간 정보, 아이콘 정보, 이름 정보, 중첩 정보)를 디스플레이로 전달할 수 없습니다. 추후 버전에 구현될 예정입니다. -- 2011년에 r73 버전에 추가되어 이후 버전은 사용 가능합니다. -- Dynamic Information Dynamic Information WeakAuras의 디스플레이 유형과 트리거 유형은 필요에 따라 양자를 혼합하거나 연동해서 사용할 수 있는 별개의 개념입니다. 트리거는 단순히 디스플레이가 표시되는지 아닌지를 결정할 뿐 아니라 dynamic information을 디스플레이로 전달합니다. 흔히 사용되는 dynamic information의 예로 오라의 지속시간을 들 수 있습니다. 오라 트리거는 지정된 오라를 감지하면 디스플레이가 표시되도록 할 뿐 아니라 오라의 지속시간에 관한 정보를 디스플레이로 전달합니다. WeakAuras에는 네 가지 유형의 Dynamic Information이 있습니다: 지속시간 정보, 아이콘 정보, 이름 정보, 중첩 정보. 트리거나 디스플레이 유형에 따라 네 가지 정보중 일부만 관여하거나 네 가지 중 어떤 정보도 사용되지 않을 수 있습니다. 실제로 네 가지 정보를 모두 생성하는 트리거는 오라 유형 뿐이며, 네 가지를 모두 표현하는 디스플레이 유형도 진행 바 뿐입니다. 디스플레이에 다중 트리거가 구성되었다면 메인 트리거(조건 1)에서 Dynamic Information을 생성합니다. ------------------------------------------------------------------------------------------------------ Duration Info - 지속시간 정보 지속시간 정보는 보통 두 개의 수치로 구성됩니다: 트리거의 남은 시간Remaining Time과 전체 시간Maximum Duration. 타이머와 같은 일부 디스플레이 유형은 남은 시간 정보만 사용합니다. 진행 텍스쳐와 같은 또다른 유형은 남은 시간을 전체 시간으로 나누어 비율만 사용합니다. 진행 바는 남은 시간도 수치로 표시하고 비율을 계산하여 바의 진행 상태를 표시합니다. 일부 트리거는 실제 지속 시간이 없는데도 지속시간 정보를 전달합니다. 예를 들어 체력 트리거는 유닛의 현재 생명력을 "남은 시간"으로, 유닛의 전체 생명력을 "전체 시간"으로 전달합니다. 마력, 신성한 힘, 영혼 조각, 연계 점수 트리거 역시 유사하게 작동합니다. 아이템 개수와 같은 일부 트리거는 "남은 시간"만 전달하며 이 경우 해당 디스플레이는 지속시간이 항상 최대값인 것으로 번역합니다. 지속 시간이 정의되지 않는 오라에 대한 오라 트리거 역시 마찬가지입니다. --현재 버전은 커스텀 트리거도 dynamic info를 생성할 수 있습니다. 지속시간 함수는 최대 4개의 인수를 반환하고, 뒤의 두 개는 Boolean입니다. return duration, expirationTime, static, inverse static이 true일 때 이 지속시간 정보는 타이머가 아니라 상태바 형태로 동작하는데 이 경우 단순히 arg1 / arg2의 비율로 바를 채웁니다. static을 지정하지 않거나 false를 반환하는 값을 사용하면 일반적인 타이머로 사용하게 되는데 이 때 arg1은 지속 시간, arg2는 종료 시'각'을 의미합니다. 즉, 일반적으로 지속시간 정보가 생성되는 시점에 expirationTime == duration + GetTime() 의 관계가 성립합니다. 지속시간 정보가 '현재 남은 시간'을 전달하면 계속해서 갱신해야하므로 바 전체에 해당하는 시간과 종료되는 시각만 한 번 전달하며, 디스플레이를 담당하는 부분에서 이 수치를 가지고 실시간으로 ( expirationTime - GetTime() ) / duration = 남은 시간 / 전체 시간 의 비율로 바를 채워서 표시합니다. ------------------------------------------------------------------------------------------------------ Icon Info - 아이콘 정보 아이콘 정보는 트리거와 관련된 아이콘을 전달합니다. 오라, 주문, 아이템 등에 관련된 트리거는 늘 아이콘 정보를 전달합니다. 아이콘 정보를 표시하는 디스플레이에는 전달받은 아이콘 정보를 자동으로 표시하거나 원하는 아이콘을 선택하는 옵션이 포함됩니다. 아이콘 정보를 제공하지 않는 트리거를 사용하는 경우 아이콘을 직접 선택해야합니다. 사용중에 트리거가 전달하는 아이콘이 바뀔 때도 있습니다. 예를 들어, 오라 트리거에 여러개의 오라 이름을 지정하면 현재 표시중인 오라의 아이콘 정보(둘 이상의 오라가 모두 사용중이라면 목록의 맨 위에 있는 오라에 해당하는 아이콘이 선택됩니다)가 전달됩니다. 마찬가지로 죽음의 기사 룬 트리거가 혈기 룬 #1을 표시하도록 되어있다면 평소에는 혈기 룬 아이콘이 표시되지만 혈기 룬 #1이 죽음 룬으로 변환되면 아이콘도 죽음 룬 아이콘으로 변경됩니다. WeakAuras는 오라를 이름으로만 검색하는데 WoW에는 동일한 이름이지만 다른 아이콘을 갖는 둘 이상의 주문이 있을 수 있습니다. 오라 트리거는 실제 감지된 오라의 아이콘을 전달하지만 설정창이 열린 상태에서는 원하는 오라의 아이콘이 표시되지 않을 수도 있습니다. -- 현재 버전은 ID로 검색 가능합니다 -- ------------------------------------------------------------------------------------------------------ Name Info - 이름 정보 트리거와 연관된 이름이 이름 정보로 전달됩니다. 이 정보를 이용하는 디스플레이 유형은 진행 바가 유일합니다(바의 왼쪽에 표시됩니다). 아이콘 정보와 마찬가지로 전달된 값을 자동으로 표시할 수도 있고 원하는 값을 입력할 수도 있습니다. 이름 정보는 아이콘 정보와 거의 같은 조건에서 생성되어 전달됩니다. 진행 바의 트리거에서 이름 정보가 전달되지 않으면 설정 id(좌측창에 지정된 이름)을 사용합니다. ------------------------------------------------------------------------------------------------------ Stack Info - 중첩 정보 중첩 정보는 오라 트리거에서만 생성되고 진행 바와 아이콘 디스플레이 유형에서만 사용됩니다. 오라의 중첩 횟수를 나타냅니다. 중첩되지 않는 오라는 0개의 중첩으로 간주됩니다. 중첩 정보가 0인 경우 진행 바와 아이콘 디스플레이 모두 아무 것도 표시하지 않습니다. 뒤로가기는 나의 원수. 뒤로가기를 죽입시다. 연재 목록: WeakAuras 소개 - #2 기술정보 (이 글)
EXP
494,317
(73%)
/ 504,001
올커니하면서
|
인벤 공식 앱
댓글 알람 기능 장착! 최신 게임뉴스를 한 눈에 보자