⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 plugincamerarotatefx.as

📁 FlashEd 0.2 是个游戏引擎包
💻 AS
字号:
//class pluginCameraRotateFX {    var cam    var steps = 50    var fps = 12    var timer    var pivot    var aFx    var aFy    var aFz    var aSx    var aSy    var aSz        var stepActual    var modo    var objetoDir    var porCambio    var variabilidadX    var variabilidadY    var variabilidadZ    var porFX    var fx = false    var porDura    function pluginCameraRotateFX(){    }    function onAdd(c){	cam = c    }    function onRemove(){	stop()	cam = null    }    function start(sx,sy,p,obDir,pf,d,pc,vx,vy,vz){	//aFx = ax	//aFy = ay	//aFz = az	aSx = sx	aSy = sy	//aSz = aFz/steps	pivot = p	stepActual = 1	modo = "normal"	objetoDir= obDir	//{x,y,z}	porCambio = pc	porFX = pf	porDura = d	variabilidadX = vx	variabilidadY = vy	variabilidadZ = vz		timer = setInterval(this, "run", 1000/fps)    }    function startTimer(ax,ay,p,s){	aFx = ax	aFy = ay	//aFz = az	steps = s	aSx = aFx/steps	aSy = aFy/steps	//aSz = aFz/steps	pivot = p	stepActual = 1	modo = "timer"	timer = setInterval(this, "run", 1000/fps)    }    function stop(){	clearInterval(timer)    }    function run(){	var pco = pivot.getCoordinates()	var cco = cam.getCoordinates()	if(fx==false){	    var rx = aSx*Math.PI/180	    var ry = aSy*Math.PI/180	    var xsin = Math.sin(rx)	    var xcos = Math.cos(rx)	    var ysin = Math.sin(ry)	    var ycos = Math.cos(ry)	    var z = cco.z - pco.z	    var x = cco.x - pco.x	    var y = cco.y - pco.y	    //x	    var zT = xcos*z-xsin*y	    var yT = xcos*y+ xsin*z	    //y	    var xT = ycos*x-ysin*zT	    var zT = ycos *zT + ysin*x	    if(random(porFX)==0){		fx = true		if(random(porCambio)==0 && porCambio>0){		    //si es 0 el indice de porCambio nunca va a cambiar		    objetoDir.x = int(random(variabilidadX)-variabilidadX/2)		    objetoDir.y = int(random(variabilidadY)-variabilidadY/2)		    objetoDir.z = int(random(variabilidadZ)-variabilidadZ/2)		}	    }	    cam.setCoordinates(pco.x+xT,pco.y+yT,pco.z+zT)	}else{	    var xT = cco.x+objetoDir.x	    var yT = cco.y+objetoDir.y	    var zT = cco.z+objetoDir.z	    if(random(porDura)==0){		fx = false	    }	    cam.setCoordinates(xT,yT,zT)	}		if(modo=="timer"){	    stepActual++	    if(stepActual>=steps){		this.stop()		this.onTimer()	    }	}    }    //evento    function onTimer(){    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -