java10
kız çava bana kahve yap
- En iyi cevaplar
- 0
canım sıkıldı ve iki itemstack in aynı olup olmadığını test etmek için method yazdım faydalı olucaktır gui ile uğraşan arkadaşlara, algoritması biraz saçma gelebilir belki daha sağlıklısını yaparsınız ama gece 1 de benden bu kadar .-.
o kadar if i kim geçer ki 
test edildi*
Etiketler: @KilllerDragons , @S4RP , @Za_ion101 , @Elfen , @Atomy , @Onurbey034 , @Spygrand , @ByAehn , @GodofMilker , @Frodox , @ShortPallMall , @MCTDark , @Depth
PHP:
public static boolean ItemStackKarsilastirma(ItemStack is1, ItemStack is2) {
if (is1 != null && is2 != null) {
if ((!is1.hasItemMeta() && !is2.hasItemMeta()) || (is1.hasItemMeta() && is2.hasItemMeta())) {
ItemMeta m1 = is1.getItemMeta();
ItemMeta m2 = is2.getItemMeta();
if ((!m1.hasDisplayName() && !m2.hasDisplayName()) || (m1.hasDisplayName() && m2.hasDisplayName())) {
if (m1.hasDisplayName() && m2.hasDisplayName()) {
if (!Objects.equals(m1.getDisplayName(), m2.getDisplayName())) {
return false;
}
}
} else {
return false;
}
if ((m1.hasLore() && m2.hasLore()) || (!m1.hasLore() && m2.hasLore())) {
if (m1.hasLore() && m2.hasLore()) {
List<String> lore1 = m2.getLore();
List<String> lore2 = m2.getLore();
if (lore1.size() != lore2.size()) {
return false;
}
int size = lore1.size();
for (int i = 0; i < size; i++) {
if (!Objects.equals(lore1.get(i), lore2.get(i))) {
return false;
}
}
}
} else {
return false;
}
if ((m1.hasEnchants() && m2.hasEnchants()) || (!m1.hasEnchants() && !m2.hasEnchants())) {
if (m1.hasEnchants() && m2.hasEnchants()) {
Enchantment[] set1 = (Enchantment[]) m1.getEnchants().keySet().toArray();
Enchantment[] set2 = (Enchantment[]) m2.getEnchants().keySet().toArray();
if (set1.length != set2.length) {
return false;
}
int count = 0;
for (int a = 0; a < set1.length; a++) {
for (int b = 0; b < set2.length; b++) {
if (!Objects.equals(set1[a], set2[b])) continue;
count++;
}
}
if (count != set1.length) {
return false;
}
}
} else {
return false;
}
if ((m1.getItemFlags().isEmpty() && m2.getItemFlags().isEmpty()) || (!m1.getItemFlags().isEmpty() && !m2.getItemFlags().isEmpty())) {
if (!m1.getItemFlags().isEmpty() && !m2.getItemFlags().isEmpty()) {
if (m1.getItemFlags().size() == m2.getItemFlags().size()) {
ItemFlag[] if1 = (ItemFlag[]) m1.getItemFlags().toArray();
ItemFlag[] if2 = (ItemFlag[]) m2.getItemFlags().toArray();
int count = 0;
for (int a = 0; a < if1.length; a++) {
for (int b = 0; b < if2.length; b++) {
if (!Objects.equals(if1[a], if2[b])) continue;
count++;
}
}
if (count != if1.length) {
return false;
}
} else {
return false;
}
}
} else {
return false;
}
} else {
return false;
}
} else {
return false;
}
return true;
}
test edildi*
Etiketler: @KilllerDragons , @S4RP , @Za_ion101 , @Elfen , @Atomy , @Onurbey034 , @Spygrand , @ByAehn , @GodofMilker , @Frodox , @ShortPallMall , @MCTDark , @Depth
Son düzenleme: