Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] skrypt rozszyfrowujący grę "serduszka"
MaciekDZN
post
Post #1





Grupa: Zarejestrowani
Postów: 84
Pomógł: 0
Dołączył: 6.01.2008
Skąd: Działoszyn

Ostrzeżenie: (0%)
-----


Witam,
gram sobie w taką jedną grę (bubble blast valentine) na adroidzie i natrafiłem na planszę której nie mogę przejść


postanowiłem więc jednak że napiszę program w php który mi obliczy w jaki sposób mam klikać w serca żeby przejść tą planszę

(IMG:http://www.androidfreeware.net/img2/bubble_blast_valentine_android_3.gif)


napisałem coś takiego na szybko ale wiem ze to jest źle, pomożcie bo nie mam pomysłu jak to dokończyć

  1. <?php
  2. $a0_1=9; $a0_2=9; $a0_3=9; $a0_4=9; $a0_5=9;
  3.  
  4. $a1_0=9; $a1_1=1; $a1_2=2; $a1_3=1; $a1_4=0; $a1_5=0; $a1_6=9;
  5. $a2_0=9; $a2_1=0; $a2_2=1; $a2_3=0; $a2_4=0; $a2_5=0; $a2_6=9;
  6. $a3_0=9; $a3_1=0; $a3_2=0; $a3_3=0; $a3_4=0; $a3_5=0; $a3_6=9;
  7. $a4_0=9; $a4_1=0; $a4_2=0; $a4_3=0; $a4_4=0; $a4_5=0; $a4_6=9;
  8. $a5_0=9; $a5_1=0; $a5_2=0; $a5_3=0; $a5_4=0; $a5_5=0; $a5_6=9;
  9. $a6_0=9; $a6_1=0; $a6_2=0; $a6_3=0; $a6_4=0; $a6_5=0; $a6_6=9;
  10.  
  11. $a7_1=9; $a7_2=9; $a7_3=9; $a7_4=9; $a7_5=9;
  12.  
  13. $ile_razy=6;
  14.  
  15. for($t=1;$t<=6;$t++)
  16. {
  17. for($i=1;$i<=5;$i++)
  18. {
  19. $aa='$a'.$t.'_'.$i;
  20. if($aa=0)
  21. {
  22. //$i++;
  23. } else {
  24. $lewo= "'$a'.$t.'_'.$i-1";
  25. $gora= "'$a'.$t-1.'_'.$i";
  26. $prawo= "'$a'.$t.'_'.$i+1";
  27. $dol= "'$a'.$t+1.'_'.$i";
  28. }
  29. }
  30. if($a1_1==0 and $a1_2==0 and $a1_3==0 and $a1_4==0 and $a1_5==0 and
  31. $a2_1==0 and $a2_2==0 and $a2_3==0 and $a2_4==0 and $a2_5==0 and
  32. $a3_1==0 and $a3_2==0 and $a3_3==0 and $a3_4==0 and $a3_5==0 and
  33. $a4_1==0 and $a4_2==0 and $a4_3==0 and $a4_4==0 and $a4_5==0 and
  34. $a5_1==0 and $a5_2==0 and $a5_3==0 and $a5_4==0 and $a5_5==0 and
  35. $a6_1==0 and $a6_2==0 and $a6_3==0 and $a6_4==0 and $a6_5==0)
  36. {
  37. echo "<br />Zbijasz wszystkie serduszka i wygrywasz<br />";
  38. } else {
  39. echo "<br />Nie udało się przejść planszy<br />";
  40. }
  41. }
  42.  
  43. ?>


w grze chodzi o to ze ma się jakąś ilość ruchów, po każdym kliknieciu na serce zmienia ono swoj kolor bliższy czerwonemu (niebieski->zólty->zielony->czerwony), gdy ma kolor czerwony i je nacisniemy to znika, a w 4 strony lecą mini serduszka ktore tez zmieniaja kolor na inny pobliskich serc w liniach prostych.

Ten post edytował MaciekDZN 20.06.2011, 12:30:14
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
nekomata
post
Post #2





Grupa: Zarejestrowani
Postów: 314
Pomógł: 44
Dołączył: 12.11.2010
Skąd: UK

Ostrzeżenie: (0%)
-----


  1. $aa='$a'.$t.'_'.$i;
Takie coś przesyła do $aa coś takiego '$a(wartość t)_(wartość i)' czyli co prawda budujesz nazwę zmiennej ale nie sprawdzisz jej. Użyj do tego tablic . czyli $a[1][1] itd , wtedy możesz w for zapisać sobie $a[$t][$i] i masz właściwą wartość . Ogólnie nie za bardzo rozumiem o co biega w tej grze .

EDIT : Jeszcze używasz for do poruszania się po każdym elemencie array'u , użyj foreach (w sumie niema to wielkiego znaczenia ale jest 'poprawniej')

EDIT2(offtop) :
Cytat
postanowiłem więc jednak że napiszę program w php który mi obliczy w jaki sposób mam klikać w serca żeby przejść tą planszę
Jak mawia mój znajomy , "W php jest takie programowanie jak sex na redtubie " . (IMG:style_emoticons/default/biggrin.gif)

Ten post edytował nekomata 19.06.2011, 22:34:00
Go to the top of the page
+Quote Post
MaciekDZN
post
Post #3





Grupa: Zarejestrowani
Postów: 84
Pomógł: 0
Dołączył: 6.01.2008
Skąd: Działoszyn

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $a[0][1]=9; $a[0][2]=9; $a[0][3]=9; $a[0][4]=9; $a[0][5]=9;
  3.  
  4. $a[1][0]=9; $a[1][1]=1; $a[1][2]=2; $a[1][3]=1; $a[1][4]=0; $a[1][5]=0; $a[1][6]=9;
  5. $a[2][0]=9; $a[2][1]=0; $a[2][2]=1; $a[2][3]=0; $a[2][4]=0; $a[2][5]=0; $a[2][6]=9;
  6. $a[3][0]=9; $a[3][1]=0; $a[3][2]=0; $a[3][3]=0; $a[3][4]=0; $a[3][5]=0; $a[3][6]=9;
  7. $a[4][0]=9; $a[4][1]=0; $a[4][2]=0; $a[4][3]=0; $a[4][4]=0; $a[4][5]=0; $a[4][6]=9;
  8. $a[5][0]=9; $a[5][1]=0; $a[5][2]=0; $a[5][3]=0; $a[5][4]=0; $a[5][5]=0; $a[5][6]=9;
  9. $a[6][0]=9; $a[6][1]=0; $a[6][2]=0; $a[6][3]=0; $a[6][4]=0; $a[6][5]=0; $a[6][6]=9;
  10.  
  11. $a[7][1]=9; $a[7][2]=9; $a[7][3]=9; $a[7][4]=9; $a[7][5]=9;
  12.  
  13. $ile_razy=6;
  14.  
  15. for($t=1;$t<=6;$t++)
  16. {
  17. for($i=1;$i<=5;$i++)
  18. {
  19.  
  20. if($a[$t][$i]=0)
  21. {
  22. //$i++;
  23. } else {
  24.  
  25. $y1=$i-1;
  26. $y2=$i+1;
  27. $z1=$t-1;
  28. $z2=$t+1;
  29.  
  30. $a[$t][$y1]=$a[$t][$y1]-1;
  31.  
  32. $a[$t][$y2]=$a[$t][$y2]-1;
  33.  
  34. $a[$z1][$i]=$a[$z1][$i]-1;
  35.  
  36. $a[$z2][$i]=$a[$z2][$i]-1;
  37.  
  38.  
  39. }
  40. }
  41. if($a[1][1]==0 and $a[1][2]==0 and $a[1][3]==0 and $a[1][4]==0 and $a[1][5]==0 and
  42. $a[2][1]==0 and $a[2][2]==0 and $a[2][3]==0 and $a[2][4]==0 and $a[2][5]==0 and
  43. $a[3][1]==0 and $a[3][2]==0 and $a[3][3]==0 and $a[3][4]==0 and $a[3][5]==0 and
  44. $a[4][1]==0 and $a[4][2]==0 and $a[4][3]==0 and $a[4][4]==0 and $a[4][5]==0 and
  45. $a[5][1]==0 and $a[5][2]==0 and $a[5][3]==0 and $a[5][4]==0 and $a[5][5]==0 and
  46. $a[6][1]==0 and $a[6][2]==0 and $a[6][3]==0 and $a[6][4]==0 and $a[6][5]==0)
  47. {
  48. echo "<br />Zbijasz wszystkie serduszka i wygrywasz<br />";
  49. } else {
  50. echo "<br />Nie udało się przejść planszy<br />";
  51. }
  52. }
  53.  
  54. ?>

no i dalej nie wiem jak to napisać......................

co do php, redtube, sexu to związku nie widze, a jak inaczej nazwać coś co jest programem to nie wiem...
może kod który po otworzeniu na serwerze obsługującym php można go zobaczyć w formie graficznej i użyć do własnych celów? jednak wolę użyć nazwy "program"

Ten post edytował MaciekDZN 19.06.2011, 23:09:45
Go to the top of the page
+Quote Post
nekomata
post
Post #4





Grupa: Zarejestrowani
Postów: 314
Pomógł: 44
Dołączył: 12.11.2010
Skąd: UK

Ostrzeżenie: (0%)
-----


Nie rozumiem jednej rzeczy , czemu niektóre wartości mają 9 jeśli masz tylko 4 kolory? Dodatkowo , przelatujesz przez każde pole a masz tylko dwa ruchy co nie? Jak na mój gust to musisz to inaczej napisać , sprawdzić wszystkie możliwości ( (szerokość * wysokość) podniesione do potęgi kliknięć (chyba (IMG:style_emoticons/default/haha.gif) )... czyli baardzo dużo możliwości wyjdzie.). Co do redtuba ... to taki żarcik z którym ja się osobiście zgadzam bo php samo w sobie to parser skryptów , a ja osobiście uznaje programy jako coś co uruchamiam u siebie na komputerze , nie to że php jest słabe czy coś (łatwe też nie jest) tylko że programem bym tego nie nazwał.
Go to the top of the page
+Quote Post
webdice
post
Post #5


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Proszę się zapoznać z regulaminem forum i poprawić temat. W innym wypadku wątek zostanie zamknięty.
Go to the top of the page
+Quote Post
by_ikar
post
Post #6





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

Ostrzeżenie: (0%)
-----


Cytat(nekomata @ 20.06.2011, 00:57:02 ) *
Co do redtuba ... to taki żarcik z którym ja się osobiście zgadzam bo php samo w sobie to parser skryptów , a ja osobiście uznaje programy jako coś co uruchamiam u siebie na komputerze , nie to że php jest słabe czy coś (łatwe też nie jest) tylko że programem bym tego nie nazwał.

To sobie skompiluj php i będziesz miał coś co możesz uruchamiać. JS również nie jest językiem programowania, bo to jest język skryptowy? php to narzędzie, jak wiele innych, jak ty wykorzystasz to co ci ktoś oferuje, świadczy o tym kim jesteś.
Go to the top of the page
+Quote Post
nekomata
post
Post #7





Grupa: Zarejestrowani
Postów: 314
Pomógł: 44
Dołączył: 12.11.2010
Skąd: UK

Ostrzeżenie: (0%)
-----


@up zwolnij konie panie .
Nie za bardzo mi pasuję 'to sobie' więc wole nie wdawać się w dalszą dyskusję ... niektórzy naprawdę nie potrafią oddzielić żartu od rzeczy poważnych . Poza tym może byś pomógł autorowi bo od tego chyba jest ten dział , ja dodawałem offtopic do mojej wypowiedzi , więc potraktuj to jako gratisa i się nie bulwersuj bo darowanemu koniowi się w zęby nie patrzy .
Zobacz może co mówi wikipedia na ten temat?
Kod
PHP jest najczęściej stosowany do tworzenia skryptów po stronie serwera WWW, ale może być on również używany do przetwarzania danych z poziomu wiersza poleceń, a nawet do pisania programów pracujących w trybie graficznym (np. za pomocą biblioteki GTK+, używając rozszerzenia PHP-GTK). Implementacja PHP wraz z serwerem WWW Apache oraz serwerem baz danych MySQL określana jest jako platforma AMP (w środowisku Linux ? LAMP, w Windows ? WAMP).
.... a nawet do pisania programów...
@topic
  1. if($a[$t][$i]=0)
Jedno = więcej. (IMG:style_emoticons/default/tongue.gif)

Ten post edytował nekomata 20.06.2011, 10:22:45
Go to the top of the page
+Quote Post
MaciekDZN
post
Post #8





Grupa: Zarejestrowani
Postów: 84
Pomógł: 0
Dołączył: 6.01.2008
Skąd: Działoszyn

Ostrzeżenie: (0%)
-----


czyli jednak miałem racje z tym "programo..."

dodałem jeden = więcej (IMG:style_emoticons/default/tongue.gif)

przejdę do rzeczy, napisałem coś takiego co działa prawidłowo ale liczy po kolei, jak to przerobić żeby sprawdzało każdą możliwość?:

  1. <?php
  2.  
  3. $a[0][0]=9; $a[0][1]=9; $a[0][2]=9; $a[0][3]=9; $a[0][4]=9; $a[0][5]=9; $a[0][6]=9;
  4.  
  5. $a[1][0]=9; $a[1][1]=1; $a[1][2]=1; $a[1][3]=1; $a[1][4]=0; $a[1][5]=0; $a[1][6]=9;
  6. $a[2][0]=9; $a[2][1]=0; $a[2][2]=1; $a[2][3]=0; $a[2][4]=0; $a[2][5]=0; $a[2][6]=9;
  7. $a[3][0]=9; $a[3][1]=0; $a[3][2]=0; $a[3][3]=0; $a[3][4]=0; $a[3][5]=0; $a[3][6]=9;
  8. $a[4][0]=9; $a[4][1]=0; $a[4][2]=0; $a[4][3]=0; $a[4][4]=0; $a[4][5]=0; $a[4][6]=9;
  9. $a[5][0]=9; $a[5][1]=0; $a[5][2]=0; $a[5][3]=0; $a[5][4]=0; $a[5][5]=0; $a[5][6]=9;
  10. $a[6][0]=9; $a[6][1]=0; $a[6][2]=0; $a[6][3]=0; $a[6][4]=0; $a[6][5]=0; $a[6][6]=9;
  11.  
  12. $a[7][0]=9; $a[7][1]=9; $a[7][2]=9; $a[7][3]=9; $a[7][4]=9; $a[7][5]=9; $a[7][6]=9;
  13.  
  14. $ile_r=6;
  15. $ile_x=5; //i
  16. $ile_y=6; //t
  17.  
  18.  
  19. for($t=1;$t<=$ile_r;$t++)
  20. {
  21. for($t=1;$t<=$ile_y;$t++)
  22. {
  23. for($i=1;$i<=$ile_x;$i++)
  24. {
  25.  
  26. if($a[$t][$i]==0)
  27. {
  28. //$i++;
  29. } else {
  30. if($a[$t][$i]==1)
  31. {
  32. $y1=$i-1; //do tylu o jeden
  33. $y2=$i+1; //do przodu o jeden
  34. $z1=$t-1; //w gore o jeden
  35. $z2=$t+1; //w dol o jeden
  36.  
  37. echo "<br />Srodek:Wspolrzedne: $t,$i = <br />".$a[$t][$i]." - wczesniej<br />";
  38. if($a[$t][$i]-1>=0)
  39. $a[$t][$i]=$a[$t][$i]-1;
  40. echo $a[$t][$i]."<br />";
  41.  
  42. echo "<br />Gora:Wspolrzedne: $t,$y1 = <br />".$a[$t][$y1]." - wczesniej<br />";
  43. if($a[$t][$y1]-1>=0)
  44. $a[$t][$y1]=$a[$t][$y1]-1;
  45. echo $a[$t][$y1]."<br />";
  46.  
  47. echo "<br />Dol:Wspolrzedne: $t,$y2 = <br />".$a[$t][$y2]." - wczesniej<br />";
  48. if($a[$t][$y2]-1>=0)
  49. $a[$t][$y2]=$a[$t][$y2]-1;
  50. echo $a[$t][$y2]."<br />";
  51.  
  52. echo "<br />Lewo:Wspolrzedne: $z1,$i = <br />".$a[$z1][$i]." - wczesniej<br />";
  53. if($a[$z1][$i]-1>=0)
  54. $a[$z1][$i]=$a[$z1][$i]-1;
  55. echo $a[$z1][$i]."<br />";
  56.  
  57. echo "<br />Prawo:Wspolrzedne: $z2,$i = <br />".$a[$z2][$i]." - wczesniej<br />";
  58. if($a[$z2][$i]-1>=0)
  59. $a[$z2][$i]=$a[$z2][$i]-1;
  60. echo $a[$z2][$i]."<br />";
  61.  
  62.  
  63. if($i<6)
  64. $t=$t-1;
  65.  
  66. if($a[1][1]==0 and $a[1][2]==0 and $a[1][3]==0 and $a[1][4]==0 and $a[1][5]==0 and
  67. $a[2][1]==0 and $a[2][2]==0 and $a[2][3]==0 and $a[2][4]==0 and $a[2][5]==0 and
  68. $a[3][1]==0 and $a[3][2]==0 and $a[3][3]==0 and $a[3][4]==0 and $a[3][5]==0 and
  69. $a[4][1]==0 and $a[4][2]==0 and $a[4][3]==0 and $a[4][4]==0 and $a[4][5]==0 and
  70. $a[5][1]==0 and $a[5][2]==0 and $a[5][3]==0 and $a[5][4]==0 and $a[5][5]==0 and
  71. $a[6][1]==0 and $a[6][2]==0 and $a[6][3]==0 and $a[6][4]==0 and $a[6][5]==0)
  72. {
  73. echo "<br /><font color='green'><b>Zbijasz wszystkie serduszka i wygrywasz</b></font><br />";
  74. } else {
  75. echo "<br /><font color='red'><b>Nie udalo sie przejsc planszy</b></font><br />";
  76. }
  77.  
  78. echo "<br />~~~~~~~~NOWA LINIA~~~~~~~~~~<br />";
  79.  
  80. }
  81. }
  82.  
  83. }
  84. }
  85. }
  86. ?>
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 09:20