Difference de taille de l'exe PB 3.94 -> PB 4.00

Sujets variés concernant le développement en PureBasic
Avatar de l’utilisateur
flaith
Messages : 1487
Inscription : jeu. 07/avr./2005 1:06
Localisation : Rennes
Contact :

Difference de taille de l'exe PB 3.94 -> PB 4.00

Message par flaith »

Tout d'abord, bravo et merci à toute l'équipe pour ce bel outil :D

un des points de la version 4 est qu'elle permet de faire un executable plus petit que son prédécesseur, or j'ai un programme qui est plus gros en v4 qu'en v3.94 de 29.5Ko je passes à 33Ko

je vous livre les deux sources, j'aimerais que vous m'indiquiez si vous avez la même chose et pourquoi
D'avance merci :wink:

version PB3.94

Code : Tout sélectionner

Global hwnd_gadget.l
Global Resultat.l

NewList Text_Ogame.s()        ; Liste de 'string'

#Title = "__OGAME__ [Flaith 2005 v0.09a]"

Enumeration
  #Window_Ogame
  #Panel
  #Tab_1
  #Tab_2
  #Text_from_web
  #Gadget_Form_Text
  #Button_Paste
  #Button_Extract
  #Button_Save
  #Button_Quit
  #Button_OK
  #Gadget_Form_Editor_Output
  #Gadget_Form_Editor_File
  #Gadget_Info_Line
  #Label_1
  #Label_Line

  #Liste
  
  #overview
  #imperium
  #messages
EndEnumeration

