Je viens vous présenter mon tout dernier logiciel PixelAnimator.
Il s'agit d'un logiciel permettant de créer des animations avec quelques pixels.
Vous disposez de plusieurs pages sur lesquelles vous pouvez dessiner, ensuite ces pages sont passés les unes à la suite des autres ce qui fait une animation.
Vous pouvez également publier vos animations sur notre serveur pour qu'elles soient consultables par les autres utilisateurs.
Site officiel : pixel.lecoindaide.com
Voici quelques captures d'écran : Lien
Lien de l'installateur.
Code source :
► Afficher le texte
Code : Tout sélectionner
#NoTrayIcon
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=Logo.ico
#AutoIt3Wrapper_UseX64=n
#AutoIt3Wrapper_Res_Fileversion=1.0.0.0
#AutoIt3Wrapper_Res_LegalCopyright=© 2013 Le Coin d'Aide
#AutoIt3Wrapper_Res_requestedExecutionLevel=asInvoker
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <GuiConstantsEx.au3>
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <INet.au3>
#include "HTTP.au3"
#cs ----------------------------------------------------------------------------
AutoIt Version : 3.3.8.1
Auteur: TT22
Fonction du Script :
Logiciel de création d'animations en pixel.
#ce ----------------------------------------------------------------------------
ProcessSetPriority(@AutoItPID,4)
Global $Colors[16] = [0x000000,0xFF0000,0xFFD800,0x4CFF00,0x00FF90,0x0094FF,0x4800FF,0xFF00DC,0xFFFFFF,0x7F0000,0x7F6A00,0x267F00,0x007F46,0x004A7F,0x21007F,0x7F006E]
Global $CurrentColor = $Colors[0]
Global $BackGround = $Colors[8]
Global $Hexa[16] = ["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"]
Global $CurrentPage = 1
Global $File = ":"
Global $PageTime = "100"
Global $CurrentPixel[100][9][16]; [Page][Ligne][Colone]
Global $PageMax = 1
Global $AlsoModified = False
; Récupère un fichier en paramètre...
If $CmdLine[0] > 0 Then
$File = $CmdLine[1]
EndIf
If $File = ":" Then
Global $Gui = GUICreate("Pixel Animator ; Sans titre",800,520)
Else
$FileName = StringSplit($File,"\")
If $FileName[0] > 0 Then
$FileName = $FileName[$FileName[0]]
Else
$FileName = $File
EndIf
Global $Gui = GUICreate("Pixel Animator ; "&$FileName,800,520)
EndIf
Global $HeaderLabel = GUICtrlCreateLabel("Vérification des mises à jour",8,5,605,40,$SS_CENTER,$WS_EX_DLGMODALFRAME)
GUICtrlSetFont($HeaderLabel,15,Default,Default,"Arial Black")
Global $Label = GUICtrlCreateLabel("",8,58,604,454,Default,$WS_EX_DLGMODALFRAME)
GUICtrlSetState($Label,$GUI_DISABLE)
Dim $PixelsGUI[9][12][2]
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
$PixelsGUI[$i][$j][0] = GUICtrlCreateLabel("",($j*50)+10,($i*50)+60,50,50,Default,$WS_EX_DLGMODALFRAME)
$PixelsGUI[$i][$j][1] = $BackGround
GUICtrlSetBkColor($PixelsGUI[$i][$j][0],$BackGround)
Next
Next
Global $Label2 = GUICtrlCreateLabel("",630,5,160,160,Default,$WS_EX_DLGMODALFRAME)
GUICtrlSetState($Label2,$GUI_DISABLE)
Global $MainColorButton = GUICtrlCreateButton("Couleur principale",640,10,140,40)
GUICtrlSetFont($MainColorButton,Default,Default,Default,"Arial Black")
Global $BackColorButton = GUICtrlCreateButton("Couleur de fond",640,60,140,40)
GUICtrlSetFont($BackColorButton,Default,Default,Default,"Arial Black")
Global $PageLabel = GUICtrlCreateLabel("Page",640,110,140,20,$SS_CENTER)
GUICtrlSetFont($PageLabel,Default,Default,Default,"Arial Black")
Global $BackPageButton = GUICtrlCreateButton("<",665,130,25,25)
GUICtrlSetFont($BackPageButton,15,Default,Default,"Arial Black")
Global $PageNoLabel = GUICtrlCreateLabel("1",695,128,30,23,$SS_CENTER)
GUICtrlSetFont($PageNoLabel,15,Default,Default,"Arial Black")
Global $NextPageButton = GUICtrlCreateButton(">",730,130,25,25)
GUICtrlSetFont($NextPageButton,15,Default,Default,"Arial Black")
Global $Label3 = GUICtrlCreateLabel("",630,180,160,100,Default,$WS_EX_DLGMODALFRAME)
GUICtrlSetState($Label3,$GUI_DISABLE)
Global $TimeLabel = GUICtrlCreateLabel("Durée d'une page",640,190,140,20,$SS_CENTER)
GUICtrlSetFont($TimeLabel,Default,Default,Default,"Arial Black")
Global $TimeMsLabel = GUICtrlCreateLabel("en milli-secondes",640,205,140,20,$SS_CENTER)
Global $PageTimeSlider = GUICtrlCreateSlider(640,220,140,30)
GUICtrlSetLimit($PageTimeSlider,1000,100)
Global $TimeMsShowLabel = GUICtrlCreateLabel("100 ms",640,250,140,20,$SS_CENTER)
GUICtrlSetFont($TimeMsShowLabel,Default,Default,Default,"Arial Black")
Global $Label4 = GUICtrlCreateLabel("",630,300,160,210,Default,$WS_EX_DLGMODALFRAME)
GUICtrlSetState($Label4,$GUI_DISABLE)
Global $ViewButton = GUICtrlCreateButton("Visualiser",640,310,140,40)
GUICtrlSetFont($ViewButton,Default,Default,Default,"Arial Black")
Global $SaveButton = GUICtrlCreateButton("Enregistrer",640,360,140,40)
GUICtrlSetFont($SaveButton,Default,Default,Default,"Arial Black")
Global $OpenButton = GUICtrlCreateButton("Ouvrir",640,410,140,40)
GUICtrlSetFont($OpenButton,Default,Default,Default,"Arial Black")
Global $SendButton = GUICtrlCreateButton("Publier",640,460,140,40)
GUICtrlSetFont($SendButton,Default,Default,Default,"Arial Black")
GUISetState(@SW_SHOW,$Gui)
; Vérifis les mises à jours...
$MAJ = _INetGetSource("http://pixel.lecoindaide.com/ver.txt")
If Number($MAJ) > 1.0 Then
If MsgBox(4+64,"PixelAnimator","La version "&$MAJ&" de PixelAnimator est disponnible !"&@CRLF&"Voulez-vous effectuer la mise à jour ?") = 6 Then
SplashTextOn("PixelAnimator ; Mise à jour","Téléchargement de la mise à jour...",500,50)
InetGet("http://pixel.lecoindaide.com/Setup%20PixelAnimator%20"&$MAJ&".exe",@TempDir&"\Setup PixelAnimator "&$MAJ&".exe",Default,0)
ShellExecute(@TempDir&"\Setup PixelAnimator "&$MAJ&".exe")
Exit
EndIf
EndIf
GUICtrlSetData($HeaderLabel,"PixelAnimator 1.0")
If $File <> ":" Then
_LoadAnim(FileRead($File))
EndIf
While 1
_Case(GUIGetMsg())
If $PageTime <> GUICtrlRead($PageTimeSlider) Then
$PageTime = GUICtrlRead($PageTimeSlider)
GUICtrlSetData($TimeMsShowLabel,$PageTime&" ms")
EndIf
WEnd
Func _SetPixelColor($Line,$Row)
$AlsoModified = True
If $PixelsGUI[$Line][$Row][1] = $CurrentColor Then
GUICtrlSetBkColor($PixelsGUI[$Line][$Row][0],$BackGround)
$PixelsGUI[$Line][$Row][1] = $BackGround
Else
GUICtrlSetBkColor($PixelsGUI[$Line][$Row][0],$CurrentColor)
$PixelsGUI[$Line][$Row][1] = $CurrentColor
EndIf
EndFunc
Func _ChangePage($Count)
If $CurrentPage + $Count = 0 Then
Return 0
ElseIf $CurrentPage + $Count = 100 Then
Return 0
Else
$AlsoModified = True
; Sauvegarde la page...
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
$CurrentPixel[$CurrentPage][$i][$j] = $PixelsGUI[$i][$j][1]
Next
Next
; Vérifis si la page a déjà été chargé...
If $CurrentPage+$Count > $PageMax Then
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
$PixelsGUI[$i][$j][1] = $BackGround
$CurrentPixel[$CurrentPage+$Count][$i][$j] = $BackGround
GUICtrlSetBkColor($PixelsGUI[$i][$j][0],$BackGround)
Next
Next
Else
; Affiche la page...
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
$PixelsGUI[$i][$j][1] = $CurrentPixel[$CurrentPage+$Count][$i][$j]
GUICtrlSetBkColor($PixelsGUI[$i][$j][0],$CurrentPixel[$CurrentPage+$Count][$i][$j])
Next
Next
EndIf
$CurrentPage += $Count
GUICtrlSetData($PageNoLabel,$CurrentPage)
If $CurrentPage > $PageMax Then $PageMax = $CurrentPage
Return 1
EndIf
EndFunc
Func _ColorWindow()
$GuiColor = GUICreate("Choisissez une couleur",365,95)
Dim $ColorButton[16]
Dim $Pos[16][2] = [[5,5],[50,5],[95,5],[140,5],[185,5],[230,5],[275,5],[320,5], _
[5,50],[50,50],[95,50],[140,50],[185,50],[230,50],[275,50],[320,50]]
For $i = 0 To 15 Step 1
$ColorButton[$i] = GUICtrlCreateButton("",$Pos[$i][0],$Pos[$i][1],40,40)
GUICtrlSetBkColor($ColorButton[$i],$Colors[$i])
Next
GUISetState(@SW_SHOW,$GuiColor)
GUISwitch($GuiColor)
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
GUIDelete($GuiColor)
Return "guiclosed"
Case $ColorButton[0]
GUIDelete($GuiColor)
Return $Colors[0]
Case $ColorButton[1]
GUIDelete($GuiColor)
Return $Colors[1]
Case $ColorButton[2]
GUIDelete($GuiColor)
Return $Colors[2]
Case $ColorButton[3]
GUIDelete($GuiColor)
Return $Colors[3]
Case $ColorButton[4]
GUIDelete($GuiColor)
Return $Colors[4]
Case $ColorButton[5]
GUIDelete($GuiColor)
Return $Colors[5]
Case $ColorButton[6]
GUIDelete($GuiColor)
Return $Colors[6]
Case $ColorButton[7]
GUIDelete($GuiColor)
Return $Colors[7]
Case $ColorButton[8]
GUIDelete($GuiColor)
Return $Colors[8]
Case $ColorButton[9]
GUIDelete($GuiColor)
Return $Colors[9]
Case $ColorButton[10]
GUIDelete($GuiColor)
Return $Colors[10]
Case $ColorButton[11]
GUIDelete($GuiColor)
Return $Colors[11]
Case $ColorButton[12]
GUIDelete($GuiColor)
Return $Colors[12]
Case $ColorButton[13]
GUIDelete($GuiColor)
Return $Colors[13]
Case $ColorButton[14]
GUIDelete($GuiColor)
Return $Colors[14]
Case $ColorButton[15]
GUIDelete($GuiColor)
Return $Colors[15]
EndSwitch
WEnd
EndFunc
Func _SaveAnim()
; Sauvegarde la page...
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
$CurrentPixel[$CurrentPage][$i][$j] = $PixelsGUI[$i][$j][1]
Next
Next
; Vérifis si le script a déjà été enregistré...
If $File = ":" Then
$File = FileSaveDialog("Sauvegarder mon animation...",@ScriptDir,"Fichiers PixelAnimator (*.pxa)")
If @error Then
$File = ":"
Else
$Script = _VarToScript()
If StringRight($File,4) <> ".pxa" Then $File &= ".pxa"
FileDelete($File)
If Not FileWrite($File,$Script) Then
MsgBox(48,"PixelAnimator","Attention : Impossible d'enregistrer l'animation !")
Else
$FileName = StringSplit($File,"\")
If $FileName[0] > 0 Then
$FileName = $FileName[$FileName[0]]
Else
$FileName = $File
EndIf
WinSetTitle($Gui,"","Pixel Animator ; "&$FileName)
MsgBox(64,"PixelAnimator","L'animation a été enregistré.")
EndIf
EndIf
Else
$Script = _VarToScript()
If StringRight($File,4) <> ".pxa" Then $File &= ".pxa"
FileDelete($File)
If Not FileWrite($File,$Script) Then
MsgBox(48,"PixelAnimator","Attention : Impossible d'enregistrer le script !")
Else
MsgBox(64,"PixelAnimator","L'animation a été enregistré.")
EndIf
EndIf
EndFunc
Func _VarToScript ()
; Sauvegarde la page...
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
$CurrentPixel[$CurrentPage][$i][$j] = $PixelsGUI[$i][$j][1]
Next
Next
Local $Script, $TimePage = String(GUICtrlRead($PageTimeSlider))
If StringLen($TimePage) = 3 Then
$Script = "0"&$TimePage
Else
$Script = $TimePage
EndIf
For $Page = 1 To 99 Step 1
If $Page > $PageMax Then ExitLoop
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
$Script &= _HexaColor2HexaPXA($CurrentPixel[$Page][$i][$j])
Next
Next
Next
Return $Script
EndFunc
Func _HexaColor2HexaPXA( $Hexa)
Switch $Hexa
Case $Colors[0]
Return "0"
Case $Colors[1]
Return "1"
Case $Colors[2]
Return "2"
Case $Colors[3]
Return "3"
Case $Colors[4]
Return "4"
Case $Colors[5]
Return "5"
Case $Colors[6]
Return "6"
Case $Colors[7]
Return "7"
Case $Colors[8]
Return "8"
Case $Colors[9]
Return "9"
Case $Colors[10]
Return "A"
Case $Colors[11]
Return "B"
Case $Colors[12]
Return "C"
Case $Colors[13]
Return "D"
Case $Colors[14]
Return "E"
Case $Colors[15]
Return "F"
Case Else
Return "0"
EndSwitch
EndFunc
Func _HexaPXA2HexaColor( $Hexa)
Switch $Hexa
Case "0"
Return $Colors[0]
Case "1"
Return $Colors[1]
Case "2"
Return $Colors[2]
Case "3"
Return $Colors[3]
Case "4"
Return $Colors[4]
Case "5"
Return $Colors[5]
Case "6"
Return $Colors[6]
Case "7"
Return $Colors[7]
Case "8"
Return $Colors[8]
Case "9"
Return $Colors[9]
Case "A"
Return $Colors[10]
Case "B"
Return $Colors[11]
Case "C"
Return $Colors[12]
Case "D"
Return $Colors[13]
Case "E"
Return $Colors[14]
Case "F"
Return $Colors[15]
EndSwitch
EndFunc
Func _View()
; Sauvegarde la page...
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
$CurrentPixel[$CurrentPage][$i][$j] = $PixelsGUI[$i][$j][1]
Next
Next
; Cache la GUI...
;GUISetState(@SW_HIDE,$Gui)
; Crée la GUI de visualisation...
Global $GuiView = GUICreate("Pixel Animator ; Visualisation",600,450)
Dim $PixelsGUIView[9][12]
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
$PixelsGUIView[$i][$j] = GUICtrlCreateLabel("",$j*50,$i*50,50,50)
GUICtrlSetBkColor($PixelsGUIView[$i][$j],$CurrentPixel[1][$i][$j])
Next
Next
GUISetState(@SW_SHOW,$GuiView)
;GUISwitch($GuiView)
Opt("GUIOnEventMode", 1)
GUISetOnEvent($GUI_EVENT_CLOSE,"__CloseViewWindows")
$TimePage = GUICtrlRead($PageTimeSlider)
Global $ExitViewLoop = False
While 1
If $ExitViewLoop = True Then ExitLoop
For $Page = 1 To 99 Step 1
WinSetTitle($GuiView,"","Pixel Animator ; Visualisation : Image "&$Page)
If $Page > $PageMax Then ExitLoop
If $ExitViewLoop = True Then ExitLoop
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
GUICtrlSetBkColor($PixelsGUIView[$i][$j],$CurrentPixel[$Page][$i][$j])
Next
Next
Sleep($TimePage)
Next
WEnd
Opt("GUIOnEventMode", 0)
GUIDelete($GuiView)
Return 1
EndFunc
Func __CloseViewWindows()
$ExitViewLoop = True
Return 0
EndFunc
Func _Exit()
; Vérifis si l'animation a été enregistré...
If _VarToScript() <> FileRead($File) And $AlsoModified Then
$Msg = MsgBox(3+48,"PixelAnimator","Attention : L'animation n'a pas été enregistré !"&@CRLF&"Voulez-vous l'enregistrer ?")
Switch $Msg
Case 6
_SaveAnim()
Exit
Case 7
Exit
Case Else
Return 0
EndSwitch
Else
Exit
EndIf
EndFunc
Func _SendAnim()
; Prépare l'animation...
$Script = _VarToScript()
; Vérifis la connection internet...
SplashTextOn("PixelAnimator ; Connection","Connection au serveur de PixelAnimator en cours...",500,50)
If Not _INetGetSource("http://pixel.lecoindaide.com/server") Then
SplashOff()
MsgBox(16,"PixelAnimator","Erreur : Impossible de se connecter au serveur !"&@CRLF&"Vérifiez votre connection Internet ou réessayez plus tard.")
Return 0
EndIf
; Envoie le script sur le serveur...
;$Header = "Content-Type: application/x-www-form-urlencoded"
$Host = "pixel.lecoindaide.com"
$File = "/server/index.php"
$URL = "http://" & $Host & $File
$PostData = "script="&$Script
$Socket = _HTTPConnect($Host)
_HTTPPost($Host, $File, $Socket, $PostData)
$recv = _HTTPRead($Socket,0)
_HTTPClose($Socket)
SplashOff()
; Traite la réponse...
If $recv = 0 Then
MsgBox(16,"PixelAnimator","Erreur : Le serveur n'est pas en mesure d'enregistrer votre animation !")
Else
MsgBox(64,"PixelAnimator","Votre animation a été envoyé."&@CRLF&"Son identifiant est "&$recv&".")
EndIf
EndFunc
Func _OpenScript()
; Vérifis si l'animation a été enregistré...
If _VarToScript() <> FileRead($File) And $AlsoModified Then
If MsgBox(4+48,"PixelAnimator","Attention : L'animation n'a pas été enregistré !"&@CRLF&"Voulez-vous l'enregistrer ?") = 6 Then
_SaveAnim()
EndIf
EndIf
; Choix de l'animation à ouvrir...
$GuiOpen = GUICreate("PixelAnimator ; Ouvrir une animation",300,190)
$FileButton = GUICtrlCreateButton("Ouvrir un fichier",10,10,280,80)
GUICtrlSetFont($FileButton,Default,Default,Default,"Arial Black")
$OnlineButton = GUICtrlCreateButton("Ouvrir une animation en ligne",10,100,280,80)
GUICtrlSetFont($OnlineButton,Default,Default,Default,"Arial Black")
GUISetState(@SW_SHOW,$GuiOpen)
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
GUIDelete($GuiOpen)
Return 0
Case $FileButton
$File = FileOpenDialog("Choisissez un fichier à ouvrir...",@ScriptDir,"Fichiers PixelAnimator (*.pxa)")
If @error Then
$File = ":"
Else
$FileName = StringSplit($File,"\")
If $FileName[0] > 0 Then
$FileName = $FileName[$FileName[0]]
Else
$FileName = $File
EndIf
WinSetTitle($Gui,"","Pixel Animator ; "&$FileName)
_LoadAnim(FileRead($File))
ExitLoop
EndIf
Case $OnlineButton
GUIDelete($GuiOpen)
SplashTextOn("PixelAnimator ; Connection","Connection au serveur de PixelAnimator en cours...",500,50)
If Not _INetGetSource("http://pixel.lecoindaide.com/server") Then
SplashOff()
MsgBox(16,"PixelAnimator","Erreur : Impossible de se connecter au serveur !"&@CRLF&"Vérifiez votre connection Internet ou réessayez plus tard.")
Return 0
EndIf
SplashOff()
$GuiOnline = GUICreate("PixelAnimator ; Animations en ligne",500,150)
$AnimeNoLabel = GUICtrlCreateLabel("Nombre d'animations publiés : "&_INetGetSource("http://pixel.lecoindaide.com/server/current"),10,10,480,30)
GUICtrlSetFont($AnimeNoLabel,Default,Default,Default,"Arial Black")
$AnimeNameLabel = GUICtrlCreateLabel("Entrez l'ID de l'animation à ouvrir :",10,50,210,30)
GUICtrlSetFont($AnimeNameLabel,Default,Default,Default,"Arial Black")
$AnimeNameInput = GUICtrlCreateInput("",230,50,70,20)
GUICtrlSetFont($AnimeNameInput,Default,Default,Default,"Arial Black")
$DownLoadButton = GUICtrlCreateButton("Télécharger",310,50,100,20)
GUICtrlSetFont($DownLoadButton,Default,Default,Default,"Arial Black")
$DownLoadRandomButton = GUICtrlCreateButton("Ouvrir une animation au hasard",10,100,200,30)
GUICtrlSetFont($DownLoadRandomButton,Default,Default,Default,"Arial Black")
GUISetState(@SW_SHOW,$GuiOnline)
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
GUIDelete($GuiOnline)
Return 0
Case $DownLoadButton
$ID = Number(GUICtrlRead($AnimeNameInput))
GUIDelete($GuiOnline)
SplashTextOn("PixelAnimator ; Connection","Connection au serveur de PixelAnimator en cours...",500,50)
$AnimScript = _INetGetSource("http://pixel.lecoindaide.com/server/index.php?id="&$ID)
If Not $AnimScript Then
SplashOff()
MsgBox(16,"PixelAnimator","Erreur : Impossible de se connecter au serveur !"&@CRLF&"Vérifiez votre connection Internet ou réessayez plus tard."&@CRLF&"Il est également possible que l'animation demandé n'existe pas.")
Return 0
EndIf
SplashOff()
_LoadAnim($AnimScript)
$AlsoModified = True
$File = ":"
WinSetTitle($Gui,"","Pixel Animator ; Animation en ligne ID "&$ID)
Return 0
Case $DownLoadRandomButton
$ID = Random(1,Number(_INetGetSource("http://pixel.lecoindaide.com/server/current")),1)
GUIDelete($GuiOnline)
SplashTextOn("PixelAnimator ; Connection","Connection au serveur de PixelAnimator en cours...",500,50)
$AnimScript = _INetGetSource("http://pixel.lecoindaide.com/server/index.php?id="&$ID)
If Not $AnimScript Then
SplashOff()
MsgBox(16,"PixelAnimator","Erreur : Impossible de se connecter au serveur !"&@CRLF&"Vérifiez votre connection Internet ou réessayez plus tard."&@CRLF&"Il est également possible que l'animation demandé n'existe pas.")
Return 0
EndIf
SplashOff()
_LoadAnim($AnimScript)
$AlsoModified = True
$File = ":"
WinSetTitle($Gui,"","Pixel Animator ; Animation en ligne ID "&$ID)
Return 0
EndSwitch
WEnd
EndSwitch
WEnd
GUIDelete($GuiOpen)
Return 1
EndFunc
Func _LoadAnim ($Anim)
GUICtrlSetData($PageTimeSlider,StringLeft($Anim,4))
$Anim = StringTrimLeft($Anim,4)
$PageMax = 0
For $Page = 1 To 99 Step 1
$PageContent = StringMid($Anim,(($Page-1)*108)+1,108)
If $PageContent = "" Then ExitLoop
$PageMax += 1
$k = 1
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
$CurrentPixel[$Page][$i][$j] = _HexaPXA2HexaColor(StringMid($PageContent,$k,1))
$k += 1
Next
Next
Next
; Affiche la page...
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
$PixelsGUI[$i][$j][1] = $CurrentPixel[1][$i][$j]
GUICtrlSetBkColor($PixelsGUI[$i][$j][0],$CurrentPixel[1][$i][$j])
Next
Next
$CurrentPage = 1
GUICtrlSetData($PageNoLabel,1)
Return 0
EndFunc
Func __OnHeaderPressed()
GUICtrlSetStyle($HeaderLabel,$SS_CENTER,$WS_EX_CLIENTEDGE)
$GuiAbout = GUICreate("PixelAnimator ; Informations",500,400)
GUICtrlCreatePic(@ScriptDir&"\Logo.bmp",390,10,100,100)
GUICtrlCreateLabel("PixelAnimator 1.0",10,10,350,50,$SS_CENTER)
GUICtrlSetFont(-1,15,Default,Default,"Arial Black")
GUICtrlCreateLabel( "PixelAnimator™ est une marque du site LeCoindAide.com"&@CRLF&"© 2012 Le Coin d'Aide, touts droits reservé.",10,70,350,50)
GUICtrlSetFont(-1,Default,Default,Default,"Arial Black")
GUICtrlCreateLabel( "Développé par TT22 pour Le Coin d'Aide."&@CRLF&"Remerciments : Greg pour l'UDF HTTP.au3"&@CRLF&@CRLF&"Ce logiciel utilise le serveur PixelAnimator à l'adresse ""pixel.lecoindaide.com/server""."&@CRLF&@CRLF& _
"Le Coin d'Aide n'est pas responsable des contenus publiés sur son serveur."&@CRLF&"Si vous trouvez des contenus que vous jugez innapropriés, merci des les signaler à ""admin@lecoindaide.com"""&@CRLF&@CRLF& _
"Vous devez être connecté à internet pour utiliser les fonctions de publication et de téléchargement d'animations.",10,130,480,200)
GUICtrlSetFont(-1,Default,1000,Default,"Arial Black")
$SiteButton = GUICtrlCreateButton("Visiter notre site",100,330,300,50)
GUICtrlSetFont($SiteButton,10,1000,Default,"Arial Black")
GUISetState(@SW_SHOW,$GuiAbout)
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
Case $SiteButton
ShellExecute("http://pixel.lecoindaide.com")
EndSwitch
WEnd
GUIDelete($GuiAbout)
GUICtrlSetStyle($HeaderLabel,$SS_CENTER,$WS_EX_DLGMODALFRAME)
EndFunc
Func _Case ($GuiMsg)
Switch $GuiMsg
Case $GUI_EVENT_CLOSE
_Exit()
Case $HeaderLabel
__OnHeaderPressed()
Case $MainColorButton
$CurrentColorTmp = _ColorWindow()
If String($CurrentColorTmp) <> "guiclosed" Then
$AlsoModified = True
$CurrentColor = $CurrentColorTmp
EndIf
Case $BackColorButton
$BackGroundTmp = _ColorWindow()
If String($BackGroundTmp) <> "guiclosed" Then
$AlsoModified = True
$OldBackGround = $BackGround
$BackGround = $BackGroundTmp
; Change le fond de la page...
For $i = 0 To 8 Step 1
For $j = 0 To 11 Step 1
If $PixelsGUI[$i][$j][1] = $OldBackGround Then
$PixelsGUI[$i][$j][1] = $BackGround
$CurrentPixel[$CurrentPage][$i][$j] = $BackGround
GUICtrlSetBkColor($PixelsGUI[$i][$j][0],$BackGround)
EndIf
Next
Next
EndIf
Case $BackPageButton
_ChangePage(-1)
Case $NextPageButton
_ChangePage(1)
Case $SaveButton
_SaveAnim()
Case $ViewButton
_View()
Case $OpenButton
_OpenScript()
Case $SendButton
_SendAnim()
Case $PixelsGUI[0][0][0]
_SetPixelColor (0, 0)
Case $PixelsGUI[0][1][0]
_SetPixelColor (0, 1)
Case $PixelsGUI[0][2][0]
_SetPixelColor (0, 2)
Case $PixelsGUI[0][3][0]
_SetPixelColor (0, 3)
Case $PixelsGUI[0][4][0]
_SetPixelColor (0, 4)
Case $PixelsGUI[0][5][0]
_SetPixelColor (0, 5)
Case $PixelsGUI[0][6][0]
_SetPixelColor (0, 6)
Case $PixelsGUI[0][7][0]
_SetPixelColor (0, 7)
Case $PixelsGUI[0][8][0]
_SetPixelColor (0, 8)
Case $PixelsGUI[0][9][0]
_SetPixelColor (0, 9)
Case $PixelsGUI[0][10][0]
_SetPixelColor (0, 10)
Case $PixelsGUI[0][11][0]
_SetPixelColor (0, 11)
Case $PixelsGUI[1][0][0]
_SetPixelColor (1, 0)
Case $PixelsGUI[1][1][0]
_SetPixelColor (1, 1)
Case $PixelsGUI[1][2][0]
_SetPixelColor (1, 2)
Case $PixelsGUI[1][3][0]
_SetPixelColor (1, 3)
Case $PixelsGUI[1][4][0]
_SetPixelColor (1, 4)
Case $PixelsGUI[1][5][0]
_SetPixelColor (1, 5)
Case $PixelsGUI[1][6][0]
_SetPixelColor (1, 6)
Case $PixelsGUI[1][7][0]
_SetPixelColor (1, 7)
Case $PixelsGUI[1][8][0]
_SetPixelColor (1, 8)
Case $PixelsGUI[1][9][0]
_SetPixelColor (1, 9)
Case $PixelsGUI[1][10][0]
_SetPixelColor (1, 10)
Case $PixelsGUI[1][11][0]
_SetPixelColor (1, 11)
Case $PixelsGUI[2][0][0]
_SetPixelColor (2, 0)
Case $PixelsGUI[2][1][0]
_SetPixelColor (2, 1)
Case $PixelsGUI[2][2][0]
_SetPixelColor (2, 2)
Case $PixelsGUI[2][3][0]
_SetPixelColor (2, 3)
Case $PixelsGUI[2][4][0]
_SetPixelColor (2, 4)
Case $PixelsGUI[2][5][0]
_SetPixelColor (2, 5)
Case $PixelsGUI[2][6][0]
_SetPixelColor (2, 6)
Case $PixelsGUI[2][7][0]
_SetPixelColor (2, 7)
Case $PixelsGUI[2][8][0]
_SetPixelColor (2, 8)
Case $PixelsGUI[2][9][0]
_SetPixelColor (2, 9)
Case $PixelsGUI[2][10][0]
_SetPixelColor (2, 10)
Case $PixelsGUI[2][11][0]
_SetPixelColor (2, 11)
Case $PixelsGUI[3][0][0]
_SetPixelColor (3, 0)
Case $PixelsGUI[3][1][0]
_SetPixelColor (3, 1)
Case $PixelsGUI[3][2][0]
_SetPixelColor (3, 2)
Case $PixelsGUI[3][3][0]
_SetPixelColor (3, 3)
Case $PixelsGUI[3][4][0]
_SetPixelColor (3, 4)
Case $PixelsGUI[3][5][0]
_SetPixelColor (3, 5)
Case $PixelsGUI[3][6][0]
_SetPixelColor (3, 6)
Case $PixelsGUI[3][7][0]
_SetPixelColor (3, 7)
Case $PixelsGUI[3][8][0]
_SetPixelColor (3, 8)
Case $PixelsGUI[3][9][0]
_SetPixelColor (3, 9)
Case $PixelsGUI[3][10][0]
_SetPixelColor (3, 10)
Case $PixelsGUI[3][11][0]
_SetPixelColor (3, 11)
Case $PixelsGUI[4][0][0]
_SetPixelColor (4, 0)
Case $PixelsGUI[4][1][0]
_SetPixelColor (4, 1)
Case $PixelsGUI[4][2][0]
_SetPixelColor (4, 2)
Case $PixelsGUI[4][3][0]
_SetPixelColor (4, 3)
Case $PixelsGUI[4][4][0]
_SetPixelColor (4, 4)
Case $PixelsGUI[4][5][0]
_SetPixelColor (4, 5)
Case $PixelsGUI[4][6][0]
_SetPixelColor (4, 6)
Case $PixelsGUI[4][7][0]
_SetPixelColor (4, 7)
Case $PixelsGUI[4][8][0]
_SetPixelColor (4, 8)
Case $PixelsGUI[4][9][0]
_SetPixelColor (4, 9)
Case $PixelsGUI[4][10][0]
_SetPixelColor (4, 10)
Case $PixelsGUI[4][11][0]
_SetPixelColor (4, 11)
Case $PixelsGUI[5][0][0]
_SetPixelColor (5, 0)
Case $PixelsGUI[5][1][0]
_SetPixelColor (5, 1)
Case $PixelsGUI[5][2][0]
_SetPixelColor (5, 2)
Case $PixelsGUI[5][3][0]
_SetPixelColor (5, 3)
Case $PixelsGUI[5][4][0]
_SetPixelColor (5, 4)
Case $PixelsGUI[5][5][0]
_SetPixelColor (5, 5)
Case $PixelsGUI[5][6][0]
_SetPixelColor (5, 6)
Case $PixelsGUI[5][7][0]
_SetPixelColor (5, 7)
Case $PixelsGUI[5][8][0]
_SetPixelColor (5, 8)
Case $PixelsGUI[5][9][0]
_SetPixelColor (5, 9)
Case $PixelsGUI[5][10][0]
_SetPixelColor (5, 10)
Case $PixelsGUI[5][11][0]
_SetPixelColor (5, 11)
Case $PixelsGUI[6][0][0]
_SetPixelColor (6, 0)
Case $PixelsGUI[6][1][0]
_SetPixelColor (6, 1)
Case $PixelsGUI[6][2][0]
_SetPixelColor (6, 2)
Case $PixelsGUI[6][3][0]
_SetPixelColor (6, 3)
Case $PixelsGUI[6][4][0]
_SetPixelColor (6, 4)
Case $PixelsGUI[6][5][0]
_SetPixelColor (6, 5)
Case $PixelsGUI[6][6][0]
_SetPixelColor (6, 6)
Case $PixelsGUI[6][7][0]
_SetPixelColor (6, 7)
Case $PixelsGUI[6][8][0]
_SetPixelColor (6, 8)
Case $PixelsGUI[6][9][0]
_SetPixelColor (6, 9)
Case $PixelsGUI[6][10][0]
_SetPixelColor (6, 10)
Case $PixelsGUI[6][11][0]
_SetPixelColor (6, 11)
Case $PixelsGUI[7][0][0]
_SetPixelColor (7, 0)
Case $PixelsGUI[7][1][0]
_SetPixelColor (7, 1)
Case $PixelsGUI[7][2][0]
_SetPixelColor (7, 2)
Case $PixelsGUI[7][3][0]
_SetPixelColor (7, 3)
Case $PixelsGUI[7][4][0]
_SetPixelColor (7, 4)
Case $PixelsGUI[7][5][0]
_SetPixelColor (7, 5)
Case $PixelsGUI[7][6][0]
_SetPixelColor (7, 6)
Case $PixelsGUI[7][7][0]
_SetPixelColor (7, 7)
Case $PixelsGUI[7][8][0]
_SetPixelColor (7, 8)
Case $PixelsGUI[7][9][0]
_SetPixelColor (7, 9)
Case $PixelsGUI[7][10][0]
_SetPixelColor (7, 10)
Case $PixelsGUI[7][11][0]
_SetPixelColor (7, 11)
Case $PixelsGUI[8][0][0]
_SetPixelColor (8, 0)
Case $PixelsGUI[8][1][0]
_SetPixelColor (8, 1)
Case $PixelsGUI[8][2][0]
_SetPixelColor (8, 2)
Case $PixelsGUI[8][3][0]
_SetPixelColor (8, 3)
Case $PixelsGUI[8][4][0]
_SetPixelColor (8, 4)
Case $PixelsGUI[8][5][0]
_SetPixelColor (8, 5)
Case $PixelsGUI[8][6][0]
_SetPixelColor (8, 6)
Case $PixelsGUI[8][7][0]
_SetPixelColor (8, 7)
Case $PixelsGUI[8][8][0]
_SetPixelColor (8, 8)
Case $PixelsGUI[8][9][0]
_SetPixelColor (8, 9)
Case $PixelsGUI[8][10][0]
_SetPixelColor (8, 10)
Case $PixelsGUI[8][11][0]
_SetPixelColor (8, 11)
EndSwitch
EndFunc