FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» PanExpress : l'éditeur Panoramic avec création d'objet
par Minibug Aujourd'hui à 19:15

» Projet de planétarium virtuel.
par Pedro Alvarez Aujourd'hui à 16:46

» Quantité de mémoire utilisée par un exe
par Jack Aujourd'hui à 16:39

» Problème avec 'file_load'.
par Pedro Alvarez Hier à 8:12

» Version instantanée V 0.9.28i20 du 13/06/2018
par jjn4 Sam 16 Juin 2018 - 14:25

» string$(0,chr$(32)) sans erreur
par silverman Ven 15 Juin 2018 - 19:56

» Version instantanée V 0.9.28i19 du 13/06/2018
par Minibug Ven 15 Juin 2018 - 19:14

» Mes souhaits d'amélioration de Panoramic.
par Pedro Alvarez Jeu 14 Juin 2018 - 20:17

» [RÉSOLU] Message d'erreur impossible à indentifier
par Minibug Mer 13 Juin 2018 - 20:52

» Cadre pour image
par Jean Claude Mar 12 Juin 2018 - 16:31

» Créateur d'objets Panoramic
par Minibug Mar 12 Juin 2018 - 14:02

» Planétarium gratuit.
par Jean Claude Sam 9 Juin 2018 - 18:50

» Comment afficher une image sans fond.
par JL35 Sam 9 Juin 2018 - 14:16

» image_width(n) et image_height(n)
par silverman Sam 9 Juin 2018 - 11:22

» Site sur la programmation sympa
par Jean Claude Jeu 7 Juin 2018 - 11:20

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juin 2018
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier

Partagez | 
 

 Taquin III

Aller en bas 
AuteurMessage
Marc

avatar

Nombre de messages : 793
Age : 57
Localisation : TOURS
Date d'inscription : 17/03/2014

MessageSujet: Taquin III    Jeu 3 Déc 2015 - 23:06

Bonjour à tous,

Voici ma version 3 du TAQUIN / Pousse Pousse.

J'ai suivi les remarques de Papydall avec son souhait de plusieurs niveaux : 3x3, 4x4 et 5x5. Pas de 6x6 par manque de lettres dans l'alphabet.

J'ai suivi les conseils de Minibug : j'ai habillé le jeu et ajouté un effet visuel et sonore lorsque l'on gagne => à améliorer, je manque d'imagination...

J'ai soigné l'aspect pour conserver le même format de jeu lorsque l'on change le niveau de 9 à 16 ou 25 cases.
En fonction de la grandeur des cases, la police est adaptée.

J'ai gardé les 12 thèmes possibles. Le plus dur semble être le binaire décroissant.

A utiliser avec PANORAMIC 0.9.27i2 pour un meilleur effet visuel.



Code:
' ____________________________________
'
' Pousse-Pousse v3
' Marc37
' http://panoramic.free-boards.net/
' ____________________________________

WIDTH 0, 680
   CAPTION 0,""
   HEIGHT 0, 457
   FONT_NAME 0, "arial"
   FONT_SIZE 0, 20

SCENE2D 50
   FULL_SPACE 50
   FILE_LOAD 50, "1.bmp"

SOUND 60
FILE_LOAD 60,"applause.mp3"


DIM i%, J%, K%, L%, x%, y%
DIM n% : n% = 4 : ' 3 = 'Débutant' ; 4 = 'Confirmé' ; 6 = 'Expert'
DIM A%(25)
DIM B$(25), C$(25), D$(25), E$(26), F$(25), G$(25)
DIM tirage%, soluble%, swap%, Theme%
DIM Case_Vide%, X_casevide%, y_casevide%

LABEL Jeu
LABEL Melange
LABEL Choix_Theme
LABEL Debutant
LABEL Confirme
LABEL Expert

Datas()
Mask()
Init()

END
' ------------------------------------------------------------------------------
Jeu:
   l% = NUMBER_CLICK
   x%=INT((l%-1)/n%)
   y%=(l%-1)-(x%*n%)
   X_casevide% = INT((Case_Vide% -1)/n%)
   y_casevide%=(Case_Vide%-1)-(x_casevide%*n%)
   IF y% = y_casevide% OR x%=x_casevide%
      IF ABS(Y%-y_casevide%) = 1 OR ABS(x%-x_casevide%)=1
         a%(Case_Vide%)=a%(l%): CAPTION Case_Vide%, b$(a%(Case_Vide%))
         A%(l%)=n%*n%
         Case_Vide%=l%
         CAPTION l%, " "
      END_IF
   END_IF
   verif_gagne()
