FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Gestion d'un système client-serveur.
Trop de gosub... - Page 2 Emptypar Klaus Aujourd'hui à 1:15

» item_index(résolu)
Trop de gosub... - Page 2 Emptypar jjn4 Mar 14 Mai 2024 - 19:38

» Bataille terrestre
Trop de gosub... - Page 2 Emptypar jjn4 Lun 13 Mai 2024 - 15:01

» SineCube
Trop de gosub... - Page 2 Emptypar Marc Sam 11 Mai 2024 - 12:38

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Trop de gosub... - Page 2 Emptypar Marc Sam 11 Mai 2024 - 12:22

» Philharmusique
Trop de gosub... - Page 2 Emptypar jjn4 Ven 10 Mai 2024 - 13:58

» PANORAMIC V 1
Trop de gosub... - Page 2 Emptypar papydall Jeu 9 Mai 2024 - 3:22

» select intégrés [résolu]
Trop de gosub... - Page 2 Emptypar jjn4 Mer 8 Mai 2024 - 17:00

» number_mouse_up
Trop de gosub... - Page 2 Emptypar jjn4 Mer 8 Mai 2024 - 11:59

» Aide de PANORAMIC
Trop de gosub... - Page 2 Emptypar jjn4 Mer 8 Mai 2024 - 11:16

» trop de fichiers en cours
Trop de gosub... - Page 2 Emptypar lepetitmarocain Mer 8 Mai 2024 - 10:43

» Je teste PANORAMIC V 1 beta 1
Trop de gosub... - Page 2 Emptypar papydall Mer 8 Mai 2024 - 4:17

» bouton dans autre form que 0(résolu)
Trop de gosub... - Page 2 Emptypar leclode Lun 6 Mai 2024 - 13:59

» KGF_dll - nouvelles versions
Trop de gosub... - Page 2 Emptypar Klaus Lun 6 Mai 2024 - 11:41

» @Jack
Trop de gosub... - Page 2 Emptypar Jack Mar 30 Avr 2024 - 20:40

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
Le Deal du moment :
Funko POP! Jumbo One Piece Kaido Dragon Form : ...
Voir le deal

 

 Trop de gosub...

Aller en bas 
5 participants
Aller à la page : Précédent  1, 2, 3  Suivant
AuteurMessage
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyMer 1 Aoû 2012 - 19:36

le comble du comble, j'ai repris le programme initiale, en mettant les int(rnd())à 5 et ....
il fonctionne

En fait j'avais mis à 4 en pensant que j'aurai en tirage 0,1,2,3,4 donc 5 colonnes ou lignes
ben non int(rnd(4)) me donnait 0,1,2,3 donc 4 colonnes ou lignes
et de ce fait j'essayais de rentrer 24 image dans 16 places d'où un nombre de boucles qui n'en finissaient pas
forcemment elles cherchaient une place vide dans un parking plein ... Laughing


Edit : ceci dit , je garde la prose de minibug qui est plus courte que mon labyrinthe de gosub... Laughing

Je crois que vous allez me maudir pendant quelques temps... bounce
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyMer 1 Aoû 2012 - 19:55

Sinon, je te donne ma solution corrigée.
Le gros avantage qu'elle a c'est qu'elle est déterministe, sur 25 combinaisons, ça ne jouera pas, mais si tu en avais 500 ou 5000, à la fin, ça ferait une différence notable, je pense.
Je te mets le source pour info et par ce que j'étais distrait au boulot et que j'avais oublié des trucs et des erreurs d'indices:
Code:

' ******************************************************************************
dim Dossier$,Doss_Sprite$,Doss_Fond$,Doss_Langue$
dim Langue$,def$(100),jeu%
dim M%
dim N%,T%,L%
dim x%,x$
dim img%,img$,Doss_img_select$
dim mess%
dim t1 : t1 = 4
dim t2 : t2 = (t1+1)*(t1+1)
dim case_libre(t2)
dim i%, cpt%
dim Table%(t1,t1),R%,C%


' ------------------------------------------------------------------------------
label Init,Init_Dossier,Init_List,Init_Param,Init_Langue
label Change_Langue,New_Langue
label Menu,Jouer,Arreter,APp,Aide
label Select_Img,Preview,Choix, Creation,Placement,Selection
label Action_G,Action_D,Action_H,Action_B
label Attention

' ******************************************************************************
caption 0,"Mon Puzzle":width 0,516:height 0,558

main_menu 1
 sub_menu 2:parent 2,1:on_click 2,Menu:caption 2,"Jouer"
 sub_menu 3:parent 3,1:on_click 3,Menu:caption 3,"Langue"
 sub_menu 4:parent 4,1:on_click 4,Menu:caption 4,"A Propos"
 sub_menu 5:parent 5,1:on_click 5,Menu:caption 5,"Aide"

dlist 6 :' Liste des peramètres
dlist 7 :' Liste des langues dispo
dlist 8 :' Contenu de la langue choisie
dlist 9 :' Liste des Images


gosub Init
end
' ******************************************************************************
Init:
  gosub Init_Dossier
  gosub Init_List
  gosub Init_Param
return
' ------------------------------------------------------------------------------
Init_Dossier:
  Dossier$=Dir_Current$
  Doss_Sprite$=Dossier$+"\Sprites"
  Doss_Fond$=Dossier$+"\Fonds"
  Doss_Langue$=Dossier$+"\Langue"
return
' ------------------------------------------------------------------------------
Init_List:
  ' langues disponibles
  dir_change Doss_Langue$
  x$=file_find_first$
  if x$<>"_" then item_add 7,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 7,x$
      x$=file_find_next$
  end_while
  file_find_close
  ' liste des images
  dir_change Doss_Fond$
  x$=file_find_first$
  if x$<>"_" then item_add 9,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 9,x$
      x$=file_find_next$
  end_while
  file_find_close
return
' ------------------------------------------------------------------------------
Init_Param:
  if file_exists(Dossier$+"\Param.inf")=1
      file_load 6,Dossier$+"\Param.inf"
      gosub Init_Langue
  else
      gosub Change_Langue
  end_if
return
' ------------------------------------------------------------------------------
Init_Langue:
  clear 8
  if count(6)>0
      Langue$=Doss_Langue$+"\"+item_read$(6,1)+".txt"
      file_load 8,Langue$
      for x%=1 to count(8):def$(x%)=item_read$(8,x%):next x%
      for x%=2 to 5:caption x%,def$(x%-1):next x%
  end_if
return
' ------------------------------------------------------------------------------
Change_Langue:
  if object_exists(100)=1
      show 100
  else
      form 100
      width 100,200:height 100,130:top 100,(screen_y-130)/2:left 100,(screen_x-200)/2
      caption 100,"Paramètres":font_name 100,"Times new roman":font_size 100,10
      command_target_is 100
      alpha 101:top 101,10:left 101,10:caption 101,"Langue :"
      combo 102:top 102,30:left 102,10
      for x%=1 to count(7):item_add 102,left$(item_read$(7,x%),len(item_read$(7,x%))-4):next x%
      on_change 102,New_Langue
  end_if
return
'-------------------------------------------------------------------------------
New_Langue:
  If count(6)>0 and Text$(102)<>""
      item_delete 6,1
      item_insert 6,1,Text$(102)
  else
      if Text$(102)<>"" then item_insert 6,1,Text$(102)
  end_if
  file_save 6,Dossier$+"\Param.inf"
  gosub Init_Langue
  hide 100
return
'-------------------------------------------------------------------------------
Menu:
for x%=2 to 5
  if clicked(x%)=1 then M%=x%
next x%
select M%
case 2
  jeu%=jeu%+1
  if jeu%=1
      caption 2,def$(5)
      gosub Jouer
  else
      jeu%=0
      caption 2,def$(1)
      gosub Arreter
  end_if
case 3
  gosub Change_Langue
case 4
  gosub APp
case 5
  gosub Aide
end_select
return
' ------------------------------------------------------------------------------
Jouer:
gosub Select_Img
return
' ------------------------------------------------------------------------------
Select_img:
if object_exists(200)=1
  show 200
