From e3b0b7f1e11ff0a69e259efddda314e2d0bae917 Mon Sep 17 00:00:00 2001
From: Zoey76 <zoey_76@msn.com>
Date: Fri, 24 Sep 2021 03:44:44 -0300
Subject: [PATCH] Update to Java 17

Updated BitBucket pipeline.
Updated Maven Wrapper.

Updated SLF4J 1.7.31 to 1.7.32.
Updated JUnit 5.7.2 to 5.8.0.
Updated Mockito 3.11.2 to 3.12.4.
---
 .mvn/wrapper/maven-wrapper.properties                  |  2 +-
 .settings/org.eclipse.jdt.core.prefs                   |  6 +++---
 bitbucket-pipelines.yml                                |  4 ++--
 pom.xml                                                | 10 +++++-----
 .../datapack/ai/npc/NpcBuffers/NpcBufferAI.java        |  4 +++-
 .../datapack/ai/npc/NpcBuffers/NpcBufferSkillData.java |  3 ++-
 6 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties
index 5dd302488a..f5a0cd1573 100644
--- a/.mvn/wrapper/maven-wrapper.properties
+++ b/.mvn/wrapper/maven-wrapper.properties
@@ -1,2 +1,2 @@
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.3/apache-maven-3.6.3-bin.zip
+distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.2/apache-maven-3.8.2-bin.zip
 wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
index de6fcf51b8..2f35de3bcd 100644
--- a/.settings/org.eclipse.jdt.core.prefs
+++ b/.settings/org.eclipse.jdt.core.prefs
@@ -8,8 +8,8 @@ org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
 org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
 org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
 org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=16
-org.eclipse.jdt.core.compiler.compliance=16
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
+org.eclipse.jdt.core.compiler.compliance=17
 org.eclipse.jdt.core.compiler.problem.APILeak=warning
 org.eclipse.jdt.core.compiler.problem.annotatedTypeArgumentToUnannotated=info
 org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
@@ -106,7 +106,7 @@ org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
 org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
 org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
 org.eclipse.jdt.core.compiler.release=disabled
-org.eclipse.jdt.core.compiler.source=16
+org.eclipse.jdt.core.compiler.source=17
 org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false
 org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
 org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
diff --git a/bitbucket-pipelines.yml b/bitbucket-pipelines.yml
index e5f1a55597..43b70dd8ea 100644
--- a/bitbucket-pipelines.yml
+++ b/bitbucket-pipelines.yml
@@ -1,4 +1,4 @@
-image: openjdk:14-alpine
+image: openjdk:17-alpine
 
 pipelines:
    branches:
@@ -23,7 +23,7 @@ pipelines:
          - step:
             deployment: Production
             script:
-             - pipe: atlassian/ftp-deploy:0.2.3
+             - pipe: atlassian/ftp-deploy:0.3.6
                variables:
                  USER: $FTP_USER
                  PASSWORD: $FTP_PASSWORD
diff --git a/pom.xml b/pom.xml
index fae5374294..525ed4fda0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,16 +5,16 @@
 	<version>2.6.3.0-SNAPSHOT</version>
 	<name>L2J DataPack</name>
 	<properties>
-		<maven.compiler.source>16</maven.compiler.source>
-		<maven.compiler.target>16</maven.compiler.target>
+		<maven.compiler.source>17</maven.compiler.source>
+		<maven.compiler.target>17</maven.compiler.target>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-		<slf4j.version>1.7.31</slf4j.version>
+		<slf4j.version>1.7.32</slf4j.version>
 		<!-- L2J -->
 		<l2j-server-game.version>2.6.3.0-SNAPSHOT</l2j-server-game.version>
 		<!-- Test -->
-		<junit-jupiter.version>5.7.2</junit-jupiter.version>
-		<mockito.version>3.11.2</mockito.version>
+		<junit-jupiter.version>5.8.0</junit-jupiter.version>
+		<mockito.version>3.12.4</mockito.version>
 		<!-- Plugins -->
 		<maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
 		<maven-jar-plugin.version>3.2.0</maven-jar-plugin.version>
diff --git a/src/main/java/com/l2jserver/datapack/ai/npc/NpcBuffers/NpcBufferAI.java b/src/main/java/com/l2jserver/datapack/ai/npc/NpcBuffers/NpcBufferAI.java
index 4f461c6876..f958491190 100644
--- a/src/main/java/com/l2jserver/datapack/ai/npc/NpcBuffers/NpcBufferAI.java
+++ b/src/main/java/com/l2jserver/datapack/ai/npc/NpcBuffers/NpcBufferAI.java
@@ -24,6 +24,7 @@ import com.l2jserver.gameserver.model.actor.L2Npc;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 import com.l2jserver.gameserver.model.actor.instance.L2TamedBeastInstance;
 import com.l2jserver.gameserver.model.skills.Skill;
+import com.l2jserver.gameserver.model.skills.targets.AffectObjectStaticImpl;
 import com.l2jserver.gameserver.model.zone.ZoneId;
 import com.l2jserver.gameserver.util.Util;
 
@@ -69,7 +70,8 @@ public class NpcBufferAI implements Runnable {
 			}
 			case RANGE: {
 				for (L2Character target : _npc.getKnownList().getKnownCharactersInRadius(skill.getAffectRange())) {
-					switch (_skillData.getAffectObject()) {
+					final var affectObject = (AffectObjectStaticImpl) _skillData.getAffectObject();
+					switch (affectObject) {
 						case FRIEND: {
 							if (isFriendly(player, target) && !target.isDead()) {
 								skill.applyEffects(target, target);
diff --git a/src/main/java/com/l2jserver/datapack/ai/npc/NpcBuffers/NpcBufferSkillData.java b/src/main/java/com/l2jserver/datapack/ai/npc/NpcBuffers/NpcBufferSkillData.java
index 9c18602e07..a8df107b1d 100644
--- a/src/main/java/com/l2jserver/datapack/ai/npc/NpcBuffers/NpcBufferSkillData.java
+++ b/src/main/java/com/l2jserver/datapack/ai/npc/NpcBuffers/NpcBufferSkillData.java
@@ -22,6 +22,7 @@ import com.l2jserver.gameserver.model.StatsSet;
 import com.l2jserver.gameserver.model.holders.SkillHolder;
 import com.l2jserver.gameserver.model.skills.Skill;
 import com.l2jserver.gameserver.model.skills.targets.AffectObject;
+import com.l2jserver.gameserver.model.skills.targets.AffectObjectStaticImpl;
 import com.l2jserver.gameserver.model.skills.targets.AffectScope;
 
 /**
@@ -39,7 +40,7 @@ public class NpcBufferSkillData {
 		_initialDelay = set.getInt("initialDelay", 0) * 1000;
 		_delay = set.getInt("delay") * 1000;
 		_affectScope = set.getEnum("affectScope", AffectScope.class);
-		_affectObject = set.getEnum("affectObject", AffectObject.class);
+		_affectObject = set.getEnum("affectObject", AffectObjectStaticImpl.class);
 	}
 	
 	public Skill getSkill() {
-- 
GitLab