Example #1
0
    public void Ignite(ViewModel vm, ItemRepresentation itemRep, ITorchItem torchItem)
    {
        if (torchItem != null)
        {
            torchItem.Ignite();
        }
        bool       flag       = vm != null;
        GameObject gameObject = null;

        if (flag)
        {
            this.StrikeSound.Play();
            Socket.Slot item = vm.socketMap["muzzle"];
            gameObject = item.socket.InstantiateAsChild(this.FirstPersonLightPrefab, false);
            if (torchItem != null)
            {
                torchItem.light = gameObject;
            }
        }
        else if ((torchItem == null || !torchItem.light) && (!itemRep.networkView.isMine || actor.forceThirdPerson))
        {
            if (this.ThirdPersonLightPrefab)
            {
                ((TorchItemRep)itemRep)._myLightPrefab = this.ThirdPersonLightPrefab;
            }
            ((TorchItemRep)itemRep).RepIgnite();
            if (((TorchItemRep)itemRep)._myLight && torchItem != null)
            {
                torchItem.light = ((TorchItemRep)itemRep)._myLight;
            }
        }
    }
Example #2
0
    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;
        }
    }
Example #3
0
    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;
    }
Example #4
0
 public void OnExtinguish(ViewModel vm, ItemRepresentation itemRep, ITorchItem torchItem)
 {
 }