private void SetPetsInfo(int petType) { ClearPetsInfo(); int num = 0; //先显示可以召唤的宠物数据 List <SysPet> unOwnPet = new List <SysPet>(); foreach (SysPet pet in PetLogic.SysPets) { if (petType == 0 || pet.type == petType) { if (PetLogic.CanOwn(pet)) { num++; SetPetInfo(pet, num, true); } else if (!PetLogic.IsOwn(pet)) { unOwnPet.Add(pet); } } } //再显示已经拥有的宠物 foreach (PPet pet in Singleton <PetMode> .Instance.AllPets) { SysPet spet = BaseDataMgr.instance.GetDataById <SysPet>(pet.petId); if (petType == 0 || spet.type == petType) { num++; SetPetInfo(spet, num, true); } } //已拥有和可召唤的宠物数 petNum = num; //再显示未拥有的宠物 foreach (SysPet pet in unOwnPet) { num++; SetPetInfo(pet, num, false); } SetFGTitlePos(); scrollView.ResetPosition(); SetPetPublicInfo(); }