This content requires the Unity Web Player
Install the Unity Web Player today!
//Haal kleur waarden uit externe lijst, zet om naar float, creƫer kleurcode function updateColor () { R = redArray[listNum].ToString(); G = greenArray[listNum].ToString(); B = blueArray[listNum].ToString(); Red = parseFloat(R); Green = parseFloat(G); Blue = parseFloat(B); codeColor = Color(Red/255, Green/255, Blue/255); }
This content requires the Unity Web Player
Install the Unity Web Player today!
//Code voor het draaien van de turret in de richting van de vijand //Bereken afstand tussen loop en vijand Distance = Target.transform.position - Barrel.transform.position; distanceVec = Distance.magnitude; distanceY = Distance.y; //Vector van huidige positie in de richting van vijand _direction = (Target.position - Turret.transform.position).normalized; //Bereken de gewenste rotatie, om op de vijand te mikken _lookRotation = Quaternion.LookRotation(Vector3.up, _direction); //Roteer langzaam naar gewenste houding Turret.transform.rotation = Quaternion.Slerp(Turret.transform.rotation, _lookRotation, Time.deltaTime * RotationSpeed); if(Quaternion.Angle(Turret.transform.rotation, _lookRotation)<1){ Turret.transform.rotation = _lookRotation; }
//Code voor het voorspellen van de baan van het projectiel //en het roteren van de loop //Bereken welke hoek de gun moet hebben om de vijand te raken v = projectileVelocity; v2 = v*v; v4 = v2*v2; gunAngle = Mathf.Atan2(v2 - Mathf.Sqrt(v4 - g*(g*(distanceVec*distanceVec)+2*distanceY*v2)), g*distanceVec); //Zet de gewenste hoek in Vector3, draai Barrel langzaam naar gewenste hoek gunEuler = new Vector3(gunAngle*Mathf.Rad2Deg, Barrel.transform.localEulerAngles.y, Barrel.transform.localEulerAngles.z); if(float.IsNaN(gunEuler.x)==false){ //Vijand is binnen bereik, draai loop in gewenste hoek Barrel.transform.localEulerAngles = Vector3.Slerp(Barrel.transform.localEulerAngles, gunEuler, 0.05f); } else{ //Vijand te ver weg, draai loop naar 45 graden om zo ver mogelijk te schieten Barrel.transform.localEulerAngles = Vector3.Slerp(Barrel.transform.localEulerAngles, new Vector3(45,0,0), 0.05f); Debug.Log ("isNaN"); }