else
  form 200:width 200,500:height 200,350:top 200,(screen_y-350)/2:left 200,(screen_x-500)/2
  caption 200,def$(6):font_name 200,"Times new roman":font_size 200,10
  command_target_is 200
  alpha 201:top 201,10:left 201,5:caption 201,def$(7)
  list 202 :top 202,30:left 202,5:width 202,170:height 202,230
  for x%=1 to count(9):item_add 202,item_read$(9,x%):next x%
  on_double_click 202,Preview
  picture 203:top 203,5:left 203,180:width 203,290:height 203,290:stretch_on 203
  button 204 :top 204,270:left 204,50:caption 204,def$(8):cursor_point 204
  inactive 204:on_click 204,Choix
end_if
return
' ------------------------------------------------------------------------------
Preview:
  file_load 203,Doss_Fond$+"\"+item_index$(202)
  active 204
return
' ------------------------------------------------------------------------------
Choix:
  img$=item_index$(202)
  Doss_img_select$=Doss_Sprite$+"\"+left$(img$,len(img$)-4)
  hide 200
  command_target_is 0
  gosub Creation
return
' ------------------------------------------------------------------------------
Creation:
  for x%=1 to 24
      img%=10+x%
      picture img% :width img%,100 :height img%,100 :left img%,200:top img%,200
      stretch_on img% :file_load img%,Doss_img_select$+"\"+str$(img%)+".bmp"
      on_click img%,Selection
  next x%
  gosub Placement
return
' ------------------------------------------------------------------------------
Placement:
for i%=0 to t2-2:case_libre(i%)=i%: next i%
i%=i%-1
while i% > 0
  img% = 11 + i%
  cpt% = int(rnd(i%))
  R%=int(case_libre(cpt%)/(t1+1))
  C%=mod(case_libre(cpt%),(t1+1))
  Table%(R%,C%)=img%
  left img%,R%*100
  top img%,C%*100
  if cpt%<i% then case_libre(cpt%)=case_libre(i%)
  i%=i%-1
end_while
return
' ------------------------------------------------------------------------------
Selection:
  N%=number_click
  T%=Top(N%)
  L%=Left(N%)
return
' ------------------------------------------------------------------------------
Action_G:
mess%=1
  if L%>=100
      for x%=L% to L%-100 step -1:top N%,T% :left N%,x% :wait 10 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_D:
  mess%=2
  if L%<400
      for x%=L% to L%+100 step 1:top N%,T% :left N%,x% :wait 10 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_H:
  mess%=3
  if T%>=100
      for x%=T% to T%-100 step -1:top N%,x% :left N%,L% :wait 10 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_B:
  mess%=4
  if T%<400
      for x%=T% to T%+100 step 1:top N%,x% :left N%,L% :wait 10 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Attention:
  if mess%=1 then message "Vous avez atteint le bord gauche"
  if mess%=2 then message "Vous avez atteint le bord droit"
  if mess%=3 then message "Vous avez atteint le bord haut"
  if mess%=4 then message "Vous avez atteint le bord bas"
return
' ------------------------------------------------------------------------------
Arreter:
return
' ------------------------------------------------------------------------------
APp:
return
' ------------------------------------------------------------------------------
Aide:
return
' ------------------------------------------------------------------------------
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyMer 1 Aoû 2012 - 20:41

@ Jicehel,

Tu n'as pas à t'excuser de quoi que ce soit...
Je vais mettre en sauvegarde toute les solutions pour les avoirs sous le coude.


@ tous, je vous mets l'avancement du *.bas, essayez le c'est pas mal, même si le jeu n'est pas finalisé
avec un arrêt victoire :

Code:
' ******************************************************************************
dim Dossier$,Doss_Sprite$,Doss_Fond$,Doss_Langue$
dim Langue$,def$(100),jeu%
dim M%
dim N%,T%,L%,T1%,L1%
dim x%,x$
dim img%,img$,Doss_img_select$
dim mess%
dim Table%(4,4),R%,C%
' ------------------------------------------------------------------------------
label Init,Init_Dossier,Init_List,Init_Param,Init_Langue
label Change_Langue,New_Langue
label Menu,Jouer,Arreter,APp,Aide
label Select_Img,Preview,Choix,Creation,Placement,Verif,Selection
label Action_G,Action_D,Action_H,Action_B
label Attention

' ******************************************************************************
caption 0,"Mon Puzzle":width 0,516:height 0,558

main_menu 1
 sub_menu 2:parent 2,1:on_click 2,Menu:caption 2,"Jouer"
 sub_menu 3:parent 3,1:on_click 3,Menu:caption 3,"Langue"
 sub_menu 4:parent 4,1:on_click 4,Menu:caption 4,"A Propos"
 sub_menu 5:parent 5,1:on_click 5,Menu:caption 5,"Aide"

dlist 6 :' Liste des peramètres
dlist 7 :' Liste des langues dispo
dlist 8 :' Contenu de la langue choisie
dlist 9 :' Liste des Images


gosub Init
end
' ******************************************************************************
Init:
  gosub Init_Dossier
  gosub Init_List
  gosub Init_Param
return
' ------------------------------------------------------------------------------
Init_Dossier:
  Dossier$=Dir_Current$
  Doss_Sprite$=Dossier$+"\Sprites"
  Doss_Fond$=Dossier$+"\Fonds"
  Doss_Langue$=Dossier$+"\Langue"
return
' ------------------------------------------------------------------------------
Init_List:
  ' langues disponibles
  dir_change Doss_Langue$
  x$=file_find_first$
  if x$<>"_" then item_add 7,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 7,x$
      x$=file_find_next$
  end_while
  file_find_close
  ' liste des images
  dir_change Doss_Fond$
  x$=file_find_first$
  if x$<>"_" then item_add 9,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 9,x$
      x$=file_find_next$
  end_while
  file_find_close
return
' ------------------------------------------------------------------------------
Init_Param:
  if file_exists(Dossier$+"\Param.inf")=1
      file_load 6,Dossier$+"\Param.inf"
      gosub Init_Langue
  else
      gosub Change_Langue
  end_if
return
' ------------------------------------------------------------------------------
Init_Langue:
  clear 8
  if count(6)>0
      Langue$=Doss_Langue$+"\"+item_read$(6,1)+".txt"
      file_load 8,Langue$
      for x%=1 to count(8):def$(x%)=item_read$(8,x%):next x%
      for x%=2 to 5:caption x%,def$(x%-1):next x%
  end_if
return
' ------------------------------------------------------------------------------
Change_Langue:
  if object_exists(100)=1
      show 100
  else
      form 100
      width 100,200:height 100,130:top 100,(screen_y-130)/2:left 100,(screen_x-200)/2
      caption 100,"Paramètres":font_name 100,"Times new roman":font_size 100,10
      command_target_is 100
      alpha 101:top 101,10:left 101,10:caption 101,"Langue :"
      combo 102:top 102,30:left 102,10
      for x%=1 to count(7):item_add 102,left$(item_read$(7,x%),len(item_read$(7,x%))-4):next x%
      on_change 102,New_Langue
  end_if
return
'-------------------------------------------------------------------------------
New_Langue:
  If count(6)>0 and Text$(102)<>""
      item_delete 6,1
      item_insert 6,1,Text$(102)
  else
      if Text$(102)<>"" then item_insert 6,1,Text$(102)
  end_if
  file_save 6,Dossier$+"\Param.inf"
  gosub Init_Langue
  hide 100
return
'-------------------------------------------------------------------------------
Menu:
for x%=2 to 5
  if clicked(x%)=1 then M%=x%
next x%
select M%
case 2
  jeu%=jeu%+1
  if jeu%=1
      caption 2,def$(5)
      gosub Jouer
  else
      jeu%=0
      caption 2,def$(1)
      gosub Arreter
  end_if
case 3
  gosub Change_Langue
case 4
  gosub APp
case 5
  gosub Aide
end_select
return
' ------------------------------------------------------------------------------
Jouer:
gosub Select_Img
return
' ------------------------------------------------------------------------------
Select_img:
if object_exists(200)=1
  show 200
