Hallo AutoIt.de,
nach langer Zeit habe auch ich mal wieder ein Problem.
Wenn ich die Sachen in die jeweiligen Listen eintrage, möchte ich nicht immer das neue 'level' raussuchen sondern das Item einfach auswählen und auf Up+ drücken.
Sogesehen dass ausgelesen wird was ausgewählt ist und das dann ,,Uppen".
Update: 14:26Uhr , keiner ne Idee ??
Hier mal das Script:
Im Anhang ist die skill_constans
Spoiler anzeigen
#include 'skill_constants.au3'
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
#include <GDIPlus.au3>
#include <GUIListBox.au3>
Global $attackSkills[20], $buffSkills[20], $buffSkillListItem[20]
Opt('GUIOnEventMode', 1)
$hGui = GUICreate('Awesome', 572, 501, Default, Default)
DllCall('uxtheme.dll', 'none', 'SetThemeAppProperties', 'int', 0)
#region Skills
$AwesomeConfigTab = GUICtrlCreateTabItem('Awesome Config')
$charName = GUICtrlCreateLabel('Test', 15, 15)
GUICtrlCreateGroup('Skill List', 10, 31, 230, 338)
GUICtrlSetFont(-1, 8, 400, 0, 'Arial')
$skillTopic = GUICtrlCreateCombo('Blade/Sword', 16, 51, 210, 25)
GUICtrlSetData(-1, 'Glavie/Spear|Bow|Cold|Lightning|Fire|Force')
$skillListControl = GUICtrlCreateList('', 15, 71, 212, 300)
FillSkillListControl()
GUICtrlSetFont(-1, 8, 400, 0, 'Arial')
GUICtrlCreateGroup('Attack Skills + Imbue', 248, 31, 310, 194)
GUICtrlSetFont(-1, 8, 400, 0, 'Arial')
$attackSkillListControl = GUICtrlCreateList('', 372, 51, 180, 118)
$addAttackSkillButton = GUICtrlCreateButton('Add', 271, 71, 85, 20)
$upAttackSkillButton = GUICtrlCreateButton('Up +', 271, 96, 45, 20)
$removeAttackSkillButton = GUICtrlCreateButton('Del', 271, 121, 85, 20)
GUICtrlCreateGroup('Buff Skills', 248, 225, 310, 136)
GUICtrlSetFont(-1, 8, 400, 0, 'Arial')
$buffSkillListControl = GUICtrlCreateList('', 372, 242, 180, 118)
$addBuffSkillButton = GUICtrlCreateButton('Add', 271, 271, 85, 20)
$upBuffSkillButton = GUICtrlCreateButton('Up +', 271, 296, 45, 20)
$removeBuffSkillButton = GUICtrlCreateButton('Del', 271, 321, 85, 20)
#endregion Skills
[/autoit] [autoit][/autoit] [autoit]GUICtrlCreateTabItem('')
GUICtrlSetState($AwesomeConfigTab, 16)
GUISetState(@SW_SHOW)
GUISetOnEvent(-3, 'CloseAwesome')
GUICtrlSetOnEvent($skillTopic, 'FillSkillListControl')
GUICtrlSetOnEvent($addAttackSkillButton, 'AddAttackSkill')
GUICtrlSetOnEvent($addBuffSkillButton, 'AddBuffSkill')
GUICtrlSetOnEvent($removeAttackSkillButton, 'RemoveAttackSkill')
GUICtrlSetOnEvent($removeBuffSkillButton, 'RemoveBuffSkill')
GUICtrlSetOnEvent($upAttackSkillButton, 'UpAttackSkill')
GUICtrlSetOnEvent($upBuffSkillButton, 'UpBuffSkill')
While Sleep(25)
WEnd
Func CloseAwesome()
Exit
EndFunc ;==>CloseAwesome
; #########
; SKILLS
; #########
Func UpAttackSkill()
;Auslesen was anvisiert ist und das nächste level nehmen.
EndFunc ;==>UpAttackSkill
Func UpBuffSkill()
;Auslesen was anvisiert ist und das nächste level nehmen.
EndFunc ;==>UpBuffSkill
Func FillSkillListControl()
Local $type
GUICtrlSetData($skillListControl, '')
Switch GUICtrlRead($skillTopic)
Case 'Blade/Sword'
$type = 1
Case 'Glavie/Spear'
$type = 2
Case 'Bow'
$type = 3
Case 'Cold'
$type = 4
Case 'Lightning'
$type = 5
Case 'Fire'
$type = 6
Case 'Force'
$type = 7
EndSwitch
For $i = 1 To UBound($skill) - 1
If $skill[$i][1] = $type Then GUICtrlSetData($skillListControl, $skill[$i][0] & ' <' & $i & '>')
Next
EndFunc ;==>FillSkillListControl
Func SaveSkillSettings()
Local $i
For $i = 0 To 19
IniWrite(GUICtrlRead($charName) & '_Awesome.ini', 'Skills', 'AttackSkill' & $i, $attackSkills[$i])
IniWrite(GUICtrlRead($charName) & '_Awesome.ini', 'Skills', 'BuffSkill' & $i, $buffSkills[$i])
Next
EndFunc ;==>SaveSkillSettings
Func LoadSkillSettings()
Local $i
For $i = 0 To 19
$attackSkills[$i] = IniRead(GUICtrlRead($charName) & '_Awesome.ini', 'Skills', 'AttackSkill' & $i, 0)
If $attackSkills[$i] <> 0 Then GUICtrlSetData($attackSkillListControl, $skill[$attackSkills[$i]][0] & ' <' & $attackSkills[$i] & '>')
$buffSkills[$i] = IniRead(GUICtrlRead($charName) & '_Awesome.ini', 'Skills', 'BuffSkill' & $i, 0)
If $buffSkills[$i] <> 0 Then GUICtrlSetData($buffSkillListControl, $skill[$buffSkills[$i]][0] & ' <' & $buffSkills[$i] & '>')
Next
EndFunc ;==>LoadSkillSettings
Func AddAttackSkill()
Local $i, $selected = GUICtrlRead($skillListControl)
For $i = 0 To 19
If $attackSkills[$i] = 0 Then
$attackSkills[$i] = GetIdBySkill($selected)
GUICtrlSetData($attackSkillListControl, $selected)
SaveSkillSettings()
ExitLoop
EndIf
Next
EndFunc ;==>AddAttackSkill
Func AddBuffSkill()
Local $i, $selected = GUICtrlRead($skillListControl)
For $i = 0 To 19
If $buffSkills[$i] = 0 Then
$buffSkills[$i] = GetIdBySkill($selected)
GUICtrlSetData($buffSkillListControl, $selected)
SaveSkillSettings()
ExitLoop
EndIf
Next
EndFunc ;==>AddBuffSkill
Func RemoveAttackSkill()
Local $i, $selected = GetIdBySkill(GUICtrlRead($attackSkillListControl))
If $selected = 0 Then
MsgBox(0, 'Info', 'Select a Skill, before using this!')
Else
GUICtrlSetData($attackSkillListControl, '')
For $i = 0 To 19
If $attackSkills[$i] = $selected Then
$attackSkills[$i] = 0
ElseIf $attackSkills[$i] <> 0 Then
GUICtrlSetData($attackSkillListControl, $skill[$attackSkills[$i]][0] & ' <' & $attackSkills[$i] & '>')
EndIf
Next
EndIf
SaveSkillSettings()
EndFunc ;==>RemoveAttackSkill
Func RemoveBuffSkill()
Local $i, $selected = GetIdBySkill(GUICtrlRead($buffSkillListControl))
If $selected = 0 Then
MsgBox(0, 'Info', 'Select a Skill, before using this!')
Else
GUICtrlSetData($buffSkillListControl, '')
For $i = 0 To 19
If $buffSkills[$i] = $selected Then
$buffSkills[$i] = 0
ElseIf $buffSkills[$i] <> 0 Then
GUICtrlSetData($buffSkillListControl, $skill[$buffSkills[$i]][0] & ' <' & $buffSkills[$i] & '>')
EndIf
Next
EndIf
SaveSkillSettings()
EndFunc ;==>RemoveBuffSkill
Func GetIdBySkill($skill)
Local $regexp = StringRegExp($skill, '<(.*?)>', 1)
If Not IsArray($regexp) Then Return 0
Return Int($regexp[0])
EndFunc ;==>GetIdBySkill