- 클립 서새봄의 ㅗㅜㅑ한 버츄얼 뭔가 어색하다
- 클립 서든 샷발 살아있는 킴성태 [3]
- 아이온2 400k 성역2 1넴 후기ㅆㅂ [74]
- 리니지M 신검 ㅈ된 상황 [13]
- 아이온2 불신 개웃기네 ㅋㅋㅋ [13]
- 명조 『명조:워더링 웨이브』 선약 방송국 EP 3.2 ── 시그리카 「L!!!!ght」 북마크 메뉴 GM 연구소
- 몬헌즈3 침수 몹은 퍼즐입니다. [3]
- 메너스 분대장 시스템과 분대장 캐릭터별 특징
- 핫딜 [네이버] 가성비 윈도우 11 노트북 갤럭시북 할인 특가 / 혜택가 409,660원
- 핫딜 더리얼 락토 생유산균 프로바이오틱스 30포 1+1
- 특가 몬스터헌터 스토리즈 3 엇갈린 운명 프리미엄 디럭스 에디션 (예약 특전 포함)113,800원10%102,420원
- 특가 프래그마타 디럭스 에디션79,800원10%71,820원
- ㅗㅜㅑ 금휘) 코카인 댄스 [1]
- 클립 수상할 정도로 춤을 좋아하는 남자 [1]
- 메이플 [1.2.413] 스카니아 보상 이벤트 [29]
- 아이온2 성역 업둥이 ㅈㄴ많다 ㅋㅋ 꼭 다 보고가세요 [21]
- 디아4 이번주 패치 [12]
- 케른 포토 모드의 실용적 활용법과 추천 뷰 포인트
- PV FCO wonder08에 대한 평가
- 명조 버전 업데이트 소개 | 3.2 버전 「그림자 속에서 밝혀진 결심」이 3월 19일에 업데이트됩니다!
- 핫딜 라쿠진 접이식 핸디 스팀다리미 (19,530 / 무료배송)
- 핫딜 리포좀 식물성 멜라토닌
- 특가 아크 레이더스 ARC Raiders20%47,120원3,000
- 특가 림월드37,500원20%30,000원
- ㅗㅜㅑ 금휘) 제로투 댄스
- 클립 드디어 무인도 탈출하는 이지상
- FCO 100층 달성했습니다 [67]
- 아이온2 울고섭 궁성 혐오자 만난 썰 [66]
- 와우 20퍼는 좀컸다 블자야 [30]
- V라이징 오 드디어 모로티의 폐허 발견
- V라이징 보스 '공허한 장군 엘레나' 패턴 공략 (브이 라이징)
- 해외겜 사우디, 이제 캡콤 지분 10% 보유
- 핫딜 필립스 2000 라떼고 전자동 에스프레소 커피머신 EP2330/19 원두통 컵선반 증정
- 핫딜 [헤드셋파우치증정+카드5%할인] 로지텍코리아 공식 G733 LIGHTSPEED 무선 게이밍 헤드셋 블랙
- 특가 미녀온천 오늘도 나를 괴롭히는 미녀님들9,900원50%4,950원
- 특가 바이오하자드 레퀴엠79,800원10%71,820원
- 정보 26년 2월 팔로우 상승량 TOP 30 - 월간 치지직 [16]
- 클립 민교방 놀러와서 채팅치는 쿼드
- 검은사막 치지직 붉은사막 7500명 보는중 ㅋㅋㅋㅋㅋㅋㅋ그런데 [17]
- 아이온2 부캐 루드라 팟 진짜 쾌적하네 ㄹㅇ [16]
- 아이온2 어째 이젠 템렙을 아예 안보게 되네 [13]
- 명조 [룬이 반짝이는 찰나] 캐릭터 이벤트 튜닝
- 케른 캠프 사이트 도착 후 루틴과 효율적인 자원 관리
- 여행 강원도 강릉 가족여행 다녀왔습니다.
- 핫딜 [몬스터헌터 에디션]하이드로5 5중날 스킨프로텍트 센서티브 면도기 핸들+날9+랜덤 키캡 4종
- 핫딜 혜택가 4.3만원 삼성공식파트너 JBL QUANTUM 350 퀀텀 무선 게이밍 헤드셋 블랙
- 특가 프래그마타69,800원10%62,820원
- 특가 GTFO51,000원68%16,320원
- ㅗㅜㅑ 금휘) 짧은치마 댄스
- 클립 우정잉 야랄보는 타요 [10]
- 메이플 루시드 짧팁 [233]
- 와우 첫주차 해야 할것+주의 사항 [35]
- 아이온2 씨ㅣㅣㅣㅣㅣㅣㅣㅣㅣㅣㅣㅣㅣ이ㅣㅣㅣㅣㅣ발 [44]
- 몬헌즈3 멸종위기 종(이였던 것) [5]
- FM AI로 선수 얼굴 만드는 방법 - fm26
- 메너스 작전 실패 후 복구하는 법과 예방책
- 핫딜 [국내정발] 레이저 게이밍 스피커 레비아탄 V2 X 사운드바
- 핫딜 (N배송)레이저코리아 Razer BlackShark V3 Pro 무선 게이밍헤드셋 블랙
- 특가 팰월드32,000원25%24,000원
- 특가 [합본] 데이브 더 다이버 본편 + 이치반의 휴일 번들56%13,730원10%
서수남팬클럽
local frame = CreateFrame("Frame")
frame:RegisterEvent("ADDON_LOADED")
frame:RegisterEvent("GROUP_ROSTER_UPDATE")
frame:RegisterEvent("INSPECT_READY")
local unitsToInspect = {}
local inspectedSpecs = {}
local pendingInspect = false
local iconTexts = {"별", "동그", "다이아"}
local function IsValidDPS(class, specName)
if class == "ROGUE" or class == "WARRIOR" or class == "DEATHKNIGHT" or class == "DEMONHUNTER" then
return "근접딜러"
end
if (class == "SHAMAN" and specName == "고양") or
(class == "MONK" and specName == "풍운") or
(class == "PALADIN" and specName == "징벌") or
(class == "HUNTER" and specName == "생존") or
(class == "DRUID" and specName == "야성") then
return "근접딜러"
end
if class == "SHAMAN" and specName == "정기" then
return "원거리딜러_2순위"
end
if (class == "MAGE") or
(class == "HUNTER" and (specName == "사격" or specName == "야수")) or
(class == "EVOKER" and (specName == "황폐" or specName == "증강")) or
(class == "WARLOCK" and (specName == "파괴" or specName == "고통")) then
return "원거리딜러_3순위"
end
if (class == "WARLOCK" and specName == "악마") or
(class == "PRIEST" and specName == "암흑") or
(class == "DRUID" and specName == "조화") then
return "원거리딜러_4순위"
end
return nil
end
local function StartInspection()
wipe(unitsToInspect)
wipe(inspectedSpecs)
pendingInspect = false
local groupType = IsInRaid() and "raid" or "party"
local max = IsInRaid() and GetNumGroupMembers() or GetNumSubgroupMembers()
table.insert(unitsToInspect, "player")
for i = 1, max do
local unit = groupType .. i
if UnitExists(unit) and UnitName(unit) ~= UnitName("player") then
table.insert(unitsToInspect, unit)
end
end
if #unitsToInspect > 0 then
pendingInspect = true
NotifyInspect(unitsToInspect[1])
end
end
local function ContinueInspection()
if #unitsToInspect == 0 then return end
local unit = table.remove(unitsToInspect, 1)
if unit and CanInspect(unit) then
NotifyInspect(unit)
end
end
local function FinalizeMarking()
local roleGroups = {
["근접딜러"] = {},
["원거리딜러_2순위"] = {},
["원거리딜러_3순위"] = {},
["원거리딜러_4순위"] = {}
}
for unit, specID in pairs(inspectedSpecs) do
local _, class = UnitClass(unit)
local _, specName = GetSpecializationInfoByID(specID)
local role = IsValidDPS(class, specName)
if role then
local name = UnitName(unit)
if name then
table.insert(roleGroups[role], name)
end
end
end
local ordered = {}
for _, role in ipairs({"근접딜러", "원거리딜러_2순위", "원거리딜러_3순위", "원거리딜러_4순위"}) do
for _, name in ipairs(roleGroups[role]) do
if #ordered < 3 then
table.insert(ordered, name)
end
end
end
local chatType = IsInRaid() and "RAID" or (IsInGroup(LE_PARTY_CATEGORY_INSTANCE) and "INSTANCE_CHAT" or "PARTY")
SendChatMessage("[징표 배정 - 딜러 3인]", chatType)
for i, name in ipairs(ordered) do
local icon = iconTexts[i] or "?"
SendChatMessage(name .. " → " .. icon .. " 차단", chatType)
end
end
frame:SetScript("OnEvent", function(_, event, arg)
if event == "ADDON_LOADED" and arg == addonName then
SLASH_MARKASSIGN1 = "/징표"
SlashCmdList["MARKASSIGN"] = StartInspection
elseif event == "INSPECT_READY" and pendingInspect then
local unit = unitsToInspect[1]
if unit then
local specID = GetInspectSpecialization(unit)
if specID and specID ~= 0 then
inspectedSpecs[unit] = specID
end
end
table.remove(unitsToInspect, 1)
if #unitsToInspect > 0 then
C_Timer.After(0.5, ContinueInspection)
else
FinalizeMarking()
end
end
end)