Compétition PurePunch été 2010

Partagez votre expérience de PureBasic avec les autres utilisateurs.
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compétition PurePunch été 2010

Message par G-Rom »

J'étais en train de regardé les modalités et je suis tombé la dessus :
(pour l'année prochaine faudra trouver un autre moyen car j'en connais -au moins un ;)- qui va nous créer dix pseudos d'ici l'année prochaine!)
J'espère que tu pensais pas à moi par rapport à la faille que j'ai trouvé sur le système de vote l'année dernière ?
Pour le vote , un post ouvert ou l'on attribue des points fera largement l'affaire , pas besoin de vote secret.
Comme je ne possède plus de compte sur le fofo US , si tu pouvais poster mes 2 codes là bas pour relancer un peu la compète serais pas trop mal ;)
Merki.
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Re: Compétition PurePunch été 2010

Message par djes »

G-Rom a écrit :J'étais en train de regardé les modalités et je suis tombé la dessus :
(pour l'année prochaine faudra trouver un autre moyen car j'en connais -au moins un ;)- qui va nous créer dix pseudos d'ici l'année prochaine!)
J'espère que tu pensais pas à moi par rapport à la faille que j'ai trouvé sur le système de vote l'année dernière ?
Pour le vote , un post ouvert ou l'on attribue des points fera largement l'affaire , pas besoin de vote secret.
Comme je ne possède plus de compte sur le fofo US , si tu pouvais poster mes 2 codes là bas pour relancer un peu la compète serais pas trop mal ;)
Merki.
Comment tu as deviné que je pensais à toi? :mrgreen: Je sais que tu aimes bien trouver les failles :)
Ok, je les poste ce soir.
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compétition PurePunch été 2010

Message par G-Rom »

Super , je passe pour un fou qui à créer 10 personnes pour voté pour lui... , et en plus qui perd.... :?
Merci pour le post sur le fofo US :wink:
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compétition PurePunch été 2010

Message par G-Rom »

Merci à Huitbit pour la correction orthographique de mon texte en Français.
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Re: Compétition PurePunch été 2010

Message par djes »

G-Rom a écrit :Super , je passe pour un fou qui à créer 10 personnes pour voté pour lui... , et en plus qui perd.... :?
:lol:
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Re: Compétition PurePunch été 2010

Message par djes »

G-Rom> C'est fait!
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Re: Compétition PurePunch été 2010

Message par djes »

Voilà la première contrib sur le forum anglais (http://www.purebasic.fr/english/viewtop ... 16#p328216)

Code : Tout sélectionner

;*****************************************************************************
;*
;* Summer 2010 PurePunch Demo contest
;* 200 lines of 80 chars, two months delay
;*
;* Name     : PBSlider, demo of PB possibilities :)
;* Author   : infratec
;* Date     : 09.07.2010
;* Purebasic Version : 4.50 32bit Windows
;* Notes    : -
;*
;*****************************************************************************
#FreeColour = $0 : #WindowColour = $303030
UseJPEGImageDecoder()
Global FPos = 50, Counter = 0, Pcs = 4, Sound = 0
Procedure LoadIt()
IniFile$ = Left(ProgramFilename(), Len(ProgramFilename()) - 3) + "ini"
If Not OpenPreferences(IniFile$)
  CreatePreferences(IniFile$)
  ClosePreferences()
  OpenPreferences(IniFile$)
EndIf
PreferenceGroup(Str(Pcs) + " Pcs")
ActualPcs = Pcs * Pcs + 1
Counter = ReadPreferenceInteger("Counter", 0)
Def$ = ""
For i = 1 To ActualPcs : Def$ + RSet(Str(i), 2, "0") + " " : Next i
Def$ = RTrim(Def$) : State$ = ReadPreferenceString("State", Def$)
For i = 1 To ActualPcs
  No = Val(StringField(State$, i, " "))
  SetGadgetState(i, ImageID(No))
  If No = ActualPcs : FPos = i : EndIf
Next i
If Counter > 0 : SetGadgetText(91, Str(Counter)) : EndIf
Sound = ReadPreferenceInteger("Sound", 0)
If Sound = 0 : SetGadgetState(111, 0) : EndIf
EndProcedure
Procedure SaveIt()
ActualPcs = Pcs * Pcs + 1 : State$ = ""
For i = 1 To ActualPcs
  ImageID = GetGadgetState(i)
  For j = 1 To ActualPcs
   If ImageID = ImageID(j) : Break : EndIf
  Next j
  State$ + RSet(Str(j), 2, "0") + " "
Next i
WritePreferenceString("State", State$)
WritePreferenceInteger("Counter", Counter);
WritePreferenceInteger("Sound", Sound);
ClosePreferences()
EndProcedure
Procedure MixIt()
ActualPcs = Pcs * Pcs : Line$ = ""
RandomSeed(Date())
Repeat
  No$ = RSet(LTrim(Str(Random(ActualPcs - 2) + 1)), 2, "0") + " "
  If FindString(Line$, No$, 1) = 0 : Line$ + No$ : EndIf
