fix duplicated dependent mod
This commit is contained in:
parent
eb6c6a6c6d
commit
d665ebd8a5
|
@ -120,7 +120,7 @@ public class RemoteMod {
|
||||||
|
|
||||||
private final String id;
|
private final String id;
|
||||||
|
|
||||||
private RemoteMod remoteMod = null;
|
private transient RemoteMod remoteMod = null;
|
||||||
|
|
||||||
private Dependency(DependencyType type, RemoteModRepository remoteModRepository, String modid) {
|
private Dependency(DependencyType type, RemoteModRepository remoteModRepository, String modid) {
|
||||||
this.type = type;
|
this.type = type;
|
||||||
|
@ -165,6 +165,26 @@ public class RemoteMod {
|
||||||
}
|
}
|
||||||
return this.remoteMod;
|
return this.remoteMod;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) return true;
|
||||||
|
if (o == null || getClass() != o.getClass()) return false;
|
||||||
|
|
||||||
|
Dependency that = (Dependency) o;
|
||||||
|
|
||||||
|
if (type != that.type) return false;
|
||||||
|
if (!remoteModRepository.equals(that.remoteModRepository)) return false;
|
||||||
|
return id.equals(that.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
int result = type.hashCode();
|
||||||
|
result = 31 * result + remoteModRepository.hashCode();
|
||||||
|
result = 31 * result + id.hashCode();
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public enum Type {
|
public enum Type {
|
||||||
|
|
|
@ -574,7 +574,7 @@ public class CurseAddon implements RemoteMod.IMod {
|
||||||
throw new IllegalStateException("Broken datas.");
|
throw new IllegalStateException("Broken datas.");
|
||||||
}
|
}
|
||||||
return RemoteMod.Dependency.ofGeneral(RELATION_TYPE.get(dependency.getRelationType()), CurseForgeRemoteModRepository.MODS, Integer.toString(dependency.getModId()));
|
return RemoteMod.Dependency.ofGeneral(RELATION_TYPE.get(dependency.getRelationType()), CurseForgeRemoteModRepository.MODS, Integer.toString(dependency.getModId()));
|
||||||
}).filter(Objects::nonNull).collect(Collectors.toList()),
|
}).distinct().filter(Objects::nonNull).collect(Collectors.toList()),
|
||||||
gameVersions.stream().filter(ver -> ver.startsWith("1.") || ver.contains("w")).collect(Collectors.toList()),
|
gameVersions.stream().filter(ver -> ver.startsWith("1.") || ver.contains("w")).collect(Collectors.toList()),
|
||||||
gameVersions.stream().flatMap(version -> {
|
gameVersions.stream().flatMap(version -> {
|
||||||
if ("fabric".equalsIgnoreCase(version)) return Stream.of(ModLoaderType.FABRIC);
|
if ("fabric".equalsIgnoreCase(version)) return Stream.of(ModLoaderType.FABRIC);
|
||||||
|
|
Loading…
Reference in New Issue