Cocos2D-js : Поставете камерата в центъра на картата

Използвам изометрична карта с плочки в игра. И не знам как да центрирам камерата в центъра на картата. Има ли някаква функция или урок за това, който съм пропуснал? Всякакви насоки ще бъдат оценени. Благодаря ти.


person Yang Jim    schedule 30.12.2014    source източник


Отговори (1)


Няма такава функция, но можете да използвате функцията setPosition(x, y) на вашата карта (основният й клас е CCNode), за да я поставите на правилното място и да направите "камерата" в центъра на картата.

Например, ако размерът на вашата карта е (w1, h1), а размерът на прозореца (cc.director.getWinSize()) е равен на (w2, h2). Да приемем, че w1 >= w2 и h1 >= h2. Да приемем, че опорната точка на картата е cc.p(0,0). Така че можем да поставим картата в центъра с

map.setPosition(-(w1 - w2)/2, -(h1 - h2)/2)

За да поддържате картата непрекъснато в центъра, можете да поставите този код във функцията update() на вашата игра.

person swen    schedule 26.10.2015