else
  form 200:width 200,500:height 200,350:top 200,(screen_y-350)/2:left 200,(screen_x-500)/2
  caption 200,def$(6):font_name 200,"Times new roman":font_size 200,10
  command_target_is 200
  alpha 201:top 201,10:left 201,5:caption 201,def$(7)
  list 202 :top 202,30:left 202,5:width 202,170:height 202,230
  for x%=1 to count(9):item_add 202,item_read$(9,x%):next x%
  on_double_click 202,Preview
  picture 203:top 203,5:left 203,180:width 203,290:height 203,290:stretch_on 203
  button 204 :top 204,270:left 204,50:caption 204,def$(8):cursor_point 204
  inactive 204:on_click 204,Choix
end_if
return
' ------------------------------------------------------------------------------
Preview:
  file_load 203,Doss_Fond$+"\"+item_index$(202)
  active 204
return
' ------------------------------------------------------------------------------
Choix:
  img$=item_index$(202)
  Doss_img_select$=Doss_Sprite$+"\"+left$(img$,len(img$)-4)
  hide 200
  command_target_is 0
  gosub Creation
return
' ------------------------------------------------------------------------------
Creation:
  for x%=1 to 24
      img%=10+x%
      picture img% :width img%,100 :height img%,100 :left img%,200:top img%,200
      stretch_on img% :file_load img%,Doss_img_select$+"\"+str$(img%)+".bmp"
      on_click img%,Selection
  next x%
  gosub Placement
return
' ------------------------------------------------------------------------------
Placement:
  Table%(4,4)=1
  for img%=11 to 34
      repeat
        R%=int(rnd(5))
        C%=int(rnd(5))
      until Table%(R%,C%)=0
      Table%(R%,C%)=img%
      left img%,R%*100
      top img%,C%*100
  next img%
  Table%(4,4)=0
return
' ------------------------------------------------------------------------------
Selection:
  N%=number_click
  T%=Top(N%)
  L%=Left(N%)
  gosub Verif
return
' ------------------------------------------------------------------------------
Verif:
T1%=T%/100
L1%=L%/100
' pour se deplacer vers la gauche il faut au minimum etre dans la colonne 2
if L1%>0
  if Table%(L1%-1,T1%)=0
      gosub Action_G
      Table%(L1%-1,T1%)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour ce deplacer vers la droite il faut au maximum etre dans la colonne 4
if L1%<4
  if Table%(L1%+1,T1%)=0
      gosub Action_D
      Table%(L1%+1,T1%)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour ce deplacer vers le haut il faut etre au minimum sur la ligne 2
if T1%>0
  if Table%(L1%,T1%-1)=0
      gosub Action_H
      Table%(L1%,T1%-1)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour se deplacer vers le bas il faut au maximum etre sur la ligne 4
if T1%<4
  if Table%(L1%,T1%+1)=0
      gosub Action_B
      Table%(L1%,T1%+1)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
return
' ------------------------------------------------------------------------------
Action_G:
  mess%=1
  if L%>=100
      for x%=L% to L%-100 step -1:top N%,T% :left N%,x% :wait 10 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_D:
  mess%=2
  if L%<400
      for x%=L% to L%+100 step 1:top N%,T% :left N%,x% :wait 10 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_H:
  mess%=3
  if T%>=100
      for x%=T% to T%-100 step -1:top N%,x% :left N%,L% :wait 10 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_B:
  mess%=4
  if T%<400
      for x%=T% to T%+100 step 1:top N%,x% :left N%,L% :wait 10 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Attention:
  if mess%=1 then message "Vous avez atteint le bord gauche"
  if mess%=2 then message "Vous avez atteint le bord droit"
  if mess%=3 then message "Vous avez atteint le bord haut"
  if mess%=4 then message "Vous avez atteint le bord bas"
return
' ------------------------------------------------------------------------------
Arreter:
return
' ------------------------------------------------------------------------------
APp:
return
' ------------------------------------------------------------------------------
Aide:
return
' ------------------------------------------------------------------------------

Donnez moi vôtre avis, je suis impatient et vous avez tellement passé de temps avec ce bug... Laughing
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyMer 1 Aoû 2012 - 21:15

ygeronimi, je t'ai mis une petite protection pour éviter de cliquer sur une autre image quand il y en a déjà une qui bouge (sinon ça plante sévèrement l'affichage)
(Désolé, j'ai simplifié un peu pour m'y retrouver plus facilement ...)
Code:
' ******************************************************************************
dim Dossier$,Doss_Sprite$,Doss_Fond$,Doss_Langue$
dim Langue$,def$(100),jeu%, M%, i%
dim N%,T%,L%,T1%,L1%, x%,x$, mess%
dim img%,img$,Doss_img_select$
dim Table%(4,4),R%,C%
' ------------------------------------------------------------------------------
label Init,Init_Langue, Change_Langue,New_Langue, Menu,Jouer,Arreter,APp,Aide
label Preview,Choix,Selection, Action_G,Action_D,Action_H,Action_B, Attention

' ******************************************************************************
caption 0,"Mon Puzzle":width 0,516:height 0,558

main_menu 1
 sub_menu 2:parent 2,1:on_click 2,Menu:caption 2,"Jouer"
 sub_menu 3:parent 3,1:on_click 3,Menu:caption 3,"Langue"
 sub_menu 4:parent 4,1:on_click 4,Menu:caption 4,"A Propos"
 sub_menu 5:parent 5,1:on_click 5,Menu:caption 5,"Aide"

dlist 6 :' Liste des paramètres
dlist 7 :' Liste des langues dispo
dlist 8 :' Contenu de la langue choisie
dlist 9 :' Liste des Images


gosub Init
end
' ******************************************************************************
Init:
  Dossier$=Dir_Current$
  Doss_Sprite$=Dossier$+"\Sprites"
  Doss_Fond$=Dossier$+"\Fonds"
  Doss_Langue$=Dossier$+"\Langue"
  ' langues disponibles
  dir_change Doss_Langue$
  x$=file_find_first$
  if x$<>"_" then item_add 7,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 7,x$
      x$=file_find_next$
  end_while
  file_find_close
  ' liste des images
  dir_change Doss_Fond$
  x$=file_find_first$
  if x$<>"_" then item_add 9,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 9,x$
      x$=file_find_next$
  end_while
  file_find_close
  if file_exists(Dossier$+"\Param.inf")=1
      file_load 6,Dossier$+"\Param.inf"
      gosub Init_Langue
  else
      gosub Change_Langue
  end_if
return
' ------------------------------------------------------------------------------
Init_Langue:
  clear 8
  if count(6)>0
      Langue$=Doss_Langue$+"\"+item_read$(6,1)+".txt"
      file_load 8,Langue$
      for x%=1 to count(8):def$(x%)=item_read$(8,x%):next x%
      for x%=2 to 5:caption x%,def$(x%-1):next x%
  end_if
return
' ------------------------------------------------------------------------------
Change_Langue:
  if object_exists(100)=1
      show 100
  else
      form 100
      message Doss_Langue$
      width 100,200:height 100,130:top 100,(screen_y-130)/2:left 100,(screen_x-200)/2
      caption 100,"Paramètres":font_name 100,"Times new roman":font_size 100,10
      command_target_is 100
      alpha 101:top 101,10:left 101,10:caption 101,"Langue :"
      combo 102:top 102,30:left 102,10
      if count(7) > 0
        for x%=1 to count(7)
            item_add 102,left$(item_read$(7,x%),len(item_read$(7,x%))-4)
        next x%
      end_if
      on_change 102,New_Langue
  end_if
return
'-------------------------------------------------------------------------------
New_Langue:
  If count(6)>0 and Text$(102)<>""
      item_delete 6,1
      item_insert 6,1,Text$(102)
  else
      if Text$(102)<>"" then item_insert 6,1,Text$(102)
  end_if
  file_save 6,Dossier$+"\Param.inf"
  gosub Init_Langue
  hide 100
return
'-------------------------------------------------------------------------------
Menu:
for x%=2 to 5
  if clicked(x%)=1 then M%=x%
