public void Ignite(ViewModel vm, ItemRepresentation itemRep, IBasicTorchItem torchItem)
    {
        if (torchItem != null)
        {
            torchItem.Ignite();
        }
        bool       flag = vm != null;
        GameObject obj2 = null;

        if (flag)
        {
            Socket.Slot slot = vm.socketMap["muzzle"];
            obj2 = slot.socket.InstantiateAsChild(this.FirstPersonLightPrefab, false);
            if (torchItem != null)
            {
                torchItem.light = obj2;
            }
        }
        else if (((torchItem == null) || (torchItem.light == null)) && (!itemRep.networkView.isMine || actor.forceThirdPerson))
        {
            if (this.ThirdPersonLightPrefab != null)
            {
                ((BasicTorchItemRep)itemRep)._myLightPrefab = this.ThirdPersonLightPrefab;
            }
            ((BasicTorchItemRep)itemRep).RepIgnite();
            if ((((BasicTorchItemRep)itemRep)._myLight != null) && (torchItem != null))
            {
                torchItem.light = ((BasicTorchItemRep)itemRep)._myLight;
            }
        }
    }
 public void DoActualExtinguish(ItemRepresentation itemRep, IBasicTorchItem itemInstance, ViewModel vm)
 {
     if (itemInstance == null)
     {
         Debug.Log("inst null");
     }
     if (itemRep == null)
     {
         Debug.Log("rep null");
     }
     if (vm == null)
     {
         Debug.Log("vm null ");
     }
     itemInstance.Extinguish();
 }
 public void DoActualIgnite(ItemRepresentation itemRep, IBasicTorchItem itemInstance, ViewModel vm)
 {
     this.Ignite(vm, itemRep, itemInstance);
     itemRep.Action(2, RPCMode.Server);
 }