dimden

For infra

Jan 27th, 2019
303
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.32 KB | None | 0 0
  1. OWOP.chaosEnabled = false;
  2.  
  3. OWOP.tool.addToolObject(new OWOP.tool.class('Chaos', OWOP.cursors.erase, OWOP.fx.player.RECT_SELECT_ALIGNED(0), false, function(tool) {}));
  4.  
  5. document.getElementById('tool-chaos').addEventListener('click', function () {
  6. if(!OWOP.chaosEnabled) {
  7. OWOP.chaos={speed:2,angles:[],bounce:!0,tools:document.getElementById('toole-container').children,offtools:{x:[],y:[]},start:function(a){this.init();requestAnimationFrame(this.animeloop)},init:function(){document.getElementById('toole-container').style.overflow='visible';this.randomize();for(var a=0;a<this.tools.length;++a)this.tools[a].style.top='0px',this.tools[a].style.left='0px',this.offtools.x[a]=1,this.offtools.y[a]=1},randomize:function(){for(var a=0;a<this.tools.length;++a)this.angles[a]=Math.random()*Math.PI*2},goback:function(){for(var a=0;a<this.tools.length;++a)this.angles[a]=Math.atan2(-parseFloat(this.tools[a].style.top,10),-parseFloat(this.tools[a].style.left,10));this.bounce=!1},animeloop:function(){var a=OWOP.chaos;if(a.bounce)for(var b=0;b<a.tools.length;++b){var c=a.tools[b].getBoundingClientRect(),d=Math.cos(a.angles[b])*a.speed,e=Math.sin(a.angles[b])*a.speed;0<=c.left+d&&c.left+c.width+d<=window.innerWidth?a.tools[b].style.left=parseFloat(a.tools[b].style.left,10)+d+'px':a.angles[b]=Math.PI-a.angles[b];0<=c.top+e&&c.top+c.height+e<=window.innerHeight?a.tools[b].style.top=parseFloat(a.tools[b].style.top,10)+e+'px':a.angles[b]=-a.angles[b]}else{for(b=0;b<a.tools.length;++b){c=a.tools[b].getBoundingClientRect();d=Math.cos(a.angles[b])*a.speed;e=Math.sin(a.angles[b])*a.speed;c=d+parseFloat(a.tools[b].style.left,10);var f=e+parseFloat(a.tools[b].style.top,10);(c>=Math.abs(d)||c<=-Math.abs(d))&&0!==parseFloat(a.tools[b].style.left,10)?a.tools[b].style.left=c+'px':(a.tools[b].style.left='0px',a.offtools.x[b]=0);(f>=Math.abs(e)||f<=-Math.abs(e))&&0!==parseFloat(a.tools[b].style.top,10)?a.tools[b].style.top=f+'px':(a.tools[b].style.top='0px',a.offtools.y[b]=0)}if(a.offtools.x.every(function(a){return 0===a})&&a.offtools.y.every(function(a){return 0===a}))return};window.requestAnimationFrame(a.animeloop)}};OWOP.chaos.start();
  8. OWOP.chaosEnabled = true;
  9. document.getElementById('tool-cursor').click();
  10. } else {
  11. OWOP.chaos.goback();
  12. OWOP.chaosEnabled = false;
  13. document.getElementById('tool-cursor').click();
  14. }
  15. });
Advertisement
Add Comment
Please, Sign In to add comment