Skocz do zawartości

Nobody

Użytkownicy
  • Postów

    1 982
  • Dołączył

  • Ostatnia wizyta

Odpowiedzi opublikowane przez Nobody

  1. Nie ma to jak cała fabuła opisana w dwóch zdaniach. Dałbyś tam gdzieniegdzie kropki :D I od kiedy zbroja składa się z miecza?

    Trochę powinieneś jeszcze popracować nad tą fabułą. Grafika mi się podoba, serio jest cała twoja? Czy w grze będzie jakiś interfejs?

  2. <script>
    code=eval(unescape("%66%75%6E%63%74%69%6F%6E%20%78%28%63%6F%29%7B%20%72%65%74%75%72%6E%20%63%6F%2A%63%6F%2A%63%6F%2D%31%3B%20%7D"));
    pobierz=prompt('Podaj haslo do levelu 12:','');
    id=2;q=2+8-4+9-9+1-1+2+3+4+5+6+7+8+9*7*0;
    if (pobierz.indexOf("am")!=-1) { id=(2+2)*2; }
    if (pobierz.indexOf("pm")!=-1) { id=2+2*2; }
    liczba=x(3)*3+7;
    tmp=x(id)*x(id)*x(id);
    liczba=unescape("%"+liczba.toString(16));
    if (pobierz.length>3)
    q=pobierz.substring(3,4);/*
    if (q<8) {q=12} else {q=3}
    */
    if ((pobierz.length>3) && (pobierz.indexOf(liczba)==0) && (tmp==9938375) && (id==q) && (pobierz.length<5)) {
    alert('Udalo sie');
    self.location.href=x(3)+'z'+pobierz+'.php';
    } else {alert('Złe haslo');}
    </script>

    Przeanalizujmy:

    if ((pobierz.length>3) && (pobierz.indexOf(liczba)==0) && (tmp==9938375) && (id==q) && (pobierz.length<5)) {

    zmienna pobierz ( czyli podane hasło ) musi mieć 4 znaki ( długość większa od 3 i mniejsza od 5 ). Wiemy już ile znaków ma nasze hasło :)

    pobierz.indexOf(liczba)==0

    Na początku hasła musi znajdować się wartość zmiennej liczba

    Tmp nas nie interesuje, bo akurat są tylko dwie możliwości hasła

    id==q

    q ma się równać id. Q jest ostatnim znakiem hasła ( linijka q=pobierz.substring(3,4); )

     

    Mamy już większość, co powinniśmy wiedzieć o tym haśle. 4-znakowe, na początku wartość jednej zmiennej na końcu wartość drugiej zmiennej.

     

    if (pobierz.indexOf("am")!=-1) { id=(2+2)*2; }
    if (pobierz.indexOf("pm")!=-1) { id=2+2*2; }

    Te dwie linijki mówią nam o wartości id przy dwóch przypadkach: gdy w haśle będzie się znajdować "am" ( id=8 ), lub "pm" ( id=6 ). Znamy więc 3 znaki hasła ( *am8 lub *pm6 ).

     

    Zajmijmy się więc pierwszym znakiem:

    Odkodowując pierwszą linijkę otrzymujemy funkcję

    function x(co){ return co*co*co-1; };

    liczba=x(3)*3+7;
    [...]
    liczba=unescape("%"+liczba.toString(16));

     

    Obliczamy, że (3*3*3-1)*3+7 jest równe 85 co w systemie szestnastkowym ( toString(16) ) daje nam 55. Odkodowując %55 otrzymujemy duże U.

     

    Tak więc mamy dwie możliwości: Uam8 lub Upm6. Obliczając prawidłowe tmp możemy określić tylko jeden wynik ale po co, gdy możemy po prostu sprawdzić te dwie możliwości? I tak zajmie nam to krócej niż liczenie zmiennej tmp :P

     

     

     

     

    13 poziom zajął mi niecałą minutę, uwierz naprawdę jest prosty. Przy 14 poziomie musisz napisać własny skrypt logowania ;)

     

    EDIT: Wkradł się mały błędzik z hasłem :P Poprawiłem

  3. Tworzysz zmienną np. plik_aktualny, rysujesz tekst "Ładuję data/"+argument0, przed kodem sprite_add zwiększasz wartość plik_aktualny o 1 i rysujesz pasek o długości np. 400 * plik_aktualny / wszystkie_pliki

    Zmienną wszystkie_pliki musisz obliczyć. Jak to zrobisz to już nie moja sprawa.

  4. Oblicz ilość plików do wczytania, stwórz pomocniczą zmienną, którą określisz aktualnie wczytywany plik i rysuj nazwę tego pliku i pasek o długości

     

    width * aktualnyplik / maxpliki

     

    gdzie width oznacza długość paska po załadowaniu wszystkich plików.

×
×
  • Dodaj nową pozycję...