RETURN
' ------------------------------------------------------------------------------
SUB Tirage_aleatoire()
   FOR i% = 1 to n%*n% : A%(i%)=0 : NEXT i%
   FOR i% = 1 TO n%*n%-1
      Tirage% = INT(1+RND(n%*n%-1))
      FOR j%=1 TO n%*n%-1
         IF Tirage% = a%(j%) THEN EXIT_FOR
      NEXT j%
      IF j% = n%*n%
         a%(i%)=Tirage%
         CAPTION i%, b$(a%(i%))
      ELSE
         I% = I% - 1
      END_IF
   NEXT i%
   A%(n%*n%)=n%*n%
   Case_vide% = A%(n%*n%)
   CAPTION n%*n%,""
   Swap% = 0
   FOR i%=1 TO n%*n%-2
      FOR j%=i%+1 TO n%*n%-1
      IF a%(i%)>a%(j%) THEN Swap% = Swap% + 1
      NEXT j%
   NEXT i%
   Soluble% = 1 - bin_and(Swap%,1)
   IF Soluble% = 0
      k%=a%(1) : a%(1)=a%(2) : a%(2)=k%
      CAPTION 1, b$(a%(1))
      CAPTION 2, b$(a%(2))
   END_IF
   verif_gagne()
   FOR i% = 1 to n%*n% : ON_CLICK i%, Jeu : NEXT i%
END_SUB
' ------------------------------------------------------------------------------
SUB verif_gagne()
   FOR i% = 1 to n%*n%
   IF a%(i%) <> i% THEN EXIT_FOR
   NEXT i%
   IF i% = n%*n%+1
       FOR i% = 1 to n%*n% : OFF_CLICK i% : NEXT i%
       PLAY 60
       SPRITE_SHOW 3
       FOR i% = -400 to 456
       SPRITE_Y_POSITION 3, i%
       PAUSE 5
       NEXT i%
   END_IF
END_SUB
' ------------------------------------------------------------------------------
Melange:
   Tirage_aleatoire()
RETURN
' ------------------------------------------------------------------------------
SUB Mask()
   FOR i% = 1 to 25
   BUTTON i%
   NEXT i%

   BUTTON 100
      TOP 100, 310
      LEFT 100, 445
      WIDTH 100, 150
      HEIGHT 100, 35
      FONT_SIZE 100, 16
      CAPTION 100, "Mélange"

   BUTTON 103
      TOP 103, 250
      LEFT 103, 445
      WIDTH 103, 150
      HEIGHT 103, 35
      FONT_SIZE 103, 16
      CAPTION 103, "Thème"

   BUTTON 105
      TOP 105, 190
      LEFT 105, 445
      WIDTH 105, 40
      HEIGHT 105, 35
      FONT_SIZE 105, 12
      CAPTION 105, "3x3"

   BUTTON 106
      TOP 106, 190
      LEFT 106, 500
      WIDTH 106, 40
      HEIGHT 106, 35
      FONT_SIZE 106, 12
      CAPTION 106, "4x4"

   BUTTON 107
      TOP 107, 190
      LEFT 107, 555
      WIDTH 107, 40
      HEIGHT 107, 35
      FONT_SIZE 107, 12
      CAPTION 107, "5x5"

   SPRITE 1
   SPRITE_FILE_LOAD 1,"contour.bmp"
   SPRITE_POSITION 1, 43,44

   SPRITE 2
   SPRITE_FILE_LOAD 2,"titre.bmp"
   SPRITE_POSITION 2, 433,55

   SPRITE 3
   SPRITE_FILE_LOAD 3,"paillettes.bmp"
   SPRITE_HIDE 3
   SPRITE_POSITION 3, 350,-400

   ON_CLICK 100, Melange
   ON_CLICK 103, Choix_theme
END_SUB
' ------------------------------------------------------------------------------
SUB Damier()
   OFF_CLICK 105
   OFF_CLICK 106
   OFF_CLICK 107

   FOR i% = 1 to 25
   IF OBJECT_EXISTS(i%)=1 THEN HIDE i%
   NEXT i%

   i%=0
   FOR k% = 1 TO n%
      FOR j% = 1 TO n%
         i% = i% + 1
         WIDTH i%, 300/n%
         HEIGHT i%, 300/n%
         LEFT i%, 60 + ((j%-1)*300/n%)
         TOP i%, 60 + ((k%-1)*300/n%)
         SHOW i%
         ON_CLICK i%, Jeu
      NEXT j%
   NEXT k%

   ON_CLICK 105, Debutant
   ON_CLICK 106, confirme
   ON_CLICK 107, expert

