|
|
|
|
Aktualizacja wraz ze zmniejszonym rozmiarem |
|
|
|
|
|
autor: Fanotherpg
PCT?
Plik:
Dlaczego aż 3 rozszerzenia zamiast 1 NOBU http? Jak
wspomniałem w tytule jest to aktualizacja wraz z zmniejszonym rozmiarem plików,
który uzyskujemy w bardzo prosty sposób pakując nasz plik do formatu *.zip!!! Jest to wręcz banalne a zarazem genialne bo przy niektórych rodzajach plików
zmniejsza się ich pojemność kilkukrotnie (!!) co wpływa na szybkość ich ściągnięcia
a zarazem wygodę użytkowania. A plik Start.zip posłuży w tym przykładzie
jako aplikacja do której jest aktualizacja.
Najpierw wgrajmy na swój serwer plik o nazwie new.txt a w
nim jedynie cyferkę 2 oraz plik new.zip w którym będzie nasza aktualizacja
oraz w katalogu gdzie zapiszemy nasz projekt pik act.txt z jedną cyferką
1.
Stwórzmy nowy projekt w TGF'ie i w pierwszym poziomie
dajmy rozszerzenia Nobu HTTP oraz 2 edit box'y, text z treścią 'Jest nowa
wersja. Czy chcesz ją teraz pobrać? Wciśnij T jeśli się zgadzasz, wciśnij
N jeśli nie chcesz aktualizować'. Edit box'y i obiekt NOBU http umieśćmy
poza ekranem gry.
Przejdźmy do zdarzeń:
Stwórzmy 2 grupy com oraz act
1. Start of level -> Special Conditions Deactive group
"com" ; Deactive group "act" ; Jest nowa wersja.. Erase text
Na początku deaktywujemy 2 grupy, do których zaraz
przejdziemy.
2. Timer equals 00''-50 -> NOBU http DownBuf = 1024x1; URL "http://fabrykagier.phpnet.us/kursy/22/new.txt => "new.txt"
Kiedy czas wynosi pół sekundy ustal bufor ściągania na
1024x1 i podajemy link do pliku oraz nazwę pod jaką ma być zapisany. Dlaczego
pół sekundy a nie na początku poziomu? Czasami podczas Start of level gra się
wiesza albo wyświetla pusty poziom więc jest to pewne zabezpieczenie...
3. Only one action when event loops NOBU http: Download
Complate -> Special conditions Active group "com" ; Edit Box Load
file "new.txt" ; Edit Box 2 Load file "act.txt"
Teraz następuje aktywacja grupy która dokona sprawdzenia
czy jest nowa wersja naszego dzieła oraz wczytanie nr wersji z plików
tekstowych new.txt (nowa wersja) i act.txt (aktualna wersja).
4. Group com
Tutaj w grupie com mamy do czynienia z porównywaniem
wartości w zdarzeniu 5. sprawdzamy czy wartość pobrana z Internetu z pliku new.txt jest większa od wartości w pliku act.txt jeśli tak to przechodzimy do
następnej grupy. Za to w zdarzeniu 6. mamy do czynienia z przypadkiem gdy wartość
z pliku new.txt jest równa bądź mniejsza od wartości z pliku act.txt wtedy
zamykamy aktualizację i uruchamiamy prawidłową aplikację.
8. Group act
Teraz tworzymy drugi poziom a w nim dajemy rozszerzenia
NOBU http, Unzip Object oraz File object a także licznik. Przejdźmy do kodu:
1. Timer equals 00''-50 -> NOBU http DownBuf = 1024x1 ;
URL "http://fabrykagier.phpnet.us/kursy/22/new.zip => "new.zip"
Kiedy czas wynosi pół sekundy ustal bufor ściągania na
1024x1 i podajemy link do pliku oraz nazwę pod jaką ma być zapisany.
Rozpakowywujemy pliki do katalogu w którym znajduje się
aktualizacja (powinna ona się znajdować w katalogu z naszą pracą)
Licznik ile procent zostało ściągniętych..
Jeśli wszystko poszło jak trzeba zamknij aktualizację,
uruchom właściwy program, usuń stary numer wersji, zmień nowy numer na
aktualny (nazwa pliku txt) oraz usuń ściagnięty plik zip.
|
|
|
by pepe9donkey |
|