Forum

Catégorie : Programmes
Forum : Les programmes des internautes
Vues : 1486
Réponses : 10
Type : discussion
Etat : réponses autorisées

MONOPOLY (DEBUT)

snap le 07/06/2012 à 18:50
En 3 mots, tout est dit!!

Je programme en ce moment un monopoly, mais je le trouve trop lourd :p
Donc, j'aimerez que votre clémence vous guide sur la voie de la gentillesse et que vous m'aidiez par le fait même à résoudre mon problème, en apportant des modifications (grosse ou petite) bigmouth.gif

C'est un monopoly non-graphique (graphique trop dur et long :p ) Il n'est pas fini mais vou pouvez déja joué, mais vous ne pourrez pas construire, déshypotéquer, échanger, ni passer par la case départ! (C'est pas beau ça? xD )

Le monopoly se compose en 4 parties :
- Prgm MONOPOLY : le programme principal
- Prgm CASEMONO : Pour le texte des cases
- Pgrm CHANCE et Prgm COMUNOTE : Pour les cartes du même nom

Les programmes CHANCE et COMUNOTE sont vides, donc vous en avez pas besoin, mais si vous voulez faire tourner le monopoly, il faudra les créer.

Donc, voila les programmes, je ne change pas les caractères spéciaux car il faut savoir que j'ai déja taper ce long message et que j'avais mis les bonc caractères, mais mon ordi n'a pas voulu prévisualisesr, et j'ai du tout recommencer!!! maxiangry.gif maxiangry.gif maxiangry.gif

Donc, voila :

Prgm MONOPOLY : 3149 octets

á -> Le petit L des listes [2de] + 0 + [)]
ú -> Le moins de la négativité
ü -> Sto
L-> L1


