TypeScript – pierwsze kroki. Moduły w TypeScript. Część pierwsza.

W ostatnim wpisie przedstawiłem temat przestrzeni nazw w TypeScript. Jednak prawda jest jednak taka, że przestrzenie nazw używane są rzadko. Dużo częściej korzysta się z mechanizmu modułów.

W dzisiejszym poście pokaże jak stawiać pierwsze kroki właśnie w świecie modułów TypeScript. Zapraszam do lektury.

Moduły w typescript Czytaj dalej TypeScript – pierwsze kroki. Moduły w TypeScript. Część pierwsza.

Sails.js – natychmiastowy back-end dla twojej aplikacji webowej.

Niedawno w pracy, po raz pierwszy spotkałem się z narzędziem Sails.js. Jest to framework bardzo wysokiego poziomu, który ma w prosty i bardzo szybki szybki sposób zbuduje cały backend dla aplikacji webowej.

Postanowiłem na własną rękę sprawdzić jak działa sails i czy przypadkiem nie powinien znaleźć się w zestawie używanych przeze mnie narzędzi. Wrażenia opiszę w serii postów poświęconych tematowi.

Sails js wstęp Czytaj dalej Sails.js – natychmiastowy back-end dla twojej aplikacji webowej.

Vue.js – wprowadzenie. Dyrektywy warunkowe

Vue.js posiada wiele ciekawych mechanizmów, niektóre bardziej rozbudowane, inne dość proste. Dziś zajmę się reprezentami z tych drugich. Pomimo swej prostoty mechanizmy te są jednak bardzo przydatne. Czasem wystarczą w zupełności aby stworzyć prostą aplikację webową.

Mowa tu o dyrektywach warunkowych. Są one wbudowane w logikę Vue i trzeba wiedzieć jak z nich korzystać. Wiem, że pokazywałem już niektóre z nich w przykładowym kodzie, przy okazji tworzenia mojej aplikacji Vue. Jest to jednak temat, który warto mieć uporządkowany. Stąd dzisiejszy post.

Vue js dyrektywy warunkowe Czytaj dalej Vue.js – wprowadzenie. Dyrektywy warunkowe

Tworzenie gier w JavaScript – Zaawansowany Game Loop

Prawie rok temu wrzuciłem tu posta o tworzeniu game loop’ów w grach JSowych. Bardzo dużo zmieniło się od tego czasu. Przede wszystkim nabrałem doświadczenia i nauczyłem się tego i owego. Innymi słowy, nie jestem już aż takim noobem jak kiedyś 🙂 .

Właśnie dlatego dziś wracam do tematu. Teraz, kiedy stworzyłem już kilka prostych gier, mogę powiedzieć co nieco w temacie 🙂 . W tym poście przedstawię bardziej zaawansowaną implementację pętli gry. Przyda się ona nie tylko w grach ale i we wszelkich animacjach i symulacjach.

Tworzenie gier w Javascript Game Loop Czytaj dalej Tworzenie gier w JavaScript – Zaawansowany Game Loop

GCM – Październik: Necropolis – Phaser + TypeScript. Kontrolowanie czasu.

Czas na aktualizację mojej październikowego projektu. Tym razem bohater gry otrzymał dużą moc, która pozwoli mu uniknąć wielu tarapatów. Dzięki magicznemu amuletowi jest on w stanie spowolnić czas. Wystarczy, że gracz naciśnie spacje 🙂 Ponowne naciśnięcie spacji spowoduje, że czas wróci do normalnego biegu.

Dzięki możliwości kontrolowania czasu, gracz otrzyma możliwość unikania przeciwników i bezpiecznego przejścia pomiędzy pułapkami. Oczywiście korzystanie z mocy będzie w przyszłości ograniczone, ale póki co skupiłem się na dodanie podstaw mechanizmu.

tworzenie gier typescript Czytaj dalej GCM – Październik: Necropolis – Phaser + TypeScript. Kontrolowanie czasu.

TypeScript – pierwsze kroki. Przestrzenie nazw w TypeScript.

Gdy pisałem moją wrześniową grę co miesiąc, nie znałem jeszcze dobrego sposobu na modularyzację kodu w TypeScript. Gra nie była specjalnie duża ale i tak brak modułów spowodował, że kod był cięższy do czytania i utrzymania.

