Mirasy, już tracę wiarę w połączenie tego jsa, żeby śmigało na Chromie. Canvas za każdym razem ładnie działa na FF, ale na Chromie w 1/3 przypadków nie rysuje. Any ideas?

function preloadimagetocanvas(){
..var canvas = document.getElementById("canvas");
..var context = canvas.getContext("2d");
..var background = document.getElementById("background
picture");

..canvas.width = background.width;
..canvas.height = background.height;

//rysowanie
..drawbackground(context, background, function(){
.... canvas.style.display = 'block';
.... canvas.style.position = 'inherit';
.... background.style.display = 'none';
..});
@marcinzwwa: masz tylko 2 funkcje, więc skrypt spokojnie może sobie siedzieć w head
funkcja jest odpalana na onlodzie obrazka, więc nie powinno być tu żadnego problemu
Mam problem, którego nie potrafię rozwiązać(pewnie z nieznajomości dostępnych narzędzi). Uczę się js pod zrobienie jakieś fajnej gierki. W moich wyobrażeniach była to jak na razie plansza widziana od góry podzielona na x*y pól. Na każde pole dało się wejść swoją postacią, tak jak bywa to w internetowych rpgach. Chciałem poddać animacji najeżdżane myszką pola, a dokładnie lekko powiększyć. Pola są ułożone obok siebie bez żadnych przerw.

Stworzyłem sobie więc canvas, stworzyłem
@JustMMan: Jasne jakbyś miał jeszcze jakieś pytania to daj znać. Zwróc tylko uwage na odmienność filozofii:

logika twojej gry powinna siedzieć zawsze w kodzie. to co jest na canvasie to jest tylko taki jakby hologram tego co masz zapisane w Twoich tablicach z danymi, rolą canvasa jest tylko formatowanie danych z tych tablic na efekt czytelny dla użytkownika :)

a wszelkie manipulacje stanem gry dokonujesz poprzez zmienianie właściwości tych obiektów, canvas
#programowanie #javascript #canvas
Cześć! Mam problem, otóż kończę sobie animację korzystając z prostego easeouta
http://wklej.org/id/1653034/
W skrócie to zwraca wartość od 0-1, a argumentem jest procent ukończenia animacji (gdzie 1=100%)
I wszystko działa znakomicie, ale muszę sprawić żeby animacja zakończyła się w odpowiednim miejscu.
Mam do dyspozycji funkcję getDistance(), która zwraca ilość pixeli jaka dzieli element do miejsca w którym powinien się zatrzymać. Jak to zrobić najprościej?
@sokytsinolop: inaczej: na starcie animowania zapamiętujesz pozycję aktualną obiektu i jego dystans do celu, następnie w stepie animacji wykonujesz kalkulacje: var percent = distanceFromTo(xStart, yStart, xStop, yStop) / storedDistanceFromStartToStop; (gdzie storedDistanceFromStartToStop to zapisana na starcie animacji odległość) i używasz wać tego percent do czego dusza zapragnie :3
dopiero dzis odkrylem, ze flash cc daje mozliwosc zabawy w canvasie
w sumie dziala to calkiem fajnie - http://projects.atdev.is/mjkl/flash-canvas-test/ - i jako, ze sporo rzeczy robilem we flashu zastanawiam sie czy warto zglebiac temat dalej
pytanie do doswiadczonych - da sie jakos zakombinowac zeby zmusic plotno do % rozmiaru, zeby bylo responsywne & skalowalo sie bez pikselozy? flash niestety nie daje mozliwosci ustawienia rozmiarow sceny w %, jedynie sztywne wartosci. czy da
m.....l - dopiero dzis odkrylem, ze flash cc daje mozliwosc zabawy w canvasie
w sumi...

źródło: comment_kciRSPkBnI4eEnQpR7blZFqSlcV7g1Cy.jpg

Pobierz
@mjkl: ja tam się nie znam, ale widziałem mnóstwo opcji wspierających canvas i svg w nowym inkscape :) Tak tylko, jakby się komuś przydała taka informacja :)
@Daredzik: Tak na szybko to twój kod w onload nie wykonuje się. JSFiddle sam pakuje kod w onload (masz po lewej na górze ustawienia).

Update1: Jak to naprawisz, to pytanie.. Dlaczego poruszasz boxem mnożąc współrzędne przez deltę?
Update2: Canvas jest przeskalowany.
Hej, mógłby ktoś zobaczeć co tu jest nie tak? ;/ Ogólnie działa to tak:
Jeżeli ludzik jest na dole status=1, na górze status=2, w "trakcie lotu" status=0
Event przechwytujący naciśnięte klawisze (bo porusza się nim strzałkami góra/dół) działa tylko wtedy gdy status != 0
Jednak mimo wszystko, gdy podczas lotu naciśniesz obie strzałki na raz albo lecąc w górę pod koniec przytrzymasz strzałkę w dół to CZASAMI (dlatego ciężko mi zlokalizować co