JavaDevMatt.pl – Mateusz Kupilas

Programista, przedsiębiorca, gamedev, bloger.

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!


2 thoughts on “DevLog #05 – pomoc z Gibraltaru i v1 obsługi mobilek

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *