diff --git a/assets/models/mine.obj b/assets/models/mine.obj new file mode 100644 index 0000000..210839d --- /dev/null +++ b/assets/models/mine.obj @@ -0,0 +1,436 @@ +# Blender v2.79 (sub 0) OBJ File: 'mine.blend' +# www.blender.org +o mine +v -0.000000 -0.139385 -0.000000 +v 0.100859 -0.062335 0.073278 +v -0.038524 -0.062335 0.118567 +v -0.124670 -0.062335 -0.000000 +v -0.038524 -0.062335 -0.118567 +v 0.100859 -0.062335 -0.073278 +v 0.038524 0.062335 0.118567 +v -0.100859 0.062335 0.073278 +v -0.100859 0.062335 -0.073278 +v 0.038524 0.062335 -0.118567 +v 0.124670 0.062335 -0.000000 +v -0.000000 0.139385 -0.000000 +v 0.038489 0.094786 -0.027963 +v 0.034787 0.088796 -0.046399 +v 0.047474 0.076815 -0.055617 +v 0.063863 0.070825 -0.046399 +v 0.080370 0.130042 -0.058392 +v 0.067565 0.076815 -0.027964 +v 0.054878 0.088796 -0.018746 +v -0.014702 0.094786 -0.045246 +v -0.033379 0.088796 -0.047422 +v -0.038225 0.076815 -0.062336 +v -0.024394 0.070825 -0.075075 +v -0.030699 0.130042 -0.094480 +v -0.005716 0.076815 -0.072899 +v -0.000870 0.088796 -0.057985 +v -0.047575 0.094786 -0.000000 +v -0.055416 0.088796 0.017091 +v -0.071098 0.076815 0.017091 +v -0.078939 0.070825 -0.000000 +v -0.099343 0.130042 -0.000000 +v -0.071098 0.076815 -0.017091 +v -0.055416 0.088796 -0.017091 +v -0.014702 0.094786 0.045246 +v -0.000870 0.088796 0.057985 +v -0.005716 0.076815 0.072899 +v -0.024394 0.070825 0.075075 +v -0.030699 0.130042 0.094480 +v -0.038225 0.076815 0.062336 +v -0.033379 0.088796 0.047422 +v 0.038489 0.094786 0.027963 +v 0.054878 0.088796 0.018746 +v 0.067565 0.076815 0.027964 +v 0.063863 0.070825 0.046399 +v 0.080370 0.130042 0.058392 +v 0.047474 0.076815 0.055617 +v 0.034787 0.088796 0.046399 +v 0.091353 0.029240 -0.045246 +v 0.079810 0.038932 -0.057984 +v 0.071261 0.029240 -0.072899 +v 0.074256 0.009856 -0.075075 +v 0.130041 0.030698 -0.094480 +v 0.085799 0.000163 -0.062336 +v 0.094348 0.009856 -0.047422 +v -0.014802 0.029240 -0.100863 +v -0.030484 0.038932 -0.093821 +v -0.047311 0.029240 -0.090300 +v -0.048455 0.009856 -0.093821 +v -0.049671 0.030699 -0.152872 +v -0.032772 0.000163 -0.100863 +v -0.015946 0.009856 -0.104384 +v -0.100501 0.029240 -0.017091 +v -0.098650 0.038932 -0.000000 +v -0.100501 0.029240 0.017091 +v -0.104203 0.009856 0.017091 +v -0.160740 0.030699 -0.000000 +v -0.106054 0.000163 0.000000 +v -0.104203 0.009855 -0.017091 +v -0.047311 0.029240 0.090300 +v -0.030485 0.038932 0.093821 +v -0.014802 0.029240 0.100863 +v -0.015946 0.009856 0.104384 +v -0.049671 0.030699 0.152872 +v -0.032772 0.000163 0.100863 +v -0.048455 0.009855 0.093821 +v 0.071261 0.029240 0.072899 +v 0.079809 0.038932 0.057985 +v 0.091353 0.029240 0.045246 +v 0.094348 0.009856 0.047422 +v 0.130041 0.030698 0.094480 +v 0.085800 0.000163 0.062336 +v 0.074256 0.009855 0.075075 +v 0.032772 -0.000163 -0.100863 +v 0.015946 -0.009856 -0.104384 +v 0.014802 -0.029240 -0.100863 +v 0.030484 -0.038932 -0.093821 +v 0.049672 -0.030699 -0.152872 +v 0.047311 -0.029240 -0.090300 +v 0.048455 -0.009856 -0.093821 +v -0.085799 -0.000163 -0.062336 +v -0.094348 -0.009856 -0.047422 +v -0.091353 -0.029240 -0.045246 +v -0.079810 -0.038932 -0.057984 +v -0.130041 -0.030698 -0.094480 +v -0.071261 -0.029240 -0.072899 +v -0.074256 -0.009856 -0.075075 +v -0.085799 -0.000163 0.062336 +v -0.074256 -0.009856 0.075075 +v -0.071261 -0.029240 0.072899 +v -0.079810 -0.038932 0.057984 +v -0.130041 -0.030698 0.094480 +v -0.091353 -0.029240 0.045246 +v -0.094348 -0.009856 0.047422 +v 0.032772 -0.000163 0.100863 +v 0.048455 -0.009856 0.093821 +v 0.047311 -0.029240 0.090300 +v 0.030484 -0.038932 0.093821 +v 0.049671 -0.030699 0.152872 +v 0.014802 -0.029240 0.100863 +v 0.015946 -0.009856 0.104384 +v 0.106054 -0.000163 -0.000000 +v 0.104203 -0.009856 -0.017091 +v 0.100501 -0.029240 -0.017091 +v 0.098650 -0.038932 -0.000000 +v 0.160740 -0.030699 -0.000000 +v 0.100501 -0.029240 0.017091 +v 0.104203 -0.009856 0.017091 +v 0.038225 -0.076815 -0.062336 +v 0.024394 -0.070825 -0.075075 +v 0.005716 -0.076815 -0.072899 +v 0.000870 -0.088796 -0.057985 +v 0.030699 -0.130042 -0.094480 +v 0.014702 -0.094786 -0.045246 +v 0.033379 -0.088796 -0.047422 +v -0.047474 -0.076815 -0.055617 +v -0.063863 -0.070825 -0.046399 +v -0.067565 -0.076815 -0.027964 +v -0.054878 -0.088796 -0.018746 +v -0.080370 -0.130042 -0.058392 +v -0.038489 -0.094786 -0.027964 +v -0.034787 -0.088796 -0.046399 +v -0.067565 -0.076815 0.027964 +v -0.063863 -0.070825 0.046399 +v -0.047474 -0.076815 0.055617 +v -0.034787 -0.088796 0.046399 +v -0.080370 -0.130042 0.058392 +v -0.038489 -0.094786 0.027963 +v -0.054878 -0.088796 0.018746 +v 0.071098 -0.076815 -0.017091 +v 0.055416 -0.088796 -0.017091 +v 0.047575 -0.094786 0.000000 +v 0.055416 -0.088796 0.017091 +v 0.099343 -0.130042 -0.000000 +v 0.071098 -0.076815 0.017091 +v 0.078939 -0.070825 -0.000000 +v 0.005716 -0.076815 0.072899 +v 0.024394 -0.070825 0.075075 +v 0.038225 -0.076815 0.062336 +v 0.033379 -0.088796 0.047422 +v 0.030699 -0.130042 0.094480 +v 0.014702 -0.094786 0.045246 +v 0.000870 -0.088796 0.057985 +vn 0.1876 -0.7947 0.5774 +vn 0.6071 -0.7947 0.0000 +vn -0.4911 -0.7947 0.3568 +vn -0.4911 -0.7947 -0.3568 +vn 0.1876 -0.7947 -0.5774 +vn 0.9822 -0.1876 0.0000 +vn 0.3035 -0.1876 0.9342 +vn -0.7946 -0.1876 0.5774 +vn -0.7946 -0.1876 -0.5774 +vn 0.3035 -0.1876 -0.9342 +vn 0.7946 0.1876 0.5774 +vn -0.3035 0.1876 0.9342 +vn -0.9822 0.1876 0.0000 +vn -0.3035 0.1876 -0.9342 +vn 0.7946 0.1876 -0.5774 +vn 0.4911 0.7947 0.3568 +vn -0.1876 0.7947 0.5774 +vn -0.6071 0.7947 0.0000 +vn -0.1876 0.7947 -0.5774 +vn 0.4911 0.7947 -0.3568 +vn -0.6818 0.7248 -0.0986 +vn -0.4292 0.2196 -0.8761 +vn 0.3883 -0.2857 -0.8761 +vn 0.9532 -0.2857 -0.0986 +vn 0.7006 0.2196 0.6789 +vn -0.1169 0.7248 0.6789 +vn -0.3045 0.7248 0.6180 +vn -0.9659 0.2196 0.1375 +vn -0.7132 -0.2857 -0.6401 +vn 0.2008 -0.2857 -0.9371 +vn 0.8622 0.2196 -0.4565 +vn 0.6096 0.7248 0.3210 +vn 0.4936 0.7248 0.4805 +vn -0.1677 0.2196 0.9611 +vn -0.8291 -0.2857 0.4805 +vn -0.8291 -0.2857 -0.4805 +vn -0.1677 0.2196 -0.9611 +vn 0.4936 0.7248 -0.4805 +vn 0.6096 0.7248 -0.3210 +vn 0.8622 0.2196 0.4565 +vn 0.2008 -0.2857 0.9371 +vn -0.7132 -0.2857 0.6401 +vn -0.9659 0.2196 -0.1375 +vn -0.3045 0.7248 -0.6180 +vn -0.1169 0.7248 -0.6789 +vn 0.7006 0.2196 -0.6789 +vn 0.9532 -0.2857 0.0986 +vn 0.3883 -0.2857 0.8761 +vn -0.4292 0.2196 0.8761 +vn -0.6818 0.7248 0.0986 +vn 0.3757 0.8694 0.3210 +vn -0.1892 0.8694 -0.4565 +vn -0.3453 0.0518 -0.9370 +vn 0.0634 -0.7657 -0.6401 +vn 0.6283 -0.7657 0.1374 +vn 0.7845 0.0518 0.6180 +vn 0.4214 0.8694 -0.2581 +vn -0.4926 0.8694 0.0389 +vn -0.9979 0.0518 0.0389 +vn -0.5891 -0.7657 -0.2581 +vn 0.3249 -0.7657 -0.5551 +vn 0.8302 0.0518 -0.5551 +vn -0.1153 0.8694 -0.4805 +vn -0.1153 0.8694 0.4805 +vn -0.2714 0.0518 0.9611 +vn -0.4276 -0.7657 0.4805 +vn -0.4276 -0.7657 -0.4805 +vn -0.2714 0.0518 -0.9611 +vn -0.4927 0.8694 -0.0389 +vn 0.4214 0.8694 0.2581 +vn 0.8302 0.0518 0.5551 +vn 0.3249 -0.7657 0.5551 +vn -0.5891 -0.7657 0.2581 +vn -0.9979 0.0518 -0.0389 +vn -0.1892 0.8694 0.4565 +vn 0.3757 0.8694 -0.3210 +vn 0.7845 0.0518 -0.6180 +vn 0.6283 -0.7657 -0.1375 +vn 0.0634 -0.7657 0.6401 +vn -0.3453 0.0518 0.9370 +vn -0.3249 0.7657 -0.5551 +vn -0.8302 -0.0518 -0.5551 +vn -0.4214 -0.8694 -0.2581 +vn 0.4926 -0.8694 0.0389 +vn 0.9979 -0.0518 0.0389 +vn 0.5891 0.7657 -0.2581 +vn -0.6283 0.7657 0.1374 +vn -0.7845 -0.0518 0.6180 +vn -0.3757 -0.8694 0.3210 +vn 0.1892 -0.8694 -0.4565 +vn 0.3453 -0.0518 -0.9370 +vn -0.0634 0.7657 -0.6401 +vn -0.0634 0.7657 0.6401 +vn 0.3453 -0.0518 0.9370 +vn 0.1892 -0.8694 0.4565 +vn -0.3757 -0.8694 -0.3210 +vn -0.7845 -0.0518 -0.6180 +vn -0.6283 0.7657 -0.1374 +vn 0.5891 0.7657 0.2581 +vn 0.9979 -0.0518 -0.0389 +vn 0.4926 -0.8694 -0.0389 +vn -0.4214 -0.8694 0.2581 +vn -0.8302 -0.0518 0.5551 +vn -0.3249 0.7657 0.5551 +vn 0.4276 0.7657 -0.4805 +vn 0.2714 -0.0518 -0.9611 +vn 0.1153 -0.8694 -0.4805 +vn 0.1153 -0.8694 0.4805 +vn 0.2714 -0.0518 0.9611 +vn 0.4276 0.7657 0.4805 +vn 0.7132 0.2857 -0.6401 +vn -0.2008 0.2857 -0.9371 +vn -0.8622 -0.2196 -0.4565 +vn -0.6096 -0.7248 0.3210 +vn 0.3045 -0.7248 0.6180 +vn 0.9659 -0.2196 0.1375 +vn -0.3883 0.2857 -0.8761 +vn -0.9532 0.2857 -0.0986 +vn -0.7006 -0.2196 0.6789 +vn 0.1169 -0.7248 0.6789 +vn 0.6818 -0.7248 -0.0986 +vn 0.4292 -0.2196 -0.8761 +vn -0.9532 0.2857 0.0986 +vn -0.3883 0.2857 0.8761 +vn 0.4292 -0.2196 0.8761 +vn 0.6818 -0.7248 0.0986 +vn 0.1169 -0.7248 -0.6789 +vn -0.7006 -0.2196 -0.6789 +vn 0.1677 -0.2196 -0.9611 +vn -0.4937 -0.7248 -0.4805 +vn -0.4936 -0.7248 0.4805 +vn 0.1678 -0.2196 0.9611 +vn 0.8291 0.2857 0.4805 +vn 0.8291 0.2857 -0.4805 +vn -0.2008 0.2857 0.9371 +vn 0.7132 0.2857 0.6401 +vn 0.9659 -0.2196 -0.1375 +vn 0.3045 -0.7248 -0.6180 +vn -0.6096 -0.7248 -0.3210 +vn -0.8622 -0.2196 0.4565 +s off +f 1//1 2//1 3//1 +f 2//2 1//2 6//2 +f 1//3 3//3 4//3 +f 1//4 4//4 5//4 +f 1//5 5//5 6//5 +f 2//6 6//6 11//6 +f 3//7 2//7 7//7 +f 4//8 3//8 8//8 +f 5//9 4//9 9//9 +f 6//10 5//10 10//10 +f 2//11 11//11 7//11 +f 3//12 7//12 8//12 +f 4//13 8//13 9//13 +f 5//14 9//14 10//14 +f 6//15 10//15 11//15 +f 7//16 11//16 12//16 +f 8//17 7//17 12//17 +f 9//18 8//18 12//18 +f 10//19 9//19 12//19 +f 11//20 10//20 12//20 +f 13//21 17//21 14//21 +f 14//22 17//22 15//22 +f 15//23 17//23 16//23 +f 16//24 17//24 18//24 +f 18//25 17//25 19//25 +f 19//26 17//26 13//26 +f 20//27 24//27 21//27 +f 21//28 24//28 22//28 +f 22//29 24//29 23//29 +f 23//30 24//30 25//30 +f 25//31 24//31 26//31 +f 26//32 24//32 20//32 +f 27//33 31//33 28//33 +f 28//34 31//34 29//34 +f 29//35 31//35 30//35 +f 30//36 31//36 32//36 +f 32//37 31//37 33//37 +f 33//38 31//38 27//38 +f 34//39 38//39 35//39 +f 35//40 38//40 36//40 +f 36//41 38//41 37//41 +f 37//42 38//42 39//42 +f 39//43 38//43 40//43 +f 40//44 38//44 34//44 +f 41//45 45//45 42//45 +f 42//46 45//46 43//46 +f 43//47 45//47 44//47 +f 44//48 45//48 46//48 +f 46//49 45//49 47//49 +f 47//50 45//50 41//50 +f 48//51 52//51 49//51 +f 49//52 52//52 50//52 +f 50//53 52//53 51//53 +f 51//54 52//54 53//54 +f 53//55 52//55 54//55 +f 54//56 52//56 48//56 +f 55//57 59//57 56//57 +f 56//58 59//58 57//58 +f 57//59 59//59 58//59 +f 58//60 59//60 60//60 +f 60//61 59//61 61//61 +f 61//62 59//62 55//62 +f 62//63 66//63 63//63 +f 63//64 66//64 64//64 +f 64//65 66//65 65//65 +f 65//66 66//66 67//66 +f 67//67 66//67 68//67 +f 68//68 66//68 62//68 +f 69//69 73//69 70//69 +f 70//70 73//70 71//70 +f 71//71 73//71 72//71 +f 72//72 73//72 74//72 +f 74//73 73//73 75//73 +f 75//74 73//74 69//74 +f 76//75 80//75 77//75 +f 77//76 80//76 78//76 +f 78//77 80//77 79//77 +f 79//78 80//78 81//78 +f 81//79 80//79 82//79 +f 82//80 80//80 76//80 +f 83//81 87//81 84//81 +f 84//82 87//82 85//82 +f 85//83 87//83 86//83 +f 86//84 87//84 88//84 +f 88//85 87//85 89//85 +f 89//86 87//86 83//86 +f 90//87 94//87 91//87 +f 91//88 94//88 92//88 +f 92//89 94//89 93//89 +f 93//90 94//90 95//90 +f 95//91 94//91 96//91 +f 96//92 94//92 90//92 +f 97//93 101//93 98//93 +f 98//94 101//94 99//94 +f 99//95 101//95 100//95 +f 100//96 101//96 102//96 +f 102//97 101//97 103//97 +f 103//98 101//98 97//98 +f 104//99 108//99 105//99 +f 105//100 108//100 106//100 +f 106//101 108//101 107//101 +f 107//102 108//102 109//102 +f 109//103 108//103 110//103 +f 110//104 108//104 104//104 +f 111//105 115//105 112//105 +f 112//106 115//106 113//106 +f 113//107 115//107 114//107 +f 114//108 115//108 116//108 +f 116//109 115//109 117//109 +f 117//110 115//110 111//110 +f 118//111 122//111 119//111 +f 119//112 122//112 120//112 +f 120//113 122//113 121//113 +f 121//114 122//114 123//114 +f 123//115 122//115 124//115 +f 124//116 122//116 118//116 +f 125//117 129//117 126//117 +f 126//118 129//118 127//118 +f 127//119 129//119 128//119 +f 128//120 129//120 130//120 +f 130//121 129//121 131//121 +f 131//122 129//122 125//122 +f 132//123 136//123 133//123 +f 133//124 136//124 134//124 +f 134//125 136//125 135//125 +f 135//126 136//126 137//126 +f 137//127 136//127 138//127 +f 138//128 136//128 132//128 +f 139//129 143//129 140//129 +f 140//130 143//130 141//130 +f 141//131 143//131 142//131 +f 142//132 143//132 144//132 +f 144//133 143//133 145//133 +f 145//134 143//134 139//134 +f 146//135 150//135 147//135 +f 147//136 150//136 148//136 +f 148//137 150//137 149//137 +f 149//138 150//138 151//138 +f 151//139 150//139 152//139 +f 152//140 150//140 146//140 diff --git a/src/components/beat-loader.js b/src/components/beat-loader.js index c15ba03..b3c11ad 100644 --- a/src/components/beat-loader.js +++ b/src/components/beat-loader.js @@ -22,6 +22,7 @@ AFRAME.registerComponent('beat-loader', { this.beatContainer = document.getElementById('beatContainer'); this.bpm = undefined; this.beatsTime = undefined; + this.onKeyDown = this.onKeyDown.bind(this); this.el.addEventListener('cleargame', this.clearBeats.bind(this)); }, @@ -54,6 +55,30 @@ AFRAME.registerComponent('beat-loader', { xhr.send(); }, + onKeyDown: function (event) { + var keyCode = event.keyCode; + switch (keyCode) { + case 32: // Space + this.generateBeat({ + _lineIndex: 2, + _lineLayer: 1, + _cutDirection: 1, + _type: 3 + }); + break; + default: + break; + } + }, + + play: function () { + window.addEventListener('keydown', this.onKeyDown); + }, + + pause: function () { + window.removeEventListener('keydown', this.onKeyDown); + }, + /** * Load the beat data into the game. */ diff --git a/src/components/beat.js b/src/components/beat.js index cd046ee..c437808 100644 --- a/src/components/beat.js +++ b/src/components/beat.js @@ -101,12 +101,12 @@ AFRAME.registerComponent('beat', { blockEl.object3D.scale.multiplyScalar(3.45).multiplyScalar(this.data.size); if (this.data.type === 'mine') { - let model = evt.detail.model.children[0]; - model.material = this.el.sceneEl.components.stagecolors.mineMaterial; + let model = blockEl.getObject3D('mesh'); + model.material = this.el.sceneEl.components['stage-colors'].mineMaterial; + } else { + signEl.setAttribute('material', SIGN_MATERIAL); + this.setObjModelFromTemplate(signEl, this.signModels[this.data.type]); } - - signEl.setAttribute('material', SIGN_MATERIAL); - this.setObjModelFromTemplate(signEl, this.signModels[this.data.type]); }, initColliders: function () { diff --git a/src/index.html b/src/index.html index 02d5d9d..3255a42 100644 --- a/src/index.html +++ b/src/index.html @@ -28,6 +28,7 @@ pool__beat-arrow-red="mixin: arrowRedBeat; size: 10; container: #beatContainer" pool__beat-dot-blue="mixin: dotBlueBeat; size: 10; container: #beatContainer" pool__beat-dot-red="mixin: dotRedBeat; size: 10; container: #beatContainer" + pool__beat-mine="mixin: mine; size: 10; container: #beatContainer" proxy-event__menuleft="event: menuchallengeunselect; to: .menuAnimation" proxy-event__menuright="event: menuchallengeselect; to: .menuAnimation" proxy-event__cleargame1="event: pausemenuexit; as: cleargame; to: a-scene" @@ -45,6 +46,7 @@ + @@ -80,6 +82,7 @@ + +