Page 1 sur 2

Mission Impossible : PurePunch Winter 2014 depunché

Publié : dim. 15/févr./2015 23:12
par Cool Dji
Hello,

Je pose en mode dépunch ma petite production réalisée à l'occasion du purepunch de cet hiver.
ça fait toujours drôle de partir d'un code punché pour obtenir un code dépunché !

Code : Tout sélectionner

; Initialisation
InitEngine3D():InitSprite():InitMouse():InitKeyboard()


PZ.f=50   ; variable pour positionner la camera en hauteur

pt=128    ; variable servant à l'anmiation des textures des cubes
; Réserve les variables pour les cubes du socle
; j'en avais réservé 5000, mais y'en a pas autant...
Dim CX(5000):Dim CZ(5000):Dim CY.f(5000):Dim CE(5000)

; Réserve les variables pour les particules (Fire)
Dim TE(10)
Dim TX.f(10):Dim TY.f(10):Dim TZ.f(10):Dim TV.f(10):Dim TH.f(10)

; Réserve les variables pour les gus de neige
Dim FZ.f(50):Dim FO(50):Dim FX.f(50)

; variable de couleurs
U=RGB(255,255,255):
V=RGB(50,50,50)
cbr=RGB(255,0,0)  ;
W=RGB(150,150,150)