END_SUB
' ------------------------------------------------------------------------------
Choix_theme:
   FOR i% = 1 to n%*n% : OFF_CLICK i% : NEXT i%
   Theme% = theme%+1
   IF Theme% = 13 THEN Theme% = 1
   SELECT Theme%

   CASE 1
      FOR i% = 1 to n%*n%: FONT_SIZE i%,35-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= i% : NEXT i%

   CASE 2
      FOR i% = 1 to n%*n%: FONT_SIZE i%,35-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= n%*n%-i% : NEXT i%

   CASE 3
      FOR i% = 1 to n%*n%: FONT_SIZE i%,29-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= C$(i%) : NEXT i%

   CASE 4
      FOR i% = 1 to n%*n%: FONT_SIZE i%,29-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= C$(n%*n%-i%) : NEXT i%

   CASE 5
      FOR i% = 1 to n%*n%: FONT_SIZE i%,27-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= D$(i%) : NEXT i%

   CASE 6
      FOR i% = 1 to n%*n%: FONT_SIZE i%,27-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= D$(n%*n%-i%) : NEXT i%

   CASE 7
      FOR i% = 1 to n%*n%: FONT_SIZE i%,35-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= E$(i%) : NEXT i%

   CASE 8
      FOR i% = 1 to n%*n%: FONT_SIZE i%,35-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= E$(27-i%) : NEXT i%

   CASE 9
      FOR i% = 1 to n%*n%: FONT_SIZE i%,35-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= F$(i%) : NEXT i%

   CASE 10
      FOR i% = 1 to n%*n%: FONT_SIZE i%,35-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= F$(n%*n%-i%) : NEXT i%

   CASE 11
      FOR i% = 1 to n%*n%: FONT_SIZE i%,35-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= G$(i%) : NEXT i%

   CASE 12
      FOR i% = 1 to n%*n%: FONT_SIZE i%,35-(3*n%) : NEXT i%
      FOR i% = 1 to n%*n%-1: b$(i%)= G$(n%*n%-i%) : NEXT i%

   END_SELECT

   FOR i% = 1 to n%*n%-1
   CAPTION i%,b$(i%)
   NEXT i%

   CAPTION n%*n%, ""

RETURN

' ------------------------------------------------------------------------------
SUB Datas()
   DATA I,II,III,IV,V,VI,VII,VIII,IX,X,XI,XII,XIII,XIV,XV,XVI,XVII,XVIII,IXX,XX,XXI,XXII,XXIII,XXIV,XXV
   DATA 00001,00010,00011,00100,00101,00110,00111,01000,01001,01010,01011,01100,01101,01110,01111,10000,10001,10010,10011,10100,10101,10110,10111,11000,11001
   DATA A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z
   DATA 2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97
   DATA 1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39,41,43,45,47,49
   FOR i% = 1 to 25 : READ C$(i%) : NEXT i%
   FOR i% = 1 to 25 : READ D$(i%) : NEXT i%
   FOR i% = 1 to 26 : READ E$(i%) : NEXT i%
   FOR i% = 1 to 25 : READ F$(i%) : NEXT i%
   FOR i% = 1 to 25 : READ G$(i%) : NEXT i%
END_SUB
' ------------------------------------------------------------------------------
Debutant:
   n%=3
   Init()
RETURN
' ------------------------------------------------------------------------------
Confirme:
   n%=4
   init()
RETURN
' ------------------------------------------------------------------------------
Expert:
   n%=5
   Init()
RETURN
' ------------------------------------------------------------------------------
SUB Init()
   Damier()
   THEME%=0
   GOSUB Choix_theme
END_SUB
rem ===============================================================

Reste à tester !

A télécharger (6 fichiers) sur mon Webdav => Taquin Pousse Pousse V3
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5923
Age : 45
Localisation : 77500
Date d'inscription : 18/04/2011

MessageSujet: Re: Taquin III    Ven 4 Déc 2015 - 7:26

Ca fait chouette, en effet Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
 
Taquin III
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Taquin Pousse Pousse
» [Obsolète] Nouveauté de la version "la suite E-anim"

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Les jeux faits avec Panoramic-
Sauter vers: