// Token: 0x06002F97 RID: 12183 RVA: 0x000B748C File Offset: 0x000B568C static RendererNames() { for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { global::ArmorModelSlotUtility.RendererNames.Array[(int)armorModelSlot] = string.Format("{0} Renderer", armorModelSlot); } }
// Token: 0x06002F29 RID: 12073 RVA: 0x000B5F1C File Offset: 0x000B411C public ArmorModelCollection(T defaultValue) { for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { this[armorModelSlot] = defaultValue; } }
// Token: 0x06002F2F RID: 12079 RVA: 0x000B5FD8 File Offset: 0x000B41D8 public void Clear() { for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { this[armorModelSlot] = default(T); } }
// Token: 0x06002F2A RID: 12074 RVA: 0x000B5F4C File Offset: 0x000B414C public ArmorModelCollection(global::ArmorModelMemberMap <T> map) : this() { for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { this[armorModelSlot] = map[armorModelSlot]; } }
// Token: 0x17000A19 RID: 2585 public global::ArmorModel this[global::ArmorModelSlot slot] { get { return(this.collection[slot]); } }
// Token: 0x06002F2E RID: 12078 RVA: 0x000B5FB0 File Offset: 0x000B41B0 public void Clear(T value) { for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { this[armorModelSlot] = value; } }
// Token: 0x06003AA3 RID: 15011 RVA: 0x000CDCAC File Offset: 0x000CBEAC public bool GetArmorItem <IArmorItem>(global::ArmorModelSlot slot, out IArmorItem item) where IArmorItem : class, global::IInventoryItem { int slot2; switch (slot) { case global::ArmorModelSlot.Feet: slot2 = 39; break; case global::ArmorModelSlot.Legs: slot2 = 38; break; case global::ArmorModelSlot.Torso: slot2 = 37; break; case global::ArmorModelSlot.Head: slot2 = 36; break; default: item = (IArmorItem)((object)null); return(false); } global::IInventoryItem inventoryItem; if (base.GetItem(slot2, out inventoryItem)) { return(!object.ReferenceEquals(item = (inventoryItem as IArmorItem), null)); } item = (IArmorItem)((object)null); return(false); }
// Token: 0x06002F3D RID: 12093 RVA: 0x000B6274 File Offset: 0x000B4474 public ArmorModelMemberMap(global::ArmorModelMemberMap <global::ArmorModel> map) { this = default(global::ArmorModelMemberMap); for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { this[armorModelSlot] = map[armorModelSlot]; } }
// Token: 0x06002F53 RID: 12115 RVA: 0x000B6604 File Offset: 0x000B4804 public ArmorModelMemberMap(T defaultValue) { this = default(global::ArmorModelMemberMap <T>); for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { this[armorModelSlot] = defaultValue; } }
// Token: 0x06002F45 RID: 12101 RVA: 0x000B6334 File Offset: 0x000B4534 public global::ArmorModelMemberMap <global::ArmorModel> ToGenericArmorModelMap() { global::ArmorModelMemberMap <global::ArmorModel> result = default(global::ArmorModelMemberMap <global::ArmorModel>); for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { result[armorModelSlot] = this[armorModelSlot]; } return(result); }
// Token: 0x06003830 RID: 14384 RVA: 0x000C77F4 File Offset: 0x000C59F4 public static global::ArmorModel GetArmorModelByUniqueID(int uniqueID, global::ArmorModelSlot slot) { global::ArmorDataBlock armorDataBlock = global::DatablockDictionary.GetByUniqueID(uniqueID) as global::ArmorDataBlock; if (!armorDataBlock) { return(null); } return(armorDataBlock.GetArmorModel(slot)); }
// Token: 0x06002F8E RID: 12174 RVA: 0x000B738C File Offset: 0x000B558C public static global::ArmorModelSlot[] ToArray(this global::ArmorModelSlotMask slotMask) { global::ArmorModelSlot[] array = global::ArmorModelSlotUtility.Mask2SlotArray.FlagToSlotArray[(int)(slotMask & (global::ArmorModelSlotMask.Feet | global::ArmorModelSlotMask.Legs | global::ArmorModelSlotMask.Torso | global::ArmorModelSlotMask.Head))]; global::ArmorModelSlot[] array2 = new global::ArmorModelSlot[array.Length]; for (int i = 0; i < array.Length; i++) { array2[i] = array[i]; } return(array2); }
// Token: 0x060031A8 RID: 12712 RVA: 0x000BEB14 File Offset: 0x000BCD14 public bool GetArmorModelSlot(out global::ArmorModelSlot slot) { if (!this.armorModel) { slot = (global::ArmorModelSlot)4; } else { slot = this.armorModel.slot; } return(slot < (global::ArmorModelSlot)4); }
// Token: 0x06002F77 RID: 12151 RVA: 0x000B6B98 File Offset: 0x000B4D98 private bool BindArmorModel(global::ArmorModel model, global::ArmorModelSlot slot) { if (!model) { global::ArmorModel armorModel = this.defaultArmorModelGroup[slot]; return(armorModel && this.BindArmorModelCheckedNonNull(armorModel)); } if (model.slot != slot) { Debug.LogError("model.slot != " + slot, model); return(false); } return(this.BindArmorModelCheckedNonNull(model)); }
// Token: 0x060031A7 RID: 12711 RVA: 0x000BEAA4 File Offset: 0x000BCCA4 public global::ArmorModel GetArmorModel(global::ArmorModelSlot slot) { if (!this.armorModel) { Debug.LogWarning("No armorModel set to datablock " + this, this); return(null); } if (this.armorModel.slot != slot) { Debug.LogError(string.Format("The armor model for {0} is {1}. Its not for slot {2}", this, this.armorModel.slot, slot), this); return(null); } return(this.armorModel); }
// Token: 0x17000A1D RID: 2589 public global::ArmorModel this[global::ArmorModelSlot slot] { get { if (this.awake) { return(this.models[slot]); } global::ArmorModelGroup defaultArmorModelGroup = this.defaultArmorModelGroup; if (defaultArmorModelGroup) { return(defaultArmorModelGroup[slot]); } return(null); } }
// Token: 0x06002F7B RID: 12155 RVA: 0x000B6D34 File Offset: 0x000B4F34 public global::ArmorModelSlotMask BindArmorGroup(global::ArmorModelGroup group) { global::ArmorModelSlotMask armorModelSlotMask = (global::ArmorModelSlotMask)0; if (group) { for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { global::ArmorModel armorModel = group[armorModelSlot]; if (armorModel && this.BindArmorModelCheckedNonNull(armorModel)) { armorModelSlotMask |= armorModelSlot.ToMask(); } } } return(armorModelSlotMask); }
// Token: 0x06002F78 RID: 12152 RVA: 0x000B6C00 File Offset: 0x000B4E00 public global::ArmorModelSlotMask BindArmorModels(global::ArmorModelMemberMap map) { if (!this.awake) { return(this.Initialize(map, global::ArmorModelSlotMask.Feet | global::ArmorModelSlotMask.Legs | global::ArmorModelSlotMask.Torso | global::ArmorModelSlotMask.Head)); } global::ArmorModelSlotMask armorModelSlotMask = (global::ArmorModelSlotMask)0; for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { if (this.BindArmorModel(map[armorModelSlot], armorModelSlot)) { armorModelSlotMask |= armorModelSlot.ToMask(); } } return(armorModelSlotMask); }
// Token: 0x06002F72 RID: 12146 RVA: 0x000B6A44 File Offset: 0x000B4C44 private void OnDisable() { if (this.awake) { for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { ActorMeshRenderer actorMeshRenderer = this.renderers[armorModelSlot]; if (actorMeshRenderer) { actorMeshRenderer.renderer.enabled = false; } } } else if (this.originalRenderer) { this.originalRenderer.enabled = false; } }
// Token: 0x06002F82 RID: 12162 RVA: 0x000B7194 File Offset: 0x000B5394 private void OnDestroy() { if (!this.awake) { this.awake = true; } else { for (global::ArmorModelSlot armorModelSlot = global::ArmorModelSlot.Feet; armorModelSlot < (global::ArmorModelSlot)4; armorModelSlot += 1) { ActorMeshRenderer actorMeshRenderer = this.renderers[armorModelSlot]; if (actorMeshRenderer) { Object.Destroy(actorMeshRenderer.gameObject); } } } }
// Token: 0x17000A0D RID: 2573 public T this[global::ArmorModelSlot slot] { get { switch (slot) { case global::ArmorModelSlot.Feet: return(this.feet); case global::ArmorModelSlot.Legs: return(this.legs); case global::ArmorModelSlot.Torso: return(this.torso); case global::ArmorModelSlot.Head: return(this.head); default: return(default(T)); } } set { switch (slot) { case global::ArmorModelSlot.Feet: this.feet = value; break; case global::ArmorModelSlot.Legs: this.legs = value; break; case global::ArmorModelSlot.Torso: this.torso = value; break; case global::ArmorModelSlot.Head: this.head = value; break; } } }
// Token: 0x17000A11 RID: 2577 public global::ArmorModel this[global::ArmorModelSlot slot] { get { switch (slot) { case global::ArmorModelSlot.Feet: return(this.feet); case global::ArmorModelSlot.Legs: return(this.legs); case global::ArmorModelSlot.Torso: return(this.torso); case global::ArmorModelSlot.Head: return(this.head); default: return(null); } } set { switch (slot) { case global::ArmorModelSlot.Feet: this.feet = (global::ArmorModelFeet)value; break; case global::ArmorModelSlot.Legs: this.legs = (global::ArmorModelLegs)value; break; case global::ArmorModelSlot.Torso: this.torso = (global::ArmorModelTorso)value; break; case global::ArmorModelSlot.Head: this.head = (global::ArmorModelHead)value; break; } } }
// Token: 0x06002F81 RID: 12161 RVA: 0x000B70C0 File Offset: 0x000B52C0 private bool BindArmorModelCheckedNonNull(global::ArmorModel model) { global::ArmorModelSlot slot = model.slot; if (!global::ArmorModelRenderer.rebindingCensorship) { global::ArmorModel armorModel = this.models[slot]; if (armorModel == model) { return(false); } } ActorMeshRenderer actorMeshRenderer = this.renderers[slot]; global::ArmorModel armorModel2; if (global::ArmorModelRenderer.censored) { armorModel2 = model.censoredModel; if (!armorModel2) { armorModel2 = model; } } else { armorModel2 = model; } if (actorMeshRenderer.actorRig != armorModel2.actorRig) { return(false); } if (!base.enabled) { actorMeshRenderer.renderer.enabled = true; } actorMeshRenderer.Bind(armorModel2.actorMeshInfo, armorModel2.sharedMaterials); if (!base.enabled) { actorMeshRenderer.renderer.enabled = false; } this.models[slot] = model; return(true); }
// Token: 0x06002F94 RID: 12180 RVA: 0x000B744C File Offset: 0x000B564C public static string GetRendererName(this global::ArmorModelSlot slot) { return((slot >= (global::ArmorModelSlot)4) ? "Armor Renderer" : global::ArmorModelSlotUtility.RendererNames.Array[(int)slot]); }
// Token: 0x06002F8D RID: 12173 RVA: 0x000B7370 File Offset: 0x000B5570 public static bool Contains(this global::ArmorModelSlot slot, global::ArmorModelSlotMask slotMask) { return(slot < (global::ArmorModelSlot)4 && (slotMask & (global::ArmorModelSlotMask)(1 << (int)slot)) != (global::ArmorModelSlotMask)0); }
// Token: 0x06002F43 RID: 12099 RVA: 0x000B6318 File Offset: 0x000B4518 public global::ArmorModel GetArmorModel(global::ArmorModelSlot slot) { return(this[slot]); }
// Token: 0x06002F0E RID: 12046 RVA: 0x000B5BA8 File Offset: 0x000B3DA8 internal ArmorModel(global::ArmorModelSlot slot) : base(slot) { }
// Token: 0x06002F8A RID: 12170 RVA: 0x000B733C File Offset: 0x000B553C public static global::ArmorModelSlotMask ToMask(this global::ArmorModelSlot slot) { return((global::ArmorModelSlotMask)(1 << (int)slot & 15)); }
// Token: 0x06002F93 RID: 12179 RVA: 0x000B743C File Offset: 0x000B563C public static int GetUnmaskedSlotCount(this global::ArmorModelSlot slot) { return((slot >= (global::ArmorModelSlot)4) ? 4 : 3); }
// Token: 0x06002F95 RID: 12181 RVA: 0x000B7468 File Offset: 0x000B5668 public static Type GetArmorModelType(this global::ArmorModelSlot slot) { return((slot >= (global::ArmorModelSlot)4) ? null : global::ArmorModelSlotUtility.ClassToArmorModelSlot.ArmorModelSlotToType[slot]); }