사이트 로그인
2024.04.08 02:14
altsettings를 사용하여 레벨 제한 맵 구성
l1j\server\Config.java
INIT_BOSS_SPAWN; // 아래로 추가
public static boolean LEVEL_FOR_MAP; // 레벨이 너무 높으면 텔되는 지도 지정
public static int LEVEL_IN_MAP; // 지도 레벨 제한
public static int MAPS_ID; // 지도 번호 public static int TELEPORT_TO_LOCX; // 지도
지점 X로 전달됩니다.
static int TELEPORT_TO_LOCY; //지도의 Y 지점으로 이동합니다.
public static int TELEPORT_TO_MAPID; //어느 지도로 이동할지입니다.
----
INIT_BOSS_SPAWN = Boolean.parseBoolean(altSettings.getProperty( // 밑으로 찾아서 이어서 수정
"InitBossSpawn", "true")); //아래로 추가
LEVEL_FOR_MAP = Boolean.parseBoolean(altSettings.getProperty(
"LevelOnOrOff", "false")); //레벨이 너무 높음 팅기는 맵 스위치 추가
LEVEL_IN_MAP = Integer.parseInt(altSettings.getProperty(
"TeleporttoMaxLevel", "52")) ; //맵 레벨 제한 추가
MAPS_ID = Integer.parseInt(altSettings.getProperty(
"MaxLeveLInMapId", "5801")); //맵 번호 추가
TELEPORT_TO_LOCX = Integer.parseInt(altSettings.getProperty(
"TeleportToLocX", "32833") ) ; //add는 지도의 X 지점으로 텔
TELEPORT_TO_LOCY = Integer.parseInt(altSettings.getProperty(
"TeleportToLocY", "32831")); //add는 지도의 Y 지점으로 텔.
TELEPORT_TO_MAPID = Integer. parseInt(altSettings.getProperty (
"TeleportToMapId", "8011")); //추가할 지도는 무엇입니까?
-------------------------------- // 아래로 찾아서 수정
} else {
false를 반환;
}
true를 반환;
}
private Config() {
}
}
이 단락 위에서 적절한 위치를 찾아 다음을 삽입
} else if (pName.equalsIgnoreCase("LevelOnOrOff")) {
LEVEL_FOR_MAP = Boolean.valueOf(pValue); //너무 높은 레벨을 추가하는 팅기는 맵 스위치
} else if (pName.equalsIgnoreCase("TeleporttoMaxLevel")) {
LEVEL_IN_MAP = Integer . parseInt(pValue); //맵 레벨 제한 추가
}else if (pName.equalsIgnoreCase("MaxLeveLInMapId")) {
MAPS_ID = Integer.parseInt(pValue); //맵 번호 추가
}else if (pName.equalsIgnoreCase("TeleportToLocX ") )) {
TELEPORT_TO_LOCX = Integer.parseInt(pValue); //추가는 맵 포인트 X로 전달됩니다
. }else if (pName.equalsIgnoreCase("TeleportToLocY")) {
TELEPORT_TO_LOCY = Integer.parseInt(pValue); //추가는 전달됩니다. 지도에서 Y를 가리키도록
}else if (pName.equalsIgnoreCase("TeleportToMapId")) {
TELEPORT_TO_MAPID = Integer.parseInt(pValue); //어떤 지도에 추가할 것인가?
괄호 위치를 바꿔야 한다는 점 기억하세요~!!
수정이 완료되면 파일을 변환하여 코어에 push한 후, 다음과 같은 수정을 진행합니다.
l1j\서버\서버\모델\인스턴스\L1MonsterInstance.java
이 단락을 찾아보세요
if (pc.getCurrentHp() || pc.isMonitor() || pc.isGhost()) {
계속;
}
아래로 추가
//너무 높은 레벨의 나가는 맵 스위치
if(Config.LEVEL_FOR_MAP) {
if (pc.getMapId() == Config.MAPS_ID
&& pc.getLevel() >= Config.LEVEL_IN_MAP
&& !pc.isGm()) {
L1Teleport. teleport(pc, Config.TELEPORT_TO_LOCX,
Config.TELEPORT_TO_LOCY,
(short) Config.TELEPORT_TO_MAPID, 5, true);
}
}
//고수준 발신 맵 스위치
핵심부분이 완성되었습니다.
그런 다음 altsettings.properties로 이동합니다.
좋은 위치를 찾아 다음과 같이 가입하세요
# ================================================ ================ # 플레이어 레벨이 너무 높을
경우 강제 순간이동 및 추방 기능은 GM에서 사용할 수 없습니다
. #기본 레벨 조건 설정 후 전송될 위치 설정 #스위치 설정 True = 전송 메커니즘 켜기, False = 켜지지 않음 LevelOnOrOff = True #Settings 맵 번호 MaxLeveLInMapId = 5801 #최대 레벨 설정 TeleporttoMaxLevel = 52 # TeleportToMapId로 전송할 지도 설정 = 4 # 지도의 X 지점 설정 TeleportToLocX = 00000 # 지도의 Y 지점 설정 TeleportToLocY = 00000 # ==== ========== = ==================================