當前位置:天堂私服123>天堂私服架設> 大量天堂GM命令大全

大量天堂GM命令大全

    發表時間:2011-4-19

開啟 src/l1j/server/config.java
搜尋
  1.     public static double RATE_SHOP_PURCHASING_PRICE;
複製代碼
修改為
  1.     public static double RATE_SHOP_PURCHASING_PRICE;
  2.     // 新增遊戲管理員 .rates 線上調整機率、倍率
  3.     public static double RATE_XP_ORG;
  4.     public static double RATE_LA_ORG;
  5.     public static double RATE_KARMA_ORG;
  6.     public static double RATE_DROP_ADENA_ORG;
  7.     public static double RATE_DROP_ITEMS_ORG;
  8.     public static double RATE_WEIGHT_LIMIT_ORG;
  9.     // 新增遊戲管理員 .rates 線上調整機率、倍率
複製代碼
再搜尋
  1.             CREATE_CHANCE_HISTORY_BOOK = Integer.parseInt(rateSettings
  2.                     .getProperty("CreateChanceHistoryBook", "50"));
複製代碼
修改為
  1.             CREATE_CHANCE_HISTORY_BOOK = Integer.parseInt(rateSettings
  2.                     .getProperty("CreateChanceHistoryBook", "50"));
  3.             // 新增遊戲管理員 .rates 線上調整機率、倍率
  4.             RATE_XP_ORG = RATE_XP;
  5.             RATE_LA_ORG = RATE_LA;
  6.             RATE_KARMA_ORG = RATE_KARMA;
  7.             RATE_DROP_ADENA_ORG = RATE_DROP_ADENA;
  8.             RATE_DROP_ITEMS_ORG = RATE_DROP_ITEMS;
  9.             RATE_WEIGHT_LIMIT_ORG = RATE_WEIGHT_LIMIT;
  10.             // 新增遊戲管理員 .rates 線上調整機率、倍率
複製代碼
再搜尋
  1.     private Config() {
  2.     }
複製代碼
修改為
  1.     // 新增遊戲管理員 .rates 線上調整機率、倍率
  2.     public static void reset() {
  3.         _log.info("正在重新讀取機率配置.");
  4.         try {
  5.             RATE_XP = RATE_XP_ORG;
  6.             RATE_DROP_ADENA = RATE_DROP_ADENA_ORG;
  7.             RATE_DROP_ITEMS = RATE_DROP_ITEMS_ORG;
  8.             RATE_LA = RATE_LA_ORG;
  9.             RATE_KARMA = RATE_KARMA_ORG;
  10.             RATE_WEIGHT_LIMIT = RATE_WEIGHT_LIMIT_ORG;
  11.         } catch (Exception e) {
  12.             _log.severe(e.toString());
  13.         }
  14.     }
  15.     // 新增遊戲管理員 .rates 線上調整機率、倍率
  16.     private Config() {
  17.     }
複製代碼
新增檔案 src/l1j/server/server/command/executor/L1Rates.java (ANSI as UTF-8)
  1. package l1j.server.server.command.executor;
  2. import java.util.StringTokenizer;
  3. import java.util.Collection;
  4. import java.util.logging.Logger;
  5. import l1j.server.Config;
  6. import l1j.server.server.model.L1World;
  7. import l1j.server.server.model.Instance.L1PcInstance;
  8. import l1j.server.server.serverpackets.S_SystemMessage;
  9. import l1j.server.server.serverpackets.S_WhoAmount;
  10. public class L1Rates implements L1CommandExecutor {
  11.     private static Logger _log = Logger.getLogger(L1Rates.class.getName());
  12.     private L1Rates() {
  13.     }
  14.     public static L1CommandExecutor getInstance() {
  15.         return new L1Rates();
  16.     }
  17.     @Override
  18.     public void execute(L1PcInstance pc, String cmdName, String arg) {
  19.         String changed = "Error";
  20.         double data = 0;
  21.         try {
  22.             StringTokenizer stringtokenizer = new StringTokenizer(arg);
  23.             String param = stringtokenizer.nextToken();
  24.             if (param.equalsIgnoreCase("RESET")) {
  25.                 Config.reset();
  26.                 changed = "RESET";
  27.             } else {
  28.                 String value = stringtokenizer.nextToken();
  29.                 data = Double.parseDouble(value);
  30.                 if (param.equalsIgnoreCase("XP")) {
  31.                     Config.setParameterValue("RateXp", "" + (Config.RATE_XP_ORG * data));
  32.                     changed = "XP";
  33.                 } else if (param.equalsIgnoreCase("ADENA")) {
  34.                     Config.setParameterValue("RateDropAdena", "" + (Config.RATE_DROP_ADENA_ORG * data));
  35.                     changed = "ADENA";
  36.                 } else if (param.equalsIgnoreCase("DROP")) {
  37.                     Config.setParameterValue("RateDropItems", "" + (Config.RATE_DROP_ITEMS_ORG * data));
  38.                     changed = "DROP";
  39.                 } else if (param.equalsIgnoreCase("LAW")) {
  40.                     Config.setParameterValue("RateLawful", "" + (Config.RATE_LA_ORG * data));
  41.                     changed = "LAW";
  42.                 } else if (param.equalsIgnoreCase("KARMA")) {
  43.                     Config.setParameterValue("RateKarma", "" + (Integer.valueOf(value) * Config.RATE_KARMA_ORG));
  44.                     changed = "KARMA";
  45.                 } else if (param.equalsIgnoreCase("WEIGHT")) {
  46.                     int rate = (int)(data * Config.RATE_WEIGHT_LIMIT_ORG);
  47.                     Config.setParameterValue("Weightrate", "" + rate);
  48.                     changed = "WEIGHT";
  49.                 } else if (param.equalsIgnoreCase("ALL")) {
  50.                     Config.setParameterValue("RateXp", "" + (Config.RATE_XP_ORG * data));
  51.                     Config.setParameterValue("RateDropAdena", "" + (Config.RATE_DROP_ADENA_ORG * data));
  52.                     Config.setParameterValue("RateDropItems", "" + (Config.RATE_DROP_ITEMS_ORG * data));
  53.                     Config.setParameterValue("RateLawful", "" + (Config.RATE_LA_ORG * data));
  54.                     Config.setParameterValue("RateKarma", "" + (Config.RATE_KARMA_ORG * data));
  55.                     int rate = (int)(data * Config.RATE_WEIGHT_LIMIT_ORG);
  56.                     Config.setParameterValue("Weightrate", "" + rate);
  57.                     changed = "ALL";
  58.                 } else {
  59.                     pc.sendPackets(new S_SystemMessage("請輸入 .rates [XP,ADENA,DROP,LAW,KARMA,WEIGHT,ALL] [數值,RESET]"));
  60.                     pc.sendPackets(new S_SystemMessage("經驗值: " + (int)Config.RATE_XP) + " 倍");
  61.                     pc.sendPackets(new S_SystemMessage("金幣掉落: " + (int)Config.RATE_DROP_ADENA) + " 倍");
  62.                     pc.sendPackets(new S_SystemMessage("物品掉落: " + (int)Config.RATE_DROP_ITEMS) + " 倍");
  63.                     pc.sendPackets(new S_SystemMessage("正義值: " + (int)Config.RATE_LA) + " 倍");
  64.                     pc.sendPackets(new S_SystemMessage("友好度: " + (int)Config.RATE_KARMA) + " 倍");
  65.                     pc.sendPackets(new S_SystemMessage("負重率: " + (int)Config.RATE_WEIGHT_LIMIT) + " 倍");
  66.                 }
  67.             }
  68.         } catch(Exception e) {
  69.             pc.sendPackets(new S_SystemMessage("請輸入 .rates [XP,ADENA,DROP,LAW,KARMA,WEIGHT,ALL] [數值,RESET]"));
  70.             pc.sendPackets(new S_SystemMessage("經驗值: " + (int)Config.RATE_XP) + " 倍");
  71.             pc.sendPackets(new S_SystemMessage("金幣掉落: " + (int)Config.RATE_DROP_ADENA) + " 倍");
  72.             pc.sendPackets(new S_SystemMessage("物品掉落: " + (int)Config.RATE_DROP_ITEMS) + " 倍");
  73.             pc.sendPackets(new S_SystemMessage("正義值: " + (int)Config.RATE_LA) + " 倍");
  74.             pc.sendPackets(new S_SystemMessage("友好度: " + (int)Config.RATE_KARMA) + " 倍");
  75.             pc.sendPackets(new S_SystemMessage("負重率: " + (int)Config.RATE_WEIGHT_LIMIT) + " 倍");
  76.         }
  77.         if (!changed.equals("Error")) {
  78.             if (changed.equals("RESET")) {
  79.                 broadcastToAll("遊戲管理員將" + changed + "的倍率重新設定為 1.0 倍");
  80.             } else {
  81.                 broadcastToAll("遊戲管理員將" + changed + "的倍率更改為 " + data + " 倍");
  82.             }
  83.         }
  84.     }
  85.    
  86.     private void broadcastToAll(String s) {
  87.         L1World.getInstance().broadcastPacketToAll(new S_SystemMessage(s));
  88.     }
  89. }
複製代碼
增加資料庫數據
  1. INSERT INTO `commands` VALUES ('rates', '200', 'L1Rates');
複製代碼
遊戲中使用指令 .rates [XP,ADENA,DROP,LAW,KARMA,WEIGHT,ALL] [數值,RESET]

前一篇:讓怪物顯示血條     後一篇: 防止外掛程式喝血功能


天堂私服 © www.lineage123.com Corporation All Rights Reserved.