protected override GameObject ThrowItem(ItemRepresentation rep, IThrowableItem item, Vector3 origin, Vector3 forward, NetworkViewID owner) { forward.Normalize(); Vector3 velocity = (Vector3)(forward * 20f); Vector3 position = origin + ((Vector3)(forward * 0.5f)); return(this.SpawnThrowItem(owner, base.throwObjectPrefab, position, Quaternion.LookRotation(Vector3.up), velocity)); }
protected virtual GameObject ThrowItem(ItemRepresentation rep, IThrowableItem item, Vector3 origin, Vector3 forward, uLink.NetworkViewID owner) { Vector3 velocity = (Vector3)(forward * item.heldThrowStrength); Vector3 position = origin + ((Vector3)(forward * 1f)); Quaternion rotation = Quaternion.LookRotation(Vector3.up); return(this.SpawnThrowItem(owner, this.throwObjectPrefab, position, rotation, velocity)); }
public override void PrimaryAttack(ViewModel vm, ItemRepresentation itemRep, IThrowableItem itemInstance, ref HumanController.InputSample sample) { base.PrimaryAttack(vm, itemRep, itemInstance, ref sample); vm.Play("pull_pin"); this.pullPinSound.Play(); this.GetHandGrenadeItemInstance(itemInstance).nextPrimaryAttackTime = Time.time + 1000f; this.GetHandGrenadeItemInstance(itemInstance).nextSecondaryAttackTime = Time.time + 1000f; }
protected override GameObject ThrowItem(ItemRepresentation rep, IThrowableItem item, Vector3 origin, Vector3 forward, uLink.NetworkViewID owner) { forward.Normalize(); Vector3 vector3 = forward * 20f; Vector3 vector31 = origin + (forward * 0.5f); return(this.SpawnThrowItem(owner, this.throwObjectPrefab, vector31, Quaternion.LookRotation(Vector3.up), vector3)); }
public override void PrimaryAttack(ViewModel vm, ItemRepresentation itemRep, IThrowableItem itemInstance, ref HumanController.InputSample sample) { ITorchItem torchInstance = this.GetTorchInstance(itemInstance); if (!torchInstance.isLit) { if (vm != null) { vm.Play("ignite"); } torchInstance.realIgniteTime = Time.time + 0.8f; torchInstance.nextPrimaryAttackTime = Time.time + 1.5f; torchInstance.nextSecondaryAttackTime = Time.time + 1.5f; } }
public override void AttackReleased(ViewModel vm, ItemRepresentation itemRep, IThrowableItem itemInstance, ref HumanController.InputSample sample) { Debug.Log("Attack released!!!"); vm.Play("throw"); vm.PlayQueued("deploy"); this.GetHandGrenadeItemInstance(itemInstance).nextPrimaryAttackTime = Time.time + 1f; this.GetHandGrenadeItemInstance(itemInstance).nextSecondaryAttackTime = Time.time + 1f; Character component = PlayerClient.GetLocalPlayer().controllable.GetComponent <Character>(); Vector3 eyesOrigin = component.eyesOrigin; Vector3 forward = component.eyesAngles.forward; BitStream stream = new BitStream(false); stream.WriteVector3(eyesOrigin); stream.WriteVector3((Vector3)(forward * this.GetHandGrenadeItemInstance(itemInstance).heldThrowStrength)); Debug.Log("Throw strength is : " + this.GetHandGrenadeItemInstance(itemInstance).heldThrowStrength); this.GetHandGrenadeItemInstance(itemInstance).EndHoldingBack(); itemRep.ActionStream(1, RPCMode.Server, stream); }
public override void SecondaryAttack(ViewModel vm, ItemRepresentation itemRep, IThrowableItem itemInstance, ref HumanController.InputSample sample) { ITorchItem torchInstance = this.GetTorchInstance(itemInstance); if (!torchInstance.isLit) { this.PrimaryAttack(vm, itemRep, itemInstance, ref sample); torchInstance.forceSecondaryTime = Time.time + 1.51f; return; } if (vm) { vm.Play("throw"); } torchInstance.realThrowTime = Time.time + 0.5f; torchInstance.nextPrimaryAttackTime = Time.time + 1.5f; torchInstance.nextSecondaryAttackTime = Time.time + 1.5f; }
public virtual void DoActualThrow(ItemRepresentation itemRep, IThrowableItem itemInstance, ViewModel vm) { Character component = PlayerClient.GetLocalPlayer().controllable.GetComponent <Character>(); Vector3 eyesOrigin = component.eyesOrigin; Vector3 forward = component.eyesAngles.forward; if (vm != null) { vm.PlayQueued("deploy"); } int count = 1; if (itemInstance.Consume(ref count)) { itemInstance.inventory.RemoveItem(itemInstance.slot); } uLink.BitStream argument = new uLink.BitStream(false); argument.WriteVector3(eyesOrigin); argument.WriteVector3(forward); itemRep.Action <uLink.BitStream>(1, uLink.RPCMode.Server, argument); }
public virtual void DoActualThrow(ItemRepresentation itemRep, IThrowableItem itemInstance, ViewModel vm) { Character component = PlayerClient.GetLocalPlayer().controllable.GetComponent <Character>(); Vector3 vector3 = component.eyesOrigin; Vector3 vector31 = component.eyesAngles.forward; if (vm) { vm.PlayQueued("deploy"); } int num = 1; if (itemInstance.Consume(ref num)) { itemInstance.inventory.RemoveItem(itemInstance.slot); } uLink.BitStream bitStream = new uLink.BitStream(false); bitStream.WriteVector3(vector3); bitStream.WriteVector3(vector31); itemRep.Action <uLink.BitStream>(1, uLink.RPCMode.Server, bitStream); }
public override void DoActualThrow(ItemRepresentation itemRep, IThrowableItem itemInstance, ViewModel vm) { Character component = PlayerClient.GetLocalPlayer().controllable.GetComponent <Character>(); Vector3 eyesOrigin = component.eyesOrigin; Vector3 forward = component.eyesAngles.forward; if (vm != null) { vm.PlayQueued("deploy"); } this.GetTorchInstance(itemInstance).Extinguish(); int count = 1; if (itemInstance.Consume(ref count)) { itemInstance.inventory.RemoveItem(itemInstance.slot); } BitStream stream = new BitStream(false); stream.WriteVector3(eyesOrigin); stream.WriteVector3(forward); itemRep.ActionStream(1, RPCMode.Server, stream); }
public virtual void SecondaryAttack(ViewModel vm, ItemRepresentation itemRep, IThrowableItem itemInstance, ref HumanController.InputSample sample) { }
public virtual void PrimaryAttack(ViewModel vm, ItemRepresentation itemRep, IThrowableItem itemInstance, ref HumanController.InputSample sample) { this.GetThrowableInstance(itemInstance).BeginHoldingBack(); }
public virtual void AttackReleased(ViewModel vm, ItemRepresentation itemRep, IThrowableItem itemInstance, ref HumanController.InputSample sample) { Debug.Log("Throwable attack released"); }
public ITorchItem GetTorchInstance(IThrowableItem itemInstance) { return(itemInstance as ITorchItem); }
public void DoActualIgnite(ItemRepresentation itemRep, IThrowableItem itemInstance, ViewModel vm) { this.Ignite(vm, itemRep, this.GetTorchInstance(itemInstance)); itemRep.Action(2, uLink.RPCMode.Server); }