next x%
select M%
case 2
  jeu%=jeu%+1
  if jeu%=1
      caption 2,def$(5)
      gosub Jouer
  else
      jeu%=0
      caption 2,def$(1)
      gosub Arreter
  end_if
case 3
  gosub Change_Langue
case 4
  gosub APp
case 5
  gosub Aide
end_select
return
' ------------------------------------------------------------------------------
Jouer:
if object_exists(200)=1
  show 200
else
  form 200:width 200,500:height 200,350:top 200,(screen_y-350)/2:left 200,(screen_x-500)/2
  caption 200,def$(6):font_name 200,"Times new roman":font_size 200,10
  command_target_is 200
  alpha 201:top 201,10:left 201,5:caption 201,def$(7)
  list 202 :top 202,30:left 202,5:width 202,170:height 202,230
  for x%=1 to count(9):item_add 202,item_read$(9,x%):next x%
  on_double_click 202,Preview
  picture 203:top 203,5:left 203,180:width 203,290:height 203,290:stretch_on 203
  button 204 :top 204,270:left 204,50:caption 204,def$(8):cursor_point 204
  inactive 204:on_click 204,Choix
end_if
return
' ------------------------------------------------------------------------------
Preview:
  file_load 203,Doss_Fond$+"\"+item_index$(202)
  active 204
return
' ------------------------------------------------------------------------------
Choix:
  img$=item_index$(202)
  Doss_img_select$=Doss_Sprite$+"\"+left$(img$,len(img$)-4)
  hide 200
  command_target_is 0
  i% = object_exists(11)
  for x%=1 to 24
      img%=10+x%
      if i% = 0 then picture img% :width img%,100 :height img%,100 :left img%,200:top img%,200
      stretch_on img% :file_load img%,Doss_img_select$+"\"+str$(img%)+".bmp"
      on_click img%,Selection
  next x%
  Table%(4,4)=1
  for img%=11 to 34
      repeat
        R%=int(rnd(5))
        C%=int(rnd(5))
      until Table%(R%,C%)=0
      Table%(R%,C%)=img%
      left img%,R%*100
      top img%,C%*100
  next img%
  Table%(4,4)=0
return
' ------------------------------------------------------------------------------
Selection:
  for x%=1 to 24: off_click x%+10 : next x%
  N%=number_click : T%=Top(N%) : L%=Left(N%)
  T1%=T%/100 :  L1%=L%/100
' pour se deplacer vers la gauche il faut au minimum etre dans la colonne 2
if L1%>0
  if Table%(L1%-1,T1%)=0
      gosub Action_G
      Table%(L1%-1,T1%)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour ce deplacer vers la droite il faut au maximum etre dans la colonne 4
if L1%<4
  if Table%(L1%+1,T1%)=0
      gosub Action_D
      Table%(L1%+1,T1%)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour ce deplacer vers le haut il faut etre au minimum sur la ligne 2
if T1%>0
  if Table%(L1%,T1%-1)=0
      gosub Action_H
      Table%(L1%,T1%-1)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour se deplacer vers le bas il faut au maximum etre sur la ligne 4
if T1%<4
  if Table%(L1%,T1%+1)=0
      gosub Action_B
      Table%(L1%,T1%+1)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
for x%=1 to 24: on_click x%+10,selection : next x%
return
' ------------------------------------------------------------------------------
Action_G:
  mess%=1
  if L%>=100
      for x%=L% to L%-100 step -1:top N%,T% :left N%,x% :wait 2 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_D:
  mess%=2
  if L%<400
      for x%=L% to L%+100 step 1:top N%,T% :left N%,x% :wait 2 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_H:
  mess%=3
  if T%>=100
      for x%=T% to T%-100 step -1:top N%,x% :left N%,L% :wait 2 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_B:
  mess%=4
  if T%<400
      for x%=T% to T%+100 step 1:top N%,x% :left N%,L% :wait 2 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Attention:
  if mess%=1 then message "Vous avez atteint le bord gauche"
  if mess%=2 then message "Vous avez atteint le bord droit"
  if mess%=3 then message "Vous avez atteint le bord haut"
  if mess%=4 then message "Vous avez atteint le bord bas"
return
' ------------------------------------------------------------------------------
Arreter:
return
' ------------------------------------------------------------------------------
APp:
return
' ------------------------------------------------------------------------------
Aide:
return
' ------------------------------------------------------------------------------
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyMer 1 Aoû 2012 - 21:36

Du coup c'est moi qui suis perdu... Laughing
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyMer 1 Aoû 2012 - 21:49

J'ai vu que faisais un off_click mais comment fais tu pour rendre le click possible
si je rajoute cette ligne dans mon code je ne peux plus rien cliquer bounce
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyMer 1 Aoû 2012 - 21:53

Bon alors pour me faire pardonner pour l'embrouillage, je t'ai codé le arrêter / jouer Wink
Mais bon j’arrête, je ne veux pas te piquer ton programme. On verra u tu rencontres des problèmes après

PS: pour ta réponse, il y a avant le return une boucle où je remet le on_clic

Code:
' ******************************************************************************
dim Dossier$,Doss_Sprite$,Doss_Fond$,Doss_Langue$
dim Langue$,def$(100),jeu%, M%, i%
dim N%,T%,L%,T1%,L1%, x%,x$, mess%
dim img%,img$,Doss_img_select$
dim Table%(4,4),R%,C%
' ------------------------------------------------------------------------------
label Init_Langue, Change_Langue,New_Langue, Menu,Jouer,Arreter,APp,Aide
label Preview,Choix,Selection, Action_G,Action_D,Action_H,Action_B, Attention

' ******************************************************************************
caption 0,"Mon Puzzle":width 0,516:height 0,558

main_menu 1
 sub_menu 2:parent 2,1:on_click 2,Menu:caption 2,"Jouer"
 sub_menu 3:parent 3,1:on_click 3,Menu:caption 3,"Langue"
 sub_menu 4:parent 4,1:on_click 4,Menu:caption 4,"A Propos"
 sub_menu 5:parent 5,1:on_click 5,Menu:caption 5,"Aide"

dlist 6 :' Liste des paramètres
dlist 7 :' Liste des langues dispo
dlist 8 :' Contenu de la langue choisie
dlist 9 :' Liste des Images

  Dossier$=Dir_Current$
  Doss_Sprite$=Dossier$+"\Sprites"
  Doss_Fond$=Dossier$+"\Fonds"
  Doss_Langue$=Dossier$+"\Langue"
  ' langues disponibles
  dir_change Doss_Langue$
  x$=file_find_first$
  if x$<>"_" then item_add 7,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 7,x$
      x$=file_find_next$
  end_while
  file_find_close
  ' liste des images
  dir_change Doss_Fond$
  x$=file_find_first$
  if x$<>"_" then item_add 9,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 9,x$
      x$=file_find_next$
  end_while
  file_find_close
  if file_exists(Dossier$+"\Param.inf")=1
      file_load 6,Dossier$+"\Param.inf"
      gosub Init_Langue
  else
      gosub Change_Langue
  end_if
end
' ------------------------------------------------------------------------------
Init_Langue:
  clear 8
  if count(6)>0
      Langue$=Doss_Langue$+"\"+item_read$(6,1)+".txt"
      file_load 8,Langue$
      for x%=1 to count(8):def$(x%)=item_read$(8,x%):next x%
      for x%=2 to 5:caption x%,def$(x%-1):next x%
  end_if
return
' ------------------------------------------------------------------------------
Change_Langue:
  if object_exists(100)=1
      show 100
  else
      form 100
      message Doss_Langue$
      width 100,200:height 100,130:top 100,(screen_y-130)/2:left 100,(screen_x-200)/2
      caption 100,"Paramètres":font_name 100,"Times new roman":font_size 100,10
      command_target_is 100
      alpha 101:top 101,10:left 101,10:caption 101,"Langue :"
      combo 102:top 102,30:left 102,10
      if count(7) > 0
        for x%=1 to count(7)
            item_add 102,left$(item_read$(7,x%),len(item_read$(7,x%))-4)
        next x%
      end_if
      on_change 102,New_Langue
  end_if
