[말년기념]★GM각종 배율 수정★
src/l1j/server/config.java
public static double RATE_SHOP_PURCHASING_PRICE; //검색
public static double RATE_SHOP_PURCHASING_PRICE; //변경
public static double RATE_XP_ORG;
public static double RATE_LA_ORG;
public static double RATE_KARMA_ORG;
public static double RATE_DROP_ADENA_ORG;
public static double RATE_DROP_ITEMS_ORG;
public static double RATE_WEIGHT_LIMIT_ORG;
CREATE_CHANCE_HISTORY_BOOK = Integer.parseInt(rateSettings.getProperty(\"CreateChanceHistoryBook\", \"50\")); //검색
CREATE_CHANCE_HISTORY_BOOK = //변경Integer.parseInt(rateSettings.getProperty(\"CreateChanceHistoryBook\", \"50\"));
RATE_XP_ORG = RATE_XP;
RATE_LA_ORG = RATE_LA;
RATE_KARMA_ORG = RATE_KARMA;
RATE_DROP_ADENA_ORG = RATE_DROP_ADENA;
RATE_DROP_ITEMS_ORG = RATE_DROP_ITEMS;
RATE_WEIGHT_LIMIT_ORG = RATE_WEIGHT_LIMIT;
private Config() { //검색
}
public static void reset() {
_log.info(\"읽어오기.\");
try {
RATE_XP = RATE_XP_ORG;
RATE_DROP_ADENA = RATE_DROP_ADENA_ORG;
RATE_DROP_ITEMS = RATE_DROP_ITEMS_ORG;
RATE_LA = RATE_LA_ORG;
RATE_KARMA = RATE_KARMA_ORG;
RATE_WEIGHT_LIMIT = RATE_WEIGHT_LIMIT_ORG;
} catch (Exception e) {
_log.severe(e.toString());
}
}
private Config() {
}
l1Rate.java
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* http://www.gnu.org/copyleft/gpl.html
*/
package l1j.server.server.command.executor;
import java.util.StringTokenizer;
import java.util.Collection;
import java.util.logging.Logger;
import l1j.server.Config;
import l1j.server.server.model.L1World;
import l1j.server.server.model.Instance.L1PcInstance;
import l1j.server.server.serverpackets.S_SystemMessage;
import l1j.server.server.serverpackets.S_WhoAmount;
public class L1Rates implements L1CommandExecutor {
private static Logger _log = Logger.getLogger(L1Rates.class.getName());
private L1Rates() {
}
public static L1CommandExecutor getInstance() {
return new L1Rates();
}
@Override
public void execute(L1PcInstance pc, String cmdName, String arg) {
String changed = "Error";
double data = 0;
try {
StringTokenizer stringtokenizer = new StringTokenizer(arg);
String param = stringtokenizer.nextToken();
if (param.equalsIgnoreCase("RESET")) {
Config.reset();
changed = "RESET";
} else {
String value = stringtokenizer.nextToken();
data = Double.parseDouble(value);
if (param.equalsIgnoreCase("XP")) {
Config.setParameterValue("RateXp", "" + (Config.RATE_XP_ORG * data));
changed = "XP";
} else if (param.equalsIgnoreCase("ADENA")) {
Config.setParameterValue("RateDropAdena", "" + (Config.RATE_DROP_ADENA_ORG * data));
changed = "ADENA";
} else if (param.equalsIgnoreCase("DROP")) {
Config.setParameterValue("RateDropItems", "" + (Config.RATE_DROP_ITEMS_ORG * data));
changed = "DROP";
} else if (param.equalsIgnoreCase("LAW")) {
Config.setParameterValue("RateLawful", "" + (Config.RATE_LA_ORG * data));
changed = "LAW";
} else if (param.equalsIgnoreCase("KARMA")) {
Config.setParameterValue("RateKarma", "" + (Integer.valueOf(value) * Config.RATE_KARMA_ORG));
changed = "KARMA";
} else if (param.equalsIgnoreCase("WEIGHT")) {
int rate = (int)(data * Config.RATE_WEIGHT_LIMIT_ORG);
Config.setParameterValue("Weightrate", "" + rate);
changed = "WEIGHT";
} else if (param.equalsIgnoreCase("ALL")) {
Config.setParameterValue("RateXp", "" + (Config.RATE_XP_ORG * data));
Config.setParameterValue("RateDropAdena", "" + (Config.RATE_DROP_ADENA_ORG * data));
Config.setParameterValue("RateDropItems", "" + (Config.RATE_DROP_ITEMS_ORG * data));
Config.setParameterValue("RateLawful", "" + (Config.RATE_LA_ORG * data));
Config.setParameterValue("RateKarma", "" + (Config.RATE_KARMA_ORG * data));
int rate = (int)(data * Config.RATE_WEIGHT_LIMIT_ORG);
Config.setParameterValue("Weightrate", "" + rate);
changed = "ALL";
} else {
pc.sendPackets(new S_SystemMessage("전체 .rates [XP,ADENA,DROP,LAW,KARMA,WEIGHT,ALL] "));
pc.sendPackets(new S_SystemMessage("경험치: " + (int)Config.RATE_XP) + " 추가");
pc.sendPackets(new S_SystemMessage("아데나: " + (int)Config.RATE_DROP_ADENA) + " 추가");
pc.sendPackets(new S_SystemMessage("드랍: " + (int)Config.RATE_DROP_ITEMS) + " 추가");
pc.sendPackets(new S_SystemMessage("라우풀: " + (int)Config.RATE_LA) + " 추가");
pc.sendPackets(new S_SystemMessage("우호도: " + (int)Config.RATE_KARMA) + " 추가");
pc.sendPackets(new S_SystemMessage("무게: " + (int)Config.RATE_WEIGHT_LIMIT) + " 추가");
}
}
} catch(Exception e) {
pc.sendPackets(new S_SystemMessage("전체 .rates [XP,ADENA,DROP,LAW,KARMA,WEIGHT,ALL]"));
pc.sendPackets(new S_SystemMessage("경험치: " + (int)Config.RATE_XP) + " 추가");
pc.sendPackets(new S_SystemMessage("아데나: " + (int)Config.RATE_DROP_ADENA) + " 추가");
pc.sendPackets(new S_SystemMessage("드랍: " + (int)Config.RATE_DROP_ITEMS) + " 추가");
pc.sendPackets(new S_SystemMessage("라우풀: " + (int)Config.RATE_LA) + " 추가");
pc.sendPackets(new S_SystemMessage("우호도: " + (int)Config.RATE_KARMA) + " 추가");
pc.sendPackets(new S_SystemMessage("무게: " + (int)Config.RATE_WEIGHT_LIMIT) + " 추가");
}
if (!changed.equals("Error")) {
if (changed.equals("RESET")) {
broadcastToAll("서버관리자" + changed + "다시설정해주십시오");
} else {
broadcastToAll("서버관리자" + changed + "변경되었습니다 " + data );
}
}
}
private void broadcastToAll(String s) {
L1World.getInstance().broadcastPacketToAll(new S_SystemMessage(s));
}
}
DB에
INSERT INTO `commands` VALUES ('rates', '200', 'L1Rates');
[출처] [말년기념]★GM각종 배율 수정★ (비공개 카페)

준희미니 님의 최근 댓글
rt 2021 05.25 ㄳ 2021 05.11 ㄳ 2021 05.11 rt 2021 05.09 rt 2021 04.25