Until Len(Line$) = (ActualPcs - 1) * 3
For i = 1 To ActualPcs - 1
  No = Val(StringField(Line$, i, " "))
  SetGadgetState(i, ImageID(No))
Next i
SetGadgetState(ActualPcs, ImageID(ActualPcs))
SetGadgetState(ActualPcs + 1, ImageID(ActualPcs + 1))
FPos = ActualPcs + 1 : Counter = 0
SetGadgetText(91, Str(Counter))
EndProcedure
Procedure MoveIt(No)
Result = #False
If No <> FPos
  If No - 1 = FPos Or No + 1 = FPos Or No - Pcs = FPos Or No + Pcs = FPos
   Help = GetGadgetState(No)
   SetGadgetState(FPos, Help)
   SetGadgetState(No, ImageID(Pcs * Pcs + 1))
   FPos = No : Counter + 1
   SetGadgetText(91, LTrim(Str(Counter)))
   Result = #True
  EndIf
EndIf
ProcedureReturn Result
EndProcedure
Procedure CheckIt()
Result = #True
For i = 1 To Pcs * Pcs + 1
  If ImageID(i) <> GetGadgetState(i)
   Result = #False
   Break
  EndIf
Next i
ProcedureReturn Result
EndProcedure
Flags = #PB_Window_ScreenCentered|#PB_Window_BorderLess|#PB_Window_Invisible
If OpenWindow(0, 0, 0, 750, 530, "", Flags)
Sound = #False
If InitSound()
  Sound = #True
  CatchSound(0, ?Sound)
