Конфликт с mootools-core.js -- Joomla 3
08 сентября 2015 17:35
При подключении библиотеки mootools-core.js, прекращается работа b4w с сообщением:
uncaught exception: Wrong camera type: undefined
При отключении – все работает.
строка в b4w.full.min.js: 499
Например тут http://мир-и-любовь.рф/
Земля анимированная и крутится, если отключить mootools-core.js
uncaught exception: Wrong camera type: undefined
При отключении – все работает.
строка в b4w.full.min.js: 499
Например тут http://мир-и-любовь.рф/
Земля анимированная и крутится, если отключить mootools-core.js
08 сентября 2015 18:46
08 сентября 2015 19:12
Вот две ссылки, файлы упрощены в ноль, чистый html, один с загрузкой mootools-core.js, другой – без.
http://мир-и-любовь.рф/templates/protostar/zemlya/shapka_a.html – подключен mootools-core.js
http://мир-и-любовь.рф/templates/protostar/zemlya/shapka_b.html – не подключен, и b4w пашет.
Все беда в том, что Joomla интенсивно юзает эту библиотеку, так бы вырубил и забыл , хоть CMS меняй…
http://мир-и-любовь.рф/templates/protostar/zemlya/shapka_a.html – подключен mootools-core.js
http://мир-и-любовь.рф/templates/protostar/zemlya/shapka_b.html – не подключен, и b4w пашет.
Все беда в том, что Joomla интенсивно юзает эту библиотеку, так бы вырубил и забыл , хоть CMS меняй…
08 сентября 2015 20:00
09 сентября 2015 11:36
Да, бага воспроизвелась у нас. Фикс будет доступен в конце месяца в релизе, или можете сами его применить и скомпилировать движок.
diff --git a/src/camera.js b/src/camera.js
index e5cafb3..4b861ea 100644
— a/src/camera.js
+++ b/src/camera.js
@@ -1036,7 +1036,9 @@ function update_ortho_scale(obj) {
if (!m_obj_util.is_camera(obj))
return;
- if (render.cameras[0].type === exports.TYPE_ORTHO) {
+ var cams = render.cameras;
+
+ if (cams[0].type === exports.TYPE_ORTHO) {
if (render.move_style === exports.MS_TARGET_CONTROLS) {
var dir_dist = m_vec3.dist(render.trans, render.pivot);
var new_scale = dir_dist / render.init_dist *
@@ -1047,10 +1049,10 @@ function update_ortho_scale(obj) {
var new_scale = dir_dist / render.init_dist *
render.init_top;
} else
- var new_scale = obj.render.cameras[0].top;
+ var new_scale = cams[0].top;
- for (var i in obj.render.cameras) {
- var cam = obj.render.cameras[i];
+ for (var i = 0; i < cams.length; i++) {
+ var cam = cams[i];
cam.top = new_scale;
set_projection(cam, cam.aspect);
}
25 октября 2015 23:28