Ben voilà je poste mon premier développement avec Autoit, que j'ai découvert, il y a un jour...... ça m' a l'air bien sympa...
Pour mon premier "développement", c'est parti du jeu Jump'n'Bump où pour lancer tout un tas d'option (fullscreen, choix du niveau, client, serveur...), il faut passer pas une commande dos (l'exe plus ses paramètres), je me suis dis que j'allais faire une petite interface graphique.....
j'avoue que je me suis pas mal aidé d'exemple trouvé sur le net....

Le jeu ICI
alors voici:
(Le programme fonctionne bien, il y a juste un petit souci, c'est le clic sur les boutons qui sont parfois un peu aléatoires, il faut cliquer parfois plusieurs fois avant que cela ne fonctionne ?!?!)
il y a surement mieux, je suis prêt à entendre les critiques....

► Afficher le texte
Code : Tout sélectionner
#include <GuiConstantsEx.au3>
#include <WindowsConstants.au3>
#include <file.au3>
#include <array.au3>
#include <inet.au3>
Opt ("TrayIconHide", 1)
Opt('MustDeclareVars', 1)
Func _Main()
Local $ip, $normalClient, $fullscreenClient, $msg, $participant, $goserveur, $normalserveur, $fullscreenserveur
local $goClient, $client, $serveur, $avCommon, $niveauclient, $niveauserveur, $LABEL
Local $listeNIVEAU, $publicIP, $normalLocal, $fullscreenLocal, $goLocal, $niveauLocal,$menu, $aide, $about, $readme, $telecharge, $menu1
$publicIP = _GetIP()
GUICreate("JumpnBump Menu By JP - V0.3 RC", 350, 530, (@DesktopWidth - 469) / 2, (@DesktopHeight - 639) / 2, $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS)
$menu = GUICtrlCreateMenu("Aide")
$aide = GUICtrlCreateMenuItem("Aide", $menu)
$telecharge = GUICtrlCreateMenuItem("Télécharger des Niveaux supplementaires", $menu)
$readme = GUICtrlCreateMenuItem("Readme", $menu)
$menu1 = GUICtrlCreateMenu("?")
$about = GUICtrlCreateMenuItem("About", $menu1)
;Lister les fichiers .dat dans le dossier d'execution du script
$avCommon = _FileListToArray(@Scriptdir &"\data","*.dat")
For $i = 1 to Ubound($avCommon) - 1
$listeNIVEAU = $listeNIVEAU & "|" & StringTrimRight($avCommon[$i], 4)
Next
$listeNIVEAU = StringTrimLeft($listeNIVEAU, 1)
;titre
GUICtrlCreateLabel("Jump'n'Bump Menu", 130, 10, 200, 20)
GUICtrlSetColor(-1, 0xFF0004)
GUICtrlSetFont(-1, 10, 400, 6)
GUICtrlCreateLabel("Mon adresse IP : "&@IPAddress1, 15, 335, 200, 20)
GUICtrlSetColor(-1, 0xFF595C)
GUICtrlCreateLabel("Mon adresse IP publique : "&$publicIP, 15, 355, 200, 20)
GUICtrlSetColor(-1, 0xFF595C)
;$LABEL = _GuiCtrlCreateHyperlink("Niveaux à télécharger", 10, 80, 0x0000ff, "This is a website...")
;local bouton radio
GUIStartGroup()
$normalLocal = GUICtrlCreateRadio("Normal", 270, 430)
GuiCtrlSetState(-1, $GUI_CHECKED)
$fullscreenLocal = GUICtrlCreateRadio("Fullscreen", 270, 450)
;client bouton radio
GUIStartGroup()
$normalClient = GUICtrlCreateRadio("Normal", 270, 60)
GuiCtrlSetState(-1, $GUI_CHECKED)
$fullscreenClient = GUICtrlCreateRadio("Fullscreen", 270, 80)
;serveur bouton radio
GUIStartGroup()
$normalserveur = GUICtrlCreateRadio("Normal", 270, 220)
GuiCtrlSetState(-1, $GUI_CHECKED)
$fullscreenServeur = GUICtrlCreateRadio("Fullscreen", 270, 240)
;client (partie graphique)
GUICtrlCreateGroup("Se connecter à un serveur :", 5, 40, 340, 130)
GUICtrlSetFont(-1, 10, 400, 2 )
GUICtrlSetBkColor(-1, 0xBCBFC4)
GUICtrlCreateLabel("Adresse IP du serveur : ", 10, 70)
$ip = GuiCtrlCreateInput("", 140, 65, 90, 20)
GUICtrlCreateLabel("Choix du niveau : ", 39, 100)
$niveauclient = GUICtrlCreateCombo("",140 , 95, 90, 30)
GUICtrlSetData(-1, $listeNIVEAU, "item3")
$goClient = GUICtrlCreateButton("Se Connecter", 140, 130, 90, 30)
GUICtrlSetOnEvent($goClient, "test")
;serveur (partie graphique)
GUICtrlCreateGroup("Créer un serveur :", 5, 200, 340, 180)
GUICtrlSetFont(-1, 10, 400, 2 )
GUICtrlSetBkColor(-1, 0xBCBFC4)
GUICtrlCreateLabel("Nombre de participants : ", 10, 230)
$participant = GuiCtrlCreateCombo("1", 140, 225, 90, 20)
GUICtrlSetData(-1, "2|3", "item3")
GUICtrlCreateLabel("Choix du niveau : ", 43, 260)
$niveauserveur = GUICtrlCreateCombo("",140 ,255, 90, 30)
GUICtrlSetData(-1, $listeNIVEAU, "item3")
$goServeur = GUICtrlCreateButton("Créer le serveur", 140, 290, 90, 30)
GUICtrlSetOnEvent($goServeur, "test2")
;local(partir graphique)
GUICtrlCreateGroup("Jouer en local (même clavier) :", 5, 410, 340, 95)
GUICtrlSetFont(-1, 10, 400, 2 )
GUICtrlSetBkColor(-1, 0xBCBFC4)
GUICtrlCreateLabel("Choix du niveau : ", 43, 440)
$niveauLocal = GUICtrlCreateCombo("",140 , 435, 90, 30)
GUICtrlSetData(-1, $listeNIVEAU, "item3")
$goLocal = GUICtrlCreateButton("GO !", 140, 465, 90, 30)
GUICtrlSetOnEvent($goLocal, "test3")
GUICtrlSetState($normalClient, $GUI_CHECKED)
GUICtrlSetState($normalserveur, $GUI_CHECKED)
GUICtrlSetState($normalLocal, $GUI_CHECKED)
GUICtrlSetState($goClient, $GUI_FOCUS + $GUI_DEFBUTTON)
;exécution
GUISetState()
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $goClient
If GUICtrlRead($normalClient) = 1 Then
run(FileGetShortName(@ScriptDir) &"\jumpnbump.exe -dat " &FileGetShortName(@ScriptDir) &"\data\" &GUICtrlRead($niveauclient) &".dat" &" -connect " &GUICtrlRead($ip))
Else
run(FileGetShortName(@ScriptDir) &"\jumpnbump.exe -dat " &FileGetShortName(@ScriptDir) &"\data\" &GUICtrlRead($niveauclient) &".dat" &" -connect " &GUICtrlRead($ip) &" -fullscreen")
EndIf
Case $msg = $goServeur
If GUICtrlRead($normalServeur) = 1 Then
run(FileGetShortName(@ScriptDir) &"\jumpnbump.exe -dat " &FileGetShortName(@ScriptDir) &"\data\" &GUICtrlRead($niveauserveur) &".dat" &" -server " &GUICtrlRead($participant))
Else
run(FileGetShortName(@ScriptDir) &"\jumpnbump.exe -dat " &FileGetShortName(@ScriptDir) &"\data\" &GUICtrlRead($niveauserveur) &".dat" &" -server " &GUICtrlRead($participant) &" -fullscreen")
EndIf
Case $msg = $goLocal
If GUICtrlRead($normalLocal) = 1 Then
run(FileGetShortName(@ScriptDir) &"\jumpnbump.exe -dat " &FileGetShortName(@ScriptDir) &"\data\" &GUICtrlRead($niveauLocal) &".dat")
Else
run(FileGetShortName(@ScriptDir) &"\jumpnbump.exe -dat " &FileGetShortName(@ScriptDir) &"\data\" &GUICtrlRead($niveauLocal) &".dat" &" -fullscreen")
EndIf
Case $msg = $telecharge
run( FileGetShortName(@ProgramFilesDir)&"\Internet Explorer\iexplore.exe http://jumpnbump.spaceteddy.net/")
Case $msg = $readme
ShellExecute(FileGetShortName(@ScriptDir) &"\readme.txt")
Case $msg = $about
MsgBox(0,"About","Crée avec AutoIt" &@CRLF& "JumpNBump Menu, by JP "&@CRLF& "V0.3 RC")
Case $msg = $aide
MsgBox(0,"Aide","- Le programme doit être exécuté à la racine du jeu." &@CRLF& " " &@CRLF& "- Les niveaux doivent être dans le dossier 'data' du jeu."&@CRLF& " " &@CRLF& "- Il faut relancer JumpNBump-Menu, pour que les nouveaux niveaux soient pris" &@CRLF&" en compte")
EndSelect
WEnd
; GUI MESSAGE LOOP
While GuiGetMsg() <> $GUI_EVENT_CLOSE
WEnd
EndFunc