Page 3 sur 8
Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : lun. 03/déc./2012 19:42
par graph100
Je n'arrive pas à décoder un ruban, il l'affiche, mais on ne récupère pas le texte

Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : lun. 03/déc./2012 20:12
par Ar-S
Je corrige après bouffé désolé j'ai posté un peu vite.
----edit---- voilà c'est bon.
P.S : GG ton Space invader

Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mar. 04/déc./2012 8:53
par kernadec
bonjour
puisqu'on est fous
Cordialement
ps: modification du code avec l'utilisation d' ImageGadget au lieu de CanvasGadget car trop de vibrations sous XP
Code : Tout sélectionner
;******************************************************************************
;*
;* Season's Greetings PurePunch Demo contest
;* PureBasic 5.00
;* 80 lines of 80 chars, 1 month delay
;
;* Name : PanelGadget Color Toobar
;* Author : Kernadec
;* Date : 04.12.2012
;* Notes : ...
;*
;******************************************************************************
Enumeration
#Win:#bouton1:#bouton2
#PanelGadget1
#Container1:#Container2
#ToolBar1:#ToolBar2
#image1:#image2:
#imagegadget1:#imagegadget2
EndEnumeration
Enumeration 1
#icon1:#icon2:#icon3:#icon4:#icon5:#icon6:#icon7:#icon8
EndEnumeration
#Flag = #PB_Window_SystemMenu|#PB_Window_ScreenCentered
titre$="PanelGadget color & ToolBar"
Procedure.f GradientCallback1(x, y)
ProcedureReturn Sin(y * 0.5)
EndProcedure
Procedure.f GradientCallback2(x, y)
ProcedureReturn Sin(x * 0.6)
EndProcedure
CreateImage(#image1,272,128,32):CreateImage(#image2,272,128,32)
OpenWindow( #Win, 0, 0, 300, 200,titre$,#Flag)
PanelGadget(#PanelGadget1,10,10,WindowWidth(#Win)-20,WindowHeight(#Win)-20)
AddGadgetItem(#PanelGadget1, -1, "Panel 1")
ContainerGadget(#Container1, 0, 0, 272,24,#PB_Container_BorderLess):
CloseGadgetList():StartDrawing(ImageOutput(#image1))
DrawingMode(#PB_2DDrawing_Gradient):BackColor($00FFFF):FrontColor($FF0F0F)
CustomGradient(@GradientCallback1()):Box(0, 0, 272,128):StopDrawing()
ImageGadget(#imagegadget1,0,25,272,128,ImageID(#image1))
DisableGadget(#imagegadget1,1):ButtonGadget(#bouton1,90,62,100,56,"Button1")
CreateToolBar(#ToolBar1,GadgetID(#Container1))
ToolBarStandardButton(#icon1,#PB_ToolBarIcon_New)
ToolBarStandardButton(#icon2,#PB_ToolBarIcon_Open)
ToolBarStandardButton(#icon3,#PB_ToolBarIcon_Undo)
ToolBarStandardButton(#icon4,#PB_ToolBarIcon_Redo)
;-----------------------------------------------------------------------------
AddGadgetItem(#PanelGadget1, -1, "Panel 2")
ContainerGadget(#Container2, 0, 0, 272,24,#PB_Container_BorderLess)
CloseGadgetList():StartDrawing(ImageOutput(#image2))
DrawingMode(#PB_2DDrawing_Gradient):BackColor($00FFFF):FrontColor($FF0F0F)
CustomGradient(@GradientCallback2()):Box(0, 0, 272,128):StopDrawing()
ImageGadget(#imagegadget2,0,25,272,128,ImageID(#image2))
DisableGadget(#imagegadget2,1):ButtonGadget(#bouton2,90,62,100,56,"Button2")
CreateToolBar(#ToolBar2, GadgetID(#Container2))
ToolBarStandardButton(#icon5,#PB_ToolBarIcon_Cut)
ToolBarStandardButton(#icon6,#PB_ToolBarIcon_Copy)
ToolBarStandardButton(#icon7,#PB_ToolBarIcon_Paste)
ToolBarStandardButton(#icon8,#PB_ToolBarIcon_Replace)
;-----------------------------------------------------------------------------
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow: End
Case #PB_Event_Gadget
Select EventGadget()
Case #bouton1
Debug "Identifiant bouton: "+Str(EventGadget())
Case #bouton2
Debug "Identifiant bouton: "+Str(EventGadget())
EndSelect
Case #PB_Event_Menu
Debug "Identifiant ToolBar: "+Str(EventMenu())
EndSelect
ForEver
Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mar. 04/déc./2012 18:15
par venom
Excellent le puissance 4. Bravo pour tous les codes deja postée.
Dommage que je n'ai plus le temps de coder
Bonne continuation.
@++
Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mar. 04/déc./2012 22:49
par comtois
Graph100 , Y'a une erreur à la ligne 58, Point() en dehors de la zone de dessin. Faut mettre le débogueur pour la voir ou l'avoir
Avec les 20 lignes qu'il te reste, tu pourrais gérer les collisions des invaders avec le vaisseau.
Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mer. 05/déc./2012 1:26
par graph100
Je n'arrive pas à reproduire l'erreur que tu obtiens. es-tu sur de ne pas avoir modifier le code en le copiant ?
parce que comme il est actuellement, le point() est testé de 0 à largeur du texte et 0 à hauteur du texte.
Je compile toujours avec le débugeur, et jamais je n'ai eu cette erreur-ci... (avec la victoire ou la défaite)
Si tu la reproduis, peux-tu me donner le couple (i,j) pour lequel ça se produit ?
pour les collisions invaders / vaisseau, c'est un choix, mais je peux le rajouter
Sinon, bravo ! (la ligne 58 correspondait à l'affichage du message de victoire

)
Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mer. 05/déc./2012 7:24
par comtois
j'ai pris ta dernière version, maintenant le bug apparait à la ligne 65. avec i = 600 !
Pour le constater, tu attends que les invaders touchent la terre en restant dans un coin peinard (complètement à gauche et tu n'es jamais touché !).
Et il y a un problème avec l'image que tu affiches, il a fallu que je récupère l'image qui se trouve dans l'archive.
Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mer. 05/déc./2012 11:26
par djes
Comme quoi ça sert de poster avant

Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mer. 05/déc./2012 18:53
par graph100
@Comtois: je n'ai pas d'erreur chez moi... Et les autres, vous l'avez aussi ?
La seule explication serais que la police Arial que j'utilise n'aie pas la même taille chez toi que chez moi.
Car moi j'obtiens le texte qui, certes, dépasse des deux lignes de limite de déplacement des invaders, mais qui ne sort pas de l'écran.
Je comprend pas trop car il me semblait que les polices standards restent identiques sur tout les pc... apparemment pas.
Juste pour en être sur, teste en changeant le message de défaite en "Défaite".
Sinon, c'est normal que tu ais eu un soucis avec l'image car j'ai modifié le nom de l'image (c'est toujours la même) en 512.png, pour que le forum accepte de l'afficher. Ça reste une bmp d'ailleurs...
[edit] : omg ! l'image est un jpeg... Mais pourquoi !!.. Bref, je vais modifier ça au galop pour que ça s'affiche correctement sur le fofo.
Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mer. 05/déc./2012 19:02
par Ar-S
Il manque UsePNGImageDecoder() à ton code...
Ensuite pour récupérer l'image, il faut faire "enregistrer la cible du lien sous" et non enregistrer l'image sinon on se retrouve avec un fichier du nom de 512.png.jpg au lieu de 512.png.
Avec tout ça plus de message d'erreur.
Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mer. 05/déc./2012 19:21
par graph100
ouais, bon c'est corrigé

damned. Tout ça pour afficher une image sur un forum !
Enfin, ce qui me gonfle le plus c'est que moi je n'ai aucun message d'erreur...
Et l'erreur de comtois ne devrais pas être lié à l'image. C'est un truc complètement différent.
@Ar-S : je n'avais pas mis de usePngdecoder() car l'image était une vrai bmp, mais avec l'extension .png pour que le forum l'affiche.
Mais je crois que le navigateur a pris le fichier et a créé un .jpeg car le type n'etais pas celui qu'il pensait. etc...
Mais maintenant c'est bon, tout est propre.

Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mer. 05/déc./2012 19:24
par Ar-S
graph100 a écrit :ouais, bon c'est corrigé

damned. Tout ça pour afficher une image sur un forum !
Enfin, ce qui me gonfle le plus c'est que moi je n'ai aucun message d'erreur...
Et l'erreur de comtois ne devrais pas être lié à l'image. C'est un truc complètement différent.
@Ar-S : je n'avais pas mis de usePngdecoder() car l'image était une vrai bmp, mais avec l'extension .png pour que le forum l'affiche.
Mais je crois que le navigateur a pris le fichier et a créé un .jpeg car le type n'etais pas celui qu'il pensait. etc...
Mais maintenant c'est bon, tout est propre.

Quelle idée d'utiliser du bmp

Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mer. 05/déc./2012 19:33
par graph100
bah tu gagnes une place énorme en ne mettant pas la commande du png decoder qui est énormes !
A la base je ne pensais pas arriver à compresser le code autant.
d'autant plus que le code sous son format semi-lisible dans lequel j'ai fait le jeu prend vers les 120lignes de plus de 80 caractère certaines.
Dur dur de viser une limite de code !

Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mer. 05/déc./2012 19:52
par comtois
graph100 a écrit :Je comprend pas trop car il me semblait que les polices standards restent identiques sur tout les pc... apparemment pas.
Juste pour en être sur, teste en changeant le message de défaite en "Défaite".
Oui ça passe si le texte est plus court, j'ai regardé
i2 = 683 avec le texte d'origine. J'ai effectivement configuré windows avec une taille de police moyenne (125%). J'ai souvent des textes qui débordent des boutons et autres gadgets quand ce paramètre n'est pas pris en compte

Re: Compétition PurePunch des fêtes de fin d'année 2012
Publié : mer. 05/déc./2012 22:49
par Cool Dji
Hello Djes,
Est-il possible d'assouplir la règle pour les non-encore-inscrits sur le forum pour participer au PurePunch ?