Fix AssignProfessionTask not target into lambda

This commit is contained in:
IzzelAliz 2020-06-16 11:29:30 +08:00
parent b3dd590060
commit 1d3f4169c0

View File

@ -14,7 +14,8 @@ import org.spongepowered.asm.mixin.injection.Redirect;
@Mixin(AssignProfessionTask.class) @Mixin(AssignProfessionTask.class)
public class AssignProfessionTaskMixin { public class AssignProfessionTaskMixin {
@Redirect(method = "startExecuting", at = @At(value = "INVOKE", target = "Lnet/minecraft/entity/merchant/villager/VillagerEntity;setVillagerData(Lnet/minecraft/entity/merchant/villager/VillagerData;)V")) @SuppressWarnings("UnresolvedMixinReference")
@Redirect(method = "*(Lnet/minecraft/entity/merchant/villager/VillagerEntity;Lnet/minecraft/world/server/ServerWorld;Lnet/minecraft/entity/merchant/villager/VillagerProfession;)V", at = @At(value = "INVOKE", target = "Lnet/minecraft/entity/merchant/villager/VillagerEntity;setVillagerData(Lnet/minecraft/entity/merchant/villager/VillagerData;)V"))
private void arclight$careerChangeHook(VillagerEntity villagerEntity, VillagerData villagerData) { private void arclight$careerChangeHook(VillagerEntity villagerEntity, VillagerData villagerData) {
VillagerProfession profession = villagerData.getProfession(); VillagerProfession profession = villagerData.getProfession();
VillagerCareerChangeEvent event = CraftEventFactory.callVillagerCareerChangeEvent(villagerEntity, CraftVillager.nmsToBukkitProfession(profession), VillagerCareerChangeEvent.ChangeReason.EMPLOYED); VillagerCareerChangeEvent event = CraftEventFactory.callVillagerCareerChangeEvent(villagerEntity, CraftVillager.nmsToBukkitProfession(profession), VillagerCareerChangeEvent.ChangeReason.EMPLOYED);