AntialiasingMode(#PB_AntialiasingMode_x6)
OpenScreen(1024,768,32,"")


UsePNGImageDecoder()
; Récupère le sprite de texte qui s'affiche au milieu de l'écran
CatchSprite(0,?me)

;Creation d'objets en 3D
CreateSphere(3,1,9,9)      ; tir
CreateSphere(4,6,20,20)    ; partie basse du gus de neige
CreateSphere(5,4,20,20)    ; partie haute du gus de neige
CreateCube(2,20)           ; Cube qui sert pour le sol et les obstacles latéraux

; Creation des differentes textures
For j=0 To 3
  CreateTexture(j,512,512)
  CreateMaterial(j,TextureID(j))
  CreateImage(j,512,512,32)
  StartDrawing(ImageOutput(j))
  Box(0,0,512,512,W)
  Box(1,1,510,510,V)
     ; texture des cube noirs
     For i=0 To 5000         ;
        c=Random(200)
        Plot(Random(511),Random(511),RGB(c,c,c))
      Next
      
      ; texture des tir
      If j=2:Box(0,0,512,512,cbr):EndIf   ;
      
      ; texture du gus de neige
      If j=3:Box(0,0,512,512,u)
        For i=0 To 50:Circle(Random(511),Random(511),Random(50),(RGB(240,240,240))):Next
      EndIf
      StopDrawing()
        
      StartDrawing(TextureOutput(j))
      DrawImage(ImageID(j),0,0)
      StopDrawing()
    Next

 InitMovie()

; texture des particules de tir
CreateMaterial(4,TextureID(2))
MaterialBlendingMode(4,#PB_Material_Add)

; Construit au hasard la map du jeu
; soit un cube sert de sol, soit il monte et il sert d'obstacle latéral

i=0:V=0
For x=-25 To 25
  For z=-25 To 25       ;
    CX(V)=x*20:CZ(V)=z*20:CY(V)=-10
    
    ; positionne un cube en hauteur de temps en temps pour servir de mur
    o=Random(50):If o<5:CE(V)=1:ElseIf o=6
      ; place un gus de neige de temps en temps (maxi 50)
      If Q<49:Q+1
           CreateEntity(9+Q,MeshID(4),MaterialID(3),x*20,4,z*20)
           CreateEntity(Q+59,MeshID(5),MaterialID(3),x*20,10,z*20) 
           FX(Q)=x*20:FZ(Q)=z*20
           EntityPhysicBody(9+Q,#PB_Entity_StaticBody)
           EntityPhysicBody(Q+59,#PB_Entity_StaticBody)
       EndIf
      EndIf
      ;Creation d'un cube
      CreateEntity(500+V,MeshID(2),MaterialID(1),CX(V),CY(V),CZ(V))
      EntityPhysicBody(500+V,#PB_Entity_StaticBody):V+1
Next:Next

; Creation des tirs (spheres et particles)
For j=0 To 9
  CreateEntity(j,MeshID(3),MaterialID(2))
  EntityPhysicBody(j,#PB_Entity_SphereBody)
  HideEntity(j,1)
  CreateParticleEmitter(j,1,1,1,0):ParticleMaterial(j,MaterialID(4)):ParticleTimeToLive(j,0.1,1):ParticleEmissionRate(j,20)
  ParticleSize(j,2,2):ParticleColorRange(j,u,u):HideParticleEmitter(j,1)
Next


; ligne de code qui ne sert à rien...
For j=1290 To 1310:CE(j)=0:Next

; gestion Camera et ambiance
Fog(W,255,200,500)
CreateCamera(0,0,0,100,100)
CameraBackColor(0,W)

; prépare les élements pour la mini map
CreateSprite(3,106,106)
CreateImage(8,106,106)
CreateSprite(1,1,1)
StartDrawing(SpriteOutput(1))
Box(0,0,1,1,U)
StopDrawing()

; Récupère la musique en mid
CreateFile(1,"t.mid"):WriteData(1,?ms,?me-?ms):CloseFile(1)
LoadMovie(0,"t.mid")

; Boucle principale
Repeat
  
; si la musique est terminée, on la rejoue  
  If MovieStatus(0)=0:If MoviePlay=#False:PlayMovie(0,ScreenID())
      MoviePlay=1:EndIf:ElseIf MovieStatus(0)>0:MoviePlay=0:EndIf
  
  ExamineMouse()
  ExamineKeyboard()
  PH.f-MouseDeltaX()*0.1        ; rotation horizontale de la camera
  PV.f-MouseDeltaY()*0.1        ; rotation verticale de la camera
  If PV<0:PV=0:EndIf            ; on empeche de regarder en bas (pour que le tir ne traverse pas le sol...)
  If PV>45:PV=45:EndIf          ; on empeche de regarder trop haut (ça fait mal au cou)
  
  ; gestion de la vitesse de déplacement
  ve=0:If KeyboardPushed(#PB_Key_Up):Ve=2:EndIf
  
  ; sauvegarde la position actuelle en mémoire
  OY.f=PY.f:OX.f=PX.f:OZ.f=PZ
  
  ; déplace la camera selon les ordres du clavier
  PY-(Ve*Cos(Radian(PH)))
  PX-(Ve*Sin(Radian(PH)))
  
  ; test les collisions sur le sol
  If RayCollide(PX,PZ,PY,PX,PZ-10,PY)>0:PZ=PickY()+5:Else:PZ-5:EndIf
  
  ; test les collisions sur un cube latéral
  r.f=Sin(Radian(PH))*5
  b.f=Cos(Radian(PH))*5
  If RayCollide(PX+r,PZ,PY+b,PX-r,PZ,PY-b)>0    ; si contact
    Ve=0:PY=OY:PX=OX:PZ=OZ                      ; on remet la camera à son ancienne place (on annule le déplacement)
  EndIf
  
  ; Dessine la pluie  (j'aurais du mettre de la neige...)
  For j=100 To 130
    X1=Random(500)-250+PX
    Y1=Random(500)-250+PY
    CreateLine3D(j,X1,0,Y1,W,X1,800-Random(700),Y1,V)
  Next
  
  ; gestion des tirs.
  ct-1:If ct<0   ; autorise les tirs que toutes les 10 boucles (ct=10)
    If MouseButton(#PB_MouseButton_Left):ct=10:j=0
      Repeat    ; test si un des 10 tirs est libre et peut être utilisé
        If TE(j)=0    ; si le tir est disponible
            TE(j)=1   ; on le prend et on le rend indisponible
            TX(j)=PX  ; on lui donne les coordonnées de la camera
            TY(j)=PY
            TZ(j)=PZ
            TH(j)=PH  ; ainsi que les angles latéraux et verticaux 
            TV(j)=PV  ; pour orienter le tir
            HideEntity(j,0):HideParticleEmitter(j,0)
         j=9:EndIf:j+1:Until j=10

EndIf:EndIf


; test de collision entre tir et gus de neige
For j=0 To 9
  If TE(j)=1
    For i=1 To Q   ; Q=nombre de gus de neige
       ; si la distance est <10, il y a collision
      If FO(i)=0 And Sqr(Pow(FX(i)-TX(j),2)+Pow(5-TZ(j),2)+Pow(FZ(i)-TY(j),2))<10
        ; collision, alors on désactive le tir et le gus de neige    
        TE(j)=0:HideEntity(j,1):HideParticleEmitter(j,1):FO(i)=1:MoveEntity(9+i,0,-99,0,0):HideEntity(59+i,1)
      EndIf
      
    Next
 ; effectue le déplacement des tirs   
    TX(j)-Sin(Radian(TH(j)))*9
    TZ(j)+Sin(Radian(TV(j)))*9
    TY(j)-Cos(Radian(TH(j)))*9
    MoveEntity(j,TX(j),TZ(j),TY(j),0)
    MoveParticleEmitter(j,TX(j),TZ(j),TY(j),0)
    
  ; test les collisions entre les tirs et les cubes  
    For l=0 To V:If CE(l)=1 And TZ(j)<10
        If Sqr(Pow(CX(l)-TX(j),2)+Pow(CZ(l)-TY(j),2))<10
        ; collision, désactive le tir  
          TE(j)=0:HideEntity(j,1)
      HideParticleEmitter(j,1):EndIf:EndIf
    Next
    
    ; si un tir va trop loin et n'est plus visible, on le désactive
    If Abs(TX(J))>900 Or Abs(TY(j))>900 Or Abs(TZ(j))>900
      TE(j)=0
      HideEntity(j,1)
      HideParticleEmitter(j,1)
    EndIf
    
  EndIf
  
Next


; modifie la texture des cubes pour faire l'effet de la lumiere qui défile
StartDrawing(ImageOutput(1))
Box(128,128,256,2,0)
Box(128,128,2,256,0)
Box(128,384,256,2,0)
Box(384,128,2,256,0)
pt+10:If pt>384;
pt=135:EndIf
Box(pt,128,5,2,U):Box(512-pt,384,5,2,U):Box(128,512-pt,2,5,U) ;
Box(384,pt,2,5,U):StopDrawing()
StartDrawing(TextureOutput(1)):DrawImage(ImageID(1),0,0)        ;
StopDrawing()

; fait monter les cubes qui doivent servir d'obstacles
For j=0 To 5000:If CE(j)=1 And CY(j)<10:CY(j)+0.1                    ;
  MoveEntity(500+j,CX(j),CY(j),CZ(j),0):EndIf
Next

RotateCamera(0,PV,PH,0,0)              ;
MoveCamera(0,PX,PZ,PY,0)
RenderWorld()

; dessine la mini map
StartDrawing(ImageOutput(8)):Box(0,0,106,106,V)
; dessine un cadrillage
For j=0 To 106 Step 4:Line(0,j,106,1,W):Line(j,0,1,106,W):Next
; dessine les gus de neige
For j=1 To Q
If FO(j)=0:Box(53+FX(j)/10,53+FZ(j)/10,2,2,u):EndIf:Next
; dessine un point pour positionner la camera
Box(53+PX/10,53+PY/10,2,2,RGB(255,0,0))  ;
StopDrawing():StartDrawing(SpriteOutput(3)):DrawImage(ImageID(8),0,0):StopDrawing()                    ;
; fait tourner la mini map selon l'angle de la caméra
RotateSprite(3,PH,#PB_Absolute)
DisplaySprite(3,200-53,200-53)                ;

; dessine le sprite central avec le text
DisplaySprite(0,0,400):ClipSprite(0,0,0,im,10):im-1:If im<0:im=1024:EndIf        ;
; desssine des étincelles
For j=0 To 20:DisplaySprite(1,im+Random(5),405+Random(16)-8)                          ;
DisplaySprite(1,im+Random(8),405+Random(10)-5):DisplaySprite(1,im+Random(11),405+Random(6)-3):Next

FlipBuffers()

Until KeyboardPushed(#PB_Key_Escape)                            ;

DataSection:ms: 
Data.q $060000006468544D,$544DE00106000100,$FF00200000006B72,$206B636172540703
Data.q $2A2C0A0351FF0031,$081803050458FF00,$544D002FFF00DC8B,$FF00D30000006B72
Data.q $206B636172540703,$010B7F7F0FF00031,$0403030203090101,$348128C000F70400
Data.q $3C7F4B903C7F07B0,$3C7F4C9000404B80,$3C7F4B9000404C80,$3C7F4C9000404B80
Data.q $3C7F4B9000404C80,$3C7F4C9000404B80,$3C7F4B9000404C80,$3C7F4C9000404B80
Data.q $3C7F4B9000404C80,$3C7F4C9000404B80,$3C7F4B9000404C80,$3C7F4C9000404B80
Data.q $3C7F4B9000404C80,$3C7F4C9000404B80,$3C7F4B9000404C80,$3C7F4C9000404B80
Data.q $3C7F4B9000404C80,$3C7F4C9000404B80,$3C7F4B9000404C80,$3C7F4C9000404B80
Data.q $787F509000404C80,$2FFF689E84405080,$0300006B72544D00,$6172540703FF003C
Data.q $883CC10031206B63,$2C912C827F07B174,$917081402C81787F,$7081402C81787F2C
Data.q $78402F81787F2F91,$78403181787F3191,$81402C81787F2C91,$402C81787F2C9170
Data.q $2A81787F2A917081,$2B81787F2B917840,$2C81787F2C917840,$81787F2C91708140
Data.q $787F2F917081402C,$787F319178402F81,$787F2C9178403181,$7F2C917081402C81
Data.q $2A917081402C8178,$2B9178402A81787F,$2C9178402B81787F,$917081402C81787F
Data.q $7081402C81787F2C,$78402F81787F2F91,$78403181787F3191,$81402C81787F2C91
Data.q $402C81787F2C9170,$2A81787F2A917081,$2B81787F2B917840,$2C81787F2C917840
Data.q $81787F2C91708140,$787F2F917081402C,$787F319178402F81,$787F2C9178403181
Data.q $7F2C917081402C81,$2A917081402C8178,$2B9178402A81787F,$2C9178402B81787F
Data.q $917081402C81787F,$7081402C81787F2C,$78402F81787F2F91,$78403181787F3191
Data.q $81402C81787F2C91,$402C81787F2C9170,$2A81787F2A917081,$2B81787F2B917840
Data.q $2C81787F2C917840,$81787F2C91708140,$787F2F917081402C,$787F319178402F81
Data.q $787F2C9178403181,$7F2C917081402C81,$2A917081402C8178,$2B9178402A81787F
Data.q $2C9178402B81787F,$917081402C81787F,$7081402C81787F2C,$78402F81787F2F91
Data.q $78403181787F3191,$81402C81787F2C91,$402C81787F2C9170,$2F81787F2F917081
Data.q $3081787F30917840,$31913C4707B13C40,$917081403181787F,$3481403881787F38
Data.q $3C7F2C913C4407B1,$00402C813C4507B1,$007F3891784607B1,$78403881784707B1
Data.q $81403181787F3191,$403881787F389170,$2C81787F2C917081,$3881787F38917840
Data.q $3181787F31917840,$81787F3891708140,$787F2C9170814038,$787F389178402C81
Data.q $007F07B178403881,$81403181787F3191,$403181787F319170,$3481787F34917081
Data.q $07B1007F36917840,$2C9178403681787F,$917081402C81787F,$7081402C81787F2C
Data.q $78402F81787F2F91,$78403181787F3191,$81402C81787F2C91,$402C81787F2C9170
Data.q $2A81787F2A917081,$2B81787F2B917840,$2C81787F2C917840,$81787F2C91708140
Data.q $787F2F917081402C,$787F319178402F81,$787F339178403181,$7F33917081403381
Data.q $3491708140338178,$369178403481787F,$339178403681787F,$915884403381787F
Data.q $9100402C81787F2C,$82402C8158847F2C,$72544D002FFF30C4,$03FF00FC0100006B
Data.q $33206B6361725407,$7F07B2348139C200,$4782787F47922CAF,$4482787F44920040
Data.q $8204877F3F920040,$82787F47923C403F,$82787F4492004047,$04877F3E92004044
Data.q $787F47923C403E82,$787F449200404782,$877F3D9200404482,$7F3B923C403D8204
Data.q $7F3D9200403B8278,$44924087403D8278,$927081404482787F,$7081404482787F44
Data.q $78404782787F4792,$78404982787F4992,$81404482787F4492,$404482787F449270
Data.q $4282787F42927081,$4382787F43927840,$4482787F44927840,$82787F409248A440
Data.q $82787F3D92004040,$04877F389200403D,$787F40923C403882,$787F3D9200404082
Data.q $877F379200403D82,$7F40923C40378204,$7F3D920040408278,$7F369200403D8278
Data.q $34923C4036820487,$369200403482787F,$B20487403682787F,$92003107B23C3107
Data.q $B23C3107B23C513F,$823C3107B23C3107,$B23C3107B200403F,$92003107B23C3107
Data.q $B23C3107B23C513E,$823C3107B23C3107,$B23C3107B200403E,$92003107B23C3107
Data.q $823C3107B23C5138,$B23C3107B2004038,$B200513F923C3107,$78403F8270813107
Data.q $403E827081513E92,$4038827851389278,$3F827081513F9278,$827081513E927840
Data.q $827851389278403E,$5085513F92784038,$007F07B200403F82,$81404B8278514B92
Data.q $404B8278514B9270,$4C8278514C927081,$4E8278514E927840,$4B8278514B927840
Data.q $8278513F92588440,$5884513F9200403F,$2FFF30C482403F82,$0500006B72544D00
Data.q $6172540703FF008C,$07B9748834206B63,$07B93C3A07B93C3A,$07B93C3A07B93C3A
Data.q $1F99003A07B93C3A,$07B93C7F3B99007F,$1F8900403B893C3A,$3B99003A07B90040
Data.q $3B893C3A07B93C7F,$3F99003A07B90040,$3F893C3B07B93C7F,$1F99003B07B90040
Data.q $07B93C7F3B99007F,$1F8900403B893C3B,$3B99003B07B90040,$3B893C3B07B93C7F
Data.q $4099003B07B90040,$40893C3B07B93C7F,$1F99003B07B90040,$07B93C7F3B99007F
Data.q $1F8900403B893C3B,$3F99783B07B90040,$3B89787F3B99007F,$3B9978403F890040
Data.q $1F89787F1F99007F,$3B9900403B890040,$3F9900403B89787F,$3B9900403F89787F
Data.q $1F89787F1F99007F,$3B9900403B890040,$409900403B89787F,$3B9900404089787F
Data.q $1F89787F1F99007F,$3B9978403B890040,$3F89787F3F99007F,$1F9978403B890040
Data.q $3B89787F3B99007F,$3B9900401F890040,$3F9900403B89787F,$1F9900403F89787F
Data.q $3B89787F3B99007F,$3B9900401F890040,$409900403B89787F,$1F9900404089787F
Data.q $3B89787F3B99007F,$3F9978401F890040,$3B89787F3B99007F,$3B9978403F890040
Data.q $1F89787F1F99007F,$3B9900403B890040,$3F9900403B89787F,$3B9900403F89787F
Data.q $1F89787F1F99007F,$3B9900403B890040,$409900403B89787F,$2F9900404089787F
Data.q $2D9900402F893C7F,$289900402D893C7F,$2B993C4028893C7F,$299900402B893C7F
Data.q $2699004029893C7F,$39993C4026893C7F,$3F9978403989787F,$3B9900403F89787F
Data.q $409978403B89787F,$3B9900404089787F,$3F9978403B89787F,$3B9978403F89787F
Data.q $3F9978403B89787F,$3B9900403F89787F,$409978403B89787F,$3B9900404089787F
Data.q $3F9978403B89787F,$3B9978403F89787F,$3F9978403B89787F,$3B9900403F89787F
Data.q $409978403B89787F,$3B9900404089787F,$3F9978403B89787F,$3B9978403F89787F
Data.q $3F9978403B89787F,$3B9900403F89787F,$409978403B89787F,$3B9900404089787F
Data.q $3B9978403B89787F,$3B9978403B89787F,$3F9978403B89787F,$3B9900403F89787F
Data.q $409978403B89787F,$3B9900404089787F,$3B9978403B89787F,$3B9978403B89787F
Data.q $3F9978403B89787F,$3B9900403F89787F,$409978403B89787F,$3B9900404089787F
Data.q $3B9978403B89787F,$3B9978403B89787F,$3F9978403B89787F,$3B9900403F89787F
Data.q $409978403B89787F,$3B9900404089787F,$3B9978403B89787F,$3B9978403B89787F
Data.q $3F9978403B89787F,$3B9900403F89787F,$409978403B89787F,$3B9900404089787F
Data.q $3B9978403B89787F,$3B9978403B89787F,$3F9978403B89787F,$3B9900403F89787F
Data.q $409978403B89787F,$3B9900404089787F,$3B9978403B89787F,$3B9978403B89787F
Data.q $3F9978403B89787F,$3B9900403F89787F,$409978403B89787F,$3B9900404089787F
Data.q $3B9978403B89787F,$996882403B89787F,$9900403F89787F3F,$9978403B89787F3B
Data.q $9900404089787F40,$9978403B89787F3B,$9978403F89787F3F,$9978403B89787F3B
Data.q $9900403F89787F3F,$9978403B89787F3B,$9900404089787F40,$9978403B89787F3B
Data.q $9978403F89787F3F,$9978403B89787F3B,$9900403F89787F3F,$9978403B89787F3B
Data.q $9900404089787F40,$9978403B89787F3B,$9978403F89787F3F,$9978403B89787F3B
Data.q $9900403F89787F3F,$9978403B89787F3B,$9900404089787F40,$9978403B89787F3B
Data.q $9978403F89787F3F,$9978403F89787F3F,$9900404089787F40,$9978403F89787F3F
Data.q $9900404089787F40,$9978404089787F40,$9978403F89787F3F,$9978403F89787F3F
Data.q $9900404089787F40,$9978403F89787F3F,$9900404089787F40,$9978404089787F40
Data.q $9978403F89787F3F,$9978403F89787F3F,$9900404089787F40,$9978403F89787F3F
Data.q $9900404089787F40,$9978404089787F40,$9978403F89787F3F,$9978403B89787F3B
Data.q $9900403F89787F3F,$9978403B89787F3B,$9900404089787F40,$9978403B89787F3B
Data.q $6882403B89787F3B,$004040893C7F4099,$004040893C7F4099,$004040893C7F4099
Data.q $004040893C7F4099,$004040893C7F4099,$004040893C7F4099,$004040893C7F4099
Data.q $824040893C7F4099,$72544D002FFF00CA,$03FF001C0100006B,$35206B6361725407
Data.q $7F509320D638C300,$5093708140508378,$937081405083787F,$9378405383787F53
Data.q $9378405583787F55,$7081405083787F50,$81405083787F5093,$404E83787F4E9370
Data.q $404F83787F4F9378,$405083787F509378,$404783787F479378,$404483787F449300
Data.q $4F8350857F4F9300,$83787F4793708140,$83787F4493004047,$50857F4E93004044
Data.q $7F47937081404E83,$7F44930040478378,$7F4D930040448378,$4C9300404D835085
Data.q $4B9300404C83787F,$9300AD404B83787F,$9300404783787F47,$9300404483787F44
Data.q $00404F8340877F4F,$00404783787F4793,$00404483787F4493,$404E8340877F4E93
Data.q $404783787F479300,$404483787F449300,$4D8340877F4D9300,$83787F4E93008F40
Data.q $58847F509300404E,$2FFF30C482405083:Data.b $00:me:
Data.q $0A1A0A0D474E5089,$524448490D000000,$0900000000040000,$6326840000000001
Data.q $59487009000000F5,$0B0000130B000073,$0000189C9A000113,$0000414D41670400
Data.q $00009351FB7C8EB1,$00004D5248632000,$000083800000257A,$0000E9800000FFF9
Data.q $000060EA00003075,$5F926F170000983A,$4449E701000046C5,$6EBF94C4DA785441
Data.q $9005967FC61030DB,$C7635962E874389B,$1DA61F405A9C46AC,$04E529C43428146B
Data.q $52E8C7900877D088,$45A1DAF0B6323240,$503C2C44A643A325,$017D045CA0756C85
Data.q $77DDDF3FBC8F2073,$E6A33CBB8E3A0E38,$94CE6076533F3923,$1985F8342CB22457
Data.q $BF7BFB05F8917E45,$985FABE3FF948F98,$F4919AC3D237B018,$F656491F39FFCA30
Data.q $E5AED25989857A46,$B049EA4B5F1F2E5A,$AA73CD3D4902694D,$65C81340354FDAE9
Data.q $5B1E31D69B6EBBA5,$007F02D2E26AD280,$603D93BBDFB9A3D8,$DDBFE5FF9743B0F7
Data.q $3B696DA0E069D003,$FB6FEC4FB4D9FF68,$95113880C0FC8EA7,$631796913BC96915
Data.q $932AA28490D6309D,$955D7A7240849D53,$7B0300D0A12F8309,$510493880FB2A201
Data.q $79A1421E9F864259,$335861A853D4D40E,$9DA728D21DADBC43,$1980034F5D618068
Data.q $2CD1A680963341E0,$5ECCD3600A91FD2B,$8D80089A08BAAE64,$DDCA66682BC9D50B
Data.q $00DE7AFBA362B19A,$293855239F3447AA,$420752B7B2C5D807,$44680965C1078E4C
Data.q $EBE300C67BC97D89,$01C084A0C0025BE2,$7A28839E586DCE84,$9E2C090F09AD209C
Data.q $293B9FBEAABC1E50,$27E81CD7B6E61806,$44598014F638F188,$555915C91743468D
Data.q $4D19B733D67AC869,$A4B4459A5DEE2BF6,$B241F31B64AEB899,$9E18BB25D06BB469
Data.q $9EAB8A7605BEFDDD,$B1760177C00AD5F0,$D8E0C015523133BA,$CA50A80001DFC0FF
Data.q $000000D6C841C13B,$6042AE444E454900:Data.b $82:  EndDataSection

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : lun. 16/févr./2015 2:08
par raven
super 8)
bravo pour ton punch,
excellent éffet les éteincelles,le sprite tournant autour des cubes et la 3d.
merci pour le partage :D

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : lun. 16/févr./2015 10:31
par nico
Excellent. :)

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : lun. 16/févr./2015 13:42
par SPH
Acces memoire invalide ligne 32 :
CatchSprite(0,?me)

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : lun. 16/févr./2015 15:37
par Cool Dji
Hello,

Merci :) : je regrette d'avoir mal lu le règlement de Djes : j'étais certain qu'il fallait rendre le 31 décembre et non le 24...

Sph : c'est en version 5.30; normalement, ça compile en x86 et x64 : tu compiles avec quoi ?

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : lun. 16/févr./2015 16:29
par SPH
Cool Dji a écrit :tu compiles avec quoi ?
Avec un ordinateur

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : lun. 16/févr./2015 17:02
par Cool Dji
SPH a écrit :
Cool Dji a écrit :tu compiles avec quoi ?
Avec un ordinateur
Bon, c'est déjà ça.
Tu l'as bien rodé ton ordi ?

Bon, sérieux je vois pas : est-ce d'autres sur le forum ont rencontré un pb de compilation comme SPH ?

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : lun. 16/févr./2015 17:27
par SPH
Je suis sur pb 5.30b5
En run, j'ai une erreur et en compilant, le programme ne se lance pas. :idea:

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : lun. 16/févr./2015 20:03
par falsam
Cool Dji a écrit : est-ce d'autres sur le forum ont rencontré un pb de compilation comme SPH ?
Aucun souci avec la version 5.31 (x86) j'ai essayé aussi avec la version 5.24 (x86) et pas de souci non plus.

Par contre ton code ne fonctionne pas avec une version 64 bits de PureBasic.

En tout cas bravo pour ce code. :)

@SPH : Qu'est ce que tu attends pour passer en version 5.30 final ou en 5.31 ? Quel est ton OS ?

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : lun. 16/févr./2015 20:15
par Cool Dji
falsam a écrit :Par contre ton code ne fonctionne pas avec une version 64 bits de PureBasic
Hello Falsam : chez moi, ça tourne en x64 et x86 en 5.30, windows 8.1

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : lun. 16/févr./2015 21:10
par SPH
falsam a écrit :@SPH : Qu'est ce que tu attends pour passer en version 5.30 final ou en 5.31 ? Quel est ton OS ?
Oops, mauvaise manip de ma part, je suis bien en 5.31 mais j'ai toujours la meme erreur :|
Je suis en windows 7

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : lun. 16/févr./2015 23:40
par Mindphazer
Juste pour alimenter le débat :
compile et fonctionne bien sur Mac
PB 5.24 x64

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : mar. 17/févr./2015 0:19
par Cool Dji
C'est peut-être un problème de pointeur en mémoire.
L'adresse "me" est juste derriere un point byte et se trouve sur une adresse impaire...

en remplaçant ça
Data.q $58847F509300404E,$2FFF30C482405083:Data.b $00:me:

par ça

Data.q $58847F509300404E,$2FFF30C482405083:Data.b $00,$00,$00,$00 :me:

est-ce que ça marche mieux ?

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : mar. 17/févr./2015 0:33
par raven
Pour info,j'ai testé ton code de la version Pb 5.21 à la 5.31 x86 et 64
sur w7 et aucun soucis à signalé

Re: Mission Impossible : PurePunch Winter 2014 depunché

Publié : mar. 17/févr./2015 6:12
par SPH
Cool Dji a écrit :C'est peut-être un problème de pointeur en mémoire.
L'adresse "me" est juste derriere un point byte et se trouve sur une adresse impaire...

en remplaçant ça
Data.q $58847F509300404E,$2FFF30C482405083:Data.b $00:me:

par ça

Data.q $58847F509300404E,$2FFF30C482405083:Data.b $00,$00,$00,$00 :me:

est-ce que ça marche mieux ?
Non, ca marche pas. Toujours la meme erreur :idea: