// Token: 0x06000260 RID: 608 RVA: 0x00013508 File Offset: 0x00011708 private void SpawnLoot(Vector3 center) { ZDO zdo = this.m_nview.GetZDO(); int @int = zdo.GetInt("drops", 0); if (@int <= 0) { return; } List <KeyValuePair <GameObject, int> > list = new List <KeyValuePair <GameObject, int> >(); for (int i = 0; i < @int; i++) { int int2 = zdo.GetInt("drop_hash" + i, 0); int int3 = zdo.GetInt("drop_amount" + i, 0); GameObject prefab = ZNetScene.instance.GetPrefab(int2); if (prefab == null) { ZLog.LogWarning("Ragdoll: Missing prefab:" + int2 + " when dropping loot"); } else { list.Add(new KeyValuePair <GameObject, int>(prefab, int3)); } } CharacterDrop.DropItems(list, center + Vector3.up * 0.75f, 0.5f); }
// Token: 0x0600108D RID: 4237 RVA: 0x00075570 File Offset: 0x00073770 private void Load() { if (this.m_nview == null) { return; } DateTime now = DateTime.Now; ZLog.Log("Loading dungeon"); ZDO zdo = this.m_nview.GetZDO(); int @int = zdo.GetInt("rooms", 0); for (int i = 0; i < @int; i++) { string text = "room" + i.ToString(); int int2 = zdo.GetInt(text, 0); Vector3 vec = zdo.GetVec3(text + "_pos", Vector3.zero); Quaternion quaternion = zdo.GetQuaternion(text + "_rot", Quaternion.identity); DungeonDB.RoomData room = DungeonDB.instance.GetRoom(int2); if (room == null) { ZLog.LogWarning("Missing room:" + int2); } else { this.PlaceRoom(room, vec, quaternion, null, ZoneSystem.SpawnMode.Client); } } ZLog.Log("Dungeon loaded " + @int); ZLog.Log("Dungeon load time " + (DateTime.Now - now).TotalMilliseconds + " ms"); }
// Token: 0x060006DC RID: 1756 RVA: 0x00038A80 File Offset: 0x00036C80 public static void LoadFromZDO(ItemDrop.ItemData itemData, ZDO zdo) { itemData.m_durability = zdo.GetFloat("durability", itemData.m_durability); itemData.m_stack = zdo.GetInt("stack", itemData.m_stack); itemData.m_quality = zdo.GetInt("quality", itemData.m_quality); itemData.m_variant = zdo.GetInt("variant", itemData.m_variant); itemData.m_crafterID = zdo.GetLong("crafterID", itemData.m_crafterID); itemData.m_crafterName = zdo.GetString("crafterName", itemData.m_crafterName); }
/// <summary> /// Gets "faction" from zdo. /// </summary> /// <remarks>Spawn That setting.</remarks> public static Character.Faction?GetFaction(this ZDO zdo) { var faction = zdo.GetInt(FactionHash, -1); if (faction < 0) { return(null); } return((Character.Faction)faction); }
public void unequip() { if (isFilled()) { GameObject itemPrefab = ObjectDB.instance.GetItemPrefab(equippedItem); if ((bool)((UnityEngine.Object)itemPrefab)) { GameObject gameObject = UnityEngine.Object.Instantiate <GameObject>(itemPrefab, this.armorStand.m_dropSpawnPoint.position, this.armorStand.m_dropSpawnPoint.rotation); var itemData = gameObject.GetComponent <ItemDrop>().m_itemData; itemData.m_durability = zdo.GetFloat($"{zdoVar}durability", itemData.m_durability); itemData.m_stack = zdo.GetInt($"{zdoVar}stack", itemData.m_stack); itemData.m_quality = zdo.GetInt($"{zdoVar}quality", itemData.m_quality); itemData.m_variant = zdo.GetInt($"{zdoVar}variant", itemData.m_variant); itemData.m_crafterID = zdo.GetLong($"{zdoVar}crafterID", itemData.m_crafterID); itemData.m_crafterName = zdo.GetString($"{zdoVar}crafterName", itemData.m_crafterName); this.armorStand.m_effects.Create(this.armorStand.m_dropSpawnPoint.position, Quaternion.identity, null, 1f); zdo.Set(zdoVar, ""); zdo.Set(zdoVariantVar, 0); } } }
private static bool DoCheck(Player player, ZDO zdo, string equipKey, string legendaryDataKey, ref ItemDrop.ItemData itemData) { var zdoLegendaryID = zdo.GetString(legendaryDataKey); if (string.IsNullOrEmpty(zdoLegendaryID)) { var hadItem = itemData != null; if (hadItem) { ForceResetVisEquipment(player, itemData); } itemData = null; return(hadItem); } var currentLegendaryID = itemData?.GetMagicItem()?.LegendaryID; if (currentLegendaryID == zdoLegendaryID) { return(false); } var itemHash = zdo.GetInt(equipKey); var itemPrefab = ObjectDB.instance.GetItemPrefab(itemHash); if (itemPrefab?.GetComponent <ItemDrop>()?.m_itemData is ItemDrop.ItemData targetItemData) { itemData = new ExtendedItemData(targetItemData); itemData.m_durability = float.PositiveInfinity; var magicItemComponent = itemData.Extended().AddComponent <MagicItemComponent>(); var stubMagicItem = new MagicItem { Rarity = ItemRarity.Legendary, LegendaryID = zdoLegendaryID }; magicItemComponent.SetMagicItem(stubMagicItem); ForceResetVisEquipment(player, itemData); } return(false); }
// Token: 0x060009C5 RID: 2501 RVA: 0x00046F2C File Offset: 0x0004512C private void SyncParameters() { ZDO zdo = this.m_nview.GetZDO(); if (!this.m_nview.IsOwner()) { for (int i = 0; i < this.m_boolHashes.Length; i++) { int num = this.m_boolHashes[i]; bool @bool = zdo.GetBool(438569 + num, this.m_boolDefaults[i]); this.m_animator.SetBool(num, @bool); } for (int j = 0; j < this.m_floatHashes.Length; j++) { int num2 = this.m_floatHashes[j]; float @float = zdo.GetFloat(438569 + num2, this.m_floatDefaults[j]); if (this.m_smoothCharacterSpeeds && (num2 == ZSyncAnimation.m_forwardSpeedID || num2 == ZSyncAnimation.m_sidewaySpeedID)) { this.m_animator.SetFloat(num2, @float, 0.2f, Time.fixedDeltaTime); } else { this.m_animator.SetFloat(num2, @float); } } for (int k = 0; k < this.m_intHashes.Length; k++) { int num3 = this.m_intHashes[k]; int @int = zdo.GetInt(438569 + num3, this.m_intDefaults[k]); this.m_animator.SetInteger(num3, @int); } float float2 = zdo.GetFloat(ZSyncAnimation.m_animSpeedID, 1f); this.m_animator.speed = float2; return; } zdo.Set(ZSyncAnimation.m_animSpeedID, this.m_animator.speed); }
// Token: 0x06000B93 RID: 2963 RVA: 0x000531AD File Offset: 0x000513AD private bool CheckBase(RandomEvent ev, ZDO zdo) { return(ev.m_nearBaseOnly && zdo.GetInt("baseValue", 0) >= 3); }
// Token: 0x060002C0 RID: 704 RVA: 0x00015C6C File Offset: 0x00013E6C private void UpdateEquipmentVisuals() { int hash = 0; int rightHandEquiped = 0; int chestEquiped = 0; int legEquiped = 0; int hash2 = 0; int beardEquiped = 0; int num = 0; int hash3 = 0; int utilityEquiped = 0; int leftItem = 0; int rightItem = 0; int variant = this.m_shoulderItemVariant; int variant2 = this.m_leftItemVariant; int leftVariant = this.m_leftBackItemVariant; ZDO zdo = this.m_nview.GetZDO(); if (zdo != null) { hash = zdo.GetInt("LeftItem", 0); rightHandEquiped = zdo.GetInt("RightItem", 0); chestEquiped = zdo.GetInt("ChestItem", 0); legEquiped = zdo.GetInt("LegItem", 0); hash2 = zdo.GetInt("HelmetItem", 0); hash3 = zdo.GetInt("ShoulderItem", 0); utilityEquiped = zdo.GetInt("UtilityItem", 0); if (this.m_isPlayer) { beardEquiped = zdo.GetInt("BeardItem", 0); num = zdo.GetInt("HairItem", 0); leftItem = zdo.GetInt("LeftBackItem", 0); rightItem = zdo.GetInt("RightBackItem", 0); variant = zdo.GetInt("ShoulderItemVariant", 0); variant2 = zdo.GetInt("LeftItemVariant", 0); leftVariant = zdo.GetInt("LeftBackItemVariant", 0); } } else { if (!string.IsNullOrEmpty(this.m_leftItem)) { hash = this.m_leftItem.GetStableHashCode(); } if (!string.IsNullOrEmpty(this.m_rightItem)) { rightHandEquiped = this.m_rightItem.GetStableHashCode(); } if (!string.IsNullOrEmpty(this.m_chestItem)) { chestEquiped = this.m_chestItem.GetStableHashCode(); } if (!string.IsNullOrEmpty(this.m_legItem)) { legEquiped = this.m_legItem.GetStableHashCode(); } if (!string.IsNullOrEmpty(this.m_helmetItem)) { hash2 = this.m_helmetItem.GetStableHashCode(); } if (!string.IsNullOrEmpty(this.m_shoulderItem)) { hash3 = this.m_shoulderItem.GetStableHashCode(); } if (!string.IsNullOrEmpty(this.m_utilityItem)) { utilityEquiped = this.m_utilityItem.GetStableHashCode(); } if (this.m_isPlayer) { if (!string.IsNullOrEmpty(this.m_beardItem)) { beardEquiped = this.m_beardItem.GetStableHashCode(); } if (!string.IsNullOrEmpty(this.m_hairItem)) { num = this.m_hairItem.GetStableHashCode(); } if (!string.IsNullOrEmpty(this.m_leftBackItem)) { leftItem = this.m_leftBackItem.GetStableHashCode(); } if (!string.IsNullOrEmpty(this.m_rightBackItem)) { rightItem = this.m_rightBackItem.GetStableHashCode(); } } } bool flag = false; flag = (this.SetRightHandEquiped(rightHandEquiped) || flag); flag = (this.SetLeftHandEquiped(hash, variant2) || flag); flag = (this.SetChestEquiped(chestEquiped) || flag); flag = (this.SetLegEquiped(legEquiped) || flag); flag = (this.SetHelmetEquiped(hash2, num) || flag); flag = (this.SetShoulderEquiped(hash3, variant) || flag); flag = (this.SetUtilityEquiped(utilityEquiped) || flag); if (this.m_isPlayer) { flag = (this.SetBeardEquiped(beardEquiped) || flag); flag = (this.SetBackEquiped(leftItem, rightItem, leftVariant) || flag); if (this.m_helmetHideHair) { num = 0; } flag = (this.SetHairEquiped(num) || flag); } if (flag) { this.UpdateLodgroup(); } }