7 04 2017
DevLog #05 – pomoc z Gibraltaru i v1 obsługi mobilek
W dzisiejszym DevLogu o konkretnym pull requeście od „programisty na emigracji” 😉 z Gibraltaru, wstępnej implementacji urządzeń mobilnych i trochę o następnych priorytetach w projekcie.
Nieoczekiwana pomoc z Gibraltaru
Po ostatnim DevLogu myślałem, by uporządkować w projekcie parę rzeczy związanych z ES6. Okazało się, że ktoś mnie w tej kwestii wyręczył.
Parę rzeczy się po tej zmianie popsuło, ale zaczęliśmy omawiać szczegóły na Skype i projekt został doprowadzony do stabilnego stanu. 😀
Commity z pull requestu. Refactor + późniejsze bugfixy.
Okazuje się, że pomocny użytkownik mieszka aktualnie w Gibraltarze. Jak widać można poznać ciekawych ludzi, gdy rozwija się jakiś projekt z otwartym kodem źródłowym.
Kod projektu wygląda już dużo ciekawiej od pierwotnego prototypu. W samym gameplayu prawie nic się nie zmieniło. Wprowadziłem drobną zmianę do jednego poziomu, ale o tym może w innym odcinku DevLogu, w którym pogadamy o samym GameDesignie.
Założyłem TAG dla aktualnego stanu projektu – głównie dla osób, które będą to czytać za parę miesięcy. 🙂
V1 obsługi urządzeń mobilnych
W starym prototypie trochę bawiłem się obsługą urządzeń mobilnych.
Przeniosłem ten ficzer, trochę go oczyściłem i wrzuciłem do projektu jako v1 obsługi urządzeń mobilnych.
Tak wygląda aktualnie obsługa sterowania na urządzeniach mobilnych.
Po kliknięciu w prosokąty zmieniamy falgi (np. jumpDown) i nasz playState to obsługuje:
// jump! if ( (gState.envObjects.cursors.up.isDown || mobileControlsHandler.isJumpDown()) && gState.player.body.touching.down){ game.add.tween( gState.player).to( { angle: 360 }, 600, Phaser.Easing.Linear.None, true); gState.emitters.juiceEmitters.spawnJumpEmitters(); game.sound.play('jump'); gState.player.body.velocity.y = -150; }
Możne to się pojawić komentarz odnośnie magic number typu: 360, 600, i -150, ale w tym kontekście jest to na tyle czytelne, że nie widzę na razie potrzeby wrzucania tego do stałych typu JUMP_VELOCITY etc.
Palcami zasłaniamy sobie aktualnie ekran podczas grania, ale jest to implementacja v1. Przejdziemy innym razem do tego, by dopracować obsługę z poziomu mobilek. 🙂 Na razie wiemy, że można to zrobić i wiemy jak to zrobić.
Gdybyście mieli ochotę sami wypróbować projekt na urządzeniu mobilnym. Tu macie link do wersji z powyższego gifa. Nie jest jeszcze zaimplementowane, by automatycznie skalowało ekran etc. Takie MVP. 😉 Fullscreen dla urządzeń mobilnych jest jeszcze na liście rzeczy do zrobienia.
Ostatnio wspominałem też o obsłudze zewnętrznego controllera, ale jeszcze się za to nie zdążyłem zabrać. Może w niedalekiej przyszłości to nadrobię.
Co teraz będzie priorytetem?
Z mojego pierwszego celu projektu powoli jestem zadowolony.
w końcu napisać coś w JavaScripcie (większego niż projekt na 2 wieczory) i podszkolić się w tym języku programowania.
Dowiedziałem się masę rzeczy związanych z js. 🙂 Nadal zostało dużo do opanowania, ale czas skupić się bardziej na samej zawartości gry.
Czas zabrać się za nowe mechaniki związane z gameplayem i sklecić parę sensownych nowych poziomów. W innym przypadku nie wyrobię się z eksperymentem monetyzacji projektu – chciałbym spróbować to zrobić przed zakończeniem konkursu #dajsiepoznac, czyli jakoś do końca maja.
Do następnego. Howgh!
Twórcy Niezależni – #04 – Projekty widzów kanału Programowanie, a zmiana branży – doświadczenia 25 osób
[…] ostatnim DevLogu zaimplementowałem pierwszą wersję dla urządzeń […]
[…] DevLog #05 – pomoc z Gibraltaru i v1 obsługi mobilek […]