return
'-------------------------------------------------------------------------------
New_Langue:
  If count(6)>0 and Text$(102)<>""
      item_delete 6,1
      item_insert 6,1,Text$(102)
  else
      if Text$(102)<>"" then item_insert 6,1,Text$(102)
  end_if
  file_save 6,Dossier$+"\Param.inf"
  gosub Init_Langue
  hide 100
return
'-------------------------------------------------------------------------------
Menu:
for x%=2 to 5
  if clicked(x%)=1 then M%=x%
next x%
select M%
case 2
  jeu%=jeu%+1
  if jeu%=1
      caption 2,def$(5)
      gosub Jouer
  else
      jeu%=0
      caption 2,def$(1)
      gosub Arreter
  end_if
case 3
  gosub Change_Langue
case 4
  gosub APp
case 5
  gosub Aide
end_select
return
' ------------------------------------------------------------------------------
Jouer:
for r%=0 to 4: for c%=0 to 4 : Table%(R%,C%)=0 : next c%: next r%
if object_exists(200)=1
  show 200
else
  form 200:width 200,500:height 200,350:top 200,(screen_y-350)/2:left 200,(screen_x-500)/2
  caption 200,def$(6):font_name 200,"Times new roman":font_size 200,10
  command_target_is 200
  alpha 201:top 201,10:left 201,5:caption 201,def$(7)
  list 202 :top 202,30:left 202,5:width 202,170:height 202,230
  for x%=1 to count(9):item_add 202,item_read$(9,x%):next x%
  on_double_click 202,Preview
  picture 203:top 203,5:left 203,180:width 203,290:height 203,290:stretch_on 203
  button 204 :top 204,270:left 204,50:caption 204,def$(8):cursor_point 204
  inactive 204:on_click 204,Choix
end_if
return
' ------------------------------------------------------------------------------
Preview:
  file_load 203,Doss_Fond$+"\"+item_index$(202)
  active 204
return
' ------------------------------------------------------------------------------
Choix:
  img$=item_index$(202)
  Doss_img_select$=Doss_Sprite$+"\"+left$(img$,len(img$)-4)
  hide 200
  command_target_is 0
  i% = object_exists(11)
  for x%=1 to 24
      img%=10+x%
      if i% = 0 then picture img% :width img%,100 :height img%,100 :left img%,200:top img%,200
      stretch_on img% :file_load img%,Doss_img_select$+"\"+str$(img%)+".bmp"
      on_click img%,Selection
  next x%
  Table%(4,4)=1
  for img%=11 to 34
      show img%
      repeat
        R%=int(rnd(5))
        C%=int(rnd(5))
      until Table%(R%,C%)=0
      Table%(R%,C%)=img%
      left img%,R%*100
      top img%,C%*100
  next img%
  Table%(4,4)=0
return
' ------------------------------------------------------------------------------
Selection:
  for x%=1 to 24: off_click x%+10 : next x%
  N%=number_click : T%=Top(N%) : L%=Left(N%)
  T1%=T%/100 :  L1%=L%/100
' pour se deplacer vers la gauche il faut au minimum etre dans la colonne 2
if L1%>0
  if Table%(L1%-1,T1%)=0
      gosub Action_G
      Table%(L1%-1,T1%)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour ce deplacer vers la droite il faut au maximum etre dans la colonne 4
if L1%<4
  if Table%(L1%+1,T1%)=0
      gosub Action_D
      Table%(L1%+1,T1%)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour ce deplacer vers le haut il faut etre au minimum sur la ligne 2
if T1%>0
  if Table%(L1%,T1%-1)=0
      gosub Action_H
      Table%(L1%,T1%-1)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour se deplacer vers le bas il faut au maximum etre sur la ligne 4
if T1%<4
  if Table%(L1%,T1%+1)=0
      gosub Action_B
      Table%(L1%,T1%+1)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
for x%=1 to 24: on_click x%+10,selection : next x%
return
' ------------------------------------------------------------------------------
Action_G:
  mess%=1
  if L%>=100
      for x%=L% to L%-100 step -4:top N%,T% :left N%,x% :wait 2 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_D:
  mess%=2
  if L%<400
      for x%=L% to L%+100 step 4:top N%,T% :left N%,x% :wait 2 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_H:
  mess%=3
  if T%>=100
      for x%=T% to T%-100 step -4:top N%,x% :left N%,L% :wait 2 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_B:
  mess%=4
  if T%<400
      for x%=T% to T%+100 step 4:top N%,x% :left N%,L% :wait 2 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Attention:
  if mess%=1 then message "Vous avez atteint le bord gauche"
  if mess%=2 then message "Vous avez atteint le bord droit"
  if mess%=3 then message "Vous avez atteint le bord haut"
  if mess%=4 then message "Vous avez atteint le bord bas"
return
' ------------------------------------------------------------------------------
Arreter:
      for img%=11 to 34 : hide img% : next img%
return
' ------------------------------------------------------------------------------
APp:
return
' ------------------------------------------------------------------------------
Aide:
return
' ------------------------------------------------------------------------------
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyMer 1 Aoû 2012 - 21:57

C'est surtout le retour de possibilité de cliquer qui m'intrigue,
je suis curieux de savoir comment tu t'y prends.
Perso, dès que je mets off_click c'est fini je ne peux plus rien cliquer...
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyMer 1 Aoû 2012 - 22:10

Regarde, avant le return, tu as la ligne:
for x%=1 to 24: on_click x%+10,selection : next x%
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyMer 1 Aoû 2012 - 22:39

Trouvée !!! Laughing Laughing Laughing


le "Arreter" va etre plus complexe, il va falloir une verif auto pres chaque déplacement pour voir si l'image est reconstitué...
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 0:32

dernière version :
Code:
' ******************************************************************************
dim Dossier$,Doss_Sprite$,Doss_Fond$,Doss_Langue$
dim Langue$,def$(100),jeu%
dim M%
dim N%,T%,L%,T1%,L1%
dim x%,x$
dim img%,img$,Doss_img_select$,view$
dim mess%
dim Table%(4,4),R%,C%,a%,b%,z%,cpte%
' ------------------------------------------------------------------------------
label Init,Init_Dossier,Init_List,Init_Param,Init_Langue
label Change_Langue,New_Langue
label Menu,Jouer,Arreter,APp,Aide
label Select_Img,Preview,Choix,Creation,Placement,Verif,Selection
label Action_G,Action_D,Action_H,Action_B
label Attention

' ******************************************************************************
caption 0,"Mon Puzzle":width 0,516:height 0,558:color 0,240,240,150

main_menu 1
 sub_menu 2:parent 2,1:on_click 2,Menu:caption 2,"Jouer"
 sub_menu 3:parent 3,1:on_click 3,Menu:caption 3,"Langue"
 sub_menu 4:parent 4,1:on_click 4,Menu:caption 4,"A Propos"
 sub_menu 5:parent 5,1:on_click 5,Menu:caption 5,"Aide"
 inactive 5
dlist 6 :' Liste des peramètres
dlist 7 :' Liste des langues dispo
dlist 8 :' Contenu de la langue choisie
dlist 9 :' Liste des Images


gosub Init
end
' ******************************************************************************
Init:
  gosub Init_Dossier
  gosub Init_List
  gosub Init_Param
return
' ------------------------------------------------------------------------------
Init_Dossier:
  Dossier$=Dir_Current$
  Doss_Sprite$=Dossier$+"\Sprites"
  Doss_Fond$=Dossier$+"\Fonds"
  Doss_Langue$=Dossier$+"\Langue"
return
' ------------------------------------------------------------------------------
Init_List:
  ' langues disponibles
  dir_change Doss_Langue$
  x$=file_find_first$
  if x$<>"_" then item_add 7,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 7,x$
      x$=file_find_next$
  end_while
  file_find_close
  ' liste des images
  dir_change Doss_Fond$
  x$=file_find_first$
  if x$<>"_" then item_add 9,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 9,x$
      x$=file_find_next$
  end_while
  file_find_close
return
' ------------------------------------------------------------------------------
Init_Param:
  if file_exists(Dossier$+"\Param.inf")=1
      file_load 6,Dossier$+"\Param.inf"
      gosub Init_Langue
  else
      gosub Change_Langue
  end_if
