나랜블 2.3B 히든조합

|
              

을 알아보자


안녕하세요 갯힝센세입니다


개미가 부탁해서 이렇게 강좌까지 쓰게 되네요


그럼 시작하겠습니다


일단.. 뭐부터 설명해야될까요


그래 그럼 처음부터 시작하죠


일단 조합하려면 뭐가 필요한지 알아야하고 명령어를 알아야합니다


뭐가 필요한지는 찾기 귀찮으니까 찾지 않겠습니다


그냥 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 조합을 할수 있게 만들어 주는겁니다


정말쉽죠?


이제 이렇게 가르쳐줫더니


조합이 된다길래 아 시바 이제 꺼져라 라고 말하는데


갑자기 또 조합이 안된답니다


^-^ 싀팔년 개 쳐맞을려궁 ㅎㅎ


걍 안가르쳐줄려구욤 깔깔 잠수요!


war3map.j


abilities.txt


알아보이는데 쓰는 자료들을 올려두겠습니다


필요한사람은쓰세욤 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