을 알아보자
안녕하세요 갯힝센세입니다
개미가 부탁해서 이렇게 강좌까지 쓰게 되네요
그럼 시작하겠습니다
일단.. 뭐부터 설명해야될까요
그래 그럼 처음부터 시작하죠
일단 조합하려면 뭐가 필요한지 알아야하고 명령어를 알아야합니다
뭐가 필요한지는 찾기 귀찮으니까 찾지 않겠습니다
그냥 LV3짜리 몇개 필요하겠쬬 ^-^
그럼 일단 명령어를 알아야하니 chat을 검색해보죠
call TriggerRegisterPlayerChatEvent(QQQRE,GetEnumPlayer(),GetObjectName('A01E'),true)
call TriggerRegisterPlayerChatEvent(QQREE,GetEnumPlayer(),GetObjectName('A01F'),true)
call TriggerRegisterPlayerChatEvent(QQRQE,GetEnumPlayer(),GetObjectName('A01G'),true)
call TriggerRegisterPlayerChatEvent(QQRRE,GetEnumPlayer(),GetObjectName('A01Q'),true)
call TriggerRegisterPlayerChatEvent(QREEE,GetEnumPlayer(),GetObjectName('A01P'),true)
딱봐도 수상해보이는 단어 몇개를 찾았습니다
하나씩 보도록 하죠 'A01E' 오브젝트 네임이라는건 흔히 말하면 스킬의 이름입니다
[A01E]
code=Aatk
checkDep=1
levels=0
targs1=_
targs2=_
targs3=_
targs4=_
Name=-사소리렙4조합
네, 좋습니다
-사소리렙4조합 이라고 되있네요
그럼 밑에껏도 볼까요?
[A01F]
code=Aatk
checkDep=1
levels=0
targs1=_
targs2=_
targs3=_
targs4=_
Name=-사스케렙4조합
-사스케렙4조합 이라고 되있네요
그럼 감오시죠?
어쨋든 재료는 모르지만 명령어는 -사스케렙4조합 입니다
이렇게 가르쳐줬는데
이 개미년이 조합이 안된다더군요
그럼 다시 알아봅시다
call TriggerRegisterPlayerChatEvent(QQQRE,GetEnumPlayer(),GetObjectName('A01E'),true)
사소리로 알아보도록하죠
QQQRE는 트리거의 이름이니 트리거의 이름을 검색해서 액션부분을 보도록하죠
set QQQRE=CreateTrigger()
call TriggerAddAction(QQQRE,function EEERRRE)
액션은 EEERRRE 입니다
function EEERRRE takes nothing returns nothing
if(EEERRQE())then
call QQRQQ(GetRandomReal(.18,1.18))
if(EEERREE())then
call SaveIntegerBJ((LoadIntegerBJ((1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("죽인 수"),E)-LoadIntegerBJ((1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("Lv4 Kill"),E)),(1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("죽인 수"),E)
call SaveIntegerBJ((LoadIntegerBJ((1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("Lv4 Kill"),E)+LoadIntegerBJ(0,StringHashBJ("Lv4NeedKill"),E)),(1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("Lv4 Kill"),E)
call MultiboardSetItemValueBJ(LoadMultiboardHandleBJ(0,StringHashBJ("Gameinfo"),E),2,((1+GetPlayerId(GetTriggerPlayer()))+1),I2S(LoadIntegerBJ((1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("죽인 수"),E)))
call SaveGroupHandleBJ(RQEQQ(1,QRREQ(ERQ,Condition(function EEEREEE))),0,StringHashBJ("MixGroup"),E)
call ForGroupBJ(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E),function EEEREQE)
call GroupClear(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E))
call DestroyGroup(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E))
call FlushChildHashtableBJ(StringHashBJ("MixGroup"),E)
call SaveGroupHandleBJ(RQEQQ(1,QRREQ(ERQ,Condition(function EEERERE))),0,StringHashBJ("MixGroup"),E)
call ForGroupBJ(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E),function EEERQEE)
call GroupClear(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E))
call DestroyGroup(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E))
call FlushChildHashtableBJ(StringHashBJ("MixGroup"),E)
call CreateNUnitsAtLoc(1,'h01C',GetTriggerPlayer(),LoadLocationHandleBJ((1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("PlayerUpgradeLoc"),E),bj_UNIT_FACING)
endif
else
call DisplayTimedTextToPlayer(GetTriggerPlayer(),0,0,30,"|c00008000당신|r은 |c008080c0조합|r|c00ff0000할 수 없습니다.|r\n|c00ff8040카페|r에 오셔서 조합하는 방법을 알아보세요.\n|c00ff0000카페주소|r : |c008080c0http://cafe.naver.com/mtngd|r\n※F9 확인바람")
endif
endfunction
액션은 대충 이렇습니다
그럼 하나씩 보죠
일단 확실한건
call DisplayTimedTextToPlayer(GetTriggerPlayer(),0,0,30,"|c00008000당신|r은 |c008080c0조합|r|c00ff0000할 수 없습니다.|r\n|c00ff8040카페|r에 오셔서 조합하는 방법을 알아보세요.\n|c00ff0000카페주소|r : |c008080c0http://cafe.naver.com/mtngd|r\n※F9 확인바람")
이렇게 적혀있네요
당신은 조합 할 수 없습니다.
카페 오셔서 조합하는 방법을 알아보세요.
카페주소 http://cafe,naver.com/mtngd F9번 확인바람
자 이렇게 적혀있습니다
그럼 이게 뜨는 이유가 있겠죠
function EEERRRE takes nothing returns nothing
if(EEERRQE())then
call QQRQQ(GetRandomReal(.18,1.18))
if(EEERREE())then
call SaveIntegerBJ((LoadIntegerBJ((1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("죽인 수"),E)-LoadIntegerBJ((1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("Lv4 Kill"),E)),(1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("죽인 수"),E)
call SaveIntegerBJ((LoadIntegerBJ((1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("Lv4 Kill"),E)+LoadIntegerBJ(0,StringHashBJ("Lv4NeedKill"),E)),(1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("Lv4 Kill"),E)
call MultiboardSetItemValueBJ(LoadMultiboardHandleBJ(0,StringHashBJ("Gameinfo"),E),2,((1+GetPlayerId(GetTriggerPlayer()))+1),I2S(LoadIntegerBJ((1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("죽인 수"),E)))
call SaveGroupHandleBJ(RQEQQ(1,QRREQ(ERQ,Condition(function EEEREEE))),0,StringHashBJ("MixGroup"),E)
call ForGroupBJ(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E),function EEEREQE)
call GroupClear(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E))
call DestroyGroup(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E))
call FlushChildHashtableBJ(StringHashBJ("MixGroup"),E)
call SaveGroupHandleBJ(RQEQQ(1,QRREQ(ERQ,Condition(function EEERERE))),0,StringHashBJ("MixGroup"),E)
call ForGroupBJ(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E),function EEERQEE)
call GroupClear(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E))
call DestroyGroup(LoadGroupHandleBJ(0,StringHashBJ("MixGroup"),E))
call FlushChildHashtableBJ(StringHashBJ("MixGroup"),E)
call CreateNUnitsAtLoc(1,'h01C',GetTriggerPlayer(),LoadLocationHandleBJ((1+GetPlayerId(GetTriggerPlayer())),StringHashBJ("PlayerUpgradeLoc"),E),bj_UNIT_FACING)
endif
else
call DisplayTimedTextToPlayer(GetTriggerPlayer(),0,0,30,"|c00008000당신|r은 |c008080c0조합|r|c00ff0000할 수 없습니다.|r\n|c00ff8040카페|r에 오셔서 조합하는 방법을 알아보세요.\n|c00ff0000카페주소|r : |c008080c0http://cafe.naver.com/mtngd|r\n※F9 확인바람")
endif
endfunction
다시 액션문을 보겠습니다
중요한 부분은 빨간색으로 강조하겠습니다
빨간색 강조된 부분을 보시면 일단
IF문 제일 위에꺼 때문에 저 부분이뜨는거죠
IF문 제일 위에 트리거 부분을 확인해보겠습니다.
function EEERRQE takes nothing returns boolean
return(LoadInteger(EQ,(1+GetPlayerId(GetTriggerPlayer())),StringHash("Lv4 Activation"))==1)
endfunction
이렇네요
자 조건문이 이렇습니다 해쉬를 데리고와서 그게 1이면 조건문이 성립합니다
그럼 해쉬문이라 약간 당황스럽긴 합니다만 대충 조건만 알면됩니다
Lv4 Activation 이부분을 1로 만들어 주는 트리거만 찾으면 되거든요
그럼 1로 만들어주는 트리거가 어디있을까 검색해봅시다.
검색어는 Lv4 Activation 이걸로 검색해보겠습니다
function RQRRQQ takes nothing returns nothing
call SaveInteger(EQ,(1+GetPlayerId(GetTriggerPlayer())),StringHash("Lv4 Activation"),1)
call DisplayTimedTextToPlayer(GetTriggerPlayer(),0,0,10.,"당신은 이제부터 |c000080ffLv4|r를 조합하실 수 있습니다.\n|c000080ff조합법|r은 지금 |c00ff0000입력|r하신 |c00008000주소|r로 들어가서 |c008080c0확인|r해 주세요.")
endfunction
네 바로 나왔네요 ^-^
Lv4 Activation를 1로 만들어주고
당신은 이제부터 Lv4를 조합하실 수 있습니다 라고 뜨게 되네요
참 친절하죠?
그럼 이걸 실행시키는 조건문을 봐야겠네요
RQRRQQ를 검색합시다
set QEQEE=CreateTrigger()
call TriggerAddAction(QEQEE,function RQRRQQ)
참쉽죠? QEQEE 트리거가 이거입니다 그럼 QEQEE 트리거를 검색해보죠
call TriggerRegisterPlayerChatEvent(QEQEE,GetEnumPlayer(),"http://cafe.naver.com/mtngd",true)
네 나왔습니다
명령어는 http://cafe.naver.com/mtngd 를 타이핑 함으로써 Lv4 조합을 할수 있게 만들어 주는겁니다
정말쉽죠?
이제 이렇게 가르쳐줫더니
조합이 된다길래 아 시바 이제 꺼져라 라고 말하는데
갑자기 또 조합이 안된답니다
^-^ 싀팔년 개 쳐맞을려궁 ㅎㅎ
걍 안가르쳐줄려구욤 깔깔 잠수요!
알아보이는데 쓰는 자료들을 올려두겠습니다
필요한사람은쓰세욤 ww
잠수요!
'공략게시판' 카테고리의 다른 글
원랜디 8.0 Q&A (19) | 2017.08.21 |
---|---|
나랜디 2.9A3 초성퀴즈 (1) | 2014.06.25 |
나랜디 2.7c4 초성퀴즈 답 (0) | 2013.08.13 |
나랜디(NRD) 4.0 신캐릭 히든조합 (1) | 2013.04.25 |
나루토 인연 4.1 공략 (1) | 2013.04.17 |