Pages vues depuis 25/07/2007 : 25 183 844
Index du forum »» Création-Développement »» Sol 3D pour jeux à la shadow fighter
@DISPLAY?{mode="ask",width=640,?height=480}
;?Création?d'une?Brosse?X=640?et?Y=1
CreateBrush(1,640,1)
;?Sélection?de?la?Brosse
SelectBrush(1)
;?Boucle?pour?réaliser?les?lignes?rouges?et?bleu?
;?intercalé?chacune?de?16?pixel?(16?vert?clair?+?16?vert?foncé=32?d'ou?le?step?32)
For?Local?X=0?To?640?Step?32
????Line(X,0,X+16,0,$008800)
????Line(X+16,0,X+32,0,$00AA00)
Next
;?Fin?de?la?sélection?de?brosse
EndSelect
SetFontStyle(#EDGE,?#BLACK,?1)
SetFillStyle(#FILLGRADIENT,?#LINEAR,?$002266,?$00AAFF)
;On?initialise?la?seul?variable?global?du?programme
XDeplacement=0
Function?Sol3D()
????StartTimer(1)
????
????Flip
????Cls
????
????Local?PositionLigneEnX=0
????Local?ZoomLigneEnX=1.5
????
????Local?Droite=IsKeyDown("RIGHT")
????Local?Gauche=IsKeyDown("LEFT")
????If?Droite=True?Then?XDeplacement=XDeplacement+2
????If?Gauche=True?Then?XDeplacement=XDeplacement-2
????For?Local?Y=400?To?480?
????????PositionLigneEnX=PositionLigneEnX+(XDeplacement/10)
????????ZoomLigneEnX=ZoomLigneEnX+0.1
;?Ici,?on?peut?aller?récupérer?chaque?ligne?d'une?image?et?l'afficher?en?Sol?3D
;?Il?faut?faire?:?DisplayBrushPart(1,point?X?de?départ?de?la?copie,?point?Y?de?départ?de?la?copie,320+XDeplacement+PositionLigneEnX,Y,Taille?de?la?partie?à?copier,1,{scaleX=ZoomLigneEnX,anchorx=0.5})
;?la?commande?DisplayBrushPart?utilisé?comme?ci?dessus?rend?le?même?effet?que?de?la?texturisation?;-)
????????DisplayBrush(1,320+XDeplacement+PositionLigneEnX,Y,{scaleX=ZoomLigneEnX,anchorx=0.5})
????Next
????Local?Temps=GetTimer(1)
????Box(0,0,640,400)
????TextOut?(220,20,"Sol?3D?pour?Beat?Them?All")
????TextOut?(160,40,"?Touche?Flèche?droite?pour?aller?à?droite")
????TextOut?(160,50,"?Touche?Flèche?Gauche?pour?aller?à?gauche")
????TextOut?(0,0,Round((1/Temps)*1000))
????TextOut?(30,0,"Image?par?seconde")
EndFunction
;?Dans?se?programme,?les?variables?disent?tous?;-)
SetInterval(1,Sol3D,20)
BeginDoubleBuffer
Repeat
WaitEvent
Forever