editeur de niveau -> divers problèmes
Publié : mar. 10/juil./2007 16:05
Bonjour, heu, depuis hier, j'essaye de convertir mon petit editeur de niveau, et ce n'est pas facile (une vrai petite usine à gaz).
Je met ici un petit code, car je me suis rendu compte que je n'arrivai pas à changer la valeur d'une variable globale à l'intérieure d'une procédure, ce qui, vous en conviendrez, est pour le moins embêtant. Mais grâce à l'intervention de Cpl.Bator, j'ai fait la correction necéssaire:
ce site est une mine d'or, mais certain code nécessite un fichier image, impossible pour moi à télécharger... comment faire ?
http://www.purearea.net/pb/CodeArchiv/French.html
Je met ici un petit code, car je me suis rendu compte que je n'arrivai pas à changer la valeur d'une variable globale à l'intérieure d'une procédure, ce qui, vous en conviendrez, est pour le moins embêtant. Mais grâce à l'intervention de Cpl.Bator, j'ai fait la correction necéssaire:
Code : Tout sélectionner
UsePNGImageDecoder () ;
If InitMouse ()=0 Or InitSprite ()=0 Or InitKeyboard ()=0 Or InitSprite3D ()=0 ; oui, il faut tout lui dire...
MessageRequester ( "Error" , "Can't open DirectX 7 or later" , 0)
End
EndIf
Global zut.l
;Déclare la procédure( j'avais omis de le faire):
Declare choixniv()
If OpenScreen (1024, 768, 32, "variable globale et procedure" )=0
MessageRequester ( "Error" , "Can't open a 1024*768 - 32 bit screen !" , 0)
End
EndIf
; **************************************************************************************************
Repeat ; boucle principale
FlipBuffers (): ClearScreen ( RGB (0,0,0))
choixniv()
zut$= Str(zut)
If StartDrawing(ScreenOutput())
DrawingMode(1)
FrontColor ( RGB (255,255,255))
DrawText (1,100, "zut: " +zut$)
StopDrawing()
EndIf
Gosub fps ; nombre d'image par seconde.
ExamineKeyboard ()
Until KeyboardPushed ( #PB_Key_Escape ): End ; fin de la boucle principale (appuyez sur la touche Esc)
; **************************************************************************************************
Procedure.l choixniv()
zut=1
EndProcedure
fps:
If Val ( FormatDate ( "%ss" , Date ()))=sek ; regardez pas là, c'est trop compliqué. Arrêtez j'vous dis! Bon ben, je
; vous aurez prévenu...
fps+1
Else
FPS$= Str (fps)
fps=0
EndIf
sek= Val ( FormatDate ( "%ss" , Date ()))
StartDrawing ( ScreenOutput ())
DrawingMode (1)
FrontColor ( RGB (255,255,255))
DrawText (1,1, "FPS: " +FPS$)
StopDrawing ()
Return
http://www.purearea.net/pb/CodeArchiv/French.html