return
' ------------------------------------------------------------------------------
Init_Langue:
  clear 8
  if count(6)>0
      Langue$=Doss_Langue$+"\"+item_read$(6,1)+".txt"
      file_load 8,Langue$
      for x%=1 to count(8):def$(x%)=item_read$(8,x%):next x%
      for x%=2 to 5:caption x%,def$(x%-1):next x%
  end_if
return
' ------------------------------------------------------------------------------
Change_Langue:
  if object_exists(100)=1
      show 100
  else
      form 100
      width 100,200:height 100,130:top 100,(screen_y-130)/2:left 100,(screen_x-200)/2
      caption 100,"Paramètres":font_name 100,"Times new roman":font_size 100,10
      command_target_is 100
      alpha 101:top 101,10:left 101,10:caption 101,"Langue :"
      combo 102:top 102,30:left 102,10
      for x%=1 to count(7):item_add 102,left$(item_read$(7,x%),len(item_read$(7,x%))-4):next x%
      on_change 102,New_Langue
  end_if
return
'-------------------------------------------------------------------------------
New_Langue:
  If count(6)>0 and Text$(102)<>""
      item_delete 6,1
      item_insert 6,1,Text$(102)
  else
      if Text$(102)<>"" then item_insert 6,1,Text$(102)
  end_if
  file_save 6,Dossier$+"\Param.inf"
  gosub Init_Langue
  hide 100
return
'-------------------------------------------------------------------------------
Menu:
for x%=2 to 5
  if clicked(x%)=1 then M%=x%
next x%
select M%
case 2
  jeu%=jeu%+1
  if jeu%=1
      caption 2,def$(5)
      gosub Jouer
  else
      jeu%=0
      caption 2,def$(1)
      gosub Arreter
  end_if
case 3
  gosub Change_Langue
case 4
  gosub APp
case 5
  gosub Aide
end_select
return
' ------------------------------------------------------------------------------
Jouer:
gosub Select_Img
return
' ------------------------------------------------------------------------------
Select_img:
if object_exists(200)=1
  show 200
else
  form 200:width 200,500:height 200,350:top 200,(screen_y-350)/2:left 200,(screen_x-500)/2
  caption 200,def$(6):font_name 200,"Times new roman":font_size 200,10
  command_target_is 200
  alpha 201:top 201,10:left 201,5:caption 201,def$(7)
  list 202 :top 202,30:left 202,5:width 202,170:height 202,230
  for x%=1 to count(9):item_add 202,item_read$(9,x%):next x%
  on_double_click 202,Preview
  picture 203:top 203,5:left 203,180:width 203,290:height 203,290:stretch_on 203
  button 204 :top 204,270:left 204,50:caption 204,def$(8):cursor_point 204
  inactive 204:on_click 204,Choix
end_if
return
' ------------------------------------------------------------------------------
Preview:
  view$=Doss_Fond$+"\"+item_index$(202)
  file_load 203,view$
  active 204
return
' ------------------------------------------------------------------------------
Choix:
  img$=item_index$(202)
  Doss_img_select$=Doss_Sprite$+"\"+left$(img$,len(img$)-4)
  hide 200
  command_target_is 0
  gosub Creation
return
' ------------------------------------------------------------------------------
Creation:
  for x%=1 to 24
      img%=10+x%
      picture img% :width img%,100 :height img%,100:cursor_point img%
      stretch_on img% :file_load img%,Doss_img_select$+"\"+str$(img%)+".bmp"
      on_click img%,Selection
  next x%
  gosub Placement
  active 5
return
' ------------------------------------------------------------------------------
Placement:
  Table%(4,4)=1
  for img%=11 to 34
      repeat
        R%=int(rnd(5))
        C%=int(rnd(5))
      until Table%(R%,C%)=0
      Table%(R%,C%)=img%
      left img%,R%*100
      top img%,C%*100
  next img%
  Table%(4,4)=0
return
' ------------------------------------------------------------------------------
Selection:
  for x%=1 to 24:off_click x%+10:next x%
  N%=number_click
  T%=Top(N%)
  L%=Left(N%)
  gosub Verif
return
' ------------------------------------------------------------------------------
Verif:
T1%=T%/100
L1%=L%/100
' pour se deplacer vers la gauche il faut au minimum etre dans la colonne 2
if L1%>0
  if Table%(L1%-1,T1%)=0
      gosub Action_G
      Table%(L1%-1,T1%)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour ce deplacer vers la droite il faut au maximum etre dans la colonne 4
if L1%<4
  if Table%(L1%+1,T1%)=0
      gosub Action_D
      Table%(L1%+1,T1%)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour ce deplacer vers le haut il faut etre au minimum sur la ligne 2
if T1%>0
  if Table%(L1%,T1%-1)=0
      gosub Action_H
      Table%(L1%,T1%-1)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
' pour se deplacer vers le bas il faut au maximum etre sur la ligne 4
if T1%<4
  if Table%(L1%,T1%+1)=0
      gosub Action_B
      Table%(L1%,T1%+1)=Table%(L1%,T1%)
      Table%(L1%,T1%)=0
  end_if
end_if
z%=11
cpte%=0
for a%=0 to 4
  for b%=0 to 4
      z%=z%+1
      if Table%(a%,b%)=z% then cpte%=cpte%+1
  next b%
next a%
if cpte%=24
  gosub Arreter
else
  for x%=1 to 24:on_click x%+10,Selection :next x%
end_if
return
' ------------------------------------------------------------------------------
Action_G:
  mess%=1
  if L%>=100
      for x%=L% to L%-100 step -1:top N%,T% :left N%,x% :wait 5 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_D:
  mess%=2
  if L%<400
      for x%=L% to L%+100 step 1:top N%,T% :left N%,x% :wait 5 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_H:
  mess%=3
  if T%>=100
      for x%=T% to T%-100 step -1:top N%,x% :left N%,L% :wait 5 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Action_B:
  mess%=4
  if T%<400
      for x%=T% to T%+100 step 1:top N%,x% :left N%,L% :wait 5 :next x%
  else
      gosub Attention
  end_if
return
' ------------------------------------------------------------------------------
Attention:
  if mess%=1 then message "Vous avez atteint le bord gauche"
  if mess%=2 then message "Vous avez atteint le bord droit"
  if mess%=3 then message "Vous avez atteint le bord haut"
  if mess%=4 then message "Vous avez atteint le bord bas"
return
' ------------------------------------------------------------------------------
Arreter:
  message "Youpi!!!!"
return
' ------------------------------------------------------------------------------
APp:
return
' ------------------------------------------------------------------------------
Aide:
  if object_exists(300)=1
    show 300
  else
    form 300:height 300,328:width 300,306:caption 300,def$(4)
    command_target_is 300
    picture 301:height 301,290:width 301,290:file_load 301,view$
  end_if
return
' ------------------------------------------------------------------------------
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 0:44

Pour quand on rejoue, tu dois modifier la procédure creation
Code:
  i% = object_exists(11)
  for x%=1 to 24
      img%=10+x%
      if i% = 0 then picture img% :width img%,100 :height img%,100 :left img%,200:top img%,200
      stretch_on img% :file_load img%,Doss_img_select$+"\"+str$(img%)+".bmp"
      on_click img%,Selection
  next x%

Je pense que tu as tord d'utiliser Arreter comme tu le faits.
Quand tu fais arréter, tu as le message Youpi !!! alors que tu n'as pas gagner.
Quand tu gagne, c'est une procédure à part
Quand tu clique sur Arréter pour moi, tu abandonnes, mais bon c'est ma vision des choses Wink

Comme je ne suis pas patient, dans les "actions" au lieu d'un pas de 1, perso, j'ai mis 5
Action_G => step -5 action_D =>step 5 ...


Petit bug, si tu changes la langue en cours de jeu, un arreter devient play et un stop devient jouer ... Wink
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 1:13

le message Youpi!!! :

C'est ma façon à moi de verifier si ma boucle fonctionne correctement lol! lol! lol!