EndIf
SetWindowColor(0, #WindowColour)
ExtPicture = #False
If CountProgramParameters()
  For i = 0 To CountProgramParameters() - 1
   If FindString(LCase(ProgramParameter(i)), ".jpg", 1)
    If FileSize(ProgramParameter(i)) > 0
     If LoadImage(0, ProgramParameter(i))
      ExtPicture = #True
     EndIf
    EndIf
   Else
    Pcs = Val(ProgramParameter(i))
    If Pcs < 4 : Pcs = 4 : EndIf
     If Pcs > 7 : Pcs = 7 : EndIf
   EndIf
  Next i
EndIf
If Not ExtPicture : CatchImage(0, ?Picture) : EndIf
Sz = 490 / Pcs
ResizeImage(0, Pcs * Sz, Pcs * Sz, #PB_Image_Smooth)
x = 0 : y = 0
For i = 1 To Pcs * Pcs
  GrabImage(0, i, x, y, Sz, Sz)
  ImageGadget(i, 20 + x, 20 + y, Sz, Sz, ImageID(i))
  x + Sz
  If x > (Pcs - 1) * Sz;420
   x = 0 : y + Sz
  EndIf
Next i
CreateImage(Pcs * Pcs + 1, Sz, Sz)
StartDrawing(ImageOutput(Pcs * Pcs + 1))
Box(0, 0, Sz, Sz, #FreeColour)
StopDrawing()
ImageGadget(Pcs*Pcs+1,Pcs*Sz+20,(Pcs-1)*Sz+20,Sz,Sz,ImageID(Pcs*Pcs+1))
CopyImage(0, Pcs * Pcs + 2)
ResizeImage(Pcs * Pcs + 2, 196, 196, #PB_Image_Smooth)
ImageGadget(Pcs * Pcs + 2, 530, 20, 196, 196, ImageID(Pcs * Pcs + 2)) 
If Sound
  CreateImage(111, 196, 30)
  StartDrawing(ImageOutput(111))
  Box(0, 0, 196, 30, #WindowColour)
  DrawText(65, 6 , "Sound off", $FFFFFF, #WindowColour)
  StopDrawing()
  CreateImage(112, 196, 30)
  StartDrawing(ImageOutput(112))
  Box(0, 0, 196, 30, #WindowColour)
  DrawText(65, 6 , "Sound on", $FFFFFF, #WindowColour)
  StopDrawing()
  ButtonImageGadget(111, 530, 230, 196, 30, ImageID(112), #PB_Button_Toggle)
  SetGadgetState(111, 1)
  SetGadgetAttribute(111, #PB_Button_PressedImage, ImageID(111))
EndIf
ButtonX = 20 + (Pcs + 1) * Sz + 20
Button2Y = 20 + Pcs * Sz - 30 - 1
Button1Y = Button2Y - 30 - 8
ButtonWidth = WindowWidth(0) - ButtonX - 20
CreateImage(100, 130, 30)
StartDrawing(ImageOutput(100))
Box(0, 0, 130, 30, #WindowColour)
DrawText(40, 6 , "Mix it !", $FFFFFF, #WindowColour)
StopDrawing()
ButtonImageGadget(100, ButtonX, Button1Y, ButtonWidth, 30, ImageID(100))
CreateImage(110, 130, 30)
StartDrawing(ImageOutput(110))
Box(0, 0, 130, 30, #WindowColour)
DrawText(50, 6 , "Exit", $FFFFFF, #WindowColour)
StopDrawing()
ButtonImageGadget(110, ButtonX, Button2Y, ButtonWidth, 30, ImageID(110))
If LoadFont(0, "Arial", 16, #PB_Font_Bold)
  SetGadgetFont(#PB_Default, FontID(0))
EndIf
TextGadget(91, 530, 310, 196, 30, "", #PB_Text_Center)
SetGadgetColor(91, #PB_Gadget_BackColor, #WindowColour)
SetGadgetColor(91, #PB_Gadget_FrontColor, $FFFFFF)
TextGadget(92, 530, 350, 196, 30, "", #PB_Text_Center)
SetGadgetColor(92, #PB_Gadget_BackColor, #WindowColour)
SetGadgetColor(92, #PB_Gadget_FrontColor, $FFFFFF)
LoadIt()
HideWindow(0, 0)
Exit = #False
If Counter = 0 : Move = #False : Else : Move = #True : EndIf
Repeat
  Event = WaitWindowEvent()
  If Event = #PB_Event_Gadget
   EventGadget = EventGadget()
   Select EventGadget
    Case 1 To Pcs * Pcs + 1
     If Move
      If MoveIt(EventGadget)
       If Sound : PlaySound(0) : EndIf
        If CheckIt()
         SetGadgetText(92, "Super !")
         Counter = 0 : Move = #False
        EndIf
       EndIf
      EndIf
    Case 100 : MixIt() : Move = #True
    Case 110 : Exit = #True
    Case 111
     If GetGadgetState(111) : Sound = #True : Else : Sound = #False : EndIf
   EndSelect
  EndIf
Until Exit
SaveIt()
EndIf
End
DataSection
Picture: IncludeBinary "purebasic.jpg"
Sound: IncludeBinary "Sound.wav"
EndDataSection
Avec le fichier : PBSlider.zip
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compétition PurePunch été 2010

Message par G-Rom »

Merci Djes , j'ai mis à jour les 2 archives qui comportait 2 petites erreur ( re merci Huitbit )
et j'ai rajouté un hélicoptère sur la 2°eme démo ! :mrgreen:

Edit :

J'ai encore remis à jour la 2°eme archive...
promis j'arrête :) j'ai juste rajouté des avions de chasses en fond :D
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compétition PurePunch été 2010

Message par G-Rom »

Une dernière démo pour la route ,
j'ai inclus bien évidement la source et aussi les fichier ( dans le dossier Gimp ) qui m'ont permis de réalisé l'animation du petit soldat.
L'animation m'a bouffé une grosse partie de mon espace disponible , ce qui limite donc le code de la démo , pas évident à dosé tout ca :D
Image
Image
DOWNLOAD : Military marshes

et les premières démos :
Image
DOWNLOAD : Invade demo

Image
DOWNLOAD : Invade demo II


Voilà , j'espère motivé d'autres à en faire de même ! :mrgreen:
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Re: Compétition PurePunch été 2010

Message par djes »

:lol: c'est excellent! Avec ça, l'armée va te réembaucher!
Avatar de l’utilisateur
venom
Messages : 3128
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Re: Compétition PurePunch été 2010

Message par venom »

C'est joliment fait tout ces soldats G-Rom :wink:
Bravo.

Même PBSlider est intéressant Bravo.





@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Avatar de l’utilisateur
gildev
Messages : 380
Inscription : mar. 19/juin/2007 10:28
Localisation : Picardie (France)

Re: Compétition PurePunch été 2010

Message par gildev »

On sent la nostalgie de ceux qui ont été dans l'armée de terre. :wink:
En tout cas bravo, j'adore. :D
Avatar de l’utilisateur
Huitbit
Messages : 940
Inscription : jeu. 08/déc./2005 5:19
Localisation : Guadeloupe

Re: Compétition PurePunch été 2010

Message par Huitbit »

Il manque des épisodes :? !
Et les casques bleus ?
La signature des traités ?
Les procès ?
...etc

:lol: :lol: :lol:

Si tu n'as pas le temps, il faut sous-traiter :lol:
Ou alors délocalise.

En tout cas, ces trois épisodes mettent un grand coup de balai sur la poussière des démos traditionnelles.
Je suis sûr que ça va motiver pas mal de monde pour entrer dans le purepunch !

BRAVO !

Un petit problème chez moi :

Code : Tout sélectionner

FPS_LIMIT = 30
Si je ne change pas la valeur 30, l'animation est parkinsonnienne ![/color]

Hasta la vista !
Elevé au MSX !
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Re: Compétition PurePunch été 2010

Message par comtois »

Je me suis permis de l'annoncer ici

http://purebasic.developpez.com/

Je parle de la version démo pour inciter ceux qui n'ont pas de licence à participer, j'espère que je n'enfreins pas les règles ?
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Re: Compétition PurePunch été 2010

Message par djes »

comtois a écrit :Je me suis permis de l'annoncer ici
http://purebasic.developpez.com/
Ok, merci!
Répondre