• Martes 30 de Abril de 2024, 06:01

Autor Tema:  La Vida Por Un Barco  (Leído 1396 veces)

Saiyan1

  • Miembro activo
  • **
  • Mensajes: 54
    • Ver Perfil
    • http://www.anaprog.com.ar
La Vida Por Un Barco
« en: Miércoles 20 de Septiembre de 2006, 14:58 »
0
Aqui les va...

lo prueban y me dicen !!!


Agradecimientos

* Enko : por guiarme en todo el proyecto
* Hassansito: por testearlo
* Jose: por habilitarme el ciber para terminarlo.


Quiero opiniones!


Saludos

Para descargarlo: http://rapidshare.de/files/33789640/LIFE.EXE.html


PD: ayer pude levantar un .exe aqui en el foro.. y hoy me dice que no se puede (???)
----------------------
Gustavo Insaurralde
Foro de Analista Programador

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: La Vida Por Un Barco
« Respuesta #1 en: Miércoles 20 de Septiembre de 2006, 18:41 »
0
Yo veía que el nombre del juego me sonaba parecido..... :rolleyes:  :P

http://foros.solocodigo.com/index.php?show...47&st=0&hl=life

Citar
ayer pude adjuntar un exe y hoy no
Debe ser por el tamaño de la ejecutable.

Que hay del código fuente, sería más productivo si lo colocas también.
 :hola:

Citar
Quiero opiniones!
vuelvo a lo de código fuente, sería mejor si lo coloca. Habría más de que opinar,

Es interesante lo de la musicita.  :lightsabre:
Ingreso, 1A, o 5B y se cierra.  :scream:

Saiyan1

  • Miembro activo
  • **
  • Mensajes: 54
    • Ver Perfil
    • http://www.anaprog.com.ar
Re: La Vida Por Un Barco
« Respuesta #2 en: Viernes 22 de Septiembre de 2006, 20:03 »
0
Citar
Debe ser por el tamaño de la ejecutable.

pesa 5 kb ... no creo que sea el tamaño... je.

Citar
Ingreso, 1A, o 5B y se cierra.

es que te pide columna y despues fila ... y como acepta solo integers... cuando pones una letra sale... es la forma de dejar de jugar... juaja

ya habia dejado el codigo.. pero me parece que se traspapeló en http://foros.solocodigo.com/index.php?showtopic=22386

por las dudas, lo dejo acá:
(y no es mio el juego, lo tome del chabon ese que empezo preguntandote y despues se fue p*teando... ja!)

PD: hoy le cambiaría algunas cosas al juego, porque cuando lo hice todavía no me enseñaban procedimientos y funciones.. aprendi tocando nomas..  :lol:  ahora ya aprendí :P

aca va el codigo!

-----------------------
Código: Text
  1. {**********************************************************************}
  2. {*                     La Vida por un Barco                  02/06/06 *}
  3. {*    Gracias:                                                        *}
  4. {*            a foros.solocodigo.com                                  *}
  5. {*            a Enko (moderador del foro Pascal), por las ayudas.     *}
  6. {*            a mi Amor Estela, por hacerme el aguante.               *}
  7. {*                                                                    *}
  8. {*                        Dise¤ado por:                               *}
  9. {*                     Gustavo Insaurralde                            *}
  10. {*                    tavo.guanako@gmail.com                          *}
  11. {*                      www.anaprog.com.ar                            *}
  12. {**********************************************************************}
  13.  
  14. Program lifeXship;
  15. uses crt;
  16. const
  17.  m=10;
  18.  NADA = 0;
  19.  TIBURON = 1;
  20.  BARCO = 2;
  21.  
  22. var
  23.  
  24. Mar: array[1..m,1..m] of integer;
  25. CasillasDescubiertas: array[1..m,1..m] of Boolean;
  26. vic,i,j: Integer;
  27. op:string;
  28.  
  29. procedure Init;
  30. var
  31. i,j,p,q: integer;
  32. begin
  33.  for i:=1 to m do
  34.     for J:=1 to m do
  35.         Mar[i,j] := NADA;
  36.   for i:=1 to m do
  37.   Mar[i,1] := TIBURON;
  38.     for  i:=1 to 10 do
  39.     Mar[i,2] := BARCO;
  40. end;
  41.  
  42. {Intercambia dos variables}
  43. procedure Intercambiar(var A,B: Integer);
  44. var
  45. C: Integer;
  46. begin
  47.  C := A;
  48.  A := B;
  49.  B := C;
  50. end;
  51.  
  52. {esto mezcla los campos y los desordena, de manera que uno se asegura que
  53. hay 10 tiburones y 10 barcos}
  54. procedure Mezclar;
  55. var
  56.  i,j, nI, nJ: integer;
  57. begin
  58. Randomize;
  59.   for i:=1 to m do
  60.     for J:=1 to m do
  61.     begin
  62.        nI := RAndom(10)+1;
  63.        nJ := RAndom(10)+1;
  64.        Intercambiar(Mar[i,j], Mar[nI,nJ]);
  65.     end;
  66. end;
  67.  
  68. procedure limpiar;                {limpiar la jugada escrita}
  69. begin
  70. readkey;
  71. gotoxy(10,14);
  72. clreol;
  73. end;
  74.  
  75. procedure ImprimirMar;            {graficar la matriz de * y ponerle true}
  76. var
  77.  i,j: Integer;
  78.  begin
  79.  gotoxy(20,2);
  80. for i:=1 to m do
  81. begin
  82.    for j:=1 to m do
  83.    begin
  84.    CasillasDescubiertas[i,j]:=true;
  85.    Write(' *':3);
  86.    end;
  87.       writeln;
  88.       gotoxy(20,2+i);
  89. end;
  90. end;
  91.  
  92. procedure limpiartodo;      {cuando termina el juego}
  93. var i:integer;
  94. begin
  95. for i:=20 downto 1 do
  96. begin
  97. gotoxy(1,i);
  98. clreol;
  99. end;
  100. end;
  101.  
  102. procedure mover;
  103. var
  104. i,j,bar,tib,c: integer;
  105. g:char;
  106. Begin
  107.  tib:=0;
  108.  bar:=0;
  109.  While (tib<3) and (bar<3) do
  110.  Begin
  111.     Gotoxy(14,14);
  112.   write('Digite el numero de columna en que desee moverse: ');
  113.     readln(i);
  114.      Gotoxy(1,14);
  115.    clreol;
  116.      gotoxy(14,14);
  117.    clreol;
  118.   write('Digite el numero de fila en que desee moverse: ');
  119.   read(j);
  120.      Gotoxy(1,14);
  121.      clreol;
  122.  
  123.   if (CasillasDescubiertas[i,j]=true) then
  124.    begin
  125.                gotoxy(29,15);
  126.     case Mar[i,j] of
  127.     0:begin
  128.       Writeln('Estas en el Agua');
  129.       CasillasDescubiertas[i,j]:=false;
  130.       limpiar;
  131.       end;
  132.     1: begin
  133.        Writeln('Hallaste un Barco!');
  134.        bar:=bar+1;
  135.        CasillasDescubiertas[i,j]:=false;
  136.        limpiar;
  137.        Gotoxy(63,2);
  138.        write(bar);
  139.        end;
  140.     2:  begin
  141.         Writeln('Te ha mordido un Tiburon');
  142.         tib:=tib+1;
  143.         CasillasDescubiertas[i,j]:=false;
  144.         limpiar;
  145.         gotoxy(72,2);
  146.         write(tib);
  147.         end;
  148.     end;
  149.    end
  150.   else
  151.    begin
  152.    textcolor(lightgreen+blink);
  153.    gotoxy(15,16);
  154.    Writeln('Esa jugada ya fue realizada (Columna:',i,'-Fila:',j,')');
  155.    readkey;
  156.    gotoxy(12,16);
  157.    clreol;
  158.    normvideo;
  159.    end;
  160.  
  161. begin                               {grafica la jugada "procedure pq no?"}
  162. gotoxy(21,2);
  163. gotoxy(19+i*2+i,1+j);
  164. case Mar[i,j] of
  165. 0:begin
  166.   g:='A';
  167.   textcolor(lightblue);
  168.   write(g);
  169.   normvideo;
  170.   end;
  171. 1:begin
  172.   g:='B';
  173.   textcolor(brown);
  174.   write(g);
  175.   normvideo;
  176.   sound(300);
  177.   delay(200);
  178.   sound(400);
  179.   delay(200);
  180.   nosound;
  181.   end;
  182. 2:begin
  183.   g:='T';
  184.   textcolor(lightred);
  185.   write(g);
  186.   normvideo;
  187.   sound(90);
  188.   delay(300);
  189.   sound(85);
  190.   delay(300);
  191.   nosound;
  192.   end;
  193.  
  194. end;
  195. gotoxy(1,14);
  196. end;
  197.  
  198. gotoxy(1,30);
  199.       for c:=30 downto 13 do
  200.       begin
  201.       clreol;
  202.       gotoxy(1,c);
  203.       clreol;
  204.       end;
  205.  
  206.  end;
  207.   limpiartodo;
  208.   gotoxy(30,13);
  209.   Writeln('Fin del Juego!');
  210.   if tib=3 then
  211.     begin
  212.     gotoxy(20,14);
  213.     textcolor(lightred);
  214.     Write('Perdiste. Te han mordido 3 Tiburones.');
  215.     vic:=1;
  216.     end
  217.   else
  218.   begin
  219.   gotoxy(20,14);
  220.   textcolor(red+blink);
  221.   Writeln('Ganaste!! Has encontrado los 3 Botes!!!');
  222.   end;
  223.   normvideo;
  224.   gotoxy(65,18);
  225.   textcolor(lightblue);
  226.   Write('Isoft¸');
  227.   normvideo;
  228.   textcolor(lightgreen);
  229.   gotoxy(59,19);
  230.   Write('Powered by Unicyber.');
  231.   normvideo;
  232. end;
  233.  
  234. Procedure sonido;
  235. Begin
  236.   for i:=1 to 1 do
  237.   begin
  238.   for j:=1 to 3 do
  239.   begin
  240.   sound(200);
  241.   Delay(200);
  242.   sound(200);
  243.   delay(200);
  244.   NoSound;
  245.   end;
  246.   sound(300);delay(200);sound(250);delay(180);sound(200);delay(500);
  247.   nosound;
  248.   end;
  249. end;
  250.  
  251.  
  252.   Procedure Sonidoper;
  253.   begin
  254.   for i:=1 to 2 do
  255.   begin
  256.   sound(500);
  257.   delay(150);
  258.   sound(280);
  259.   delay(150);
  260.   nosound;
  261.   sound(150);
  262.   delay(500);
  263.   nosound;
  264.   end;
  265.   end;
  266.  
  267.   Procedure sonidogan;
  268.   begin
  269.   for i:=1 to 2 do
  270.   begin
  271.   sound(600);
  272.   delay(150);
  273.   sound(480);
  274.   delay(150);
  275.   nosound;
  276.   end;
  277.   sound(600);
  278.   delay(500);
  279.   nosound;
  280.   end;
  281.  
  282.   Procedure Puntos;
  283.   Begin
  284.   for i:=1 to 3 do
  285.   begin
  286.   gotoxy(59,0+i);
  287.   Write('³');
  288.   gotoxy(77,4-i);
  289.   Write('³');
  290.     gotoxy(67,4-i);
  291.   Write('');
  292.   end;
  293.    for i:=1 to 17 do
  294.    begin
  295.    gotoxy(59+i,3);
  296.    write('_');
  297.    end;
  298.    gotoxy(61,1);
  299. textcolor(brown);
  300. Write('Botes');
  301. normvideo;
  302. gotoxy(68,1);
  303. textcolor(red);
  304. Write('Tiburones');
  305. normvideo;
  306. gotoxy(72,2);
  307. Write('0');
  308. gotoxy(63,2);
  309. Write('0');
  310.    end;
  311.  
  312.    Procedure intro;
  313.   Begin   {presentacion}
  314. clrscr;
  315. gotoxy(32,10);
  316. textcolor(lightblue);
  317. Writeln('Isoft Games ¸');
  318. normvideo;
  319. gotoxy(34,11);
  320. Writeln('presenta');
  321. delay(2000);
  322. gotoxy(34,11);
  323. clreol;
  324. gotoxy(28,10);
  325. clreol;
  326. textcolor(lightred);
  327. Write('La Vida Por un Barco!!!');
  328. normvideo;
  329. delay(2500);
  330. gotoxy(1,10);
  331. clreol;
  332. Writeln('Un buen d¡a se te ocurre ir de vacaciones a Miami.');
  333. Writeln('Y cuando llegas, tienes ganas de ir al a nadar al mar.');
  334. Writeln('Te vas a nadar al mar... muy relajado...');
  335. Writeln('Cuando de repente... estas rodeado de tiburones!!!');
  336. Writeln(' ');
  337. Writeln('Debes encontrar 3 barcos!');
  338. Writeln('Si te muerden 3 tiburones... pierdes.');
  339. Writeln('Suerte!');
  340. Writeln(' ');
  341. Writeln(' ');
  342. Write('Presiona una tecla para continuar...');
  343. readkey;
  344. for i:=100 downto 1 do
  345. begin
  346. gotoxy(1,i);
  347. clreol;
  348. end;
  349. end;
  350.  
  351.  Procedure Refer;       {Imprime referencia de filas y Columnas}
  352.  begin
  353.  gotoxy(20,1);
  354.  textcolor(green);
  355.  for i:=1 to m do
  356.  begin
  357.  Write(' ',i:2);
  358.  end;
  359.  normvideo;
  360.  gotoxy(18,2);
  361.  textcolor(magenta);
  362.  for i:=1 to m do
  363.  begin
  364.  Writeln(i);
  365.  gotoxy(18,2+i);
  366.  end;
  367.  normvideo;
  368.  end;
  369.  
  370.  Procedure descubrir;
  371.  var g:char;
  372.  begin
  373.  gotoxy(21,2);
  374.  for i:=1 to m do
  375.   for j:=1 to m do
  376.   begin
  377. gotoxy(19+i*2+i,j+1);
  378. case Mar[i,j] of
  379. 0:
  380.    begin
  381.    g:='A';
  382.    if CasillasDescubiertas[i,j]=true then           {grafica en amarillo si/}
  383.    textcolor(yellow)                                 {fue jugada la posicion}
  384.    else
  385.    textcolor(lightblue);
  386.    Write(g);
  387.    end;
  388. 1:
  389.    begin
  390.    g:='T';
  391.    if CasillasDescubiertas[i,j]=true then           {idem anterior}
  392.    textcolor(yellow)
  393.    else
  394.    textcolor(lightred);
  395.    Write(g);
  396.    end;
  397. 2:
  398.    begin
  399.    g:='B';
  400.    if CasillasDescubiertas[i,j]=true then           {idem anterior}
  401.    textcolor(yellow)
  402.    else
  403.    textcolor(brown);
  404.    Write(g);
  405.    end;
  406. end;
  407.   normvideo;
  408.   end;
  409.   end;
  410.  
  411.  
  412. Begin  {START}
  413.   ClrScr;
  414.   intro;
  415.   Init;
  416.   Mezclar;
  417.   Refer;
  418.   imprimirmar;
  419.   puntos;
  420.   mover;
  421.   descubrir;
  422.   if vic=1 then
  423.   sonidoper
  424.   else
  425.   sonidogan;
  426.   Readkey;
  427. end.
  428.  
  429. ----------------------
  430.  
  431.  
----------------------
Gustavo Insaurralde
Foro de Analista Programador