Dziś przedstawię rozwiązanie tego problemu. Będą to podstawowych technik wykorzystania TSowych modułów. Na początek opiszę idealnie nadające się do dzielenia kodu na utrzymywalne i czytelne fragmenty – przestrzenie nazw czyli znane wszystkim użytkownikom Javy, C++ czy C#, namespace`y.

Przestrzenie nazw w TypeScript Czytaj dalej TypeScript – pierwsze kroki. Przestrzenie nazw w TypeScript.

GCM – Październik: Necropolis – Phaser + TypeScript. Pierwszy prototyp.

W ostatnim poście przedstawiłem podstawowy setup mojej październikowej gry. Tym razem gracz wcieli się w rolę brawurowego awanturnika, który w poszukiwaniu potęgi i chwały zapuścił się w odmęty przeklętych podziemi leżących na granicy świata żywych i umarłych. Niestety miejsce to okazało się niebezpieczną pułapką. Jeżeli nie uda mu się uciec na czas, zostanie w nim uwięziony na zawsze 🙂 .

Całkiem nieźle znam już Phasera, jednak ponieważ używam TypeScriptu zamiast zwykłego JSa, pewne konstrukcje w grze będą wyglądać trochę inaczej. Na szczęście różnic jest niewiele, i są one raczej na plus. W dzisiejszym poście przedstawię implementację podstawowych elementów gry w nowym środowisku, dzięki temu przejście na TSa powinno być bezbolesne.

Jak programowac Phaser TypeScript Czytaj dalej GCM – Październik: Necropolis – Phaser + TypeScript. Pierwszy prototyp.

Podstawowe przekształcenia w elemencie Canvas

Element canvas nadaje się świetnie do tworzenia gier (oraz różnego rodzaju animacji) w środowisku przeglądarki. Nie jest bez wad ale zdecydowanie to najlepszy wybór z dostępnych opcji. API obsługujące canvas jest bardzo proste w użyciu, wystarczy wyznaczyć współrzędne x oraz y obiektu i wyrysować go stosując odpowiednie metody. Takie podejście jest idealne, jednak nie kompletne.

Manipulując tylko tymi współrzędnymi szybko natrafimy na pewne ograniczenia. Na przykład gdy chcemy obrócić element lub go przeskalować. Obliczanie nowych współrzędnych i wielkości może stać się bardzo mozolne. Na szczęście mamy przekształcenia.

JavaScript Noob Canvas Przeksztalcenia Czytaj dalej Podstawowe przekształcenia w elemencie Canvas

TypeScript – pierwsze kroki. Ograniczanie typów generycznych.

W ostatnich dwóch postach z serii, przedstawiłem działanie typów generycznych w TypeScript. Zagadnienie to powinno być już w miarę jasne a korzyści płynące z korzystania z generyków oczywiste dla każdego.

Jednak jeżeliby się nad tym chwilę zastanowić, szybko dojdziemy do wniosku, że pozwalanie metodom lub klasom na korzystanie z dowolnych rodzajów typów może czasem sprawiać problemy. Dobrze byłoby czasem dopuszczać tylko niektóre typy, a inne nie. Dziś przedstawię rozwiązanie dla tego problemu

Podstawy programowania typescript Czytaj dalej TypeScript – pierwsze kroki. Ograniczanie typów generycznych.

GCM – Wrzesień: Gra w TypeScript. Skończona Gra.

Dziś przedstawiam ostateczną wersję mojej pierwszej napisanej w TypeScripcie gry. Szczerze mówiąc ani nie jest to moja najlepsza gra, ani nie jest to wybitny program TypeScriptowy. No ale tak zazwyczaj wyglądają początki, nic na to nie poradzę 🙂 .

Kolejne programy będą na pewno coraz lepsze. Póki co jestem zadowolony, że udało mi się napisać działającą grę bez pomocy żadnych frameworków, nawet jeżeli z założenia jest bardzo prosta.

TypeScript Komplena Gra Czytaj dalej GCM – Wrzesień: Gra w TypeScript. Skończona Gra.