Jeu d'aventure texte+image à l'ancienne avec PURE
Jeu d'aventure texte+image à l'ancienne avec PURE
yop les amis
En reprenant la prog d'un jeu d'aventure textuel en l'ancienne (sur Blitz, mais je voudrais le passer sur Pure) je me suis posé la question toute conne des PRINT avec PURE
Sur les vieux basic c'est simple : tu balances des print "Vous etes dans une piece", des input "que faites ?";a$... en bas de l'ecran (si possible dans une fenetre)... et hop le texte déroule tout seul. Et en haut tu balances une image... ca marche bien, c'est tout simple.
Mais avec Pure, on ne peut pas fonctionner aussi simplement que ca ?
En reprenant la prog d'un jeu d'aventure textuel en l'ancienne (sur Blitz, mais je voudrais le passer sur Pure) je me suis posé la question toute conne des PRINT avec PURE
Sur les vieux basic c'est simple : tu balances des print "Vous etes dans une piece", des input "que faites ?";a$... en bas de l'ecran (si possible dans une fenetre)... et hop le texte déroule tout seul. Et en haut tu balances une image... ca marche bien, c'est tout simple.
Mais avec Pure, on ne peut pas fonctionner aussi simplement que ca ?
Re: Jeu d'aventure texte+image à l'ancienne avec PURE
non a toi de coder un truc qui simule l'input
vite fait en modifiant un exemple de la doc, on peux faire vraiment plus propre la c'est en mode SALE
vite fait en modifiant un exemple de la doc, on peux faire vraiment plus propre la c'est en mode SALE
Code : Tout sélectionner
Declare .s Inpt(x,y,prompt$)
Declare.s getwallpaperpath()
Declare out( t$)
Declare refreshscreen()
Structure output
text.s
EndStructure
Global NewList lg.output()
If InitSprite() And InitKeyboard() And OpenScreen(1920,1080,32,"")
UseJPEGImageDecoder()
UsePNGImageDecoder()
Global img=LoadImage(#PB_Any,getwallpaperpath())
ResizeImage(img,800,600)
Global fnt=LoadFont(#PB_Any,"terminal",20)
StartDrawing(ScreenOutput())
Global fw=TextWidth("W")
Global fh=TextHeight("W")
StopDrawing()
EndIf
out("vous voyez quelque chose sur votre ecran")
;main loop
Repeat
refreshscreen()
FlipBuffers()
ExamineKeyboard()
Ret$=inpt(0,40,"que faites vous ? >")
;
Select LCase(ret$)
Case"quit"
End
Case "regarder"
out("vous voyez une image familiere")
Default
out("commande inconue")
EndSelect
Until KeyboardPushed(#PB_Key_Escape)
Procedure out(t$)
LastElement(Lg())
AddElement(Lg())
Lg()\text=t$
EndProcedure
Procedure refreshscreen()
ClearScreen(0)
StartDrawing(ScreenOutput())
DrawImage(ImageID(img),0,0)
DrawingFont(FontID(fnt))
DrawingMode(1)
For loging=5 To 1 Step -1
If ListSize(lg())-loging>=0
SelectElement (lg(),ListSize(lg())-loging)
DrawText(0,(39-loging)*fh,lg()\text)
EndIf
Next
StopDrawing()
EndProcedure
Procedure.s Inpt(x,y,prompt$)
Repeat
FlipBuffers()
refreshscreen()
ExamineKeyboard()
If KeyboardReleased(#PB_Key_Back)
FullText$ = Left(FullText$, Len(FullText$)-1)
Else
resultat$=KeyboardInkey()
If FindString("1234567890 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzéèçàù", resultat$) ; Ajouter vos propres caractères valides ici
FullText$ + resultat$
EndIf
EndIf
If StartDrawing(ScreenOutput())
DrawingFont(FontID(fnt))
DrawingMode(1)
FrontColor(RGB(128, 255, 0))
DrawText(x*fw,y*fh,prompt$ + FullText$)
StopDrawing()
EndIf
Until KeyboardReleased(#PB_Key_Return)
ProcedureReturn FullText$
EndProcedure
Procedure.s getwallpaperpath()
String$ = Space(#MAX_PATH)
SystemParametersInfo_(#SPI_GETDESKWALLPAPER,#MAX_PATH,String$,0)
ProcedureReturn String$
EndProcedure
Re: Jeu d'aventure texte+image à l'ancienne avec PURE
une version que j'ai concue pour un projet personel, j'ai enlevé tout le reste autour
ca fonctionne, les touches flechees droite et gauche, supr, backspace,home,end sont gérées avec un curseur personalisable.
ca fonctionne, les touches flechees droite et gauche, supr, backspace,home,end sont gérées avec un curseur personalisable.
Code : Tout sélectionner
Declare cli()
Declare display(disp)
Declare scankeys()
Declare dokey(a)
Declare.i cursor()
Declare RefreshKeyboard()
Declare .s returnchar(key)
Declare Keydown(key)
Declare keyup(key)
Declare keypushed(key)
Declare keyon(key)
Declare.s getwallpaperpath()
Declare definecursor(cursor$)
Declare Output(st$)
;
; +--------------------------------------+
; | code par case @ purebasic forums |
; | case[at]moonshade.org |
; +--------------------------------------+
; | |
; | procedures d'interrogation |
; | clavier |
; | |
; +--------------------------------------+
; | |
; | PROCEDURES ET DOCUMENTATION |
; | |
; +--------------------------------------+
; | RefreshKeyboard() |
; | ***************** |
; | Récupere l'etat du clavier |
; | equivalent d'examinekeyboard() |
; | |
; | returnchar(key) |
; | *************** |
; | renvoi le caractere ascii de la |
; | touche 'key' |
; | |
; | Keydown(key) |
; | ************ |
; | renvoi 1 si la touche est enfoncee |
; | |
; | Keyup(key) |
; | ********** |
; | renvoi 1 si la touche est relachée |
; | |
; | keypushed(key) |
; | ************** |
; | renvoi 1 si la touche est appuyée |
; | mais ne l'etait pas avant |
; | |
; | keyon(key) |
; | ********** |
; | renvoi 1 si la touche est allumée |
; | numlock par exemple |
; | |
; +--------------------------------------+
; +--------------------------------------+
; | CONSTANTES DEFINITION DES TOUCHES |
; +--------------------------------------+
#AltKey_windows =91
#AltKey_Shift =16
#AltKey_LeftShift =160
#AltKey_RightShift =161
#AltKey_Alt =17
#AltKey_Left_Alt =164
#AltKey_AltGr =165
#AltKey_Esc =27
#AltKey_tilde =222
#AltKey_F1 =112
#AltKey_F2 =113
#AltKey_F3 =114
#AltKey_F4 =115
#AltKey_F5 =116
#AltKey_F6 =117
#AltKey_F7 =118
#AltKey_F8 =119
#AltKey_F9 =120
#AltKey_F10 =121
#AltKey_F11 =122
#AltKey_F12 =123
#AltKey_0 =48
#AltKey_1 =49
#AltKey_2 =50
#AltKey_3 =51
#AltKey_4 =52
#AltKey_5 =53
#AltKey_6 =54
#AltKey_7 =55
#AltKey_8 =56
#AltKey_9 =57
#AltKey_parenthese =219
#AltKey_egal =187
#AltKey_backspace =8
#AltKey_windows =91
#AltKey_Tab =9
#AltKey_A =65
#AltKey_B =66
#AltKey_C =67
#AltKey_D =68
#AltKey_E =69
#AltKey_F =70
#AltKey_G =71
#AltKey_H =72
#AltKey_I =73
#AltKey_J =74
#AltKey_K =75
#AltKey_L =76
#AltKey_M =77
#AltKey_N =78
#AltKey_O =79
#AltKey_P =80
#AltKey_Q =81
#AltKey_R =82
#AltKey_S =83
#AltKey_T =84
#AltKey_U =85
#AltKey_V =86
#AltKey_W =87
#AltKey_X =88
#AltKey_Y =89
#AltKey_Z =90
#AltKey_circ =221
#AltKey_dollar =186
#AltKey_return =13
#AltKey_caps =20
#AltKey_percent =192
#AltKey_multiply =220
#AltKey_compare =226
#AltKey_space =32
#altKey_left =37
#altKey_up =38
#altKey_right =39
#altKey_down =40
#AltKey_del =46
#AltKey_pageup =33
#altKey_pagedown =34
#altKey_fin =35
#altKey_debut =36
#AltKey_inser =45
#AltKey_prtscr =44
#AltKey_pause =19
#AltKey_mute =173
#AltKey_voldwn =174
#AltKey_volup =175
#AltKey_numlock =144
#AltKey_0num =96
#AltKey_1num =97
#AltKey_2num =98
#AltKey_3num =99
#AltKey_4num =100
#AltKey_5num =101
#AltKey_6num =102
#AltKey_7num =103
#AltKey_8num =104
#AltKey_9num =105
#Altkey_minnum =109
#Altkey_addnum =107
#altKey_leftmouse =1
#altKey_rightmouse =2
#AltKey_Left_Ctrl =162
#altKey_right_Ctrl =163
#altKey_middlemouse =4 ; pas sur que la valeur soit la meme suivant les souris a tester
;+--------------------------------------+
;| BUFFERS CLAVIER |
;+--------------------------------------
Global *buffer=AllocateMemory(256)
Global *state=AllocateMemory(256)
InitSprite()
ExamineDesktops()
UsePNGImageDecoder()
UseJPEGImageDecoder()
Global rdw=DesktopWidth(0),rdh=DesktopHeight(0)
Global toplog=0
Global xd,yd,styd
Global fnt=LoadFont(#PB_Any,"terminal",20)
tempw=OpenWindow(#PB_Any,0,0,1,1,"")
tempc=CanvasGadget(#PB_Any,0,0,1,1)
;---- CLI win
StartDrawing(CanvasOutput(tempc))
DrawingFont(FontID(fnt))
Global fth=TextHeight(" ")
Global ftw=TextWidth(" ")
StopDrawing()
Global dw=ftw*80
Global dh=fth*24
CloseWindow(tempw)
Global cli=OpenWindow(#PB_Any,0,0,dw,dh,"CMD" )
Global can2=CanvasGadget(#PB_Any,0,0,dw,dh)
Enumeration
#main=0
#render
#browser
#fnt
#lnk
#adressbar
EndEnumeration
Structure cursor
lastblink.i ; elapsed milliseconds
blinkrate.i ; milliseconds blinking interval
List colors.i() ; list of colors cycle -1=no display
on.i ; color for on cursor
off.i ; color for off
state.i
pos.i; pos in string
scpos.i ; pos on screen
ch.i ; charcater used for cursor
col.i ;color for the cursor
;----annimated cursor
List char.i()
frame.i
lastframe.i
animrate.i
EndStructure
Structure key
id.i
time.i
Repeat.i
EndStructure
Global lastwin.s
Global Debg=0
Global lastkey.key
Global NewList logs.s()
Global wallpaper=LoadImage(#PB_Any,getwallpaperpath())
Global prompt$=">"
Global cli$=""
Global fc=$00ffff
Global bc=$ff0000
Global cursor.cursor
Global mode.s="default"
Global bg=CopyImage(wallpaper,#PB_Any)
ResizeImage(wallpaper,dw,dh);
ResizeImage(bg,rdw,rdh) ;
StartDrawing(ImageOutput(wallpaper))
DrawingMode(#PB_2DDrawing_AlphaBlend )
Box(0,0,dw,dh,RGBA(0,0,0,200))
StopDrawing()
cursor\blinkrate=500
cursor\ch=219
cursor\animrate=200
definecursor("color@ffff00:ff0000:00ff00:00ffff:0000ff:ff00ff")
definecursor("blinkrate@500")
definecursor("sym@176:177:178:219:178:177");124:124");
definecursor("animrate@50")
Global logpos=0
Global prompt=#True
SetWindowTitle(cli, "test")
;- main loop
Repeat
active=GetActiveWindow()
ev=WaitWindowEvent(0)
RefreshKeyboard()
If active = cli
If prompt=#True
a=scankeys()
If a
dokey(a)
EndIf
EndIf
EndIf
cli()
Until keydown(#AltKey_Esc) Or ev=#PB_Event_CloseWindow
Procedure cli()
StartDrawing(CanvasOutput(can2))
DrawingFont(FontID(fnt))
If IsImage(wallpaper)
DrawImage(ImageID(wallpaper),0,0)
Box(0,dh-fth,dw,fth,0)
Else
Box(0,0,dw,dh,0)
EndIf
shlen=((dw/ftw)-Len(prompt$))-1
shocli$=Mid(cli$,(cursor\pos+1)-shlen,shlen)
DrawText(0,dh-fth,prompt$+shocli$,fc)
;
DrawingMode(#PB_2DDrawing_XOr)
cursor()
If cursor\colors()>=0
DrawText((cursor\scpos+Len(prompt$))*ftw,dh-fth,Chr(cursor\ch),cursor\col)
EndIf
DrawingMode(#PB_2DDrawing_Default)
If ListSize(Logs())
SelectElement(Logs(),toplog)
For disp=0 To 40
disp=display(disp)
If disp>=(dh/fth)-1
toplog +1
EndIf
If NextElement(Logs())
; ne rien faire :)
Else
Break
EndIf
Next
EndIf
StopDrawing()
EndProcedure
Procedure display(disp)
DrawingMode(#PB_2DDrawing_Transparent)
col=RGB(255,255,255)
t$=Logs()
For c=1 To Len (t$)
DrawText(xp*ftw,disp*fth,Mid(t$,c,1),col)
xp+1
If xp>Round(dw/ftw,#PB_Round_Down)
xp=1
disp +1
EndIf
Next
ProcedureReturn disp
EndProcedure
Procedure scankeys()
For a=255 To 0 Step -1
If A<>16 And a<>161 And a<>160 And a<> 162 And a<>165 And a<>18 And a<>17 And a<>164
If Keydown(a)
If lastkey\id<> a
lastkey\id=a
lastkey\time=ElapsedMilliseconds()
lastkey\repeat=0
ProcedureReturn a
ElseIf ElapsedMilliseconds()-lastkey\time>350 Or lastkey\repeat>0
If ElapsedMilliseconds()-lastkey\time>50
lastkey\id=a
lastkey\time=ElapsedMilliseconds()
lastkey\repeat=1
ProcedureReturn a
EndIf
EndIf
ProcedureReturn 0
EndIf
EndIf
Next
lastkey\ID=-1
EndProcedure
Procedure dokey(a) ; check for keys
Select a
Case 37 ; <-
If cursor\pos>0
cursor\pos -1
EndIf
If cursor\pos<78 And cursor\scpos>0
cursor\scpos -1
EndIf
Case 39 ; ->
If cursor\pos<Len(cli$)
cursor\pos +1
EndIf
If cursor\scpos<78 And cursor\scpos<Len(cli$)
cursor\scpos+1
EndIf
; cursor\pos +1
Case 38 ; ^
Case 40 ; v
Case 8 ; backspace
If cli$<>""
cli$=Left(cli$,(cursor\pos)-1)+Right(cli$,Len(cli$)-cursor\pos)
cursor\pos -1
If cursor\pos<78 And cursor\scpos>0
cursor\scpos -1
EndIf
EndIf
Case 46;;supr
cli$=Left(cli$,(cursor\pos))+Right(cli$,(Len(cli$)-cursor\pos)-1)
Case 92,93,1,2,14 To 20,91,160,161,163 ;do nothing
Case 13
cursor\pos=0
cursor\scpos=0
Output(cli$)
cli$=""
Case 36 ; home
cursor\pos=0
cursor\scpos=0
Case 35 ; end
cursor\pos=Len(cli$)
If Len(cli$)>78
cursor\scpos=78
Else
cursor\scpos=Len(cli$)
EndIf
Default ; les autre touches
cli$=Left(cli$,cursor\pos)+Left(returnchar(a),1)+Right(cli$,Len(cli$)-cursor\pos)
cursor\pos+1
If cursor\pos<79
cursor\scpos+1
EndIf
EndSelect
EndProcedure
Procedure.i cursor()
If ListSize(cursor\colors())>0
If cursor\lastblink+cursor\blinkrate<=ElapsedMilliseconds()
cursor\lastblink=ElapsedMilliseconds()
If NextElement(cursor\colors())
Else
FirstElement(cursor\colors())
EndIf
cursor\col=cursor\colors()
EndIf
EndIf
If ListSize(cursor\char())>0
If cursor\lastframe+cursor\animrate<=ElapsedMilliseconds()
cursor\lastframe=ElapsedMilliseconds()
If ListSize(cursor\char())
If NextElement(cursor\char())
Else
FirstElement(cursor\char())
EndIf
cursor\ch=cursor\char()
EndIf
EndIf
EndIf
EndProcedure
Procedure RefreshKeyboard() ;rafraichis l'etat du clavier
CopyMemory(*buffer,*state,256) ; sauvegarde l'etat precedent pour comparaison (keyup)
GetKeyboardState_(*buffer)
EndProcedure
Procedure.s returnchar(key) ; renvoi le caractere saisi
r.s=Space(4)
ToAscii_(key,0,*buffer,@r,0)
ProcedureReturn r;Mid(r,1,1)
EndProcedure
Procedure Keydown(key) ; teste si une touche est enfoncée (continue)
If PeekB(*buffer+key)<0
ProcedureReturn 1
EndIf
EndProcedure
Procedure keyup(key) ; teste si une touche est lachée
If PeekB(*buffer+key)>=0 And PeekB(*state+key)<0
PokeB(*state+key,PeekB(*buffer+key))
ProcedureReturn 1
EndIf
EndProcedure
Procedure keypushed(key) ; teste si une touche est poussée (instant)
If PeekB(*buffer+key)<0 And PeekB(*state+key)>=0
PokeB(*state+key,PeekB(*buffer+key))
ProcedureReturn 1
EndIf
EndProcedure
Procedure keyon(key) ; teste si une touche est 'on' ver maj, num lock etc...
ProcedureReturn PeekB(*buffer+key) &%00000001;1
EndProcedure
Procedure.s getwallpaperpath()
String$ = Space(#MAX_PATH)
SystemParametersInfo_(#SPI_GETDESKWALLPAPER,#MAX_PATH,String$,0)
ProcedureReturn String$
EndProcedure
Procedure definecursor(cursor$)
dat.s=StringField(cursor$,2,"@")
com.s=StringField(cursor$,1,"@")
; definit le curseur a l'aide d'une string contenant l'atribut et les données de l'attribut
Select LCase(com)
Case "color" ; definit les couleurs en format rgb hexadecimal -1 pas de couleur ( pas d'affichage du curseur)
; free the color list du cursor
If ListSize(cursor\colors())
ClearList(cursor\colors())
EndIf
For col=1 To CountString(dat,":")+1
f$=StringField(dat,col,":")
AddElement(cursor\colors())
If f$="-1"
cursor\colors()=-1
Else
cursor\colors()=RGB(Val("$"+Mid(f$,1,2)),Val("$"+Mid(f$,3,2)),Val("$"+Mid(f$,5,2)))
EndIf
Next
Case "blinkrate"
cursor\blinkrate=Val(dat)
Case "sym" ; definit les symbols
If ListSize(cursor\char())
ClearList(cursor\char())
EndIf
For col=1 To CountString(dat,":")+1
f$=StringField(dat,col,":")
AddElement(cursor\char())
cursor\char()=Val(f$)
Next
Case "animrate"
cursor\animrate=Val(dat)
EndSelect
EndProcedure
Procedure Output(st$)
If ListSize(Logs())
LastElement(Logs())
EndIf
AddElement(Logs())
Logs()=st$
If ListSize(logs())>40
toplog +1
EndIf
EndProcedure
Re: Jeu d'aventure texte+image à l'ancienne avec PURE
tu peux aussi utiliser le mode fenetré windows
et ses gadgets .....
voici un petit exemple
http://michel.dobro.free.fr/Purebasic/j ... extuel.zip
le listing est celui ci (l'archive comprends 2 images pour l'exemple)
et ses gadgets .....
voici un petit exemple
http://michel.dobro.free.fr/Purebasic/j ... extuel.zip
le listing est celui ci (l'archive comprends 2 images pour l'exemple)
Code : Tout sélectionner
;{- Enumerations / DataSections
;{ Windows
Enumeration
#Win
EndEnumeration
;}
;{ Gadgets
Enumeration
#Image
#Image2
#Titre
#Text_narration
#String_reponse
EndEnumeration
;}
;{ Fonts
Enumeration
#Font_Titre
#Font_Text_narration
EndEnumeration
;}
;{ Images
Enumeration
#Image_Image_0
EndEnumeration
;}
Define.l Event
;}
UseJPEGImageDecoder()
UsePNGImageDecoder()
Declare OpenWin()
OpenWin()
;******************************
;initialisations du jeux
; ici on affiche une premiere image
; et un premier text de narration
HideGadget(#Image, #False) ; affiche le gadget image
LoadImage(#image,"legends-of-honor.jpg")
SetGadgetState(#image,ImageId(#image))
HideGadget(#Text_narration, #False) ; affiche le gadget narration
SetGadgetText(#text_narration,"tu arrives dans un etrange village , les habitant semble méfiants ! entres tu dans ce village ? ( oui/non )")
HideGadget(#String_reponse, #False) ; affiche le champ input ....
;*******************************
;{- Event loop
Repeat
Event = WaitWindowEvent(12)
Select Event
; ///////////////////
Case #PB_Event_Gadget
Select EventGadget()
Case #Image
Case #Titre
Case #Text_narration
Case #String_reponse
select GetGadgetText(#string_reponse)
Case "oui"
SetGadgetText(#text_narration,"tu entres dans l'etrange village ! ")
HideGadget(#String_reponse, #True) ; cache le champ input ....
LoadImage(#image2,"rue_medieval.jpg")
SetGadgetState(#image,ImageId(#image2))
; ici mettre la suite de l'histoire
Case "non"
SetGadgetText(#text_narration,"tu restes a l'exterieur de l'etrange village ! ")
HideGadget(#String_reponse, #True) ; cache le champ input ....
; ici mettre la suite de l'histoire
EndSelect
EndSelect
; ////////////////////////
Case #PB_Event_CloseWindow
Select EventWindow()
Case #Win
CloseWindow(#Win)
Break
EndSelect
EndSelect
Forever
;
;}
; ************** Procedures Zone ***************************
Procedure OpenWin()
If OpenWindow(#Win, 549, 135, 855, 511, "Jeux", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
ImageGadget(#Image, 65, 60, 720, 360, 0, #PB_Image_Border)
HideGadget(#Image, #True)
TextGadget(#Titre, 300, 10, 230, 45, "Mon Jeux textuel")
TextGadget(#Text_narration, 70, 430, 710, 35, "")
HideGadget(#Text_narration, #True)
StringGadget(#String_reponse, 70, 470, 710, 35, "")
HideGadget(#String_reponse, #True)
; Gadget Fonts
SetGadgetFont(#Titre, LoadFont(#Font_Titre, "Microsoft Sans Serif", 20, #PB_Font_HighQuality))
SetGadgetFont(#Text_narration, LoadFont(#Font_Text_narration, "Microsoft Sans Serif", 10, #PB_Font_Bold|#PB_Font_HighQuality))
EndIf
EndProcedure
Site: http://michel.dobro.free.fr/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"
Re: Jeu d'aventure texte+image à l'ancienne avec PURE
à nouveau merci à vous deux
Je vais tester vos programmes !
Pour info, et vous vous assurez que tous vos conseils me servent. J'ai commencé hier soir un nouveau jeu (3 jeux en cours du coup), un jeu de caisse :
https://twitter.com/GAMOPAT/status/1267133246669819904
je suis content de ces premieres lignes de code, maintenant il y a du boulot pour en faire un jeu complet
Je vais tester vos programmes !
Pour info, et vous vous assurez que tous vos conseils me servent. J'ai commencé hier soir un nouveau jeu (3 jeux en cours du coup), un jeu de caisse :
https://twitter.com/GAMOPAT/status/1267133246669819904
je suis content de ces premieres lignes de code, maintenant il y a du boulot pour en faire un jeu complet
Re: Jeu d'aventure texte+image à l'ancienne avec PURE
Cool j'adorais jouer a ce type de jeu sur Sega.
j'ai omis le nom d'ailleurs.
@++
j'ai omis le nom d'ailleurs.
@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Re: Jeu d'aventure texte+image à l'ancienne avec PURE
testé vos 3 programme
Je vais utilisé la premiere solution ! Simple et efficace
la 2eme est super sexy mais j'ai RIEN compris
Et la solution du Prof Dobro, bien mais je préfère la 1ere, sans fenetre windows
Merci les amis
Je vais utilisé la premiere solution ! Simple et efficace
la 2eme est super sexy mais j'ai RIEN compris
Et la solution du Prof Dobro, bien mais je préfère la 1ere, sans fenetre windows
Merci les amis
Re: Jeu d'aventure texte+image à l'ancienne avec PURE
OUT RUN bien sur !!!venom a écrit :Cool j'adorais jouer a ce type de jeu sur Sega.
j'ai omis le nom d'ailleurs.
@++
Re: Jeu d'aventure texte+image à l'ancienne avec PURE
Ou Lotus Turbo Challenge sur Amiga
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: Jeu d'aventure texte+image à l'ancienne avec PURE
Bien vu drfloyddrfloyd a écrit :OUT RUN bien sur !!!
@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Re: Jeu d'aventure texte+image à l'ancienne avec PURE
C'est plus une suite à GREAT AMERICAN ROAD RACE, ce génial et méconnu jeu 8bit, qui est en fait la suite de EUDURO
J'avais réalisé un 3eme opus sur PC en... QB64 (oups)
http://www.gamopat.com/page-8134772.html
Donc la ca sera le 4eme opus
Mais on s'éloigne du sujet : les jeux d'aventures textuels
J'avais réalisé un 3eme opus sur PC en... QB64 (oups)
http://www.gamopat.com/page-8134772.html
Donc la ca sera le 4eme opus
Mais on s'éloigne du sujet : les jeux d'aventures textuels