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 | 
 

 Bataille terrestre (version child)

Aller en bas 
AuteurMessage
jjn4

avatar

Nombre de messages : 1755
Date d'inscription : 13/09/2009

MessageSujet: Bataille terrestre (version child)   Sam 25 Mar 2017 - 16:02

Vous vous souvenez ?
J'ai dit que je trouvais qu'on ne faisait pas
assez de jeux en panoramic pour les enfants.
Alors, j'ai récapitulé, parmi les miens
et je me suis dit que la bataille terrestre,
que j'avais fait, conviendrait bien, mais
je suppose que vous n'aimeriez pas que
vos bambins acquièrent un langage de
charretier (« je t'ai manqué, salopard ! »).
Alors, j'en ai fait une version Child.
C'est la même, mais cette fois avec
des phrases très mignonnes.
Ainsi, vous pouvez le confier sans crainte
à vos enfants, petits enfants, arrière petits...
Laughing alien Laughing
Code:
rem ' Bataille terrestre (Version child) - par jjn4 - Ver-140317.1.0 - 14/03/2017
   dim CD% : rem Nombre de Chars Détruits
   dim CED% : rem Nombre de Chars Ennemis Détruits
   dim ECS%(25) , ECT%(25) : rem Emplacement des Chars amis et ennemis
   dim IO% : rem Indicateur comme quoi c`est le tour de l`Ordi de jouer
   dim KCH% : rem Cellules des grilles concernées
   dim NCP% : rem Nombre de chars placés
   dim NJ% : rem Niveau de Jeu
   dim NPJ% , NPO% : rem Nombre de Points du Joueur et de l`Ordi
   dim VMI% , VMJ% , VMK% , VMA$ : rem Variables à utilisation multiple
   label clic
  
rem form0
   width 0,1050
   height 0,570
   caption 0,"BATAILLE TERRESTRE (Version child) - Ver-140317.1.0"

rem Cache de début de jeu
   form 200
      width 200,1050
      height 200,570
      caption 200,"Bataille terrestre - Suspens..."
   panel 210
      parent 210,200
      left 210,200
      top 210,200
      width 210,600
      height 210,80
      font_bold 210
      font_size 210,20
      font_name 210,"Arial"
      caption 210,"B A T A I L L E   T E R R E S T R E"
   alpha 220
      parent 220,200
      left 220,400
      top 220,280
      font_size 220,180
      font_name 220,"Webdings"
      font_color 220,100,0,0
      caption 220,chr$(196)
   alpha 230
      parent 230,200
      left 230,50
      top 230,90
      font_size 230,100
      font_name 230,"Webdings"
      font_color 230,125,125,0
      caption 230,chr$(118)
   alpha 240
      parent 240,200
      left 240,750
      top 240,100
      font_size 240,200
      font_name 240,"Webdings"
      font_color 240,0,0,255
      caption 240,chr$(249)
rem Construction des grilles de jeu
   for VMK%=0 to 1 : rem Objets 1 à 25 pour la grille du joueur
      for VMI%=0 to 4 : rem Objets 26 à 50 pour l`ordinateur
         for VMJ%=1 to 5
            picture VMI%*5+VMJ%+25*VMK%
               left VMI%*5+VMJ%+25*VMK%,VMJ%*80-35+450*VMK%
               top VMI%*5+VMJ%+25*VMK%,VMI%*80+50
               width VMI%*5+VMJ%+25*VMK%,76
               height VMI%*5+VMJ%+25*VMK%,76
               select VMK%
                  case 0 : cursor_cross VMI%*5+VMJ%+25*VMK%
                  case 1 : cursor_noparking VMI%*5+VMJ%+25*VMK%
               end_select
               on_click VMI%*5+VMJ%+25*VMK%,clic
               on_click VMI%*5+VMJ%,clic
            next VMJ%
         next VMI%
      next VMK%

rem Cadres d`écriture
   alpha 51
      left 51,165
      top 51,15
      font_bold 51
      font_size 51,12
      caption 51,"TA GRILLE DE JEU"
   alpha 52
      left 52,520
      top 52,15
      font_bold 52
      font_size 52,12
      caption 52,"LA GRILLE DE JEU DE TON ADVERSAIRE"
   alpha 53
      left 53,45
      top 53,465
      font_bold 53
      font_size 53,12
      font_color 53,0,180,255

rem Dessins des fléches
   for VMI%=55 to 59 : rem Objets 55, 56, 57, 58 et 59
      alpha VMI%
         left VMI%,8
         top VMI%,(VMI%-55)*80+65
         font_name VMI%,"Wingdings"
         font_size VMI%,30
         font_color VMI%,0,0,255
         caption VMI%,chr$(240)
      alpha VMI%+5 : rem Objets 60, 61, 62, 63 et 64
         hide VMI%+5
         left VMI%+5,458
         top VMI%+5,(VMI%-55)*80+65
         font_name VMI%+5,"Wingdings"
         font_size VMI%+5,30
         font_color VMI%+5,0,0,255
         caption VMI%+5,chr$(240)
   next VMI%

rem Inscription des points
   alpha 65
      left 65,435
      top 65,35
      font_color 65,255,0,0
      caption 65,NPJ%
   alpha 66
      left 66,495
      top 66,35
      font_color 66,255,0,0
      caption 66,NPO%
   alpha 67
      left 67,446
      top 67,18
      font_color 67,255,0,0
      caption 67,"SCORES"
      
rem Deuxième ligne de commentaires
   alpha 73
      left 73,45
      top 73,490
      font_bold 73
      font_size 73,12
      font_color 73,0,0,255
      
rem Dessin du char dans la marge
   alpha 80
      left 80,910
      top 80,20
      font_bold 80
      font_size 80,12
      caption 80,"  BATAILLE"+chr$(13)+"TERRESTRE"
   picture 85
      left 85,930
      top 85,65
      width 85,80
      height 85,60
      color 85,240,240,240
      char(85)
      
rem Affichage des boutons de jeu : rem Objets n° 90, 100, 110 et 120
   for VMI%=1 to 4
      button VMI%*10+80
         left VMI%*10+80,910
         top VMI%*10+80,VMI%*95+45
         width VMI%*10+80,110
         height VMI%*10+80,85
         font_bold VMI%*10+80
         font_size VMI%*10+80,14
         font_name VMI%*10+80,"Arial"
         on_click VMI%*10+80,clic
   next VMI%
   caption 90,"Niveau 1"
   caption 100,"Rejouer"
   caption 110,"Aide"
   caption 120,"Quitter"
   inactive 100
   midi_on
   midi_instrument 127
   midi_volume 127
   oui()
   rem Objets système n°200 à 240 pour le cache
   hide 200


end : rem ' Début des routines =========================================

sub aide() : rem Explications du jeu
   dim_local bai$ , cai$ , dai$ : rem Variables à utilisation multiple
   cai$=chr$(13)
   dai$=cai$+cai$
   application_title "   Mode d'emploi du jeu"
   bai$="   Tu connais la bataille navale ?  Eh bien, la bataille terrestre, c'est"+cai$
   bai$=bai$+"pareil, sauf que c'est sur terre, avec des chars camouflés dans la forêt."+dai$
   bai$=bai$+"   Chaque camp a 4 chars et doit faire sauter ceux de l'ennemi avant que"+cai$
   bai$=bai$+"celui-ci ne vainque son adversaire. Les explosions qui se produisent"+cai$
   bai$=bai$+"provoquent des cratères qui permettent de savoir où on a déjà tiré. Mais"+cai$
   bai$=bai$+"seulement au niveau 1. Au niveau 2, il faut faire attention à ne pas tirer"+cai$
   bai$=bai$+"2 fois au même endroit, parce que l'ordinateur, lui, ne s'y trompe pas."
   message bai$
end_sub

sub boum() : rem Tir du joueur
   dim_local ibo% : rem Variables à utilisation multiple
   2d_target_is KCH%
   2d_pen_color 255,0,0
   for ibo%=1 to 70
      2d_line 38-rnd(36),38-rnd(36),38+rnd(36),38+rnd(36)
      2d_line 38-rnd(36),38+rnd(36),38+rnd(36),38-rnd(36)
   next ibo%
   midi_instrument 127
   midi_play 50,6
   pause 500
   if NJ%=2
      feuille(KCH%)
   else
      trou(KCH%)
   end_if
   for ibo%=26 to 50
      inactive ibo%
   next ibo%
end_sub

sub char(kcha%) : rem Dessin d`un char
   dim_local icha% : rem Variables à utilisation multiple
   2d_target_is kcha%
   2d_pen_color 135,135,0
   for icha%=1 to 8
      2d_line 17+icha%,48+icha%,75-icha%,48+icha%
      2d_line 25-icha%,40+icha%,65+icha%,40+icha%
   next icha%
   2d_fill_color 135,135,0
   2d_rectangle 37,37,53,42
   2d_rectangle 33,32,57,40
   for icha%=1 to 3
      2d_line 1,28+icha%,40,34+icha%
   next icha%
   2d_fill_color 180,180,180
   for icha%=1 to 5
      2d_circle 19+icha%*9,50,5
   next icha%
end_sub

sub choix() : rem Choix des emplacements des 4 chars du joueur
   dim_local ich% : rem Variables à utilisation multiple
   NCP%=NCP%+1
   if NCP%<5
      caption 73,"Place tes 4 chars camouflés dans la forêt"
      KCH%=number_click
      if ECS%(KCH%)<>1
         ECS%(KCH%)=1
         2d_target_is KCH%
         2d_pen_color 135,135,0
         for ich%=1 to 8
            2d_line 1+ich%,48+ich%,59-ich%,48+ich%
            2d_line 9-ich%,40+ich%,49+ich%,40+ich%
         next ich%
         2d_fill_color 135,135,0
         2d_rectangle 21,37,36,42
         2d_rectangle 17,32,41,40
         for ich%=1 to 3
            2d_line 41,33+ich%,74,27+ich%
         next ich%
         2d_fill_color 180,180,180
         for ich%=1 to 5
            2d_circle 3+ich%*9,50,5
         next ich%
         midi_instrument 120
         midi_play 108,10
         if NCP%=4
            remonte()
            caption 73,"C'est à toi de tirer"
            for ich%=55 to 59
               hide ich%
               show ich%+5
            next ich%
            for ich%=1 to 25
               cursor_noparking ich%
               cursor_cross ich%+25
               active ich%+25
            next ich%
         end_if
      else
         non()
      end_if
   end_if
end_sub

clic: : rem Redirection de tous les on-click
   VMK%=number_click
   if VMK%>0 and VMK%<26
      choix()
   end_if
   if VMK%>25 and VMK%<51
      tir()
   end_if
   select VMK%
      case 90 : niveau()
      case 100 : oui()
      case 110 : aide()
      case 120 : quitter()
   end_select
return

sub croix() : rem Dessin des croix
   if IO%=0
      CED%=CED%+1
   else
      CD%=CD%+1
   end_if
   2d_fill_color 255,0,0
   2d_pen_color 255,0,0
   2d_rectangle 35,10,41,70
   2d_rectangle 20,26,56,32
end_sub

sub feuille(qfeu%) : rem Dessin des feuilles dans une cellule
   dim_local jfeu% : rem Variables à utilisation multiple
   dim_local cxfeu% , cyfeu% , rfeu% : rem Coordonnées des cercles de feuilles
   dim_local cfeu% : rem Couleur des feuilles
   2d_target_is qfeu%
   color qfeu%,120,70,0
   for jfeu%=1 to 90
      cxfeu%=int(rnd(70))+1
      cyfeu%=int(rnd(70))+1
      rfeu%=int(rnd(12))+2
      cfeu%=int(rnd(80))+120
      2d_fill_color 0,cfeu%,0
      2d_pen_color 0,cfeu%,0
      2d_circle cxfeu%,cyfeu%,rfeu%
   next jfeu%
end_sub

sub feuilles() : rem Dessin de la végétation
   dim_local ife% : rem Variables à utilisation multiple
   for ife%=1 to 25
      feuille(ife%)
      feuille(ife%+25)
   next ife%
end_sub

sub fin() : rem Fin du jeu
   dim_local kfi% , afi$ : rem Variables à utilisation multiple
   if CD%=4
      remonte()
      caption 73,"Ah, cette fois, j'ai gagné !  Veux-tu rejouer ?"
      for kfi%=26 to 50
         if ECT%(kfi%-25)=1
            char(kfi%)
         end_if
      next kfi%
      NPO%=NPO%+1
   end_if
   if CED%=4
      afi$="Oh, tu as gagné, tu es vraiment trop fort !  "
      afi$=afi$+"Veux-tu rejouer ?"
      remonte()
      caption 73,afi$
      NPJ%=NPJ%+1
   end_if
   caption 65,NPJ%
   caption 66,NPO%
   active 90
   active 100
end_sub

sub niveau() : rem Choix du niveau de jeu
   dim_local vmvi% , vmvi$ : rem Variables à utilisation Multiple
   vmvi$=caption$(90)
   vmvi%=val(right$(vmvi$,1))
   if vmvi%=1
      NJ%=2
      caption 90,"Niveau 2"
   else
      NJ%=1
      caption 90,"Niveau 1"
   end_if
end_sub

sub non() : rem Erreur de placement de ses chars par le joueur
   NCP%=NCP%-1
   remonte()
   caption 73,"Tu as déjà placé un char à cet endroit, recommence"
end_sub

sub ordi() : rem Action de l`ordinateur
   dim_local ior% , aor$ , bor$ : rem Variables à utilisation multiple
   KCH%=int(rnd(25))+1
   IO%=1
   for ior%=1 to 9999
      if ECS%(KCH%)>1
         KCH%=int(rnd(25))+1
      else
         exit_for
      end_if
   next ior%
   pause 2000
   boum()
   if ECS%(KCH%)=1
      croix()
      ECS%(KCH%)=2
      if (4-CD%)>1
         bor$="s"
      else
         bor$=""
      end_if
      if CD%<4
         aor$="Là, je t'ai eu !  Mais rassure-toi, il te reste encore "
         aor$=aor$+str$(4-CD%)+" char"+bor$+". A toi"
         remonte()
         caption 73,aor$
      end_if
   else
      remonte()
      ior%=int(rnd(5))+1
      select ior%
         case 1 : caption 73,"Bon, eh bien c'est raté. A toi."
         case 2 : caption 73,"Je me demande bien où tu es caché !  A toi."
         case 3 : caption 73,"Ah, je croyais que c'était là !  A toi."
         case 4 : caption 73,"Tu es drôlement bien camouflé !  A toi."
         case 5 : caption 73,"Raté, tu es vraiment trop fort !  A toi."
      end_select
      ECS%(KCH%)=3
   end_if
   if CD%>3
      fin()
   end_if
   for ior%=26 to 50
      active ior%
   next ior%
end_sub

sub oui() : rem Le joueur accepte de rejouer
   dim_local iou% , jou% : rem Variables à utilisation multiple
   CD%=0
   CED%=0
   IO%=0
   for iou%=1 to 25
      ECT%(iou%)=0
      ECS%(iou%)=0
   next iou%
   for iou%=1 to 4
      KCH%=int(rnd(25))+1
      for jou%=1 to 5
         if ECT%(KCH%)=1
            KCH%=int(rnd(25))+1
         end_if
      next jou%
      ECT%(KCH%)=1
   next iou%
   for iou%=55 to 59
      show iou%
      hide iou%+5
   next iou%
   for iou%=1 to 25
      cursor_cross iou%
      cursor_noparking iou%+25
      color iou%,255,255,255
      color iou%+25,255,255,255
   next iou%
   NCP%=0
   feuilles()
   inactive 100
   remonte()
   caption 73,"Place tes 4 chars camouflés dans la forêt"
end_sub

sub quitter() : rem Terminer le jeu
   dim_local aqu% , aqu$ : rem Variables à utilisation multiple
   aqu$=str$(NPJ%)+" à "+str$(NPO%)+", aïe, aïe, aïe !"+chr$(13)
   aqu$=aqu$+"Tu veux déjà arrêter ?"
   aqu%=message_confirmation_yes_no(aqu$)
   if aqu%=1
      midi_off
      terminate
   end_if
end_sub

sub remonte() : rem Remonte le texte d`une ligne
   caption 53,caption$(73)
end_sub

sub tir() : rem Tir de la part de l`ordinateur
   dim_local iti% , ati$ : rem Variables à utilisation multiple
   inactive 90
   if NCP%>3 and CD%<4 and CED%<4
      KCH%=0
      IO%=0
      KCH%=number_click
      if ECT%(KCH%-25)<2
         boum()
         if ECT%(KCH%-25)=1
            croix()
            if CED%<4
               ati$="Tu as détruit un de mes chars, il ne m'en reste plus que "
               ati$=ati$+str$(4-CED%)+". A moi maintenant."
               remonte()
               caption 73,ati$
            end_if
         else
            remonte()
            iti%=int(rnd(5))+1
            select iti%
               case 1 : caption 73,"Pas de chance !  C'est à moi maintenant !"
               case 2 : caption 73,"On ne peut pas toujours gagner. A moi, maintenant"
               case 3 : caption 73,"Ouf, j'ai eu chaud !  A moi, maintenant."
               case 4 : caption 73,"Ouh là là !  Tu m'as manqué de peu. A moi, maintenant."
               case 5 : caption 73,"Heureusement que je n'étais pas là !  A moi, maintenant."
            end_select
         end_if
         if ECT%(KCH%-25)=1
            ECT%(KCH%-25)=2
         end_if
         if CED%<4
            ordi()
         else
            fin()
         end_if
      end_if
   end_if
end_sub

sub trou(qtr%) : rem Dessin d`un trou
   2d_target_is qtr%
   feuille(qtr%)
   2d_fill_color 120,70,0
   2d_pen_color 120,70,0
   2d_circle 38,38,25
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://jjn4.e-monsite.com
papydall

avatar

Nombre de messages : 5951
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Bataille terrestre (version child)   Sam 25 Mar 2017 - 19:56

Je suis vraiment trop fort cheers :
 
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
jjn4

avatar

Nombre de messages : 1755
Date d'inscription : 13/09/2009

MessageSujet: +++   Dim 26 Mar 2017 - 14:08

Remarque bien qu'avec une version child...
Enfin, oui, bien sûr, tu es très fort !
Laughing alien Laughing
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://jjn4.e-monsite.com
Yannick

avatar

Nombre de messages : 8077
Age : 47
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Dim 26 Mar 2017 - 14:15

Suspect Suspect Suspect
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Bataille terrestre (version child)   

Revenir en haut Aller en bas
 
Bataille terrestre (version child)
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Offre promotionnelle : SnagIT 7.25 en version gratuite !
» Comment envoyer une détection chez avira avec Antivir 9 français - Version Classic
» Offre exceptionnelle : True Image 10 en version gratuite et complète
» [Résolu] Pb pour la désinstallation d'Antivir version Anglaise
» [Résolu] avira version 9.0

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: