public override JSONObject Serialize() { JSONObject obj = new JSONObject(); obj.Add(cAppraise, Appraise.Serialize()); obj.Add(cBalance, Balance.Serialize()); obj.Add(cBluff, Bluff.Serialize()); obj.Add(cClimb, Climb.Serialize()); obj.Add(cConcentration, Concentration.Serialize()); obj.Add(cDecipherScript, DecipherScript.Serialize()); obj.Add(cDiplomacy, Diplomacy.Serialize()); obj.Add(cDisableDevice, DisableDevice.Serialize()); obj.Add(cDisguise, Disguise.Serialize()); obj.Add(cEscapeArtist, EscapeArtist.Serialize()); obj.Add(cForgery, Forgery.Serialize()); obj.Add(cGatherInformation, GatherInformation.Serialize()); obj.Add(cHandleAnimal, HandleAnimal.Serialize()); obj.Add(cHeal, Heal.Serialize()); obj.Add(cHide, Hide.Serialize()); obj.Add(cIntimidate, Intimidate.Serialize()); obj.Add(cJump, Jump.Serialize()); obj.Add(cListen, Listen.Serialize()); obj.Add(cMoveSilently, MoveSilently.Serialize()); obj.Add(cOpenLock, OpenLock.Serialize()); obj.Add(cRide, Ride.Serialize()); obj.Add(cSearch, Search.Serialize()); obj.Add(cSenseMotive, SenseMotive.Serialize()); obj.Add(cSleightOfHand, SleightOfHand.Serialize()); obj.Add(cSpellCraft, SpellCraft.Serialize()); obj.Add(cSpot, Spot.Serialize()); obj.Add(cSurvival, Survival.Serialize()); obj.Add(cSwim, Swim.Serialize()); obj.Add(cTumble, Tumble.Serialize()); obj.Add(cUseMagicDevice, UseMagicDevice.Serialize()); obj.Add(cUseRope, UseRope.Serialize()); return(obj); }
private IEnumerator GetViews() { while (true) { try { localPlayer = FindObjectOfType <LocalPlayerCharacterView>(); } catch (Exception e) { Core.Log($"[ESP - {e}"); } yield return(new WaitForSeconds(0.2f)); try { players = FindObjectsOfType <PlayerCharacterView>(); } catch (Exception e) { Core.Log($"[ESP - {e}"); } yield return(new WaitForSeconds(1f)); try { var harvestables = FindObjectsOfType <HarvestableObjectView>().Where(view => { var harvestableObject = view.GetHarvestableObject(); var resourceType = harvestableObject.GetResourceType().Value; var tier = (Tier)harvestableObject.GetTier(); var enchantmentLevel = (EnchantmentLevel)harvestableObject.GetRareState(); var info = new GatherInformation(resourceType, tier, enchantmentLevel); return(enchantmentLevel > 0 && gatherInformations[info]); }).ToArray(); var mobs = FindObjectsOfType <MobView>().Where(view => { var resourceType = view.GetResourceType(); if (!resourceType.HasValue) { return(false); } var tier = (Tier)view.GetTier(); var enchantmentLevel = (EnchantmentLevel)view.GetRareState(); var info = new GatherInformation(resourceType.Value, tier, enchantmentLevel); return(enchantmentLevel > 0 && gatherInformations[info]); }).ToArray(); resources = harvestables.OfType <SimulationObjectView>().Union(mobs.OfType <SimulationObjectView>()).ToArray(); } catch (Exception e) { Core.Log($"[ESP - {e}"); } yield return(new WaitForSeconds(1f)); } }