Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 2013
-
26 févr. 2009 à 01:26
Debiars
Messages postés285Date d'inscriptionlundi 16 juin 2003StatutMembreDernière intervention11 février 2018
-
8 mars 2009 à 09:40
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
Debiars
Messages postés285Date d'inscriptionlundi 16 juin 2003StatutMembreDernière intervention11 février 2018 8 mars 2009 à 09:40
Pas de problème pour la fenêtre, je rectifie au cas par cas ;)
Ca existe encore le cobol ? J'ai pratiqué pendant 16 ans... alors courage.
Quelqu'un connaitrait-il le cri du lapin crétin ?
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 8 mars 2009 à 00:21
@francky : merci , ça fait plaisir ;)
je t'avoue que j'ai pas mal bossé pour rendre un truc pas trop mauvais comme jeux (ce qui est d'ailleurs est vachement dur !)
dommage pour les FPS , ton jeux doit être 1 peu lent ... tu peux tjs le faire tourner en réso plus petite (comme 640x480) , tu changes le SetSize dans la procedure Init ... en même temps , tout dépends du processeur, d'ailleurs c'est quoi le tiens ?
@ Debiars: j'ai toujours pas changé le prob % à la fenêtre , mais je suis en plein projet cobol , j'ai pas la tête à ça pour l'instant :( dommage !
Coin coin :)
Francky23012301
Messages postés400Date d'inscriptionsamedi 6 août 2005StatutMembreDernière intervention11 février 20161 7 mars 2009 à 20:15
@Cari : c'est pas un canard au whisky mais aux pruneaux lol.
@Nico : il y a eu un sacré boulot et le résultat est bleuffant. Coté code : Rien à redire à part te féliciter. Et en plus tu n'es pas avare de commentaire : allez hop 10/10.
Perso je plane à 35 FPS.
@Jean-Pierre : va avoir de la concurrence sur delphifr si ca continue ;). T'aurais du déposer un copyright ;).
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 3 mars 2009 à 10:57
Oups ... c'est 1 vieux bidule qui traine , je change ça quand je rentre ;)
Debiars
Messages postés285Date d'inscriptionlundi 16 juin 2003StatutMembreDernière intervention11 février 2018 3 mars 2009 à 08:51
Il faut modifier la procedure SetSize, car en cas de changement de résolution d'écran, la forme se trouve décalée, sa position étant calculée avec l'ancienne résolution...
procedure TDuckForm.SetSize(AWidth , AHeight : integer);
begin
Width := AWidth;
Height := AHeight;
+---------
| if (Screen.Width<>AWidth) or (Screen.Height<>AHeight) then begin
| sSaveWidthScreen:=Screen.Width;
| fSaveHeightScreen:=Screen.Height;
| ChangeResolution(AWidth,AHeight);
| end;
+-> Top := Screen.Height div 2 - Height div 2;
Left := Screen.Width div 2 - Width div 2;
end;
On peut aussi mettre Top et Left tout simplement à zéro puisque maintenant, la forme a toujours la même taille que l'écran...
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 2 mars 2009 à 18:01
j'avais essayé de travailler avec InvalidateRect mais j'ai vite abandonné (c'est pour devenir cinglé ce truc ... )
je ne sais pas si tu as testé ici mais je n'ai plus trop de problème
(et dans ce jeu , je n'utilise quasiment pas la transparence )
De toute façon tout ceci sera un jour en openGl ou DirectX, et la , plus question de ramer avec 65 FPS ;)
Caribensila
Messages postés2527Date d'inscriptionjeudi 15 janvier 2004StatutMembreDernière intervention16 octobre 201918 2 mars 2009 à 17:46
Il faut aussi savoir que la transparence ralentit considérablement.
Peut-être que les Regions Windows seraient une voie à explorer... Mais je ne suis pas sûr car j'ai jamais testé.
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 2 mars 2009 à 16:24
Voila , j'ai eu une idée pour résoudre le problème de lenteur
j'ai affecter un bitmap à la procedure SetBackground (ce qui était prévu par ma lib), ce bitmap faisant la taille de votre écran ... donc plus de stretch , et c'est beaucoup plus rapide
je reste toujours au dessus de 60 FPS (62-63)
Le jeu est quand même plus marrant à cette vitesse...
Il y a un TopScore (c'était un petit cadeau :) )
NB : pour les tricheurs , il suffit d'éditer le fichier ini dans Media\Data\conf.ini ;)
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 28 févr. 2009 à 21:41
et en passant en 640x480 (si ton écran le permet vu que t'es en 16/9)?
As tu pris le dernier zip que j'ai posté ?
Malheureusement (en 1280x1024) moi aussi je stagne à 30 - 35 , dans le menu je suis à 49 ...
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 28 févr. 2009 à 21:13
Moi, sans changer la résolution (chuis en 1280x800 dans le système), je stagne à 32-33 FPS. Héhé mon PC n'a rien à envier à celui de Débiars ^^.
Cordialement, Bacterius !
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 28 févr. 2009 à 17:36
Il y a possibilité de passer en 640x480 au démarrage du jeu (c'est moins beau mais plus rapide )
Nico
(sur mon pc , en 640x480 , 65 FPS )
Debiars
Messages postés285Date d'inscriptionlundi 16 juin 2003StatutMembreDernière intervention11 février 2018 28 févr. 2009 à 12:00
FPS à 35 itou. Me demande pas pourquoi...
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 28 févr. 2009 à 09:11
@cari : pas de prob ;)
Personne n'a des problèmes de lenteur ?
J'aimerais bien connaitre vos FPS (F1 pdt le jeu )
Parce que j'ai fini le programme sur un autre ordi que le miens, et j'ai tjs 1 FPS>50 mais sur mon ordinateur , je tombe à 30, 35 !
Sur mon pc, j'ai découvert(et je le savais déjà) le problème : la fonction stretchdraw ralentit considérablement le jeu (cette fonction est utilisé pour dessiner le background )
C'est du à quoi ? l'affichage n'est pas géré par la carte graphique ici,si ?
c'est donc le processeur ? ou ce n'est pas si simple ?
Merci
Caribensila
Messages postés2527Date d'inscriptionjeudi 15 janvier 2004StatutMembreDernière intervention16 octobre 201918 28 févr. 2009 à 02:28
RECTIFICATIF !
Y'aura p'têt du canard dans les chevrotines...
PS: Pardon Nico :s
Debiars
Messages postés285Date d'inscriptionlundi 16 juin 2003StatutMembreDernière intervention11 février 2018 27 févr. 2009 à 10:14
Rigolez pas... j'ai dû passer le nombre de cartouche à 10 !
ca arrête pas de bouger, ces bestiaux là.
Quand à la recette du caviar au biscuit, pardon, du... comme y dit Matador, hips!, je... déjà donné.
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 202113 27 févr. 2009 à 09:52
@Caribensila:
Est-ce bien raisonnable de lui donner tout de suite la recette du canard au whisky ?
Caribensila
Messages postés2527Date d'inscriptionjeudi 15 janvier 2004StatutMembreDernière intervention16 octobre 201918 26 févr. 2009 à 21:39
AVIS A TOUS !
'va y avoir du canard à la chevrotine chez l'ami Debiars, dimanche...
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 20:58
Voila MAJ, je n'ai plus eu ce problème... il a fallu que je me trompe de zip en plus :(
Ça y est, tu pourras t'acharner dessus, il ne doit plus avoir de problèmes maintenant ;)
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 20:13
Bingo , je pense que c'est ça (ou alors c'est un parmi tant d'autres mais normalement résolut )
dans uDuck.Collide
if isCollide(uMain.fCursor) and (uMain.fCursor.KillShoot) then begin
//Cette ligne a ajouter if (fTypeAnimation DEAD_RIGHT) or (fTypeAnimation DEAD_LEFT) or (fTypeAnimation = FALLING) then exit;
...
end;
...
end;
ou faire un test si fTypeAnimation<>DEAD_RIGHT ... revient au même ...
Je pense que le problème est résolu de cette façon
(Veux tu bien tester avant que je fasse la MAJ , parce que je suis en internet bas débit et ma source fait presque 1mo , c'est une pure horreur ... )
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 20:03
Oui je viens de tester , c'est exactement ça ...
Il ne mérite quand même pas autant de haine ce pauvre canard !
Retirer dessus alors qu'il est déjà touché !
lol
En tout cas merci (ca explique prq je n'ai jamais eu ce problème) , je vais regarder au pourquoi du problème.
Je dirais que ca vient du TSpriteText mais pas sur (c'est la dernière chose que j'ai ajouté, sans réellement bien tester )
Debiars
Messages postés285Date d'inscriptionlundi 16 juin 2003StatutMembreDernière intervention11 février 2018 26 févr. 2009 à 19:50
Une piste : la violation d'accès seproduit quand je clique deux fois de suite sur le canard déjaà touché par le premier coup !?!?
lucky debiars qui clique plus vite que...
JulioDelphi
Messages postés2226Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention18 novembre 201014 26 févr. 2009 à 17:34
File moi les liens en MP, je m'occupe de ça :]
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 17:33
@bacterius : dans uDuck
dans le constructeur :
remplace
SpritePtText := TSpriteText.Create('X000X',0,0,RGB(255,255,255));
par
SpritePtText := TSpriteText.Create('X000X',0,0,DEFAULT_TRANSPARENT_COLOR);
// sous Xp sur mon pc il n'y a pas de problème , mais ici sous Vista , j'ai des petits problèmes d'affichages avec cette technique, c'est pour ça que je ne l'ai pas mise dans le jeu ...
Je pige pas les erreurs , j'ai encore testé et je n'ai rien , mais à mon avis ça doit être SpriteEngine.clear qui pose problème
(libération d'objets qui sont utilisés...)
@JulioDelphi : Dsl ! faut-il aussi que je change le nom du projet ds le zip ?
Plusieurs remakes existent sur CS et ils portent les noms originaux...
JulioDelphi
Messages postés2226Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention18 novembre 201014 26 févr. 2009 à 17:06
(Désolé j'ai dû renommer le jeu pour éviter un soucis de License avec Nintendo. Ton jeu s'apelle Shoot le canard et non plus D**K H**T qui est deja déposé.)
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 26 févr. 2009 à 16:56
Une violation d'accès de temps en temps, peut-être écrire les miniscores (quand on shoot un canard, ya un petit libellé "40", "50" qui indique les points) en mode non opaque (le fond blanc dans le rectangle du texte, bon ...).
Cordialement, Bacterius !
cs_EBArtSoft
Messages postés4525Date d'inscriptiondimanche 29 septembre 2002StatutModérateurDernière intervention22 avril 20199 26 févr. 2009 à 16:06
j'aime bien
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 15:39
moi je suis un grand jeune , ça m'amuse toujours autant ;)
c'est grave docteur ?!
Nico
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 202113 26 févr. 2009 à 15:24
10/10
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 202113 26 févr. 2009 à 15:21
ouf croisement de post..
c'est tout à fait ça Nicolas___
merci pour l'explication mais
cela n'affecte en rien les canards !
c'est très amusant surtout pour les plus jeunes
bravo !
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 202113 26 févr. 2009 à 15:15
A l'ouverture un point d'arrêt sur le TSpriteXY.Create donne AVitesse = 1..
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 15:05
@ cantador : ok , je pense que je viens de comprendre ce que tu me demande ...
dans uSpriteXY (j'avoue , cette classe à été fait à la va vite, qqun voulait un menu mouvant et pas une bette image )
les constructeurs qui s'appellent ici ne sert à rien !
tu as remarqué , dans le 2 ème constructeur , j'appelle le premier puis je répète une portion de code existant dans le premier pour que ça fonctionne (ce qui est très nul )
Dans ce cas , j'aurais encore mieux faire de faire 2 constructeurs bien distincts
C'est parce que après je fais ça (ds le 2ème) , que ça fonctionne :
fVitesse := AVitesse;
SetDeplacement(ATypeDeplacement);
est ce que j'ai plus ou moins compris ce que tu voulais ?
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 14:52
@ cantador , croisement de post ;)
euh... a moins que je sois fou , je vois bien 8 paramètres de transmis... sinon Speed:=5 quand on n'utilise pas AVitesse
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 14:49
oui c'est vrai que ça va fort ! j'ai plus fait gaffe parce que je testais en mute ...ou je mettais très bas le son !
Pour résoudre ça , tu peux placer dans l'init
SpriteEngine.BASS.VolumeStream := 100; //valeur de 0->1000
Bizarre les erreurs ... pr une fois j'étais content, j'en avais encore pas eu !
en même temps j'ai pas D7 ici...
Tu peux me dire quand ça se produit (ma sœur y a joué 1/2h et no problems)
Si tu as des remarques vis à vis du code , ou du jeu , elles sont les bienvenues ;)
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 202113 26 févr. 2009 à 14:48
pas de souci tout compile..
juste un truc que je pige pas :
sur le Oncreate il passe sur :
// ajout de l'image du menu
Choix := TSpriteXY.Create(OPTION_GFX, OPTION_WIDTH, OPTION_HEIGHT, tHORIZONTAL, SpriteEngine.ClientRect.Right div 2 - OPTION_WIDTH, SpriteEngine.ClientRect.Bottom - OPTION_HEIGHT - OPTION_HEIGHT div 4, OPTION_WIDTH, 1);
et il se branche sur :
constructor TSpriteXY.Create(AFileName: string; Width, Height: integer; ATypeDeplacement: TTypeDeplacement; X: Integer; Y: Integer; ADelta: Integer; AVitesse: Integer);
Comment fait-il pour trouver la valeur de Avitesse puisqu'à ce moment là 7 paramètres sont transmis et pas 8 ?
et il ne passe pas avant sur l'autre create à 7 params ?
Debiars
Messages postés285Date d'inscriptionlundi 16 juin 2003StatutMembreDernière intervention11 février 2018 26 févr. 2009 à 14:07
Pas de problème, je compile sous Delphi 7.
Mais la musique...quelle violence!!!
De temps en temps un bug type violation à l'adresse untel...
Mon p'tit fils va se régaler !
Cordialement :)
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 13:00
Est ce que quelqu'un peut me confirmer que le projet compile ?
Merci
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 01:52
voila , ca devrait fonctionné maintenant , sinon je regarderais à ca demain , suis crevé !
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 01:41
a mon avis , c'est le fichier dpr qui ne sait pas bien fait (vu que moi je copie dans le dossier LIB de borland , attend je regarde a ca ... j'ai pas l'habitude avec Turbo delphi (d'ailleurs j'aime pas de trop ! )
copie le dans lib en attendant , je resous ce problème
(que de commentaires après si peu de temps ! désolé mais 'vous jure , il compile ! )
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 01:35
avis au modo du site , je ne sais pas c quoi le dossier _history dans mon zip
edit : dossier caché de turbo delphi a mon avis ... je vire
@ bacterius : il fait lire la description avant de râler ;) lol
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 26 févr. 2009 à 01:31
Ca ne marche tjrs pas, il ne reconnait pas TBassStream ...
Cordialement, Bacterius !
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 26 févr. 2009 à 01:29
Ah ok, je vais voir tout ça.
Cordialement, Bacterius !
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 01:27
si uSprite est dans le dossier LIB ... si tu prends celui de l'ancienne source , ca ne compilera pas !
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 26 févr. 2009 à 01:26
T'as pas mis uSprite : pas grave je vais le pomper sur ta précédente source.
Je teste et je te dis.
Cordialement, Bacterius !
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 26 févr. 2009 à 01:26
Pourquoi mon code est desactivé ?
les sprites sont telechargés sur internet !
8 mars 2009 à 09:40
Ca existe encore le cobol ? J'ai pratiqué pendant 16 ans... alors courage.
Quelqu'un connaitrait-il le cri du lapin crétin ?
8 mars 2009 à 00:21
je t'avoue que j'ai pas mal bossé pour rendre un truc pas trop mauvais comme jeux (ce qui est d'ailleurs est vachement dur !)
dommage pour les FPS , ton jeux doit être 1 peu lent ... tu peux tjs le faire tourner en réso plus petite (comme 640x480) , tu changes le SetSize dans la procedure Init ... en même temps , tout dépends du processeur, d'ailleurs c'est quoi le tiens ?
@ Debiars: j'ai toujours pas changé le prob % à la fenêtre , mais je suis en plein projet cobol , j'ai pas la tête à ça pour l'instant :( dommage !
Coin coin :)
7 mars 2009 à 20:15
@Nico : il y a eu un sacré boulot et le résultat est bleuffant. Coté code : Rien à redire à part te féliciter. Et en plus tu n'es pas avare de commentaire : allez hop 10/10.
Perso je plane à 35 FPS.
@Jean-Pierre : va avoir de la concurrence sur delphifr si ca continue ;). T'aurais du déposer un copyright ;).
3 mars 2009 à 10:57
3 mars 2009 à 08:51
procedure TDuckForm.SetSize(AWidth , AHeight : integer);
begin
Width := AWidth;
Height := AHeight;
+---------
| if (Screen.Width<>AWidth) or (Screen.Height<>AHeight) then begin
| sSaveWidthScreen:=Screen.Width;
| fSaveHeightScreen:=Screen.Height;
| ChangeResolution(AWidth,AHeight);
| end;
+-> Top := Screen.Height div 2 - Height div 2;
Left := Screen.Width div 2 - Width div 2;
end;
On peut aussi mettre Top et Left tout simplement à zéro puisque maintenant, la forme a toujours la même taille que l'écran...
2 mars 2009 à 18:01
je ne sais pas si tu as testé ici mais je n'ai plus trop de problème
(et dans ce jeu , je n'utilise quasiment pas la transparence )
De toute façon tout ceci sera un jour en openGl ou DirectX, et la , plus question de ramer avec 65 FPS ;)
2 mars 2009 à 17:46
Peut-être que les Regions Windows seraient une voie à explorer... Mais je ne suis pas sûr car j'ai jamais testé.
2 mars 2009 à 16:24
j'ai affecter un bitmap à la procedure SetBackground (ce qui était prévu par ma lib), ce bitmap faisant la taille de votre écran ... donc plus de stretch , et c'est beaucoup plus rapide
je reste toujours au dessus de 60 FPS (62-63)
Le jeu est quand même plus marrant à cette vitesse...
Il y a un TopScore (c'était un petit cadeau :) )
NB : pour les tricheurs , il suffit d'éditer le fichier ini dans Media\Data\conf.ini ;)
28 févr. 2009 à 21:41
As tu pris le dernier zip que j'ai posté ?
Malheureusement (en 1280x1024) moi aussi je stagne à 30 - 35 , dans le menu je suis à 49 ...
28 févr. 2009 à 21:13
Cordialement, Bacterius !
28 févr. 2009 à 17:36
Nico
(sur mon pc , en 640x480 , 65 FPS )
28 févr. 2009 à 12:00
28 févr. 2009 à 09:11
Personne n'a des problèmes de lenteur ?
J'aimerais bien connaitre vos FPS (F1 pdt le jeu )
Parce que j'ai fini le programme sur un autre ordi que le miens, et j'ai tjs 1 FPS>50 mais sur mon ordinateur , je tombe à 30, 35 !
Sur mon pc, j'ai découvert(et je le savais déjà) le problème : la fonction stretchdraw ralentit considérablement le jeu (cette fonction est utilisé pour dessiner le background )
C'est du à quoi ? l'affichage n'est pas géré par la carte graphique ici,si ?
c'est donc le processeur ? ou ce n'est pas si simple ?
Merci
28 févr. 2009 à 02:28
Y'aura p'têt du canard dans les chevrotines...
PS: Pardon Nico :s
27 févr. 2009 à 10:14
ca arrête pas de bouger, ces bestiaux là.
Quand à la recette du caviar au biscuit, pardon, du... comme y dit Matador, hips!, je... déjà donné.
27 févr. 2009 à 09:52
Est-ce bien raisonnable de lui donner tout de suite la recette du canard au whisky ?
26 févr. 2009 à 21:39
'va y avoir du canard à la chevrotine chez l'ami Debiars, dimanche...
26 févr. 2009 à 20:58
Ça y est, tu pourras t'acharner dessus, il ne doit plus avoir de problèmes maintenant ;)
26 févr. 2009 à 20:13
dans uDuck.Collide
if isCollide(uMain.fCursor) and (uMain.fCursor.KillShoot) then begin
//Cette ligne a ajouter if (fTypeAnimation DEAD_RIGHT) or (fTypeAnimation DEAD_LEFT) or (fTypeAnimation = FALLING) then exit;
...
end;
...
end;
ou faire un test si fTypeAnimation<>DEAD_RIGHT ... revient au même ...
Je pense que le problème est résolu de cette façon
(Veux tu bien tester avant que je fasse la MAJ , parce que je suis en internet bas débit et ma source fait presque 1mo , c'est une pure horreur ... )
26 févr. 2009 à 20:03
Il ne mérite quand même pas autant de haine ce pauvre canard !
Retirer dessus alors qu'il est déjà touché !
lol
En tout cas merci (ca explique prq je n'ai jamais eu ce problème) , je vais regarder au pourquoi du problème.
Je dirais que ca vient du TSpriteText mais pas sur (c'est la dernière chose que j'ai ajouté, sans réellement bien tester )
26 févr. 2009 à 19:50
lucky debiars qui clique plus vite que...
26 févr. 2009 à 17:34
26 févr. 2009 à 17:33
dans le constructeur :
remplace
SpritePtText := TSpriteText.Create('X000X',0,0,RGB(255,255,255));
par
SpritePtText := TSpriteText.Create('X000X',0,0,DEFAULT_TRANSPARENT_COLOR);
// sous Xp sur mon pc il n'y a pas de problème , mais ici sous Vista , j'ai des petits problèmes d'affichages avec cette technique, c'est pour ça que je ne l'ai pas mise dans le jeu ...
Je pige pas les erreurs , j'ai encore testé et je n'ai rien , mais à mon avis ça doit être SpriteEngine.clear qui pose problème
(libération d'objets qui sont utilisés...)
@JulioDelphi : Dsl ! faut-il aussi que je change le nom du projet ds le zip ?
Plusieurs remakes existent sur CS et ils portent les noms originaux...
26 févr. 2009 à 17:06
26 févr. 2009 à 16:56
Cordialement, Bacterius !
26 févr. 2009 à 16:06
26 févr. 2009 à 15:39
c'est grave docteur ?!
Nico
26 févr. 2009 à 15:24
26 févr. 2009 à 15:21
c'est tout à fait ça Nicolas___
merci pour l'explication mais
cela n'affecte en rien les canards !
c'est très amusant surtout pour les plus jeunes
bravo !
26 févr. 2009 à 15:15
26 févr. 2009 à 15:05
dans uSpriteXY (j'avoue , cette classe à été fait à la va vite, qqun voulait un menu mouvant et pas une bette image )
les constructeurs qui s'appellent ici ne sert à rien !
tu as remarqué , dans le 2 ème constructeur , j'appelle le premier puis je répète une portion de code existant dans le premier pour que ça fonctionne (ce qui est très nul )
Dans ce cas , j'aurais encore mieux faire de faire 2 constructeurs bien distincts
C'est parce que après je fais ça (ds le 2ème) , que ça fonctionne :
fVitesse := AVitesse;
SetDeplacement(ATypeDeplacement);
est ce que j'ai plus ou moins compris ce que tu voulais ?
26 févr. 2009 à 14:52
euh... a moins que je sois fou , je vois bien 8 paramètres de transmis... sinon Speed:=5 quand on n'utilise pas AVitesse
26 févr. 2009 à 14:49
Pour résoudre ça , tu peux placer dans l'init
SpriteEngine.BASS.VolumeStream := 100; //valeur de 0->1000
Bizarre les erreurs ... pr une fois j'étais content, j'en avais encore pas eu !
en même temps j'ai pas D7 ici...
Tu peux me dire quand ça se produit (ma sœur y a joué 1/2h et no problems)
Si tu as des remarques vis à vis du code , ou du jeu , elles sont les bienvenues ;)
26 févr. 2009 à 14:48
juste un truc que je pige pas :
sur le Oncreate il passe sur :
// ajout de l'image du menu
Choix := TSpriteXY.Create(OPTION_GFX, OPTION_WIDTH, OPTION_HEIGHT, tHORIZONTAL, SpriteEngine.ClientRect.Right div 2 - OPTION_WIDTH, SpriteEngine.ClientRect.Bottom - OPTION_HEIGHT - OPTION_HEIGHT div 4, OPTION_WIDTH, 1);
et il se branche sur :
constructor TSpriteXY.Create(AFileName: string; Width, Height: integer; ATypeDeplacement: TTypeDeplacement; X: Integer; Y: Integer; ADelta: Integer; AVitesse: Integer);
Comment fait-il pour trouver la valeur de Avitesse puisqu'à ce moment là 7 paramètres sont transmis et pas 8 ?
et il ne passe pas avant sur l'autre create à 7 params ?
26 févr. 2009 à 14:07
Mais la musique...quelle violence!!!
De temps en temps un bug type violation à l'adresse untel...
Mon p'tit fils va se régaler !
Cordialement :)
26 févr. 2009 à 13:00
Merci
26 févr. 2009 à 01:52
26 févr. 2009 à 01:41
copie le dans lib en attendant , je resous ce problème
(que de commentaires après si peu de temps ! désolé mais 'vous jure , il compile ! )
26 févr. 2009 à 01:35
edit : dossier caché de turbo delphi a mon avis ... je vire
@ bacterius : il fait lire la description avant de râler ;) lol
26 févr. 2009 à 01:31
Cordialement, Bacterius !
26 févr. 2009 à 01:29
Cordialement, Bacterius !
26 févr. 2009 à 01:27
26 févr. 2009 à 01:26
Je teste et je te dis.
Cordialement, Bacterius !
26 févr. 2009 à 01:26
les sprites sont telechargés sur internet !