Code
DelVar IClrHome
For(A,1,16
Output(1,A,"*
Output(8,A,"*
If not(fPart(.5A:Then
Output(.5A,1,"*
Output(.5A,16,"*
End
End
Output(3,5,"MONOPOLY
Output(6,5,"BY SNAP
Pause
ClrHome
Lbl A
Menu("****MONOPOLY****","CONTINUER",C,"NEW GAME",1,"QUITTER",2
Lbl 2
ClrHome
ClrDraw
Output(1,1,"
Stop
Lbl 1
Menu("ETES-VOUS SUR ?","NON",A,"OUI",3
Lbl 3
Output(1,4,"NOMBRE DE
Output(2,5,"JOUEURS
2ü ( ) X
Output(5,7,"<2>
Repeat K=105
getKeyü ( ) K
If K:Then
min(4,max(2,X+(K=26)-(K=24ü ( ) X
Output(5,8,X
End
End
42+3Xü ( ) dim(áMO
Fill(0,áMO
For(A,1,X
1ü ( ) áMO(40+3A
1500ü ( ) áMO(41+3A
End
Xü ( ) áMO(41
{0,2,0,4,0,25,6,0,6,8,0,10,4,10,12,25,14,0,14,16,0,18,0,18,20,25,22,22,4,24,0,26,26,0,28,25,0,35,100,50ü ( ) áMO1
{0,10,0,20,0,0,30,0,30,40,0,50,0,50,60,0,70,0,70,80,0,90,0,90,100,0,110,110,0,120,0,130,130,0,150,0,0,175,0,200ü ( ) áMO2
{0,30,0,60,0,0,90,0,90,100,0,150,0,150,180,0,200,0,200,220,0,250,0,250,300,0,330,330,0,360,0,390,390,0,450,0,0,500,0,600ü ( ) áMO3
{0,90,0,180,0,0,270,0,270,300,0,450,0,450,500,0,550,0,550,600,0,700,0,700,750,0,800,800,0,850,0,900,900,0,1000,0,0,1100,0,1400ü ( ) áMO4
{0,160,0,320,0,0,400,0,400,450,0,625,0,625,700,0,750,0,750,800,0,875,0,875,925,0,975,975,0,1025,0,1100,1100,0,1200,0,0,1300,0,1700ü ( ) áMO5
{0,250,0,450,0,0,550,0,550,600,0,750,0,750,900,0,950,0,950,1000,0,1050,0,1050,1100,0,1150,1150,0,1200,0,1275,1275,0,1400,0,0,1500,0,2000ü ( ) áMO6
{0,60,0,60,200,200,100,0,100,120,0,140,150,140,160,200,180,0,180,200,0,220,0,220,240,200,260,260,150,280,0,300,300,0,320,200,0,350,100,400ü ( ) áMO7
{0,30,0,30,0,100,50,0,50,60,0,70,75,70,80,100,90,0,90,100,0,110,0,110,120,100,130,130,75,140,0,150,150,0,160,100,0,175,0,200ü ( ) áHY
For(A,1,X
ClrHome
Output(1,4,"JOUEUR
Output(1,11,A
Output(3,2,"CHOISISSEZ UN
Output(4,1,"CODE A 4 CHIFFRE
DelVar D
For(B,1,4
Repeat max(K={72,73,74,82,83,84,92,93,94,102
getKeyü ( ) K
End
Output(6,5+B,"*
10fPart(K/10)-1+3(9-int(K/10ü ( ) C
D+Cý^ ( ) (4-Bü ( ) D
End
Dü ( ) áMO(42+3A
End
Lbl C
While 1
1+áMO(42ü ( ) áMO(42
If áMO(41)<áMO(42:1ü ( ) áMO(42
ClrHome
DelVar VOutput(4,4,"JOUEUR
Output(4,11,áMO(42
Pause
ClrHome
prgmCASEMONO
Pause
Lbl N
ClrHome
If fPart(áMO(40+3áMO(42:Menu("*****PRISON*****","LANCER LES DES",B,"PAYER",X
Menu("****************","LANCER LES DES",B,"CONSTRUIRE",Z,"DESHYPOTEQUER",D,"ECHANGE",E,"QUITTER",Q
Lbl Q
áMO(42)-1ü ( ) áMO(42
ClrHome
Output(1,1,"
Stop
Lbl X
If 50<áMO(41+3áMO(42:Then
ú ( ) 50+áMO(41+3áMO(42ü ( ) áMO(41+3áMO(42
11ü ( ) áMO(40+3áMO(42
Else
Goto N
End
Lbl B
For(A,1,20
Output(4,5,randInt(1,6
Output(4,11,randInt(1,6
69!
End
randInt(1,6ü ( ) Y
randInt(1,6ü ( ) Z
Output(4,5,Y
Output(4,11,Z
ClrHome
For(A,1,3
ClrHome
Output(4,5+A,Y
Output(4,11-A,Z
69!:69!
End
Output(4,8,Y+Z
Pause
If Y=Z:Then
V+1ü ( ) V
If fPart(áMO(40+3áMO(42:11ü ( ) áMO(40+3áMO(42
End
If V=3:Goto P
If not(fPart(áMO(40+3áMO(42:Then
For(B,1,Y+Z
1+áMO(40+3áMO(42ü ( ) áMO(40+3áMO(42
prgmCASEMONO
If 1=áMO(40+3áMO(42:200+áMO(41+3áMO(42ü ( ) áMO(41+3áMO(42
For(A,1,175
End
End
Pause
End
Lbl V
If not(áMO(áMO(40+3áMO(42)))) and min(áMO(40+3áMO(42))ø{1,3,5,8,11,18,21,23,31,34,37,39:Menu("****************","ACHETER",F,"NE PAS ACHETER",G
If 31=áMO(40+3áMO(42:Goto P
If áMO(áMO(42)) and áMO(42)øint(áMO(áMO(42:Goto L
Lbl G
End
Lbl P
11.5ü ( ) áMO(40+3áMO(42
prgmCASEMONO
Pause
Goto G
End
Lbl F
áMO7(áMO(40+3áMO(42ü ( ) G
If G>áMO(41+3áMO(42:Goto H
ú ( ) G+áMO(41+3áMO(42ü ( ) áMO(41+3áMO(42
áMO(42ü ( ) áMO(áMO(40+3áMO(42
Goto G
Lbl L
áMO(áMO(42ü ( ) D
fPart(Dü ( ) F
int(Dü ( ) E
If not(F:áMO1(Eü ( ) G
If .1=F:áMO2(Eü ( ) G
If .2=F:áMO3(Eü ( ) G
If .3=F:áMO4(Eü ( ) G
If .4=F:áMO5(Eü ( ) G
If .5=F:áMO6(Eü ( ) G
ClrHome
Output(3,4,"VOUS PAYEZ
Output(4,2,G
Output(4,7,"EUROS
Output(5,1,"AU JOUEUR
Output(5,11,áMO(42
Lbl J
If G<áMO(41+3áMO(42:Then
-G+áMO(41+3áMO(42ü ( ) áMO(41+3áMO(42
Goto G
Else
1ü ( ) Y
Lbl H
ClrList L1ü ( ) dim(L
For(X,1,41
If int(áMO(X))=áMO(42:Then
1+dim(Lü ( ) dim(L
Xü ( ) L(dim(L
End
End
If Y and 1=dim(L:Then
Goto R
Else
If not(Y and 1=dim(L:Goto G
1ü ( ) I
prgmCASEMONO
Output(8,6,áHY(L(I
Repeat G<áMO(41+3áMO(42
Repeat K=105
getKeyü ( ) K
If max(K={24,26:Then
max(2,min(dim(L),I-(K=24)+(K=26ü ( ) I
If K=45 and not(Y:Goto G
prgmCASEMONO
Output(8,6,áHY(L(I
End
End
10+áMO(áMO(42ü ( ) áMO(áMO(42
áHY(L(I))+áMO(41+3áMO(42ü ( ) áMO(41+3áMO(42
End
If Y:Goto J
Goto F


Pgrm CASEMONO : 1782 octets

Code
áMO(40+3áMO(42ü ( ) A
If I:á1(Iü ( ) A
ClrHome
If A=1:Then
Output(3,6,"CASE
Output(5,5,"DEPART
Output(7,2,"RECEVEZ 200 E!
End
If A=2:Then
Output(3,4,"BOULEVARD
Output(4,8,"DE
Output(5,4,"BELLEVILLE
End
If A=3:Then
prgmCOMUNOTE
End
If A=4:Then
Output(3,7,"RUE
Output(5,4,"LECOURBE
End
If A=5:Then
Output(3,4,"IMPOT SUR
Output(5,4,"LE REVENU
End
If A=6:Then
Output(3,7,"GARE
Output(5,3,"MONTPARNASSE
End
If A=7:Then
Output(3,6,"RUE DE
Output(5,4,"VAUGIRARD
End
If A=8:Then
prgmCHANCE
End
If A=9:Then
Output(3,6,"RUE DE
Output(5,4,"COURCELLES
End
If A=10:Then
Output(3,5,"AVENUE
Output(4,5,"DE LA
Output(5,4,"REPUBLIQUE
End
If A=11:Then
Output(3,4,"VISITE DE
Output(5,5,"PRISON
End
If A=11.5:Then
Output(3,4,"VOUS ETES
Output(4,4,"EN PRISON POUR
Output(5,7,"TOURS
Output(5,5,TOURS DE PRISON
End
If A=12:Then
Output(3,4,"BOULEVARD
Output(4,5,"DE LA
Output(5,4,"VILLETTE
End
If A=13:Then
Output(3,3,"COMPAGNIE DE
Output(4,3,"DISTRIBUTION
Output(5,2,"D'ELECTRICITE
End
If A=14:Then
Output(3,4,"AVENUE DE
Output(5,5,"NEUILLY
End
If A=15:Then
Output(3,5,"RUE DE
Output(5,5,"PARADIS
End
If A=16:Then
Output(3,5,"GARE DE
Output(5,6,"LYON
End
If A=17:Then
Output(3,5,"AVENUE
Output(5,5,"MOZART
End
If A=18:Then
prgmCOMUNOTE
End
If A=19:Then
Output(3,4,"BOULEVARD
Output(5,2,"SAINT-MICHEL
End
If A=20:Then
Output(4,2,"PLACE PIGALLE
End
If A=21:Then
Output(4,3,"PARC GRATUIT!
End
If A=22:Then
Output(3,6,"AVENUE
Output(5,5,"MATIGNON
End
If A=23:Then
prgmCHANCE
End
If A=24:Then
Output(3,4,"BOULEVARD
Output(5,3,"MALESHERBES
End
If A=25:Then
Output(3,5,"AVENUE
Output(5,2,"HENRI-MARTIN
End
If A=26:Then
Output(4,2,"GARE DU NORD
End
If A=27:Then
Output(3,4,"FAUBOURG
Output(5,2,"SAINT-HONORE
End
If A=28:Then
Output(3,4,"PLACE DE
Output(5,4,"LA BOURSE
End
If A=29:Then
Output(3,3,"COMPAGNIE
Output(4,1,"DE DISTRIBUTION
Output(5,4,"DES EAUX
End
If A=30:Then
Output(3,7,"RUE
Output(5,4,"LA FAYETTE
End
If A=31:Then
Output(1,4,"ALLEZ EN
Output(2,5,"PRISON
Output(4,3,"NE PASSEZ PAS
Output(5,3,"PAR LA CASE
Output(6,5,"DEPART
End
If A=32:Then
Output(3,5,"AVENUE
Output(5,3,"DE BRETEUIL
End
If A=33:Then
Output(3,5,"AVENUE
Output(5,6,"FOCH
End
If A=34:Then
prgmCOMUNOTE
End
If A=35:Then
Output(3,4,"BOULEVARD
Output(5,2,"DES CAPUCINES
End
If A=36:Then
Output(3,6,"GARE
Output(5,2,"SAINT-LAZARE
End
If A=37:Then
prgmCHANCE
End
If A=38:Then
Output(3,3,"AVENUE DES
Output(5,2,"CHAMPS ELYSEES
End
If A=39:Then
Output(3,6,"PAYEZ
Output(5,4,"LES TAXES
End
If A=40:Then
Output(3,5,"RUE DE
Output(5,5,"LA PAIX
End
Output(1,1,A
If not(áMO(A)) and min(Aø{1,3,8,11,18,21,23,31,34,37:Then
Output(8,7,áMO7(A
Output(8,11,"E
End


Voila, voila! Si vous trouver des modif (grosse ou petites) n'hésitez pas!

Quelques petites indications :

LMO(1) jusque LMO(40) -> Cases + Joueur à laquelle elle appartient
LMO(42) -> Joueur qui joue
LMO(41) -> Nombre de joueurs
LMO(40+3LMO(42)) -> Position du joueur
LMO(41+3LMO(42)) -> Argent du joueur
LMO(42+3LMO(42)) -> Code du joueur
LMO1 -> Loyer sans maisons
LMO2 -> Loyer avec 1 maison
LMO3 -> Loyer avec 2 maisons
LMO4 -> Loyer avec 3 maisons
LMO5 -> Loyer avec 4 maisons
LMO6 -> Loyer avec 1 hôtel
LMO7 -> Prix de vente du terrain ou taxes
LHY -> Prix hypotèque

VOILA !! Et maintenant, les liens de téléchargement (car je sais que c'est très long de recopier à la main ! )

Prgm MONOPOLY : http://www.toofiles.com/fr/oip[...]4_monopoly.html
Prgm CASEMONO : http://www.toofiles.com/fr/oip[...]p/casemono.html

Normalement y a pas d'erreur vu que j'ai transféré de la calto à l'ordi :p

Voila, les modif sont les bienvenues ainsi que les critiques (Bonnes ou mauvaises!! )
azerty1 le 07/06/2012 à 21:00
Aie, si tu peux edite ton message de maniere à corriger le probleme d'affichage, je ne sais pas si c'est du à
la longueur des phrases ou la taille du message...?
snap le 07/06/2012 à 21:09
Quel problème d'affichage? Moi mon ordi bug je vois pas la moitié de l'écran notgood.gif
Ton message j'ai réussi à lire " Aie, si tu peux edite ton message de maniere à corriger le probleme d'affichage, je ne sais pas si c'est du à la longueur des phrases ou la" :p
azerty1 le 07/06/2012 à 21:12
Message édité, essaie de couper les phrases en allant à la ligne happy.gif
linkakro le 07/06/2012 à 21:16
Normalement changer de navigateur permet de régler le problème.
Mais je viens de tester ie, ça ne marche pas contrairement à mes souvenirs.
Ainsi tu pourras accéder à l'icone "editer" et corriger ton message.
snap le 07/06/2012 à 22:44
La je suis sur mon portable donc pas possible d'éditer, je sais pas comment on passe des lignes ^^' je changerait tout ca demain vers 17h. En attendant, vous pouvez toujours télécharger et regarder sur ti-graph link. Une petite précision, je vais remplacer le LMO(40+3LMO(42)) par une variable au début du tour, sa economisera pas mal d'octets
The K le 08/06/2012 à 18:49
Code
D+Cý^ ( ) (4-Bü ( ) D


peut se transformer en : D+C€(4-B->D
€ étant le petit E au dessus du 7.

Voila ^^ pour le reste c'est déja très bien mais je n'ai regardé que vite fait ^^'
snap le 09/06/2012 à 08:51
Impossible, le petit E n'est que pour un chiffre ou un nombre, donc pas de parenthèses ou alors on tombe sur une jolie "ERR : SYNTAXE".
The K le 09/06/2012 à 09:44
Rooooh ! Bon dommage ^^
(je me demandais a quoi servait la fonction *10^x d'ailleurs ... ben now je sais ;p )
cKZO le 09/06/2012 à 21:13
Moi aussi dalleurs g eu les mêmes problèmes! angry.gif
snap le 12/06/2012 à 09:21
Quelques petits imprévus retarderont la sortie du programme, mais je ppense que vous l'aurez dans quelques semaines le temps de faire les cartes chance et communauté.

Je pense aussi changer le lancement de dés parce que la, sa fait pas très classe ^^'

Je pense qu'il devrait peser environ 10ko maxi. Je vous dirais ça quand il sera fini winkle.gif