tu as pu voir que j'ai rajouté une boucle qui vérifie après chaque déplacement si les pseudos sprites sont tous à leur place
dans ce cas je saute au label "arreter" qui lui mettra un terme au jeu

Pour les actions:

comme c'est un *.bas, chacun peut mettre la vitesse qu'il veut mais attention au scintillement Laughing


Pour la procédure de création:

je vois ce que tu veux dire, je risque un souci d'objet déjà créés... Embarassed

par contre j'ai supprimé left et top dans la création des pictures (inutile, à moins de faire une boucle
pour que ceux ci prennent place avec un effet de déplacement).

Edit : j'allais zoublier, j'ai rajouter l'aide mais je vais mettre un temps d'affichage ( c'est une aide pas un model Rolling Eyes )
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 1:43

@ Jicehel,

J'ai un bug avec ta modif dans "creation"
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 3:32

Bon , je viens de mettre sur mon webdav
le zip avec la dernière version.

http://www.mydrive.ch/
panoramicien@ygeronimi_panoramic
panoramic123


Dès que le jeu sera opérationnel, je le changerai de rubrique... Laughing
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 8:14

salut ygeronimi

je viens de mettre en place ta derniere version et je suis surpris de voir que les pieces partent dans tous les sens ! Shocked

je pense que tu as changé quelques choses dans les routines car tout fonctionnait bien hier soir.
J'ai même essayé de faire le puzzle, et ca ma pris du temps. Laughing

Encore un bon casse-tête en prévision !
A bientot et bon courage... Very Happy
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 8:21

Tu as oublié le return du sous programme Verif dans le source sur ton Webdav ... Wink Du coup si on ne le rajoute pas ça fait bizzare, mais bon juste un return à rajouter ligne 257
dans init_langue il te manque le test si dessous avant le return
if jeu%=1 then caption 2,def$(5)
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 14:31

Mille pardons pour le return,
...c'est çà quand on fait le ménage, dès fois on vire des trucs sans s'en apercevoir Laughing

@ Jicehel,

Bien vu , celui là de "if" il a failli passer à la trappe... Laughing
Je pense que tu as vu que j'avais un peu modifier la fonction arrêt
C'est juste par convenance perso pour retrouver les actions,
quand il est a "creation" il construit, quand il est à "arret" il initialise


Ceci dit, la version corrigé est en ligne.


Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 14:40

Je regarderais où tu en est ce soir.
Qu'as-tu prévu de rajouter maintenant ?
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 14:59

Je suis entrain de voir pour ajouter un chrono
que j'aimerai placé visuellement en bout dans le menu
puis quand j'y serai parvenu, un menu score
pour conserver les meilleurs temps de résolution :

Date / heure / joueur / image / chrono

mais je suis assez satisfait du résultat actuel, car quand j'ai
commencé avec panoramic c'était un petit défi perso que je m'étais lancé
car je jouais avec celui de mon ordi que je trouvais trop petit.

bref, si j'arrive à mes fins, je penserai à travailler sur d'autres images
pour gonfler un peu la liste.

Voilà, voilà..... Laughing
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 19:12

Bon ben ca coince au niveau de la vérif du tableau... scratch
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 19:18

Tu as modifier d'autres trucs que le source, sinon publie le ici, si jamais je peux t'aider...
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Trop de gosub... - Page 2 Empty
MessageSujet: re   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 19:32

voilà le bout en question

Code:
dim% solution%(4,4)

z%=10
for a%=0 to 4
  for b%=0 to 4
      z%=z%+1
      solution%(a%,b%)=z%
  next a%
next b%



Code:
' ------------------------------------------------------------------------------
Selection:
  for x%=1 to 24:off_click x%+10:next x%
  N%=number_click
  T%=Top(N%)
  L%=Left(N%)
  gosub Verif
  cpte%=0
  for a%=0 to 4
      for b%=0 to 4
        if Table%(a%,b%)=Solution%(a%,b%) then cpte%=cpte%+1
        caption 800,str$(cpte%)
        if cpte%=24
            gagne%=1
            gosub Arreter
        end_if
      next b%
  next a%
return
' ------------------------------------------------------------------------------
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 20:45

sans aller plus loin, je ne sais pas si c'est ce qui te pose problème mais tu as inversé le next a et le next b dans ton premier code. Je regarde
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 EmptyJeu 2 Aoû 2012 - 21:04

je t'ai implémenté un petit mode debug pour suivre ce qui se passe.
Je n'ai pas trop le temps de chercher ce soir car je me suis engagé sur des trucs.
Regarde les valeurs de la table. Je pense que ça explique tes problèmes...
Code:
' ******************************************************************************
dim Dossier$,Doss_Sprite$,Doss_Fond$,Doss_Langue$
dim Langue$,def$(100),jeu%
dim M%
dim N%,T%,L%,T1%,L1%
dim x%,x$
dim img%,img$,Doss_img_select$,view$
dim mess%
dim Table%(4,4),R%,C%,a%,b%,z%,cpte%,i%,gagne%
dim debug% : debug%=1
dim solution%(4,4)

' ------------------------------------------------------------------------------
label Init,Init_Dossier,Init_List,Init_Param,Init_Langue
label Change_Langue,New_Langue
label Menu,Jouer,Arreter,APp,Aide
label Select_Img,Preview,Choix,Creation,Placement,Verif,Selection
label Action_G,Action_D,Action_H,Action_B
' ******************************************************************************
caption 0,"Mon Puzzle":width 0,516:height 0,558:color 0,240,240,150

if debug%=1
  form 700 : caption 700,"Debug" : left 700,600 : width 700,250 : height 700, 400
  print_target_is 700
end_if

z%=10
for a%=0 to 4
x$=""
  for b%=0 to 4
      z%=z%+1
      solution%(a%,b%)=z%
      if debug%=1
        x$=x$ + right$("00"+str$(solution%(a%,b%)),2)+"|"
      end_if
  next b%
  if debug%=1 then print x$
next a%
if debug%=1 then print

main_menu 1
 sub_menu 2:parent 2,1:on_click 2,Menu:caption 2,"Jouer"
 sub_menu 3:parent 3,1:on_click 3,Menu:caption 3,"Langue"
 sub_menu 4:parent 4,1:on_click 4,Menu:caption 4,"A Propos"
 sub_menu 5:parent 5,1:on_click 5,Menu:caption 5,"Aide"
 inactive 5
dlist 6 :' Liste des peramètres
dlist 7 :' Liste des langues dispo
dlist 8 :' Contenu de la langue choisie
dlist 9 :' Liste des Images

gosub Init
end
' ******************************************************************************
Init:
  gosub Init_Dossier
  gosub Init_List
  gosub Init_Param
return
' ------------------------------------------------------------------------------
Init_Dossier:
  Dossier$=Dir_Current$
  Doss_Sprite$=Dossier$+"\Sprites"
  Doss_Fond$=Dossier$+"\Fonds"
  Doss_Langue$=Dossier$+"\Langue"
return
' ------------------------------------------------------------------------------
Init_List:
  ' langues disponibles
  dir_change Doss_Langue$
  x$=file_find_first$
  if x$<>"_" then item_add 7,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 7,x$
      x$=file_find_next$
  end_while
  file_find_close
  ' liste des images
  dir_change Doss_Fond$
  x$=file_find_first$
  if x$<>"_" then item_add 9,x$
  x$=file_find_next$
  while x$<>"_"
      if x$<>"_" then item_add 9,x$
      x$=file_find_next$
  end_while
  file_find_close
return
' ------------------------------------------------------------------------------
Init_Param:
  if file_exists(Dossier$+"\Param.inf")=1
      file_load 6,Dossier$+"\Param.inf"
      gosub Init_Langue
  else
      gosub Change_Langue
  end_if
return
' ------------------------------------------------------------------------------
Init_Langue:
  clear 8
  if count(6)>0
      Langue$=Doss_Langue$+"\"+item_read$(6,1)+".txt"
      file_load 8,Langue$
      for x%=1 to count(8):def$(x%)=item_read$(8,x%):next x%
      for x%=2 to 5:caption x%,def$(x%-1):next x%
  end_if
return
' ------------------------------------------------------------------------------
Change_Langue:
  if object_exists(100)=1
      show 100
  else
      form 100
      width 100,200:height 100,130:top 100,(screen_y-130)/2:left 100,(screen_x-200)/2
      caption 100,"Paramètres":font_name 100,"Times new roman":font_size 100,10
      command_target_is 100
      alpha 101:top 101,10:left 101,10:caption 101,"Langue :"
      combo 102:top 102,30:left 102,10
      for x%=1 to count(7):item_add 102,left$(item_read$(7,x%),len(item_read$(7,x%))-4):next x%
      on_change 102,New_Langue
  end_if
return
'-------------------------------------------------------------------------------
New_Langue:
  If count(6)>0 and Text$(102)<>""
      item_delete 6,1
      item_insert 6,1,Text$(102)
  else
      if Text$(102)<>"" then item_insert 6,1,Text$(102)
  end_if
  file_save 6,Dossier$+"\Param.inf"
  gosub Init_Langue
  hide 100
return
'-------------------------------------------------------------------------------
Menu:
  for x%=2 to 5
      if clicked(x%)=1 then M%=x%
  next x%
  select M%
  case 2
      jeu%=jeu%+1
      if jeu%=1
        caption 2,def$(5)
        gosub Jouer
      else
        jeu%=0
        caption 2,def$(1)
        gagne%=0
        gosub Arreter
      end_if
  case 3
      gosub Change_Langue
  case 4
      gosub APp
  case 5
      gosub Aide
  end_select
return
' ------------------------------------------------------------------------------
Jouer:
  gosub Select_Img
return
' ------------------------------------------------------------------------------
Select_img:
  if object_exists(200)=1
      show 200
  else
      form 200:width 200,500:height 200,350:top 200,(screen_y-350)/2:left 200,(screen_x-500)/2
      caption 200,def$(6):font_name 200,"Times new roman":font_size 200,10
      command_target_is 200
      alpha 201:top 201,10:left 201,5:caption 201,def$(7)
      list 202 :top 202,30:left 202,5:width 202,170:height 202,230:cursor_point 202
      for x%=1 to count(9):item_add 202,item_read$(9,x%):next x%
      on_click 202,Preview
      picture 203:top 203,5:left 203,180:width 203,290:height 203,290:stretch_on 203
      button 204 :top 204,270:left 204,50:caption 204,def$(8):cursor_point 204
      inactive 204:on_click 204,Choix
  end_if
return
' ------------------------------------------------------------------------------
Preview:
  view$=Doss_Fond$+"\"+item_index$(202)
  file_load 203,view$
  active 204
return
' ------------------------------------------------------------------------------
Choix:
  img$=item_index$(202)
  Doss_img_select$=Doss_Sprite$+"\"+left$(img$,len(img$)-4)
  hide 200
  command_target_is 0
  gosub Creation
return
' ------------------------------------------------------------------------------
Creation:
  for x%=1 to 24
      img%=10+x%
      picture img%
      width img%,100 :height img%,100:cursor_point img%
      stretch_on img% :file_load img%,Doss_img_select$+"\"+str$(img%)+".bmp"
      on_click img%,Selection
  next x%
  gosub Placement
  active 5
return
' ------------------------------------------------------------------------------
Placement:
  Table%(4,4)=1
  for img%=11 to 34
      repeat
        R%=int(rnd(5))
        C%=int(rnd(5))
      until Table%(R%,C%)=0
      Table%(R%,C%)=img%
      left img%,R%*100
      top img%,C%*100
  next img%
  Table%(4,4)=0
return
' ------------------------------------------------------------------------------
Selection:
  for x%=1 to 24:off_click x%+10:next x%
  N%=number_click
  T%=Top(N%)
  L%=Left(N%)
  gosub Verif
  cpte%=0
  if debug%=1 then cls
  for a%=0 to 4
    x$=""
      for b%=0 to 4
        if debug%=1
          x$=x$ + right$("00"+str$(Table%(a%,b%)),2)+"|"
        end_if
        if Table%(a%,b%)=Solution%(a%,b%) then cpte%=cpte%+1
'        caption 800,str$(cpte%)
        if cpte%=24
            gagne%=1
            gosub Arreter
        end_if
      next b%
    if debug%=1 then print x$
  next a%
  if debug%=1 then print
return

' ------------------------------------------------------------------------------
Verif:
  T1%=T%/100
  L1%=L%/100
  ' pour se deplacer vers la gauche il faut au minimum etre dans la colonne 2
  if L1%>0
      if Table%(L1%-1,T1%)=0
        gosub Action_G
        Table%(L1%-1,T1%)=Table%(L1%,T1%)
        Table%(L1%,T1%)=0
      end_if
  end_if
  ' pour ce deplacer vers la droite il faut au maximum etre dans la colonne 4
  if L1%<4
      if Table%(L1%+1,T1%)=0
        gosub Action_D
        Table%(L1%+1,T1%)=Table%(L1%,T1%)
        Table%(L1%,T1%)=0
      end_if
  end_if
  ' pour ce deplacer vers le haut il faut etre au minimum sur la ligne 2
  if T1%>0
      if Table%(L1%,T1%-1)=0
        gosub Action_H
        Table%(L1%,T1%-1)=Table%(L1%,T1%)
        Table%(L1%,T1%)=0
      end_if
  end_if
  ' pour se deplacer vers le bas il faut au maximum etre sur la ligne 4
  if T1%<4
      if Table%(L1%,T1%+1)=0
        gosub Action_B
        Table%(L1%,T1%+1)=Table%(L1%,T1%)
        Table%(L1%,T1%)=0
      end_if
  end_if
  z%=11
  cpte%=0
  for a%=0 to 4
      for b%=0 to 4
        z%=z%+1
        if Table%(a%,b%)=z% then cpte%=cpte%+1
        if cpte%=24
            gagne%=1
            gosub Arreter
        end_if
      next b%
  next a%
  for x%=1 to 24:on_click x%+10,Selection :next x%
 return
' ------------------------------------------------------------------------------
Action_G:
  if L%>=100
      for x%=L% to L%-100 step -5:top N%,T% :left N%,x% :wait 5 :next x%
  end_if
return
' ------------------------------------------------------------------------------
Action_D:
  if L%<400
      for x%=L% to L%+100 step 5:top N%,T% :left N%,x% :wait 5 :next x%
  end_if
return
' ------------------------------------------------------------------------------
Action_H:
  if T%>=100
      for x%=T% to T%-100 step -5:top N%,x% :left N%,L% :wait 5 :next x%
  end_if
return
' ------------------------------------------------------------------------------
Action_B:
  if T%<400
      for x%=T% to T%+100 step 5:top N%,x% :left N%,L% :wait 5 :next x%
  end_if
return
' ------------------------------------------------------------------------------
Arreter:
  if gagne%=1 then message "Youpi!!!!"
  for img%=11 to 34 : delete img% : next img%
  for R%=0 to 4: for C%=0 to 4 : Table%(R%,C%)=0 : next C%: next R%
return
' ------------------------------------------------------------------------------
APp:
return
' ------------------------------------------------------------------------------
Aide:
  if object_exists(300)=1
      show 300
  else
      form 300:height 300,328:width 300,306:caption 300,def$(4)
      command_target_is 300
      picture 301:height 301,290:width 301,290:file_load 301,view$
  end_if
  pause 5000
  hide 300
return
' ------------------------------------------------------------------------------
Revenir en haut Aller en bas
Contenu sponsorisé





Trop de gosub... - Page 2 Empty
MessageSujet: Re: Trop de gosub...   Trop de gosub... - Page 2 Empty

Revenir en haut Aller en bas
 
Trop de gosub...
Revenir en haut 
Page 2 sur 3Aller à la page : Précédent  1, 2, 3  Suivant
 Sujets similaires
-
» Utilitaire Designer: générer une structure Panoramic valide
» Gosub with while[resolu] oubli du END
» problème avec les appels Gosub
» Aide (imprimable) sur PANORAMIC avec exemples
» un end_if en trop ?

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: