Page 9 sur 9

Re: Pour YOGI

Publié : ven. 02/déc./2016 19:56
par yogi
ok j'ai du mal :)
alors je veux faire un écran tout simple avec logo en haut et scroll de sprite texte en bas
mais le script me dit qu'il ne reconnait pas "png" même si j'ai mis UsePNGImageDecoder() ou plutôt la personne qui l'a codé l'a fait :(
le graf test est à la racine de la chose, je ne vois pas ce qui ne va pas

merci de votre aide

stéphane


Code : Tout sélectionner

;--- Initilisation :
;EnableExplicit
UsePNGImageDecoder()

If InitSprite()=0 Or InitKeyboard()=0
      MessageRequester("Erreur", "Impossible d'initialiser le jeux  ")
      End
EndIf
;--- Les Constantes :
Enumeration Windows
      #Main_Window
      #TIM
      
EndEnumeration
Enumeration
      #Etoile0
      #Etoile1
EndEnumeration


Global Duree = 1000 ; durrée en millisec donc là on part sur un timer de 1 sec

;--- Déclaration des procedures:
;--- Procedure pour le dessin des 2 étoiles
Declare CreationEtoiles()
;---;--- Initialisation des paramètres de départ des étoiles
Declare Initialisation()
;--- Deplacement des étoiles
Declare Deplacement()



;--Structure pour les infos des étoiles
Structure NewSprite
      Sprite.i
      PosX.i
      PosY.i
      Vitesse.i
      Id.b
EndStructure


;--- Gestion des étoiles
;---Nombre d'étoiles
#MaxEtoiles= 990
;---Création d'un tableau pour les étoiles du scrolling
Global Dim etoiles.NewSprite(#MaxEtoiles)

;--- Variables globales diverses
ExamineDesktops()
Global gEvent,gWidth  = DesktopWidth(0),gHeight = DesktopHeight(0),gI

;---Création de la surface du jeu
InitSprite()
OpenWindow(#Main_Window,0,0,gWidth,gHeight,"",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(#Main_Window),0,0,gWidth,gHeight)

LoadSprite(0,test4.png)



;---Affichage des procedures :
CreationEtoiles()
Initialisation()
;---Boucle principale du jeux
Repeat
      Event = WaitWindowEvent(2)
      If Event = #PB_Event_Timer And EventTimer() = #TIM
            ;      Toutes les sec il va se passer ça !
            Value = (Value + 5) % 100
            DisplaySprite (0, value, 500)     
      EndIf   
      Repeat
            gEvent=WindowEvent()
            Select gEvent
            Case #PB_Event_CloseWindow
                  End
            EndSelect
      Until gEvent=0
      ;--- Partie 2D
      ClearScreen(RGB(0, 0, 0))
      ;--- Deplacement des étoiles pour le scrolling
      Deplacement()
      
      ExamineKeyboard()
      

Re: Pour YOGI

Publié : ven. 02/déc./2016 21:28
par majikeyric
"test4.png" :roll:

Re: Pour YOGI

Publié : ven. 02/déc./2016 21:37
par raven
bonjour,
majikeyric a etait plus rapide.

Code : Tout sélectionner

enableexplicit
;- Initialisations
If InitSprite()=0 Or InitKeyboard()=0 or UsePNGImageDecoder()=0
MessageRequester("Probleme","Initialisations impossibles",0)
End
EndIf

enumeration fenetre
#fenetre
endenumeration

enumeration 
#logo
endenumeration

#largeur_ecran = 640
#hauteur_ecran = 480

global Event,logo_posx,logo_posy

logo_posx = 100
logo_posy = 20
OpenWindow(#fenetre,0,0,#largeur_ecran,#hauteur_ecran,"logo_exemple",#PB_Window_ScreenCentered|#PB_Window_SystemMenu )
OpenWindowedScreen(WindowID(#fenetre),0,0,#largeur_ecran,#hauteur_ecran)

;on charge le sprite
 ;loadsprite(#logo,"demo.png")

LoadSprite(#logo,#PB_Compiler_Home +"Examples/Sources/Data/PureBasicLogo.bmp")  

SpriteQuality(#PB_Sprite_BilinearFiltering)

repeat
repeat 
Event = WindowEvent()

Select Event    
Case #PB_Event_CloseWindow
End
EndSelect  
Until Event=0

FlipBuffers()
ClearScreen(rgb(0,0,0))
ExamineKeyboard()
ZoomSprite(#logo,450,150)
;on affiche le logo 
DisplayTransparentSprite(#logo, logo_posx,logo_posy)

until KeyboardPushed(#pb_key_escape) or event = #PB_Event_CloseWindow
FreeSprite(#logo)
end

Re: Pour YOGI

Publié : sam. 03/déc./2016 11:02
par yogi
bonjour majikeyric et raven

et bien merci je vais potasser tout cela pour mixer avec le starfield.
bref à moi de bosser dessus :)
très bonne journée à vous

stéphane

Re: Pour YOGI

Publié : mer. 07/déc./2016 18:20
par yogi
bonsoir à tous et toutes mes excuses par avance

en effet, en relation avec le librisme et mes habitudes en lua, je me tourne vers Löve qui me plait bien.
bien sur je vais prendre note de vos codes pour essayer de les y adapter

toutes mes excuses et très bonne soirée

Re: Pour YOGI

Publié : mer. 07/déc./2016 18:43
par Ar-S
Tu n'auras pas été très persévérant..
J'espère que tu trouveras ton bonheur vai LUA/Löve.. et surtout de l'aide.

Re: Pour YOGI

Publié : mer. 07/déc./2016 19:02
par Zorro
:lol:

lorsque je vois la syntaxe :
function love.draw()
love.graphics.print("Hello World!", 400, 300)
end
Drawing an image
function love.load()
whale = love.graphics.newImage("whale.png")
end
function love.draw()
love.graphics.draw(whale, 300, 200)
end
Playing a sound
function love.load()
sound = love.audio.newSource("music.ogg")
love.audio.play(sound)
end
il pouvaient pas eviter le "love" a chaque mot ?? 8O
dommage ça aurai été cool sans ça :)

Re: Pour YOGI

Publié : mer. 07/déc./2016 19:21
par JohnJohnsonSHERMAN
J'ai eu de la chance quand j'ai fait du LUA... sur calcu programmable :) Y'avait pas ce "love".... Sérieux, soit tu fait un langage complétement LOL comme le Goto++ ou le LolCode, soit un truc sérieux... C'est pas sérieux d'appeler sa lib graphique "love"... Non mais sérieux quoi :mrgreen:

Fatal Error : Memory overflow of "serieux" in [message].