Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -7,6 +7,7 @@ def load_aframe_and_extras():
|
|
| 7 |
return """
|
| 8 |
<script src="https://aframe.io/releases/1.2.0/aframe.min.js"></script>
|
| 9 |
<script src="https://unpkg.com/[email protected]/dist/aframe-event-set-component.min.js"></script>
|
|
|
|
| 10 |
<script>
|
| 11 |
let score = 0;
|
| 12 |
let selectedEntity = null;
|
|
@@ -66,51 +67,58 @@ def load_aframe_and_extras():
|
|
| 66 |
function moveCamera(view) {
|
| 67 |
var rig = document.querySelector('#rig');
|
| 68 |
var gw = 8, gh = 8;
|
| 69 |
-
var
|
| 70 |
var height = Math.max(gw, gh) * 1.5;
|
| 71 |
-
var distance = Math.max(gw, gh) * 1.
|
| 72 |
-
var pos
|
| 73 |
|
| 74 |
switch(view) {
|
| 75 |
case 'top':
|
| 76 |
-
pos = {x:
|
| 77 |
-
|
|
|
|
| 78 |
break;
|
| 79 |
case 'left':
|
| 80 |
-
pos = {x: -distance, y: height / 2, z:
|
| 81 |
-
|
|
|
|
| 82 |
break;
|
| 83 |
case 'right':
|
| 84 |
-
pos = {x: distance, y: height / 2, z:
|
| 85 |
-
|
|
|
|
| 86 |
break;
|
| 87 |
case 'front':
|
| 88 |
-
pos = {x:
|
| 89 |
-
|
|
|
|
| 90 |
break;
|
| 91 |
case 'back':
|
| 92 |
-
pos = {x:
|
| 93 |
-
|
|
|
|
| 94 |
break;
|
| 95 |
case 'angle1':
|
| 96 |
pos = {x: -distance * 0.7, y: height, z: -distance * 0.7};
|
| 97 |
-
|
|
|
|
| 98 |
break;
|
| 99 |
case 'angle2':
|
| 100 |
pos = {x: distance * 0.7, y: height, z: -distance * 0.7};
|
| 101 |
-
|
|
|
|
| 102 |
break;
|
| 103 |
case 'angle3':
|
| 104 |
pos = {x: -distance * 0.7, y: height, z: distance * 0.7};
|
| 105 |
-
|
|
|
|
| 106 |
break;
|
| 107 |
case 'angle4':
|
| 108 |
pos = {x: distance * 0.7, y: height, z: distance * 0.7};
|
| 109 |
-
|
|
|
|
| 110 |
break;
|
| 111 |
}
|
| 112 |
-
rig.setAttribute('position', pos);
|
| 113 |
-
rig.setAttribute('rotation', rot);
|
| 114 |
}
|
| 115 |
|
| 116 |
function fireRaycast() {
|
|
|
|
| 7 |
return """
|
| 8 |
<script src="https://aframe.io/releases/1.2.0/aframe.min.js"></script>
|
| 9 |
<script src="https://unpkg.com/[email protected]/dist/aframe-event-set-component.min.js"></script>
|
| 10 |
+
<script src="https://unpkg.com/[email protected]/dist/aframe-look-at-component.min.js"></script>
|
| 11 |
<script>
|
| 12 |
let score = 0;
|
| 13 |
let selectedEntity = null;
|
|
|
|
| 67 |
function moveCamera(view) {
|
| 68 |
var rig = document.querySelector('#rig');
|
| 69 |
var gw = 8, gh = 8;
|
| 70 |
+
var center = {x: 0, y: 0, z: 0};
|
| 71 |
var height = Math.max(gw, gh) * 1.5;
|
| 72 |
+
var distance = Math.max(gw, gh) * 1.5; // Increased distance to fit the entire tilemap
|
| 73 |
+
var pos;
|
| 74 |
|
| 75 |
switch(view) {
|
| 76 |
case 'top':
|
| 77 |
+
pos = {x: center.x, y: height, z: center.z};
|
| 78 |
+
rig.setAttribute('position', pos);
|
| 79 |
+
rig.setAttribute('rotation', {x: -90, y: 0, z: 0});
|
| 80 |
break;
|
| 81 |
case 'left':
|
| 82 |
+
pos = {x: -distance, y: height / 2, z: center.z};
|
| 83 |
+
rig.setAttribute('position', pos);
|
| 84 |
+
rig.setAttribute('look-at', center);
|
| 85 |
break;
|
| 86 |
case 'right':
|
| 87 |
+
pos = {x: distance, y: height / 2, z: center.z};
|
| 88 |
+
rig.setAttribute('position', pos);
|
| 89 |
+
rig.setAttribute('look-at', center);
|
| 90 |
break;
|
| 91 |
case 'front':
|
| 92 |
+
pos = {x: center.x, y: height / 2, z: -distance};
|
| 93 |
+
rig.setAttribute('position', pos);
|
| 94 |
+
rig.setAttribute('look-at', center);
|
| 95 |
break;
|
| 96 |
case 'back':
|
| 97 |
+
pos = {x: center.x, y: height / 2, z: distance};
|
| 98 |
+
rig.setAttribute('position', pos);
|
| 99 |
+
rig.setAttribute('look-at', center);
|
| 100 |
break;
|
| 101 |
case 'angle1':
|
| 102 |
pos = {x: -distance * 0.7, y: height, z: -distance * 0.7};
|
| 103 |
+
rig.setAttribute('position', pos);
|
| 104 |
+
rig.setAttribute('look-at', center);
|
| 105 |
break;
|
| 106 |
case 'angle2':
|
| 107 |
pos = {x: distance * 0.7, y: height, z: -distance * 0.7};
|
| 108 |
+
rig.setAttribute('position', pos);
|
| 109 |
+
rig.setAttribute('look-at', center);
|
| 110 |
break;
|
| 111 |
case 'angle3':
|
| 112 |
pos = {x: -distance * 0.7, y: height, z: distance * 0.7};
|
| 113 |
+
rig.setAttribute('position', pos);
|
| 114 |
+
rig.setAttribute('look-at', center);
|
| 115 |
break;
|
| 116 |
case 'angle4':
|
| 117 |
pos = {x: distance * 0.7, y: height, z: distance * 0.7};
|
| 118 |
+
rig.setAttribute('position', pos);
|
| 119 |
+
rig.setAttribute('look-at', center);
|
| 120 |
break;
|
| 121 |
}
|
|
|
|
|
|
|
| 122 |
}
|
| 123 |
|
| 124 |
function fireRaycast() {
|