102
« on: January 04, 2015, 05:33:56 PM »
#pragma strict
var Aiming : boolean = false;
var Damage : int = 100;
var Distance : float;
var MaxDistance : float = 1.5;
var TheSystem : Transform;
var MouseDown01 = false;
var cliprounds = 200;
var reloadTime = 3.3;
var canfire = false;
var Reloading : boolean = false;
var Sprinting : boolean = false;
var TargetScript : StaminaScript;
var TargetScript02 : StaminaScript;
var canSprint : boolean = true;
var MouseDown02 = false;
var HGFl : boolean = true;
var On : boolean = true;
//var TorchLight : GameObject;
//var gunshot : AudioClip;
//var magout : AudioClip;
//var magin : AudioClip;
//var gunslide : AudioClip;
//var gunshot2 : AudioClip;
var gunshotlight : Transform;
public var spreadFactor : float;
var GroundHit : GameObject;
var GunParticle : GameObject;
//var TargetScript02 : GPinstantiate;
var GP : Transform;
function Start(){
//TargetScript02 = GameObject.Find("GP").transform.GetComponent("GPinstantiate");
}
function Update ()
{
//
//
//
//
//
//
//
//
//
// Hip-Fire Functions
// Idle Function
if(!Aiming)
{
spreadFactor = 0.09;
}
if (TargetScript.CanSprint == false && Sprinting)
{
animation.CrossFade ("MinigunIdle");
Sprinting = false;
}
// Automatic Reload
if(cliprounds <= 0 && !Sprinting && !Aiming)
{
animation.Play("MiniGunReload");
Reloading = true;
}
// Manual Reload
if(Input.GetKey("r") && !Sprinting && !Aiming)
{
Reloading = true;
animation.Play("MiniGunReload");
}
// Attack Function
if (Input.GetMouseButtonDown(0) && !Reloading && !Sprinting && !Aiming)
{
MouseDown01 = true;
animation.Play("MinigunShot");
}
// LeftMouseUp Function
if (Input.GetMouseButtonUp(0))
{
MouseDown01 = false;
}
// LeftMouseDown Function
if (Input.GetMouseButtonDown(0))
{
MouseDown01 = true;
}
// Idle Function
if(animation.isPlaying == false && !Sprinting && !Aiming)
{
animation.CrossFade("MinigunIdle");
}
// Cancel Reload
if(Input.GetMouseButtonDown(0) && !Sprinting && Reloading)
{
animation.CrossFade("MinigunIdle");
TargetScript.CanSprint = true;
Reloading = false;
}
//
//
//
//
//
//
//
//
//
// Aiming Functions
// Spread Function
if(Aiming)
{
spreadFactor = 0.01;
}
// Automatic Reload
if(cliprounds <= 0 && !Sprinting && Aiming)
{
animation.Play("MinigunAimReload");
Reloading = true;
}
// Manual Reload Function
if(Input.GetKey("r") && !Sprinting && Aiming)
{
Reloading = true;
animation.Play("MinigunAimReload");
}
// Attack Function
if (Input.GetMouseButtonDown(0) && !Reloading && !Sprinting && Aiming)
{
animation.Play("MinigunAimShot");
}
// Right MouseDown Function
if (Input.GetMouseButtonUp(1))
{
MouseDown02 = false;
}
if (Input.GetMouseButtonDown(1))
{
MouseDown02 = true;
}
// Aim Up Function
if (Input.GetMouseButtonDown(1) && !Sprinting && !Reloading && !Aiming)
{
Aiming = true;
animation.Play("MinigunAimUp");
TargetScript.CanSprint = false;
}
// Aim Release Function
if (Input.GetMouseButtonUp(1) && !Sprinting && !Reloading)
{
Aiming = false;
animation.Play("MinigunAimDown");
TargetScript.CanSprint = true;
}
// Cancel Reload
if(!MouseDown02 && Aiming && !Sprinting && Reloading)
{
Aiming = false;
animation.CrossFade("MinigunIdle");
TargetScript.CanSprint = true;
Reloading = false;
}
//
//
//
//
//
//
//
//
//
// Sprinting Functions
// Sprint Intro Function
if(Input.GetKeyDown (KeyCode.LeftShift) && TargetScript.CanSprint == true && !Aiming && !Reloading)
{
animation.CrossFade("MinigunSprintIntro");
Sprinting = true;
} TargetScript.CanSprint = false;
// Sprint Stop
if(Input.GetKeyUp (KeyCode.LeftShift) && Sprinting == true && !Aiming)
{
animation.CrossFade("MinigunSprintOutro");
}
//
//
//
//
//
//
//
//
//
//FlashLight Functions
// Flashlight On
// if(Input.GetKey("v") && !Sprinting && !Reloading && !Aiming && HGFl == true)
// {
// animation.Play("FlashLightOff");
// TorchLight.animation.Play("off");
// HGFl = false;
// }
// Flashlight On
// if(Input.GetKey("v") && !Sprinting && !Reloading && !Aiming && !HGFl)
// {
// TorchLight.animation.Play("flashlight");
// HGFl = true;
// }
}
//
//
//
//
//
// Releases raycast from WeaponSystem Game Object
function AttackDamage ()
{
// Attack Function
var hit : RaycastHit;
var direction : Vector3 = TheSystem.transform.Transform Direction(Vector3.forward);
// var GPDirection : GameObject = GP.transform;
// Gives a random range between a number to calculate the spread
direction.x += Random.Range(-spreadFactor, spreadFactor);
direction.y += Random.Range(-spreadFactor, spreadFactor);
direction.z += Random.Range(-spreadFactor, spreadFactor);
// Detects and instantiates the distance for the raycast
if (Physics.Raycast (TheSystem.transform.position,direction,hit))
var particleClone = Instantiate(GroundHit, hit.point, Quaternion.LookRotation(hit.normal));
// Finds the distance to send the "Attack Damage" function
{
Distance = hit.distance;
if (Distance <= MaxDistance)
{
hit.transform.SendMessage("Melee", Damage, SendMessageOptions.DontRequir eReceiver);
}
}
}
//
//
//
//
//
// Fires the second shot after the first animation
function SecondShot()
{
if(MouseDown01 == true && !Sprinting && !Reloading && !Aiming)
{
animation.Play("MinigunShot02");
}
}
//
//
//
//
//
function AimSecondShot()
{
if(MouseDown01 == true && !Sprinting && !Reloading && Aiming)
{
animation.Play("MinigunAimShot02");
}
}
//
//
//
//
//
function AimShot()
{
if(MouseDown01 == true && !Sprinting && !Reloading && Aiming)
{
animation.Play("MinigunAimShot");
}
}
//
//
//
//
//
function Shot()
{
if(MouseDown01 == true && !Aiming && !Sprinting)
{
animation.Play("MinigunShot");
}
}
//
//
//
//
//
function TakeRound ()
{
cliprounds -= 1;
}
//
//
//
//
//
function Reload()
{
cliprounds = 200;
Reloading = false;
}
//
//
//
//
//
function SprintIntro()
{
animation.CrossFade("MinigunSprintMiddle");
}
function SprintOutro()
{
animation.CrossFade("MinigunIdle");
}
function isSprinting()
{
Sprinting = true;
}
//
//
//
//
//
function isNotSprinting ()
{
Sprinting = false;
}
//
//
//
//
//
function AimIdle()
{
animation.Play("MinigunAimIdle");
}
//
//
//
//
//
function AimCheckAfterReloadOrSprint()
{
if (MouseDown02 == true && !Sprinting && !Reloading && !Aiming)
{
Aiming = true;
animation.Play("MinigunAimUp");
TargetScript.CanSprint = false;
}
}
//
//
//
//
//
function magoutfunction()
{
// audio.PlayOneShot(magout);
}
//
//
//
//
//
function maginfunction()
{
//audio.PlayOneShot(magin);
}
//
//
//
//
//
function gunshotfunction()
{
//audio.PlayOneShot(gunshot);
}
//
//
//
//
//
function gunshot2function()
{
//audio.PlayOneShot(gunshot2);
}
//
//
//
//
//
function gunslidefunction()
{
//audio.PlayOneShot(gunslide);
}
//
//
//
//
//
function gunshotlightfunction()
{
gunshotlight.animation.Play("GunShotPL");
}
//
//
//
//
//
function SprintStop ()
{
Sprinting = false;
TargetScript.CanSprint = false;
}
function gunshotpart(){
GunParticle.animation.Play("Gunparticle");
}
yaymuchfun