;- Fonts
;
Global FontID1
FontID1 = LoadFont(1, "Verdana", 10, #PB_Font_Bold)
Global FontID2
FontID2 = LoadFont(2, "Verdana", 8) ;, #PB_Font_Italic)
Global FontID3
FontID3 = LoadFont(3, "Terminal", 6) ;, #PB_Font_Italic)
Global FontID4
FontID4 = LoadFont(4, "Courier New", 8) ;, #PB_Font_Bold)

Global session.s


; // METTRE N° DE SESSION ICI

session = "25b0150b68a0"

Procedure.l Window_Ogame()
  If OpenWindow(#Window_Ogame,80,80,740,625,#PB_Window_ScreenCentered|#PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_Invisible,#Title)
    If CreateGadgetList(WindowID(#Window_Ogame))
      PanelGadget(#Panel,10,10,725,610)
      AddGadgetItem(#Panel,-1,"OGAME")
        SetGadgetFont(#Panel,FONTID4)

      hwnd_gadget=EditorGadget(#Text_from_web,5,25,645,555)
        SetGadgetFont(#Text_from_web,FONTID4)
        SendMessage_(hwnd_gadget, #EM_SETREADONLY , #True, #Null)                  ;On ne peut rien saisir
        
      ;TextGadget(#Label_1,5,8,700,15,"<Paste the "+Chr(34)+"EMPIRE"+Chr(34)+" area just bellow>")
      ;  SetGadgetFont(#Label_1,FONTID4)
      TextGadget(#Label_1,5,8,700,15,"Clic on the "+Chr(34)+"Paste"+Chr(34)+" button !!!")
        SetGadgetFont(#Label_1,FONTID4)

      TextGadget(#Label_Line,655,565,50,15,"0 Line")
        SetGadgetFont(#Label_Line,FONTID3)

      ButtonGadget(#Button_Paste,655,25,60,40,"&Paste")
        SetGadgetFont(#Button_Paste,FONTID4)
      ButtonGadget(#Button_Extract,655,70,60,40,"E&xtract")
        SetGadgetFont(#Button_Extract,FONTID4)
      ButtonGadget(#Button_Save,655,115,60,40,"&Save")
        SetGadgetFont(#Button_Save,FONTID4)
      ButtonGadget(#Button_Quit,655,205,60,40,"&Quit")
        SetGadgetFont(#Button_Quit,FONTID4)

      AddGadgetItem(#Panel,-1,"Pages WEB")
        SetGadgetFont(#Panel,FONTID4)
        ;WebGadget(#overview,5,45,645,505,"http://ogame314.de/game/overview.php?session="+session)

      ComboBoxGadget(#Liste, 5, 15, 400, 100)
      AddGadgetItem(#Liste,-1,"Vue Générale")
      AddGadgetItem(#Liste,-1,"Empire")
      AddGadgetItem(#Liste,-1,"Messages")
      SetGadgetState(#liste,0)


;       AddGadgetItem(#Panel,-1,"Empire")
;         SetGadgetFont(#Panel,FONTID4)
;         WebGadget(#imperium,5,25,645,555,"http://ogame314.de/game/imperium.php?session="+session+"&planettype=1")
; 
;       AddGadgetItem(#Panel,-1,"Messages")
;         SetGadgetFont(#Panel,FONTID4)
;         WebGadget(#messages,5,25,645,555,"http://ogame314.de/game/messages.php?session="+session)

;      EditorGadget(#Gadget_Form_Editor_File,5,5,710,555)
;        SetGadgetFont(#Gadget_Form_Editor_File,FONTID1)
;      TextGadget(#Gadget_Info_Line,5,570,60,15,"0 Line")
;      ButtonGadget(#Button_OK,655,565,60,20,"Calcul")

      CloseGadgetList()
      ActivateGadget(#Text_from_web)
      HideWindow(#Window_Ogame,0)
      ProcedureReturn WindowID()
    EndIf
  EndIf
EndProcedure

Procedure proc_Do(TheVal.l)

Dim planet.s(10)
Dim metal.s(10)
Dim cristal.s(10)
Dim deuterium.s(10)

Protected val_metal.l
Protected cristal.l
Protected deuterium.l

  Select TheVal
    
    Case 1        ; Paste
      clip.s = GetClipboardText()                                         ; on récupère ce qu'il y a dans le clipboard
      If FindString(clip,"Vue d'ensemble de votre empire",0) < 1          ; position du string < 1 donc pas trouvé
        MessageRequester("Information","Not the "+Chr(34)+"Empire"+Chr(34)+" stuff !!!",0)
      Else                                                                ; ce sont les bonnes infos, on continu
        If Len(clip) < 100                                                ; si c'est inférieur à 100 car. on a pas copié
          MessageRequester("Information","Nothing has been Copied !!!",0) ; la zone complète "empire" d'ogame
        Else
          SetGadgetText(#Text_from_web, clip)                             ; on affiche ce que l'on a copié
          Resultat = 0
          Resultat = CountGadgetItems(#Text_from_web)                     ; nbre de lignes total
          If Resultat <> 0
            SetGadgetText(#Label_Line, Str(Resultat)+" Line(s)")          ; on affiche le nombre de lignes
          Else
            MessageRequester("Information","Nothing has been Copied !!!",0)
          EndIf
          ActivateGadget(#Text_from_web)                                  ; focus sur le zone texte
        EndIf
      EndIf
    
    Case 2        ; Extract
      If Resultat <> 0                                                    ; si nbre de lignes <> 0
      ClearList(Text_Ogame())
        For i = 0 To Resultat
          text.s = GetGadgetItemText(#Text_from_web,i,0)                  ; on récupère chaque ligne
          text = Trim(ReplaceString(text, Chr(9), "|"))                   ; on change tab par un "|" et trim les espaces
          If Len(text) > 5    ; au moins 5 Car                            ; on met dans une liste chaque ligne du texte

            ;-// NOM DES PLANETES
          
            If UCase(Left(text,3)) = "NOM"                                ; ici on récupère le nom des planètes

              NB_Planet = CountString(text, "|")                          ; Le nombre de planètes
              If NB_Planet > 0
                Chaine.s = RemoveString(text, "Nom |", 1)
                Lines$ = ""
              
                For Nb = 1 To nb_planet
                  planet(Nb) = Trim(StringField(chaine, Nb, "|"))
                  Lines$ = Lines$ + "[" + planet(nb) + "]" + Chr(13) + Chr(10)
                Next    
              EndIf

            EndIf
            
            ;-// METAL

            If Left(text,5) = "Métal"
              If NB_Planet > 0
                Chaine.s = RemoveString(text, "Métal |", 1)
                val_metal = 0
              
                For Nb = 1 To nb_planet
                  metal(Nb) = Trim(StringField(chaine, Nb, "|"))
                Next    
                
                For Nb = 1 To nb_planet
                  metal(Nb) = RemoveString(metal(nb),".",1)
                  metal(Nb) = ReplaceString(metal(nb)," ","",1,1)
                  val_metal = val_metal + Val(StringField(metal(Nb),1,"/"))
                Next    
          
                Lines$ = Lines$ + Chr(13) + Chr(10) + "Valeur total de métal = "+Str(val_metal)
                
              EndIf
            EndIf

            ;-// CRISTAL

            If Left(text,5) = "Crist"
              If NB_Planet > 0
                Chaine.s = RemoveString(text, "Cristal |", 1)
                val_cristal = 0
              
                For Nb = 1 To nb_planet
                  cristal(Nb) = Trim(StringField(chaine, Nb, "|"))
                Next    
                
                For Nb = 1 To nb_planet
                  cristal(Nb) = RemoveString(cristal(nb),".",1)
                  cristal(Nb) = ReplaceString(cristal(nb)," ","",1,1)
                  val_cristal = val_cristal + Val(StringField(cristal(Nb),1,"/"))
                Next    
          
                Lines$ = Lines$ + Chr(13) + Chr(10) + "Valeur total de cristal = "+Str(val_cristal)
                
              EndIf
            EndIf

            ;-// DEUTERIUM

            If Left(text,5) = "Deuté"
              If NB_Planet > 0
                Chaine.s = RemoveString(text, "Deutérium |", 1)
                val_deuterium = 0
              
                For Nb = 1 To nb_planet
                  deuterium(Nb) = Trim(StringField(chaine, Nb, "|"))
                Next    
                
                For Nb = 1 To nb_planet
                  deuterium(Nb) = RemoveString(deuterium(nb),".",1)
                  deuterium(Nb) = ReplaceString(deuterium(nb)," ","",1,1)
                  val_deuterium = val_deuterium + Val(StringField(deuterium(Nb),1,"/"))
                Next    
          
                Lines$ = Lines$ + Chr(13) + Chr(10) + "Valeur total de deutérium = "+Str(val_deuterium)
                
              EndIf
            EndIf

            AddElement(Text_Ogame())
            Text_Ogame() = text
          EndIf
        Next i
        
        SetGadgetText(#Text_from_web,"")                                  ; efface la zone texte
        
        ResetList(Text_Ogame())                                           ; top de la liste des éléments
        While NextElement(Text_Ogame())                                   ; tant qu'il y a un élément suivant
          AddGadgetItem(#Text_from_web,-1,Text_Ogame(),0)                 ; on ajoute dans la zone texte l'élément
        Wend
        SetGadgetText(#Label_Line, Str(CountList(Text_Ogame()))+" Line(s)")
        If NB_Planet > 0
          MessageRequester("Planet","Your planets : "+Chr(13)+Chr(10)+Lines$,0)
        EndIf
      Else
        MessageRequester("Information","You must paste first !!!",0)      ; si nbre de ligne = 0
      EndIf
    
    
    Case 3
  
  EndSelect

EndProcedure

;-Main Loop
If Window_Ogame()
  SendMessage_(hwnd_gadget, #EM_SETBKGNDCOLOR, 0, RGB(180,180,180))       ; couleur de fond
  quitForm=0

  AddElement(Text_Ogame())

  Repeat
    EventID  =WaitWindowEvent()
    MenuID   =EventMenuID()
    GadgetID =EventGadgetID()
    WindowID =EventWindowID()

    Select EventID
      Case #PB_Event_CloseWindow
        If WindowID=#Window_Ogame
          quitForm=1
        EndIf


      Case #PB_Event_Gadget
        Select GadgetID
          Case #Tab_1
          Case #Tab_2
          Case #Text_from_web
          Case #Button_Paste
            proc_Do(1)
          Case #Button_Extract
            proc_Do(2)
          Case #Button_Save
;            proc_Do(3)
          Case #Liste
;              valeur_combo.l = GetGadgetState(#liste)
;              Select valeur_combo
;                 Case 0
;                   WebGadget(#overview,5,45,645,505,"http://ogame314.de/game/overview.php?session="+session)
;                 Case 1
;                   WebGadget(#imperium,5,45,645,505,"http://ogame314.de/game/imperium.php?session="+session+"&planettype=1")
;                 Case 2
;                   WebGadget(#messages,5,45,645,505,"http://ogame314.de/game/messages.php?session="+session)
;              EndSelect
          Case #Button_Quit
            quitForm = 1
          Case #Gadget_Form_Editor_File
;          Case #Button_OK

        EndSelect

    EndSelect
  Until quitForm
  CloseWindow(#Window_Ogame)
EndIf
End

DataSection

  labels:
    Data.s "Ressources","Bâtiments","Recherche","Vaisseaux","Défense"

  Ressources:
    Data.s "Nom","Métal","Cristal","Deutérium","Energie"

  Batiments:
    Data.s "Mine de métal","Mine de cristal","Synthétiseur de deutérium","Centrale électrique solaire"
    Data.s "Centrale électrique de fusion","Usine de robots","Usine de nanites","Chantier spatial"
    Data.s "Hangar de métal","Hangar de cristal","Réservoir de deutérium","Laboratoire de recherche"
    Data.s "Silo de missiles"

  Recherche:
    Data.s "Technologie Espionnage","Technologie Ordinateur","Technologie Armes","Technologie Bouclier"
    Data.s "Technologie Protection des vaisseaux spatiaux","Technologie Energie","Technologie Hyperespace"
    Data.s "Réacteur à combustion","Réacteur à impulsion","Propulsion hyperespace","Technologie Laser"
    Data.s "Technologie Ions","Technologie Plasma"

  Vaisseaux:
    Data.s "Petit transporteur","Grand transporteur","Chasseur léger","Chasseur lourd","Croiseur"
    Data.s "Vaisseau de bataille","Vaisseau de colonisation","Recycleur","Sonde espionnage"
    Data.s "Bombardier","Satellite solaire"

  Defense:
    Data.s "Lanceur de missiles","Artillerie laser légère","Artillerie laser lourde","Canon de Gauss"
    Data.s "Artillerie à ions","Petit bouclier","Grand bouclier","Missile Interception"

EndDataSection
Version PV4.00b1

Code : Tout sélectionner

Global hwnd_gadget.l
Global Resultat.l

Global NewList Text_Ogame.s()        ; Liste de 'string'

#Title = "__OGAME__ [Flaith 2005 v0.09a]"

Enumeration
  #Window_Ogame
  #Panel
  #Tab_1
  #Tab_2
  #Text_from_web
  #Gadget_Form_Text
  #Button_Paste
  #Button_Extract
  #Button_Save
  #Button_Quit
  #Button_OK
  #Gadget_Form_Editor_Output
  #Gadget_Form_Editor_File
  #Gadget_Info_Line
  #Label_1
  #Label_Line

  #Liste
  
  #overview
  #imperium
  #messages
EndEnumeration

;- Fonts
;
Global FontID1
FontID1 = LoadFont(1, "Verdana", 10, #PB_Font_Bold)
Global FontID2
FontID2 = LoadFont(2, "Verdana", 8) ;, #PB_Font_Italic)
Global FontID3
FontID3 = LoadFont(3, "Terminal", 6) ;, #PB_Font_Italic)
Global FontID4
FontID4 = LoadFont(4, "Courier New", 8) ;, #PB_Font_Bold)

Global session.s


; // METTRE N° DE SESSION ICI

session = "25b0150b68a0"

Procedure.l Window_Ogame()
  If OpenWindow(#Window_Ogame,80,80,740,625,#PB_Window_ScreenCentered|#PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_Invisible,#Title)
    If CreateGadgetList(WindowID(#Window_Ogame))
      PanelGadget(#Panel,10,10,725,610)
      AddGadgetItem(#Panel,-1,"OGAME")
        SetGadgetFont(#Panel,FONTID4)

      hwnd_gadget=EditorGadget(#Text_from_web,5,25,645,555)
        SetGadgetFont(#Text_from_web,FONTID4)
        SendMessage_(hwnd_gadget, #EM_SETREADONLY , #True, #Null)                  ;On ne peut rien saisir
        
      ;TextGadget(#Label_1,5,8,700,15,"<Paste the "+Chr(34)+"EMPIRE"+Chr(34)+" area just bellow>")
      ;  SetGadgetFont(#Label_1,FONTID4)
      TextGadget(#Label_1,5,8,700,15,"Clic on the "+Chr(34)+"Paste"+Chr(34)+" button !!!")
        SetGadgetFont(#Label_1,FONTID4)

      TextGadget(#Label_Line,655,565,50,15,"0 Line")
        SetGadgetFont(#Label_Line,FONTID3)

      ButtonGadget(#Button_Paste,655,25,60,40,"&Paste")
        SetGadgetFont(#Button_Paste,FONTID4)
      ButtonGadget(#Button_Extract,655,70,60,40,"E&xtract")
        SetGadgetFont(#Button_Extract,FONTID4)
      ButtonGadget(#Button_Save,655,115,60,40,"&Save")
        SetGadgetFont(#Button_Save,FONTID4)
      ButtonGadget(#Button_Quit,655,205,60,40,"&Quit")
        SetGadgetFont(#Button_Quit,FONTID4)

      AddGadgetItem(#Panel,-1,"Pages WEB")
        SetGadgetFont(#Panel,FONTID4)
        ;WebGadget(#overview,5,45,645,505,"http://ogame314.de/game/overview.php?session="+session)

      ComboBoxGadget(#Liste, 5, 15, 400, 100)
      AddGadgetItem(#Liste,-1,"Vue Générale")
      AddGadgetItem(#Liste,-1,"Empire")
      AddGadgetItem(#Liste,-1,"Messages")
      SetGadgetState(#liste,0)


;       AddGadgetItem(#Panel,-1,"Empire")
;         SetGadgetFont(#Panel,FONTID4)
;         WebGadget(#imperium,5,25,645,555,"http://ogame314.de/game/imperium.php?session="+session+"&planettype=1")
; 
;       AddGadgetItem(#Panel,-1,"Messages")
;         SetGadgetFont(#Panel,FONTID4)
;         WebGadget(#messages,5,25,645,555,"http://ogame314.de/game/messages.php?session="+session)

;      EditorGadget(#Gadget_Form_Editor_File,5,5,710,555)
;        SetGadgetFont(#Gadget_Form_Editor_File,FONTID1)
;      TextGadget(#Gadget_Info_Line,5,570,60,15,"0 Line")
;      ButtonGadget(#Button_OK,655,565,60,20,"Calcul")

      CloseGadgetList()
      SetActiveGadget(#Text_from_web)
      HideWindow(#Window_Ogame,0)
      ProcedureReturn WindowID(#Window_Ogame)
    EndIf
  EndIf
EndProcedure

Procedure proc_Do(TheVal.l)

Dim planet.s(10)
Dim metal.s(10)
Dim cristal.s(10)
Dim deuterium.s(10)

Protected val_metal.l
Protected cristal.l
Protected deuterium.l

  Select TheVal
    
    Case 1        ; Paste
      clip.s = GetClipboardText()                                         ; on récupère ce qu'il y a dans le clipboard
      If FindString(clip,"Vue d'ensemble de votre empire",0) < 1          ; position du string < 1 donc pas trouvé
        MessageRequester("Information","Not the "+Chr(34)+"Empire"+Chr(34)+" stuff !!!",0)
      Else                                                                ; ce sont les bonnes infos, on continu
        If Len(clip) < 100                                                ; si c'est inférieur à 100 car. on a pas copié
          MessageRequester("Information","Nothing has been Copied !!!",0) ; la zone complète "empire" d'ogame
        Else
          SetGadgetText(#Text_from_web, clip)                             ; on affiche ce que l'on a copié
          Resultat = 0
          Resultat = CountGadgetItems(#Text_from_web)                     ; nbre de lignes total
          If Resultat <> 0
            SetGadgetText(#Label_Line, Str(Resultat)+" Line(s)")          ; on affiche le nombre de lignes
          Else
            MessageRequester("Information","Nothing has been Copied !!!",0)
          EndIf
          SetActiveGadget(#Text_from_web)                                  ; focus sur le zone texte
        EndIf
      EndIf
    
    Case 2        ; Extract
      If Resultat <> 0                                                    ; si nbre de lignes <> 0
      ClearList(Text_Ogame())
        For i = 0 To Resultat
          text.s = GetGadgetItemText(#Text_from_web,i,0)                  ; on récupère chaque ligne
          text = Trim(ReplaceString(text, Chr(9), "|"))                   ; on change tab par un "|" et trim les espaces
          If Len(text) > 5    ; au moins 5 Car                            ; on met dans une liste chaque ligne du texte

            ;-// NOM DES PLANETES
          
            If UCase(Left(text,3)) = "NOM"                                ; ici on récupère le nom des planètes

              NB_Planet = CountString(text, "|")                          ; Le nombre de planètes
              If NB_Planet > 0
                Chaine.s = RemoveString(text, "Nom |", 1)
                Lines$ = ""
              
                For Nb = 1 To nb_planet
                  planet(Nb) = Trim(StringField(chaine, Nb, "|"))
                  Lines$ = Lines$ + "[" + planet(nb) + "]" + Chr(13) + Chr(10)
                Next    
              EndIf

            EndIf
            
            ;-// METAL

            If Left(text,5) = "Métal"
              If NB_Planet > 0
                Chaine.s = RemoveString(text, "Métal |", 1)
                val_metal = 0
              
                For Nb = 1 To nb_planet
                  metal(Nb) = Trim(StringField(chaine, Nb, "|"))
                Next    
                
                For Nb = 1 To nb_planet
                  metal(Nb) = RemoveString(metal(nb),".",1)
                  metal(Nb) = ReplaceString(metal(nb)," ","",1,1)
                  val_metal = val_metal + Val(StringField(metal(Nb),1,"/"))
                Next    
          
                Lines$ = Lines$ + Chr(13) + Chr(10) + "Valeur total de métal = "+Str(val_metal)
                
              EndIf
            EndIf

            ;-// CRISTAL

            If Left(text,5) = "Crist"
              If NB_Planet > 0
                Chaine.s = RemoveString(text, "Cristal |", 1)
                val_cristal = 0
              
                For Nb = 1 To nb_planet
                  cristal(Nb) = Trim(StringField(chaine, Nb, "|"))
                Next    
                
                For Nb = 1 To nb_planet
                  cristal(Nb) = RemoveString(cristal(nb),".",1)
                  cristal(Nb) = ReplaceString(cristal(nb)," ","",1,1)
                  val_cristal = val_cristal + Val(StringField(cristal(Nb),1,"/"))
                Next    
          
                Lines$ = Lines$ + Chr(13) + Chr(10) + "Valeur total de cristal = "+Str(val_cristal)
                
              EndIf
            EndIf

            ;-// DEUTERIUM

            If Left(text,5) = "Deuté"
              If NB_Planet > 0
                Chaine.s = RemoveString(text, "Deutérium |", 1)
                val_deuterium = 0
              
                For Nb = 1 To nb_planet
                  deuterium(Nb) = Trim(StringField(chaine, Nb, "|"))
                Next    
                
                For Nb = 1 To nb_planet
                  deuterium(Nb) = RemoveString(deuterium(nb),".",1)
                  deuterium(Nb) = ReplaceString(deuterium(nb)," ","",1,1)
                  val_deuterium = val_deuterium + Val(StringField(deuterium(Nb),1,"/"))
                Next    
          
                Lines$ = Lines$ + Chr(13) + Chr(10) + "Valeur total de deutérium = "+Str(val_deuterium)
                
              EndIf
            EndIf

            AddElement(Text_Ogame())
            Text_Ogame() = text
          EndIf
        Next i
        
        SetGadgetText(#Text_from_web,"")                                  ; efface la zone texte
        
        ResetList(Text_Ogame())                                           ; top de la liste des éléments
        While NextElement(Text_Ogame())                                   ; tant qu'il y a un élément suivant
          AddGadgetItem(#Text_from_web,-1,Text_Ogame(),0)                 ; on ajoute dans la zone texte l'élément
        Wend
        SetGadgetText(#Label_Line, Str(CountList(Text_Ogame()))+" Line(s)")
        If NB_Planet > 0
          MessageRequester("Planet","Your planets : "+Chr(13)+Chr(10)+Lines$,0)
        EndIf
      Else
        MessageRequester("Information","You must paste first !!!",0)      ; si nbre de ligne = 0
      EndIf
    
    
    Case 3
  
  EndSelect

EndProcedure

;-Main Loop
If Window_Ogame()
  SendMessage_(hwnd_gadget, #EM_SETBKGNDCOLOR, 0, RGB(180,180,180))       ; couleur de fond
  quitForm=0

  AddElement(Text_Ogame())

  Repeat
    EventID  =WaitWindowEvent()
    MenuID   =EventMenu()
    GadgetID =EventGadget()
    WindowID =EventWindow()

    Select EventID
      Case #PB_Event_CloseWindow
        If WindowID=#Window_Ogame
          quitForm=1
        EndIf


      Case #PB_Event_Gadget
        Select GadgetID
          Case #Tab_1
          Case #Tab_2
          Case #Text_from_web
          Case #Button_Paste
            proc_Do(1)
          Case #Button_Extract
            proc_Do(2)
          Case #Button_Save
;            proc_Do(3)
          Case #Liste
;              valeur_combo.l = GetGadgetState(#liste)
;              Select valeur_combo
;                 Case 0
;                   WebGadget(#overview,5,45,645,505,"http://ogame314.de/game/overview.php?session="+session)
;                 Case 1
;                   WebGadget(#imperium,5,45,645,505,"http://ogame314.de/game/imperium.php?session="+session+"&planettype=1")
;                 Case 2
;                   WebGadget(#messages,5,45,645,505,"http://ogame314.de/game/messages.php?session="+session)
;              EndSelect
          Case #Button_Quit
            quitForm = 1
          Case #Gadget_Form_Editor_File
;          Case #Button_OK

        EndSelect

    EndSelect
  Until quitForm
  CloseWindow(#Window_Ogame)
EndIf
End

DataSection

  labels:
    Data.s "Ressources","Bâtiments","Recherche","Vaisseaux","Défense"

  Ressources:
    Data.s "Nom","Métal","Cristal","Deutérium","Energie"

  Batiments:
    Data.s "Mine de métal","Mine de cristal","Synthétiseur de deutérium","Centrale électrique solaire"
    Data.s "Centrale électrique de fusion","Usine de robots","Usine de nanites","Chantier spatial"
    Data.s "Hangar de métal","Hangar de cristal","Réservoir de deutérium","Laboratoire de recherche"
    Data.s "Silo de missiles"

  Recherche:
    Data.s "Technologie Espionnage","Technologie Ordinateur","Technologie Armes","Technologie Bouclier"
    Data.s "Technologie Protection des vaisseaux spatiaux","Technologie Energie","Technologie Hyperespace"
    Data.s "Réacteur à combustion","Réacteur à impulsion","Propulsion hyperespace","Technologie Laser"
    Data.s "Technologie Ions","Technologie Plasma"

  Vaisseaux:
    Data.s "Petit transporteur","Grand transporteur","Chasseur léger","Chasseur lourd","Croiseur"
    Data.s "Vaisseau de bataille","Vaisseau de colonisation","Recycleur","Sonde espionnage"
    Data.s "Bombardier","Satellite solaire"

  Defense:
    Data.s "Lanceur de missiles","Artillerie laser légère","Artillerie laser lourde","Canon de Gauss"
    Data.s "Artillerie à ions","Petit bouclier","Grand bouclier","Missile Interception"

EndDataSection
PS : Ne regardez pas trop le code, j'ai programmé comme un gougnafier
CameleonTH
Messages : 333
Inscription : sam. 25/juin/2005 11:18
Localisation : Laon (02)
Contact :

Message par CameleonTH »

Pour quelques Ko moi la taille ne me dérange pas car par rapport a des langugages comme le BlitzBasic (400Ko minimum) ou le DarkBasic.
Fred
Site Admin
Messages : 2875
Inscription : mer. 21/janv./2004 11:03

Message par Fred »

C'est probablement parce qu'on a ajouté pas mal de fonctionnalités au niveau des fenetres et des gadgets (couleurs etc.) qui necessite d'avantage de code.
Avatar de l’utilisateur
flaith
Messages : 1487
Inscription : jeu. 07/avr./2005 1:06
Localisation : Rennes
Contact :

Message par flaith »

:D Merci beaucoup pour ta réponse ! :wink:
poshu
Messages : 1138
Inscription : sam. 31/juil./2004 22:32

Message par poshu »

Je serais presque tenté de répondre *zut!*
Fred
Site Admin
Messages : 2875
Inscription : mer. 21/janv./2004 11:03

Message par Fred »

C'est l'eternel dilemn entre fonctionalités et taille.. :).
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

Enfin 4ko pour l'ajour de la couleur et des autres fonctionnalitées ce n'est rien, mmerci Fred :)
Répondre