< 문제점 설명>
- Option.ini 존재하지 않을때 실행시 Gui 정상적으로 구현하나 영웅 반복 스킬 설정을 사용자 임의로 체크하여 저장하고
매크로 종료후 재실행하면 Gui가 제대로 구현되지 않습니다.
<문제점 스샷>
<스크립트>
- 명령어가 너무 많아서 오류나는 부분만 요약해서 따왔습니다. 3~5 팀 소스 생략
Gui, 6: Add, Tab, x2 w320 h570 +Center, 1팀|2팀
Gui, 6: Tab, 1팀
Gui, 6: Add, Edit, x32 y200 w20 h20 cBlue +Center, 1
Gui, 6: Add, Checkbox, x60 y201 w70 h20 vBattle1SkillA1 , 1번 스킬
Gui, 6: Add, Checkbox, x140 y201 w70 h20 vBattle1SkillA2, 2번 스킬
Gui, 6: Add, Checkbox, x220 y201 w70 h20 vBattle1SkillA3, 각성 스킬
Gui, 6: Tab, 2팀
Gui, 6: Add, Edit, x32 y225 w20 h20 cBlue +Center, 1
Gui, 6: Add, Checkbox, x60 y226 w70 h20 vBattle2SkillB1, 1번 스킬
Gui, 6: Add, Checkbox, x140 y226 w70 h20 vBattle2SkillB2, 2번 스킬
Gui, 6: Add, Checkbox, x220 y226 w70 h20 vBattle2SkillB3, 각성 스킬
IfNotExist, %OptionFile% ; 옵션파일이 존재하지 않을때 고정값
{
GuiControl, 6:, Battle1SkillA1, 0
GuiControl, 6:, Battle1SkillA2, 0
GuiControl, 6:, Battle1SkillA3, 1
GuiControl, 6:, Battle2SkillB1, 0
GuiControl, 6:, Battle2SkillB2, 0
GuiControl, 6:, Battle2SkillB3, 1
}
IfExist, %OptionFile%
Gosub, Load
Return
Load:
GuiControl, 6:, Battle1SkillA1, 0
GuiControl, 6:, Battle1SkillA2, 0
GuiControl, 6:, Battle1SkillA3, 0
GuiControl, 6:, Battle2SkillB1, 0
GuiControl, 6:, Battle2SkillB2, 0
GuiControl, 6:, Battle2SkillB3, 0
MainLoop := A_Index
Loop, 3
{
; 보기 : Battle1SkillA1 ~ A3
; 보기 : Battle2SkillB1 ~ B3
IniRead, IniBattle%MainLoop%SkillA%A_Index%, %OptionFile%, Battle%MainLoop%, Battle%MainLoop%SkillA%A_Index%
IniRead, IniBattle%MainLoop%SkillB%A_Index%, %OptionFile%, Battle%MainLoop%, Battle%MainLoop%SkillB%A_Index%
SkillA := IniBattle%MainLoop%SkillA%A_Index%
SkillB := IniBattle%MainLoop%SkillB%A_Index%
GuiControl, 6:, RaidWave%MainLoop%SkillA, %A_Index%
GuiControl, 6:, RaidWave%MainLoop%SkillB, %A_Index%
}
Return
Save:
IfExist, %OptionFile%
FileDelete, %OptionFile%
MainLoop := A_Index
Loop, 3
{
; 보기 : Battle1SkillA1 ~ A3
; 보기 : Battle2SkillB1 ~ B3
GuiControlGet, Battle%MainLoop%SkillA%A_Index%, 6:
GuiControlGet, Battle%MainLoop%SkillB%A_Index%, 6:
SkillA := Battle%MainLoop%SkillA%A_Index%
SkillB := Battle%MainLoop%SkillB%A_Index%
IniWrite, %SkillA%, %OptionFile%, Battle%MainLoop%, Battle%MainLoop%SkillA%A_Index%
IniWrite, %SkillB%, %OptionFile%, Battle%MainLoop%, Battle%MainLoop%SkillB%A_Index%
}
Return
GuiClose:
ExitApp
Return
BattleLoop()
{
GuiControlGet, Battle1SkillA1, 6:
GuiControlGet, Battle1SkillA2, 6:
GuiControlGet, Battle1SkillA3, 6:
GuiControlGet, Battle2SkillA1, 6:
GuiControlGet, Battle2SkillA2, 6:
GuiControlGet, Battle2SkillA3, 6:
Loop
{
if(Battle1SkillA1)
{
; 특정동작
}
if(Battle1SkillA2)
{
; 특정동작
}
if(Battle1SkillA3)
{
; 특정동작
}
if(Battle2SkillB1)
{
; 특정동작
}
if(Battle2SkillB2)
{
; 특정동작
}
if(Battle2SkillB3)
{
; 특정동작
}
}
return
< 질문 >
문제점이 도통 뭔지 잘 모르겠습니다. Gui 구현 실패에 대해 테일스타에서 검색해서 찾아 수정해보고 해도 잘안되네요.
위 문제에 대해 아시는분 계시면 조언 좀 부탁드립니다.
Gui, 6: Add, Tab, x2 w320 h570 +Center, 1팀|2팀
L버전 사용시 Gui, 6: Add, Tab2, x2 w320 h570 +Center, 1팀|2팀 ;tap2 로 고쳐야 함.