Wszyscy wariują na punkcie usuwania tej głupiej gry „Flappy Bird”. Twoim zadaniem jest stworzenie gry Flappy Bird Clone. To jest naprawdę proste. Oto linie pomocnicze:
- Może używać zarówno sztuki ASCI, jak i prawdziwych obrazów
- Możesz wykonać klapkę „ptaka” za pomocą kliknięcia lub naciśnięcia klawisza
- Powinien starać się być jak najkrótszy, stąd tag -golf .
Oto przykład: http://www.reddit.com/r/learnprogramming/comments/1xiimx/i_couldnt_sleep_so_i_cloned_your_flappy_bird/
Aby zostać klonem ptaków Flappy, Twoja gra musi mieć następujące elementy:
- Ptak lub inna postać
- „Ptak” powinien się nieznacznie przesunąć w górę po naciśnięciu klawisza lub kliknięciu / dotknięciu
- Jeśli nie ma klikania / stukania / etc, „ptak” powinien szybko przejść w dół
- Rury lub inne przeszkody powinny przesuwać się w lewo na ekranie, tworząc iluzję, że ptak się porusza
- Rury powinny mieć małą szczelinę, przez którą będzie mógł latać ptak.
- Za każdym razem, gdy przejdziesz przez szczelinę między rurami, twój wynik wzrasta o 1.
- Jeśli uderzysz w rurę lub ziemię, gra się kończy, a twój wynik jest wyświetlany.
To tak naprawdę nie musi być „ptakiem” ani „fajką”, wszystko może być ascii. Oto bardzo minimalny przykład zasłoniętego ptaka:
/ ----- [4] ----- \ | || || | | || ¯¯ | | || O> | | ¯¯ __ | | __ || | | || || | \ ------------- /
Odpowiedzi:
JavaScript + jQuery (sztuka ASCII) -
571524491Otwórz Dev Tools (F12) i uruchom następujący kod na tej stronie (teraz, śmiało!), Aby uruchomić poniższe demo.
Znane drobne błędy:
Jeśli uzyskasz wynik dwucyfrowy, oznacza to bałagan w układzie
To nie jest łatwe!!! (ale oryginał też nie był)
Istnieje kompromis między wydajnością a golfem
Nie krępuj się skomentować z najlepszym wynikiem.
Jest to również mój pierwszy post Code Golf, więc sugestie dotyczące kompresji itp. Będą mile widziane
źródło
var
deklarację słowa kluczowego i zmiennej. Możesz również zastąpićArray(153)
przez[]
i prawdopodobnie możesz zastąpić~~(Math.random()*5)+1
przez1+new Date%5
Known_minor_bugs += "irritating, unwanted and distracting text selections when double clicking";
JavaScript + jQuery (997)
Testowane na Chrome 32, Firefox 27, IE9
Otwórz konsolę (F12) z tej strony i skopiuj / wklej następujący kod.
Wersja nieposortowana i skomentowana:
Możesz łatwo zmodyfikować konfigurację (grawitacja, prędkość rury ...), przejrzyj skomentowaną wersję.
źródło
Floppy Dragon, JavaScript, 1024b
Robię tę grę dla obecnego js1k compo ( http://js1k.com )
Graj: http://js1k.com/2014-dragons/demo/1704
Wszelkie informacje zwrotne i nowe pomysły są mile widziane!
źródło
Cel C - nie golfowy
Prawdopodobnie najgorszy kod, jaki kiedykolwiek napisałem.
Możesz pobrać plik binarny tutaj: AsciiBird Pobierz plik binarny
Naciśnij gorączkowo klawisz kontrolny, aby utrzymać ptaka w powietrzu!
Zostało to skompilowane przez Xcode i uruchomione w Terminalu. Ma kolory! Protip: zmień rozmiar okna terminala, aby nie było zaległości w odświeżaniu ekranu.
main.m:
ABManager.h
ABManager.m
źródło
Animacja kolorów i fizyka; Czysty JavaScript, 457 (335) bajtów
To jest mój pierwszy post na tym forum; Zrobiłem ten kod i retrospektywnie znalazłem ten wątek, aby go opublikować.
Oto kod zamknięty w HTML, gotowy do skopiowania / wklejenia do pliku HTML:
Ma pikselowe kolizje, dokładną fizykę kwadratową i płynne animacje kolorów, a wszystko to w 457 bajtach czysto niezależnego kodu JavaScript offline, pokazanego tutaj nieogolonego bardziej szczegółowo i objaśnienia:
Dla zabawy, oto wersja 1066 bajtów z bardziej wyszukaną grafiką:
Czy oszukuje też użycie systemu kompresji, takiego jak DEFLATE?
Poniżej znajduje się kod ASCII85 dla DEFLATEd wersji kodu:
Nawiasem mówiąc, skompresowany jest łącznie 335 bajtów.
Gapon95_Wi'Kf'c (i ## 6'h, + cM \ JZeFO <h; $ W '# A1', RqNigBH02C '# R $ m] <i <X # 6GR`2pE <Ri5mu-n% cVPrsJe: * R ^ pnr9bI @ [DAZnPP02A ^!. $ MN / @ `U7l5gm !! Vr4> A; P? U [Pk8] jCnOP% duu?` FWql> "tuO4 / KbIWgK; 7 / iJN'f2, hnFg8e. ^ SO * * t \ * `, 3JBn6j (f`O #], M0; 5Sa35Zc @ * XaBs @ N%] k \ M76qa [.ie7n (^ * Z5G-lfhUZ3F # '%, X17Pj1u] L) LjpO6XbIl% N3tJhTsab8o1? mT; 90VMmnfBNKEY (^ 'UV4c? SW': X (! 4, * WCY + f; 19eQ? `FK0I" (uDe: f & XV & ^ Rc + 'SWRIbd8Lj9bG.l (MRUc1G8HoUsn # H \ V (8 "Y $ / TT) ^ kATb (OreGfWH7uIf
źródło
C,
386351347341 bajtów (Windows, MinGW), 332 z emulatorem terminalaZ pewnością nie jest to najładniejszy wpis, ale oddaje on podstawową mechanikę flappy ptaka: ptak przyspiesza w dół, naciśnięcie klawisza powoduje, że podskakuje, dotykając rur lub krawędzi ekranu kończy grę, wynikiem jest liczba wyczyszczonych rur.
Można go skrócić do 333 bajtów, jeśli używany jest emulator terminala POSIX (jak Cmder):
źródło