PureBasic

Forums PureBasic
Nous sommes le Mer 19/Juin/2013 19:25

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 20 messages ]  Aller à la page 1, 2  Suivante
Auteur Message
 Sujet du message: [Jeu] Dux !
MessagePosté: Ven 07/Oct/2011 16:34 
Hors ligne
Avatar de l’utilisateur

Inscription: Ven 11/Fév/2005 17:34
Messages: 3063
Localisation: Arras, France
Pour remonter un peu le moral des troupes, je mets en partage l'un des minigames de Purebreaker 3... Dux ! Ce n'est pas un chef d'oeuvre, juste un hommage à un autre jeu (celui qui trouve lequel aura toute ma considération!!!).

Il s'agit de flinguer les canards, et seulement les canards ! Au départ on a 10 points, et il faut arriver à 50, sans descendre en dessous de 0.

Voici le lien pour le zip : http://djes.free.fr/purebasic/minigames/ ou là : https://docs.google.com/open?id=0B5nDvK ... FlYWI3NmU5

Le source (je sais, c'est moche!). Le PBI est dans le zip ;)
Code:
;******************************************************************************************************
;*
;* PUREBR3AKER (c)BGAMES 2005
;* Lead coder : djes@free.fr
;* Dux Minigame
;*
;* http://www.shootingcrew.com/
;* http://djes.free.fr
;*
;******************************************************************************************************

#CREATEPACKS = #False

XIncludeFile "packlib_release.pbi"

;******************************************************************************************************
;- *** CONSTANTS ***
;******************************************************************************************************

;- Sprites
Enumeration #PB_Compiler_EnumerationValue Step 1
  #DUCK_GUN
  #DUCK_AMMO
  #DUCK_DUCK0
  #DUCK_DUCK1
  #DUCK_DUCK2
  #DUCK_CADDIE
  #DUCK_ESCARGOT
  #DUCK_POULE
  #DUCK_VEAU
  #DUCK_DUCK0F
  #DUCK_DUCK1F
  #DUCK_DUCK2F
  #DUCK_CADDIEF
  #DUCK_ESCARGOTF
  #DUCK_POULEF
  #DUCK_VEAUF
EndEnumeration

;- Sprites Fonts
Enumeration #PB_Compiler_EnumerationValue Step 256
  #SILVERFONT
EndEnumeration

;- Sounds
Enumeration
  #M2EXPLOSION
  #EXTRALIFE
  #NEXTLEVELSND
  #CREDITS
  #CLOCK
  #TOC
EndEnumeration

;******************************************************************************************************
;- *** STRUCTURES ***
;******************************************************************************************************

Structure Duck
  x.f
  y.l
  XSpeed.f
  SpriteNb.l
EndStructure

Structure DuckAmmo
  x.l
  y.l
EndStructure

Structure Anim
  X.f
  XSpeed.f
  Y.f
  YSpeed.f
  Zoom.f
  ZoomSpeed.f
  CurrentSpriteNb.f
  AnimSpeed.f
  FirstSprite.l
  LastSprite.l
  CurrentFade.f
  FadeSpeed.f
  CurrentTime.l
  Duration.l   ;in frames
  PauseIn.l      ;before Anim start
  PauseOut.l   ;after Anim
EndStructure

;******************************************************************************************************
;- *** GLOBALS ***
;******************************************************************************************************

Global Dim SilverFont.l(255)
Global NewList Anims.Anim()

Global ScreenWidth = 1024
Global ScreenHeight = 768
Global ScreenDepth = 32
Global RefreshRate = 60
Global IngameMusic = #True
Global InGameSound = #True

;******************************************************************************************************
;- *** PROCEDURES ***
;******************************************************************************************************

Procedure.i RealRound(nb.f)
  !cvtss2si eax, [p.v_nb]
  ProcedureReturn
EndProcedure

;******************************************************************************************************
Procedure LoadMidi(Nb, file.s)
  i = mciSendString_("open " + file.s + " type sequencer alias mid" + Str(Nb), 0, 0, 0)
  ProcedureReturn i
EndProcedure
Procedure PlayMidi(Nb)
  i = mciSendString_("play mid" + Str(Nb), 0, 0, 0)
  ProcedureReturn i
EndProcedure
Procedure StopMidi(Nb)
  i = mciSendString_("stop mid" + Str(Nb), 0, 0, 0)
  ProcedureReturn i
EndProcedure
Procedure FreeMidi(Nb)
  i = mciSendString_("close mid" + Str(Nb), 0, 0, 0)
  ProcedureReturn i
EndProcedure
Procedure SetMidivolume(Nb, volume)
  i = mciSendString_("set volume" + Str(Nb) + " volume " + Str(volume), 0, 0, 0)
  ProcedureReturn i
EndProcedure

;******************************************************************************************************
; Draw an Animated screen centered Text
Procedure CenteredText(Text.s, PauseIn.l)
 
  xs = 0 + ScreenWidth / 2 - ((Len(Text) - 1) * 40) / 2
  ys = 0 + ScreenHeight / 2 - 19
 
  For u = 1 To Len(Text)
   
    AddElement(Anims())
    Anims()\x = xs
    Anims()\XSpeed = 0
    Anims()\y = ys
    Anims()\YSpeed = 2
    Anims()\CurrentSpriteNb = #SILVERFONT + Asc(Mid(Text, u, 1))
    Anims()\AnimSpeed = 0
    Anims()\CurrentTime = - PauseIn
    Anims()\Duration = 85 ;(255 / 3)
    Anims()\CurrentFade = 255
    Anims()\FadeSpeed = - 3
    Anims()\PauseIn = 1.5 * RefreshRate
    Anims()\PauseOut = 0
    Anims()\Zoom = 1
    Anims()\ZoomSpeed = 0
   
    AddElement(Anims())
    Anims()\x = xs
    Anims()\XSpeed = 0
    Anims()\y = ys
    Anims()\YSpeed = - 2
    Anims()\CurrentSpriteNb = #SILVERFONT + Asc(Mid(Text, u, 1))
    Anims()\AnimSpeed = 0
    Anims()\CurrentTime = - PauseIn
    Anims()\Duration = 85 ;(255 / 3)
    Anims()\CurrentFade = 255
    Anims()\FadeSpeed = - 3
    Anims()\PauseIn = 1.5 * RefreshRate
    Anims()\PauseOut = 0
    Anims()\Zoom = 1
    Anims()\ZoomSpeed = 0
    xs + 40
   
  Next u
 
EndProcedure

Procedure TextXY(Text.s, x.l, y.l)
 
  For u = 1 To Len(Text)
    s.l = #SILVERFONT + Asc(Mid(Text, u, 1))
    ZoomSprite3D(s, 64, 64)
    RotateSprite3D(s, 0, 0)
    DisplaySprite3D(s, x, y)
    x + 32
  Next u
 
EndProcedure

;******************************************************************************************************
;play specified sound specifying parameters
Procedure MyPlaySound(sound.l, pan.l = - 1, volume.l = - 1, frequency.l = - 1)
  If InGameSound
    If pan<> - 1
      SoundPan(sound, pan)
    EndIf
    If volume<> - 1
      SoundVolume(sound, volume)
    EndIf
    If frequency<> - 1
      SoundFrequency(sound, frequency)
    EndIf
    PlaySound(sound, #PB_Sound_MultiChannel)
  EndIf
EndProcedure

;******************************************************************************************************

Procedure GameLoading()
 
  PackName.s = "packs/Ducks.pak"
  PackCounter = 0
 
  Media$ = ""
  ; Media$ = ""
  PackLoadSprite3D(#DUCK_GUN, Media$ + "gfx/canon.png")
  PackLoadSprite3D(#DUCK_AMMO, Media$ + "gfx/balle.png")
  PackLoadSprite3D(#DUCK_DUCK0, Media$ + "gfx/canard0.png")
  PackLoadSprite3D(#DUCK_DUCK1, Media$ + "gfx/canard1.png")
  PackLoadSprite3D(#DUCK_DUCK2, Media$ + "gfx/canard2.png")
  PackLoadSprite3D(#DUCK_CADDIE, Media$ + "gfx/caddie.png")
  PackLoadSprite3D(#DUCK_ESCARGOT, Media$ + "gfx/escargot.png")
  PackLoadSprite3D(#DUCK_POULE, Media$ + "gfx/poule.png")
  PackLoadSprite3D(#DUCK_VEAU, Media$ + "gfx/veau.png")
  PackLoadSprite3D(#DUCK_DUCK0F, Media$ + "gfx/canard0_f.png")
  PackLoadSprite3D(#DUCK_DUCK1F, Media$ + "gfx/canard1_f.png")
  PackLoadSprite3D(#DUCK_DUCK2F, Media$ + "gfx/canard2_f.png")
  PackLoadSprite3D(#DUCK_CADDIEF, Media$ + "gfx/caddie_f.png")
  PackLoadSprite3D(#DUCK_ESCARGOTF, Media$ + "gfx/escargot_f.png")
  PackLoadSprite3D(#DUCK_POULEF, Media$ + "gfx/poule_f.png")
  PackLoadSprite3D(#DUCK_VEAUF, Media$ + "gfx/veau_f.png")
 
  n.l = 1
  For u = Asc("A") To Asc("Z")
    SilverFont(u) = n
    n + 1
  Next u
  SilverFont(Asc("!")) = n : n + 1
  SilverFont(Asc("'")) = n : n + 1
  SilverFont(Asc("(")) = n : n + 1
  SilverFont(Asc(")")) = n : n + 1
  SilverFont(Asc(" - ")) = n : n + 1
  SilverFont(Asc(".")) = n : n + 1
  SilverFont(Asc("?")) = n : n + 1
  SilverFont(Asc(":")) = n : n + 1
  SilverFont(Asc("0")) = n : n + 1
  SilverFont(Asc("1")) = n : n + 1
  SilverFont(Asc("2")) = n : n + 1
  SilverFont(Asc("3")) = n : n + 1
  SilverFont(Asc("4")) = n : n + 1
  SilverFont(Asc("5")) = n : n + 1
  SilverFont(Asc("6")) = n : n + 1
  SilverFont(Asc("7")) = n : n + 1
  SilverFont(Asc("8")) = n : n + 1
  SilverFont(Asc("9")) = n : n + 1
  SilverFont(Asc(", ")) = n : n + 1
  SilverFont(Asc(" ")) = n : n + 1
 
  For u = 0 To 255
    If SilverFont(u)<>0
      PackLoadSprite3D(#SILVERFONT + u, "gfx/fonts/silver/silver-" + StrU(SilverFont(u), #PB_Byte) + ".png")
    EndIf
  Next u
 
  ClosePack()
 
  PackName = "packs/sounds.pak"
  PackCounter = 0
 
  PackLoadSound(#M2EXPLOSION, "sfx/m2fire.wav")
  PackLoadSound(#EXTRALIFE, "sfx/HAPPYBEL.WAV")
  PackLoadSound(#NEXTLEVELSND, "sfx/SOUND827.WAV")
  PackLoadSound(#CLOCK, "sfx/inter.WAV")
  PackLoadSound(#TOC, "sfx/bounce1.wav")
  ClosePack()
 
EndProcedure

;******************************************************************************************************

Procedure FullScreenCheck()
  If IngameMusic
    StopMidi(1)
  EndIf
 
  ReleaseMouse(1)
  CloseScreen()
 
  OpenWindow(0, 0, 0, 256, 256, "Dux", #PB_Window_Minimize)
 
  Repeat
    Event = WaitWindowEvent()
  Until Event = #PB_Event_ActivateWindow
 
  CloseWindow(0)
  OpenScreen(ScreenWidth, ScreenHeight, ScreenDepth, "Ducks")
  ReleaseMouse(0)
 
  GameLoading()
 
  If IngameMusic
    playMidi(1)
  EndIf
EndProcedure

;******************************************************************************************************
;- INIT
;******************************************************************************************************

  UsePNGImageDecoder()
  UseTIFFImageDecoder()
  UseJPEGImageDecoder()
  UseOGGSoundDecoder()
 
  If (InitSprite() And InitSprite3D() And InitKeyboard() And InitMouse() And InitSound()) = #False
    End
  EndIf
 
  ScreenWidth = 1024
  ScreenHeight = 768
  ScreenDepth = 32
  RefreshRate = 60
  IngameMusic = #True
  Quit = #False
 
  OpenScreen(ScreenWidth, ScreenHeight, ScreenDepth, "Dux", #PB_Screen_WaitSynchronization, RefreshRate)
 
  Sprite3DQuality(1)

;******************************************************************************************************
;- *** MAIN ***
;******************************************************************************************************

START_DUX:

  Global NewList Ducks.Duck()
  Global NewList DucksAmmos.DuckAmmo()
  Global DuckScore = 10
  SpeedUp.f = 0
 
  GameLoading()
 
  If IngameMusic
    LoadMidi(1, "sfx\ballgame.mid")
    SetMidivolume(1, 150)
    PlayMidi(1) ; le joue
  EndIf
 
  ClearList(Anims())
 
  CenteredText("DUX !", 2 * RefreshRate)
 
  DuckWin = #False
 
  Repeat   
   
    If Not IsScreenActive()
      FullScreenCheck()   
    Else
      Gosub INPUTS   
      Gosub DUX_LOGIC
    EndIf
   
    Gosub DRAWING
   
    FlipBuffers() ;vbl synchro ON : better
    FrameCounter + 1
   
  Until Quit = #True Or ((DuckScore >= 50 Or DuckScore <= 0) And ListSize(Anims()) = 0) 
   
  If IngameMusic
    StopMidi(1)
    FreeMidi(1)
  EndIf
 
  ClearList(Anims())

End

;******************************************************************************************************
;- *** SUBROUTINES ***
;******************************************************************************************************

;-DRAWING
DRAWING:

  ClearScreen($550000)
  StartDrawing(ScreenOutput())
  For u = 0 To 512 Step 32
    LineXY(u,  64, 1023 - u,  64, (Int(150.1 + u/10 * Sin( FrameCounter / 20 )) & $FF ) *   $100 )
    LineXY(u, 160, 1023 - u, 160, (Int(150.1 + u/10 * Sin( FrameCounter / 25 )) & $FF ) * $10000 )
    LineXY(u, 256, 1023 - u, 256, (Int(150.1 + u/10 * Sin( FrameCounter / 15 )) & $FF )) 
  Next u
  StopDrawing()
 
  If Start3D()
   
    Gosub ANIMATIONS_DISPLAY
   
    ForEach Ducks()
      RotateSprite3D(Ducks()\SpriteNb, 10 * Sin(Ducks()\x / 8), 0)
      DisplaySprite3D(Ducks()\SpriteNb, Ducks()\x - SpriteWidth(#DUCK_DUCK0) / 2, Ducks()\y - SpriteHeight(#DUCK_DUCK0) / 2)
    Next
    Sprite3DQuality(0)
    ForEach DucksAmmos()
      DisplaySprite3D(#DUCK_AMMO, DucksAmmos()\x - SpriteWidth(#DUCK_AMMO) / 2, DucksAmmos()\y - SpriteHeight(#DUCK_AMMO) / 2)
    Next
    DisplaySprite3D(#DUCK_GUN, XMouse - SpriteWidth(#DUCK_GUN) / 2, YMouse)
    Sprite3DQuality(1)
   
    If DuckScore >= 0
      TextXY(Str(DuckScore), 900 - Len(Str(DuckScore)) * 32 / 2, 768 - 100)
    EndIf
   
    Stop3D()
   
  EndIf

Return

;******************************************************************************************************
;-DUX LOGIC
DUX_LOGIC:

  ForEach Ducks()
    Select Ducks()\y
      Case 32
        Ducks()\x = Ducks()\x + Ducks()\XSpeed + SpeedUp
        If Ducks()\x >= ScreenWidth + SpriteWidth(#DUCK_DUCK0) / 2
          Ducks()\y = 128
          Ducks()\XSpeed + 1
          If Ducks()\SpriteNb = #DUCK_DUCK0F
            Ducks()\SpriteNb = #DUCK_DUCK1
          Else
            Ducks()\SpriteNb - 7   ;flip vertically
          EndIf
        EndIf
      Case 128
        Ducks()\x = Ducks()\x - Ducks()\XSpeed - SpeedUp
        If Ducks()\x <= - SpriteWidth(Ducks()\SpriteNb) / 2
          Ducks()\y = 224
          Ducks()\XSpeed + 1
          If Ducks()\SpriteNb = #DUCK_DUCK1
            Ducks()\SpriteNb = #DUCK_DUCK2F
          Else
            Ducks()\SpriteNb + 7   ;flip vertically
          EndIf
        EndIf
      Case 224
        Ducks()\x = Ducks()\x + Ducks()\XSpeed + SpeedUp
        If Ducks()\x >= ScreenWidth + SpriteWidth(#DUCK_DUCK0) / 2
          If Ducks()\SpriteNb = #DUCK_DUCK2F
            If DuckScore > 0
              DuckScore - 3
              MyPlaySound(#CLOCK, - 1, - 1, 500 )
              If DuckScore <= 0
                CenteredText("GAME OVER !", 2 * RefreshRate)
                ClearList(DucksAmmos())
              EndIf
             
              ;Beep_(500, 1)
            EndIf 
          EndIf 
          DeleteElement(Ducks(), 1)
        EndIf
    EndSelect
  Next
 
  ;new Duck
  If FrameCounter%RefreshRate = 0
    AddElement(Ducks())
    Ducks()\x = - SpriteWidth(#DUCK_DUCK0F)
    Ducks()\y = 32
    Ducks()\XSpeed = 1
    If Random(10)<5
      Ducks()\SpriteNb = #DUCK_DUCK0F
    Else
      Ducks()\SpriteNb = #DUCK_CADDIEF + Random(3)
    EndIf
  EndIf
 
  ;every 30 secs, SpeedUp
  If FrameCounter%(RefreshRate * 30) = 0
    SpeedUp + 0.1
  EndIf
 
  If DuckScore > 0 And DuckScore < 50
    ;draw ammos, and compute collisions
    ForEach DucksAmmos()
      DucksAmmos()\y - 10
      If DucksAmmos()\y <= - 10
        DeleteElement(DucksAmmos())
      Else
        ForEach Ducks()
          If DucksAmmos()\x >= Ducks()\x - 16 And    DucksAmmos()\x <= Ducks()\x + 16 And DucksAmmos()\y >= Ducks()\y - 16 And DucksAmmos()\y <= Ducks()\y + 16
            Select Ducks()\SpriteNb
              Case #DUCK_DUCK0, #DUCK_DUCK0F
                DuckScore + 1
                ;Beep_(5000, 10)
                MyPlaySound(#TOC, - 1, - 1, 5000 )
              Case #DUCK_DUCK1, #DUCK_DUCK1F
                DuckScore + 2
                ;Beep_(5000, 10)
                MyPlaySound(#TOC, - 1, - 1, 5000 )
              Case #DUCK_DUCK2, #DUCK_DUCK2F
                DuckScore + 3
                ;Beep_(5000, 10)
                MyPlaySound(#TOC, - 1, - 1, 5000 )
              Case #DUCK_CADDIE, #DUCK_CADDIEF
                DuckScore - 4
                ;Beep_(50, 30)
                MyPlaySound(#TOC, - 1, - 1, 50 )
              Case #DUCK_POULE, #DUCK_POULEF
                DuckScore - 2
                ;Beep_(60, 30)
                MyPlaySound(#TOC, - 1, - 1, 60 )
              Case #DUCK_VEAU, #DUCK_VEAUF
                DuckScore - 3
                ;Beep_(80, 30)
                MyPlaySound(#TOC, - 1, - 1, 80 )
              Case #DUCK_ESCARGOT, #DUCK_ESCARGOTF
                DuckScore - 1
                ;Beep_(100, 30)
                MyPlaySound(#TOC, - 1, - 1, 100 )
            EndSelect               
            DeleteElement(Ducks(), 1)
            DeleteElement(DucksAmmos(), 1)
            Break 2
          EndIf
        Next
      EndIf
    Next
   
    If DuckScore <= 0
      CenteredText("GAME OVER !", 2 * RefreshRate)
      ClearList(DucksAmmos())
    EndIf
   
    If DuckScore >= 50
      MyPlaySound(#EXTRALIFE, 0, 100, 20000)
      CenteredText("WELL DONE !", 2 * RefreshRate)
    EndIf
   
  EndIf

Return

;******************************************************************************************************
;-INPUTS

INPUTS:

  ExamineKeyboard()
  ExamineMouse()
 
  If JoystickSwitch
    joyGetPosEx_(#JOYSTICKID1, joyInfoEx.JOYINFOEX)
  EndIf
 
  If KeyboardReleased(#PB_Key_J)
    JoystickSwitch = ~JoystickSwitch
  EndIf
 
  If KeyboardReleased(#PB_Key_Escape)
    Quit = #True
  EndIf
 
  If KeyboardReleased(#PB_Key_S)
    u = GrabSprite(#PB_Any, 0, 0, 1024, 768)
    SaveSprite(u, "c:\screenshot.bmp")
  EndIf
 
  ;gun, and fire
  If KeyboardPushed(#PB_Key_Left)
    KeyXSpeed - 1
  ElseIf KeyboardPushed(#PB_Key_Right)
    KeyXSpeed + 1
  Else
    KeyXSpeed / 2
  EndIf
 
  ;Joystick or mouse control
  If JoystickSwitch
    If JoyXamp<>0
      u = RealRound((joyInfoEx\dwXpos - (JoyXamp / 2)) / 2048) ;this little operation to optimise precision
      XMouse + ((u * 2048) * 64) / JoyXamp
    EndIf
  Else
    XMouse = XMouse + MouseDeltaX() + KeyXSpeed
    ;XMouse.l = MouseX()
  EndIf
 
  If XMouse<0 : XMouse = 0 : EndIf
  If XMouse>1023 : XMouse = 1023 : EndIf
 
  YMouse = 768 - SpriteHeight(#DUCK_GUN)
 
  If mb = #True And (MouseButton(1) = 0 Or ((joyInfoEx\dwButtons&1 = 0) And JoystickSwitch))
    ;évite la répétition
    mb = #False
  EndIf
 
  If DuckFireDelay>0
    DuckFireDelay - 1
  EndIf
 
  If (MouseButton(1) Or KeyboardPushed(#PB_Key_Return) Or ((joyInfoEx\dwButtons&1) And JoystickSwitch)) And mb = #False And DuckFireDelay = 0 And DuckScore > 0
    AddElement(DucksAmmos())
    MyPlaySound(#M2EXPLOSION)
    ;Beep_(1000, 2)
    DucksAmmos()\x = XMouse
    DucksAmmos()\y = YMouse + 10
    mb = #True
    DuckFireDelay = RefreshRate / 8
  EndIf

Return

;******************************************************************************************************
;- ANIMATIONS_DISPLAY
; Multi purposes (why not for explosions? maybe later ;)

ANIMATIONS_DISPLAY:

  Sprite3DQuality(1)
 
  With Anims()
    ; If FirstElement(Anims())<>0
    ; ResetList(Anims())
    ForEach Anims()
      If \CurrentTime<\Duration
       
        ;hint to start displaying after a while : make CurrentTime negative
        If \CurrentTime<0
         
          \CurrentTime + 1
         
        Else
         
          u = \CurrentSpriteNb
          sw.f = \Zoom * SpriteWidth(u)
          sh.f = \Zoom * SpriteHeight(u)
          ZoomSprite3D(u, sw, sh)
          DisplaySprite3D(u, \x - sw / 2, \y - sh / 2, \CurrentFade)
          ;DisplaySprite3D(u, \x - SpriteWidth(u) / 2, \y - SpriteHeight(u) / 2, \CurrentFade)
         
          ;pause before Anim?
          If \PauseIn = 0
           
            ;Anim
            \CurrentSpriteNb + \AnimSpeed
            If \LastSprite<>\FirstSprite
              ;if sprite is Animated, and for a certain amount of frames, test boundaries
              If \CurrentSpriteNb>\LastSprite
                \CurrentSpriteNb = \FirstSprite
              EndIf
            EndIf
            \CurrentFade + \FadeSpeed
            \CurrentTime + 1
            \x + \XSpeed
            \y + \YSpeed
            \Zoom + \ZoomSpeed
          Else
            \PauseIn - 1
          EndIf
         
        EndIf
       
      Else
        If \PauseOut<>0
          ;pause after Anim?
          u = \CurrentSpriteNb
          sw.f = \Zoom * SpriteWidth(u)
          sh.f = \Zoom * SpriteHeight(u)
          ZoomSprite3D(u, sw, sh)
          DisplaySprite3D(u, \x - sw / 2, \y - sh / 2, \CurrentFade)
          ;DisplaySprite3D(u, \x - SpriteWidth(u) / 2, \y - SpriteHeight(u) / 2, \CurrentFade)
          \PauseOut - 1
        Else
          ;no, delete
          DeleteElement(Anims())
        EndIf
      EndIf
      ; EndIf
    Next
  EndWith

Return



_________________
The shooting crew ~> http://www.shootingcrew.com
Bobble Puzzle ~> http://djes.free.fr


Dernière édition par djes le Sam 05/Jan/2013 11:10, édité 3 fois.

Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Ven 07/Oct/2011 17:50 
Hors ligne
Avatar de l’utilisateur

Inscription: Ven 05/Sep/2008 11:42
Messages: 883
Localisation: Besançon
Héhé,

Tribute to "Space Invaders" ?

Merci pour le partage :D

_________________
Only PureBasic makes it possible


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Ven 07/Oct/2011 18:18 
Hors ligne

Inscription: Dim 10/Jan/2010 5:29
Messages: 2195
j'ai plus les sources djes , y avait pas un tetris aussi ? :wink:


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Ven 07/Oct/2011 18:31 
Hors ligne
Avatar de l’utilisateur

Inscription: Ven 11/Fév/2005 17:34
Messages: 3063
Localisation: Arras, France
Cool dji> Raté, essaye encore ;)

G-Rom> Héhé, tu veux que je te remette les sources quelque part ? Ton tétris méritait d'être gardé :)

_________________
The shooting crew ~> http://www.shootingcrew.com
Bobble Puzzle ~> http://djes.free.fr


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Ven 07/Oct/2011 18:33 
Hors ligne

Inscription: Dim 10/Jan/2010 5:29
Messages: 2195
Oui , mais mon DD m'a lâché le mois dernier, j'ai tout perdu , du moins les codes PB & co :cry:
si tu veut les mettre à dispositions , je n'y vois pas de problèmes ;)


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Ven 07/Oct/2011 18:37 
Hors ligne
Avatar de l’utilisateur

Inscription: Ven 11/Fév/2005 17:34
Messages: 3063
Localisation: Arras, France
Merde, c'est l'horreur ça ! Je te remettrai ça en ligne dès que possible (là je ne suis pas sur mon poste)

_________________
The shooting crew ~> http://www.shootingcrew.com
Bobble Puzzle ~> http://djes.free.fr


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Sam 08/Oct/2011 13:24 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 22/Nov/2004 13:05
Messages: 290
Merci pour le partage, toujours instructif !


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Sam 08/Oct/2011 13:49 
Hors ligne
Avatar de l’utilisateur

Inscription: Dim 09/Oct/2005 16:51
Messages: 5323
Merci djes,
Très sympa de ta part. :D

_________________
.: Ar-S :. - Windows 8 x64 - Radeon HD 7870 - PB 5.11
LDV MULTIMEDIA : Assistance informatique Isère (38) Oyeu
PURE BASIC forum non officiel : Forum PB


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Dim 09/Oct/2011 22:29 
Hors ligne

Inscription: Mer 29/Juin/2011 18:35
Messages: 198
Merci, fonctionne pas chez il semblerait que cela soit lié à mes deux écrans...
Il se lance sur l'écran 1 qui devient noir, j'entends un debut de musique et mon deuxième écran clignote dans tous les sens et op ça ferme.
cdt

_________________
L'actualité informatique, jeux, dossiers : http://mfdeveloppement.fr


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Dim 09/Oct/2011 23:01 
Hors ligne
Avatar de l’utilisateur

Inscription: Jeu 08/Déc/2005 5:19
Messages: 739
Localisation: Guadeloupe
Coin, coin :P (Merci !)

Ca marche nickel sur mon pc en carton !

Atlante a écrit:
il semblerait que cela soit lié à mes deux écrans

La soluce du jour(qui protège l'environnement) :mrgreen:
"Avec une pince, couper délicatement l'alimentation du deuxième écran"

:wink:

_________________
Elevé au MSX !


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Lun 10/Oct/2011 9:09 
Hors ligne
Avatar de l’utilisateur

Inscription: Ven 11/Mai/2007 15:21
Messages: 491
Ce ne serait pas "Carnival", par hasard ?

_________________
Les idées sont le souvenir de choses qui ne se sont pas encore produites.


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Lun 10/Oct/2011 9:31 
Hors ligne
Avatar de l’utilisateur

Inscription: Ven 05/Sep/2008 11:42
Messages: 883
Localisation: Besançon
@Kelebrindae => Carnival ?, je donne ma langue au chat :D

@G-Rom => la merde !!!!!
Je dois avoir des codes à toi sur mon DD à la maison, ils doivent être aussi sur le forum mais si tu veux je fais une compil dans un zip. Je ne pense pas que ça soit tes codes les plus précieux mais bon...

_________________
Only PureBasic makes it possible


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Lun 10/Oct/2011 10:54 
Hors ligne
Avatar de l’utilisateur

Inscription: Ven 11/Fév/2005 17:34
Messages: 3063
Localisation: Arras, France
Atlante> Engueule Fred pour moi au boulot ;)

kelebrindae> Essaye encore :)

_________________
The shooting crew ~> http://www.shootingcrew.com
Bobble Puzzle ~> http://djes.free.fr


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Lun 10/Oct/2011 10:58 
Hors ligne
Avatar de l’utilisateur

Inscription: Ven 05/Sep/2008 11:42
Messages: 883
Localisation: Besançon
Hiii !
Bandit sur C64 ?

_________________
Only PureBasic makes it possible


Haut
 Profil  
 
 Sujet du message: Re: Dux !
MessagePosté: Lun 10/Oct/2011 12:56 
Hors ligne
Avatar de l’utilisateur

Inscription: Ven 11/Fév/2005 17:34
Messages: 3063
Localisation: Arras, France
Nan!

_________________
The shooting crew ~> http://www.shootingcrew.com
Bobble Puzzle ~> http://djes.free.fr


Haut
 Profil  
 
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 20 messages ]  Aller à la page 1, 2  Suivante

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages

Rechercher:
Aller à:  

 


Powered by phpBB © 2008 phpBB Group | Traduction par: phpBB-fr.com
subSilver+ theme by Canver Software, sponsor Sanal Modifiye