Exemplo n.º 1
0
    public void FireArrow(Vector3 pos, Quaternion ang, ItemRepresentation itemRep, IBowWeaponItem itemInstance)
    {
        GameObject gameObject = (GameObject)UnityEngine.Object.Instantiate(this.arrowPrefab, pos, ang);

        gameObject.GetComponent <ArrowMovement>().Init(this.arrowSpeed, itemRep, itemInstance, false);
        this.fireArrowSound.Play(pos, 1f, 2f, 10f);
    }
Exemplo n.º 2
0
    public void FireArrow(Vector3 pos, Quaternion ang, ItemRepresentation itemRep, IBowWeaponItem itemInstance)
    {
        GameObject obj2 = (GameObject)Object.Instantiate(this.arrowPrefab, pos, ang);

        obj2.GetComponent <ArrowMovement>().Init(this.arrowSpeed, itemRep, itemInstance, false);
        this.fireArrowSound.Play(pos, (float)1f, (float)2f, (float)10f);
    }
Exemplo n.º 3
0
 public virtual void Local_GetTired(ViewModel vm, ItemRepresentation itemRep, IBowWeaponItem itemInstance, ref HumanController.InputSample sample)
 {
     if (!itemInstance.tired && (vm != null))
     {
         vm.CrossFade("tiredloop", 5f);
     }
 }
Exemplo n.º 4
0
 public virtual void Local_CancelArrow(ViewModel vm, ItemRepresentation itemRep, IBowWeaponItem itemInstance, ref HumanController.InputSample sample)
 {
     if (vm != null)
     {
         vm.CrossFade("cancelarrow", 0.15f);
     }
     this.MakeReadyIn(itemInstance, base.fireRate * 3f);
     this.cancelArrowSound.PlayLocal(Camera.main.transform, Vector3.zero, 1f, 1f, 3f, 20f, 0);
 }
Exemplo n.º 5
0
 public virtual void Local_ReadyArrow(ViewModel vm, ItemRepresentation itemRep, IBowWeaponItem itemInstance, ref HumanController.InputSample sample)
 {
     if (vm != null)
     {
         vm.Play("drawarrow", PlayMode.StopSameLayer);
     }
     itemInstance.completeDrawTime = Time.time + this.drawLength;
     this.drawArrowSound.PlayLocal(Camera.main.transform, Vector3.zero, 1f, 1f, 3f, 20f, 0);
 }
Exemplo n.º 6
0
 public void Init(float arrowSpeed, ItemRepresentation itemRep, IBowWeaponItem itemInstance, bool firedLocal)
 {
     this.speedPerSec = arrowSpeed;
     if ((itemRep != null) && (itemInstance != null))
     {
         this._myBow          = itemRep;
         this._myItemInstance = itemInstance;
     }
 }
Exemplo n.º 7
0
 public void Init(float arrowSpeed, ItemRepresentation itemRep, IBowWeaponItem itemInstance, bool firedLocal)
 {
     this.speedPerSec = arrowSpeed;
     if (itemRep != null && itemInstance != null)
     {
         this._myBow = itemRep;
         this._myItemInstance = itemInstance;
     }
 }
Exemplo n.º 8
0
        public BowShootEvent(BowWeaponDataBlock bw, ItemRepresentation ir, uLink.NetworkMessageInfo ui, IBowWeaponItem ibw)
        {
            TakeDamage local = ibw.inventory.GetLocal <TakeDamage>();

            _player = Fougerite.Server.Cache[local.GetComponent <Character>().netUser.userID];
            _bw     = bw;
            _ibw    = ibw;
            _ir     = ir;
            _unmi   = ui;
        }
Exemplo n.º 9
0
    public virtual void Local_FireArrow(ViewModel vm, ItemRepresentation itemRep, IBowWeaponItem itemInstance, ref HumanController.InputSample sample)
    {
        if (vm != null)
        {
            vm.Play("fire_1", PlayMode.StopSameLayer);
        }
        this.MakeReadyIn(itemInstance, base.fireRate);
        Character character = itemInstance.character;

        if (character != null)
        {
            Ray     eyesRay    = character.eyesRay;
            Vector3 eyesOrigin = character.eyesOrigin;
            this.FireArrow(eyesOrigin, character.eyesRotation, itemRep, itemInstance);
            BitStream stream = new BitStream(false);
            stream.WriteVector3(eyesOrigin);
            stream.WriteQuaternion(character.eyesRotation);
            itemRep.ActionStream(1, RPCMode.Server, stream);
        }
    }
Exemplo n.º 10
0
    public virtual void Local_FireArrow(ViewModel vm, ItemRepresentation itemRep, IBowWeaponItem itemInstance, ref HumanController.InputSample sample)
    {
        if (vm)
        {
            vm.Play("fire_1", PlayMode.StopSameLayer);
        }
        this.MakeReadyIn(itemInstance, this.fireRate);
        Character character = itemInstance.character;

        if (character == null)
        {
            return;
        }
        Ray     ray     = character.eyesRay;
        Vector3 vector3 = character.eyesOrigin;

        this.FireArrow(vector3, character.eyesRotation, itemRep, itemInstance);
        uLink.BitStream bitStream = new uLink.BitStream(false);
        bitStream.WriteVector3(vector3);
        bitStream.WriteQuaternion(character.eyesRotation);
        itemRep.ActionStream(1, uLink.RPCMode.Server, bitStream);
    }
Exemplo n.º 11
0
 public void RemoveArrow()
 {
     IBowWeaponItem.RemoveArrowInFlight();
 }
Exemplo n.º 12
0
 public void ArrowReportHit(IDMain hitMain, ArrowMovement arrow, ItemRepresentation itemRepresentation, IBowWeaponItem itemInstance)
 {
     if (hitMain != null)
     {
         TakeDamage component = hitMain.GetComponent <TakeDamage>();
         if (component != null)
         {
             BitStream stream = new BitStream(false);
             stream.Write <NetEntityID>(NetEntityID.Get((MonoBehaviour)hitMain), new object[0]);
             stream.Write <Vector3>(hitMain.transform.position, new object[0]);
             itemRepresentation.ActionStream(2, RPCMode.Server, stream);
             Character shooterOrNull = itemInstance.character;
             if ((component != null) && component.ShouldPlayHitNotification())
             {
                 this.PlayHitNotification(arrow.transform.position, shooterOrNull);
             }
         }
     }
 }
Exemplo n.º 13
0
 public virtual void MakeReadyIn(IBowWeaponItem itemInstance, float delay)
 {
     itemInstance.MakeReadyIn(delay);
 }
Exemplo n.º 14
0
    public void ArrowReportHit(IDMain hitMain, ArrowMovement arrow, ItemRepresentation itemRepresentation, IBowWeaponItem itemInstance)
    {
        if (!hitMain)
        {
            return;
        }
        TakeDamage component = hitMain.GetComponent <TakeDamage>();

        if (!component)
        {
            return;
        }
        uLink.BitStream bitStream = new uLink.BitStream(false);
        bitStream.Write <NetEntityID>(NetEntityID.Get(hitMain), new object[0]);
        bitStream.Write <Vector3>(hitMain.transform.position, new object[0]);
        itemRepresentation.ActionStream(2, uLink.RPCMode.Server, bitStream);
        Character character = itemInstance.character;

        if (component && component.ShouldPlayHitNotification())
        {
            this.PlayHitNotification(arrow.transform.position, character);
        }
    }