// Token: 0x06002BCE RID: 11214 RVA: 0x000A395C File Offset: 0x000A1B5C private void SetViewModel(global::ViewModel vm, global::ItemRepresentation rep, global::IHeldItem item) { if (!this.awoke) { this.viewModel = vm; this.rep = rep; this.item = item; return; } if (this.viewModel != vm) { bool flag = this.viewModel; if (flag) { if (this.viewModel.itemRep) { try { this.viewModel.itemRep.UnBindViewModel(this.viewModel, this.viewModel.item); } catch (Exception ex) { Debug.LogException(ex, this.viewModel.itemRep); } } this.viewModel.UnBindTransforms(); this.viewModel.idMain = null; } this.viewModel = vm; if (vm) { if (!global::CameraFX.viewModelRootTransform) { Transform transform = new GameObject("__View Model Root").transform; global::CameraFX.viewModelRootTransform = new GameObject("Eye Camera Difference").transform; global::CameraFX.viewModelRootTransform.parent = transform; } vm.idMain = this.idMain; vm.transform.parent = global::CameraFX.viewModelRootTransform; if (rep) { rep.PrepareViewModel(vm, item); } vm.BindTransforms(global::CameraFX.viewModelRootTransform, base.transform.parent); if (rep) { rep.BindViewModel(vm, item); vm.itemRep = rep; vm.item = item; } } for (int i = this._effects.Length - 1; i >= 0; i--) { if (this._effects[i]) { this.effects[i].OnViewModelChange(vm); } } } }
// Token: 0x060035CE RID: 13774 RVA: 0x000C4BE4 File Offset: 0x000C2DE4 public ModViewModelAddArgs(global::ViewModel vm, global::IHeldItem item, bool isMesh, global::ItemModRepresentation modRep) { this.vm = vm; this.item = item; this.isMesh = isMesh; this.modRep = modRep; }
// Token: 0x06003847 RID: 14407 RVA: 0x000C7C48 File Offset: 0x000C5E48 public void InvokeInputItemPostFrame(object item, ref global::HumanController.InputSample sample) { global::IHeldItem heldItem = item as global::IHeldItem; if (heldItem != null) { heldItem.ItemPostFrame(ref sample); } }
// Token: 0x06003848 RID: 14408 RVA: 0x000C7C6C File Offset: 0x000C5E6C public void InvokeInputItemPreRender() { global::IHeldItem heldItem = this.inputItem as global::IHeldItem; if (heldItem != null) { heldItem.PreCameraRender(); } }
// Token: 0x0600388A RID: 14474 RVA: 0x000C8C84 File Offset: 0x000C6E84 private void RunViewModelAdd(global::ViewModel vm, global::IHeldItem item, bool doMeshes) { global::ModViewModelAddArgs modViewModelAddArgs = new global::ModViewModelAddArgs(vm, item, doMeshes); for (int i = 0; i < 5; i++) { this._itemMods.BindAsLocal(i, ref modViewModelAddArgs, this); } }
// Token: 0x06003846 RID: 14406 RVA: 0x000C7C20 File Offset: 0x000C5E20 public object InvokeInputItemPreFrame(ref global::HumanController.InputSample sample) { global::IHeldItem heldItem = this.inputItem as global::IHeldItem; if (heldItem != null) { heldItem.ItemPreFrame(ref sample); } return(heldItem); }
// Token: 0x0600388D RID: 14477 RVA: 0x000C8CE4 File Offset: 0x000C6EE4 internal void UnBindViewModel(global::ViewModel vm, global::IHeldItem item) { global::ModViewModelRemoveArgs modViewModelRemoveArgs = new global::ModViewModelRemoveArgs(vm, item); for (int i = 0; i < 5; i++) { this._itemMods.UnBindAsLocal(i, ref modViewModelRemoveArgs, this); } if (this._lastViewModel == vm) { this._lastViewModel = null; } }
// Token: 0x06003A9C RID: 15004 RVA: 0x000CDB78 File Offset: 0x000CBD78 protected override void DoDeactivateItem() { if (this._activeItem != null) { global::IHeldItem heldItem = this._activeItem as global::IHeldItem; if (heldItem != null) { heldItem.OnDeactivate(); } } this._activeItem = null; base.DoDeactivateItem(); }
// Token: 0x06002BC5 RID: 11205 RVA: 0x000A2C70 File Offset: 0x000A0E70 protected void Awake() { this.camera = base.camera; this.adaptiveNearPlane = base.GetComponent <global::AdaptiveNearPlane>(); int num = 0; if (this._effects != null && this._effects.Length != 0) { for (int i = 0; i < this._effects.Length; i++) { if (this._effects[i] && this._effects[i] is global::ICameraFX) { this._effects[num++] = this._effects[i]; } else { Debug.LogWarning("effect at index " + i + " is missing, null or not a ICameraFX", this); } } } Array.Resize <MonoBehaviour>(ref this._effects, num); Array.Resize <global::ICameraFX>(ref this.effects, num); if (num == 0) { Debug.LogWarning("There are no effects", this); } else { for (int j = 0; j < num; j++) { this.effects[j] = (global::ICameraFX)this._effects[j]; } } this.awoke = true; if (this.viewModel) { global::ViewModel vm = this.viewModel; this.viewModel = null; global::ItemRepresentation itemRepresentation = this.rep; this.rep = null; global::IHeldItem heldItem = this.item; this.item = null; this.SetViewModel(vm, itemRepresentation, heldItem); } base.Awake(); }
// Token: 0x06003A9B RID: 15003 RVA: 0x000CDB1C File Offset: 0x000CBD1C protected override void DoSetActiveItem(global::InventoryItem item) { global::InventoryItem activeItem = this._activeItem; this._activeItem = item; if (activeItem != null) { global::IHeldItem heldItem = activeItem.iface as global::IHeldItem; if (heldItem != null) { heldItem.OnDeactivate(); } } if (this._activeItem != null) { global::IHeldItem heldItem2 = this._activeItem as global::IHeldItem; if (heldItem2 != null) { heldItem2.OnActivate(); } } }
// Token: 0x060039C0 RID: 14784 RVA: 0x000CB758 File Offset: 0x000C9958 public override global::InventoryItem.MergeResult TryCombine(global::IInventoryItem otherItem) { global::IHeldItem heldItem = otherItem as global::IHeldItem; if (heldItem == null) { return(global::InventoryItem.MergeResult.Failed); } if (heldItem.freeModSlots <= 0) { return(global::InventoryItem.MergeResult.Failed); } if (!(otherItem.datablock is global::BulletWeaponDataBlock)) { return(base.TryCombine(otherItem)); } global::IHeldItem heldItem2 = otherItem as global::IHeldItem; if (heldItem2.FindMod(this.datablock) != -1) { return(global::InventoryItem.MergeResult.Failed); } return(global::InventoryItem.MergeResult.Combined); }
// Token: 0x060035D0 RID: 13776 RVA: 0x000C4C10 File Offset: 0x000C2E10 public ModViewModelRemoveArgs(global::ViewModel vm, global::IHeldItem item, global::ItemModRepresentation modRep) { this.vm = vm; this.item = item; this.modRep = modRep; }
// Token: 0x060035D1 RID: 13777 RVA: 0x000C4C28 File Offset: 0x000C2E28 public ModViewModelRemoveArgs(global::ViewModel vm, global::IHeldItem item) { this = new global::ModViewModelRemoveArgs(vm, item, null); }
// Token: 0x060035CF RID: 13775 RVA: 0x000C4C04 File Offset: 0x000C2E04 public ModViewModelAddArgs(global::ViewModel vm, global::IHeldItem item, bool isMesh) { this = new global::ModViewModelAddArgs(vm, item, isMesh, null); }
// Token: 0x0600388C RID: 14476 RVA: 0x000C8CD0 File Offset: 0x000C6ED0 internal void BindViewModel(global::ViewModel vm, global::IHeldItem item) { this.RunViewModelAdd(vm, item, false); this._lastViewModel = vm; }
// Token: 0x0600388B RID: 14475 RVA: 0x000C8CBC File Offset: 0x000C6EBC internal void PrepareViewModel(global::ViewModel vm, global::IHeldItem item) { this.RunViewModelAdd(vm, item, true); this._lastViewModel = vm; }
// Token: 0x06002BD0 RID: 11216 RVA: 0x000A3B30 File Offset: 0x000A1D30 public static void ReplaceViewModel(global::ViewModel vm, global::ItemRepresentation rep, global::IHeldItem item, bool butDontDestroyOld) { global::CameraFX mainCameraFX = global::CameraFX.mainCameraFX; if (mainCameraFX && mainCameraFX.viewModel != vm) { global::ViewModel viewModel = mainCameraFX.viewModel; mainCameraFX.SetViewModel(vm, rep, item); if (!butDontDestroyOld && viewModel) { Object.Destroy(viewModel.gameObject); } } }