📄 l1townlocation.java
字号:
int rnd = random.nextInt(GETBACK_LOC_GIRAN.length);
loc[0] = GETBACK_LOC_GIRAN[rnd].getX();
loc[1] = GETBACK_LOC_GIRAN[rnd].getY();
loc[2] = GETBACK_MAP_GIRAN;
} else if (town_id == TOWNID_HEINE) { // ハイネ
int rnd = random.nextInt(GETBACK_LOC_HEINE.length);
loc[0] = GETBACK_LOC_HEINE[rnd].getX();
loc[1] = GETBACK_LOC_HEINE[rnd].getY();
loc[2] = GETBACK_MAP_HEINE;
} else if (town_id == TOWNID_WERLDAN) { // ウェルダン
int rnd = random.nextInt(GETBACK_LOC_WERLDAN.length);
loc[0] = GETBACK_LOC_WERLDAN[rnd].getX();
loc[1] = GETBACK_LOC_WERLDAN[rnd].getY();
loc[2] = GETBACK_MAP_WERLDAN;
} else if (town_id == TOWNID_OREN) { // オーレン
int rnd = random.nextInt(GETBACK_LOC_OREN.length);
loc[0] = GETBACK_LOC_OREN[rnd].getX();
loc[1] = GETBACK_LOC_OREN[rnd].getY();
loc[2] = GETBACK_MAP_OREN;
} else if (town_id == TOWNID_ELVEN_FOREST) { // エルフの森
int rnd = random.nextInt(GETBACK_LOC_ELVEN_FOREST.length);
loc[0] = GETBACK_LOC_ELVEN_FOREST[rnd].getX();
loc[1] = GETBACK_LOC_ELVEN_FOREST[rnd].getY();
loc[2] = GETBACK_MAP_ELVEN_FOREST;
} else if (town_id == TOWNID_ADEN) { // アデン
int rnd = random.nextInt(GETBACK_LOC_ADEN.length);
loc[0] = GETBACK_LOC_ADEN[rnd].getX();
loc[1] = GETBACK_LOC_ADEN[rnd].getY();
loc[2] = GETBACK_MAP_ADEN;
} else if (town_id == TOWNID_SILENT_CAVERN) { // 沈黙の洞窟
int rnd = random.nextInt(GETBACK_LOC_SILENT_CAVERN.length);
loc[0] = GETBACK_LOC_SILENT_CAVERN[rnd].getX();
loc[1] = GETBACK_LOC_SILENT_CAVERN[rnd].getY();
loc[2] = GETBACK_MAP_SILENT_CAVERN;
} else if (town_id == TOWNID_OUM_DUNGEON) { // オームダンジョン
int rnd = random.nextInt(GETBACK_LOC_OUM_DUNGEON.length);
loc[0] = GETBACK_LOC_OUM_DUNGEON[rnd].getX();
loc[1] = GETBACK_LOC_OUM_DUNGEON[rnd].getY();
loc[2] = GETBACK_MAP_OUM_DUNGEON;
} else if (town_id == TOWNID_RESISTANCE) { // レシスタンス村
int rnd = random.nextInt(GETBACK_LOC_RESISTANCE.length);
loc[0] = GETBACK_LOC_RESISTANCE[rnd].getX();
loc[1] = GETBACK_LOC_RESISTANCE[rnd].getY();
loc[2] = GETBACK_MAP_RESISTANCE;
} else if (town_id == TOWNID_PIRATE_ISLAND) { // 海賊島
int rnd = random.nextInt(GETBACK_LOC_PIRATE_ISLAND.length);
loc[0] = GETBACK_LOC_PIRATE_ISLAND[rnd].getX();
loc[1] = GETBACK_LOC_PIRATE_ISLAND[rnd].getY();
loc[2] = GETBACK_MAP_PIRATE_ISLAND;
} else if (town_id == TOWNID_RECLUSE_VILLAGE) { // 隠れ里
int rnd = random.nextInt(GETBACK_LOC_RECLUSE_VILLAGE.length);
loc[0] = GETBACK_LOC_RECLUSE_VILLAGE[rnd].getX();
loc[1] = GETBACK_LOC_RECLUSE_VILLAGE[rnd].getY();
loc[2] = GETBACK_MAP_RECLUSE_VILLAGE;
} else { // その他はSKT
int rnd = random.nextInt(GETBACK_LOC_SILVER_KNIGHT_TOWN.length);
loc[0] = GETBACK_LOC_SILVER_KNIGHT_TOWN[rnd].getX();
loc[1] = GETBACK_LOC_SILVER_KNIGHT_TOWN[rnd].getY();
loc[2] = GETBACK_MAP_SILVER_KNIGHT_TOWN;
}
return loc;
}
public static int getTownTaxRateByNpcid(int npcid) { // npcidから町税率を返す
int tax_rate = 0;
int town_id = getTownIdByNpcid(npcid);
if (town_id >= 1 && town_id <= 10) {
L1Town town = TownTable.getInstance().getTownTable(town_id);
tax_rate = town.get_tax_rate() + 2; // 2%は固定税
}
return tax_rate;
}
public static int getTownIdByNpcid(int npcid) { // npcidからtown_idを返す
// アデン城:アデン王国全域
// ケント城:ケント、グルーディン
// ウィンダウッド城:ウッドベック、オアシス、シルバーナイトタウン
// ギラン城:ギラン、話せる島
// ハイネ城:ハイネ
// ドワーフ城:ウェルダン、象牙の塔、象牙の塔の村
// オーク砦:火田村
// ディアド要塞:戦争税の一部
// XXX:まだNPCはL1CastleLocationから持ってきたままの状態(未整理)
int town_id = 0;
switch (npcid) {
case 70528: // タウンマスター(TI)
case 50015: // ルーカス(テレポーター)
case 70010: // バルシム(犬小屋裏道具屋)
case 70011: // 船着場管理人
case 70012: // セレナ(宿屋)
case 70014: // パンドラ(港道具屋)
case 70532: // ジョンソン(ペット屋)
case 70536: // トーマ(鍛冶屋)
town_id = TOWNID_TALKING_ISLAND;
break;
case 70799: // タウンマスター(SKT)
case 50056: // メット(テレポーター)
case 70073: // グレン(武器屋)
case 70074: // メリン(道具屋)
case 70075: // ミランダ(宿屋)
town_id = TOWNID_SILVER_KNIGHT_TOWN;
break;
case 70546: // タウンマスター(KENT)
case 50020: // スタンリー(テレポーター)
case 70018: // イソーリア(道具屋)
case 70016: // アンディン(武器屋)
case 70544: // リック(ペット屋)
town_id = TOWNID_KENT;
break;
case 70567: // タウンマスター(グル)
case 50024: // スティーブ(グルテレポーター)
case 70019: // ロリア(グル宿屋)
case 70020: // ロルコ(グル古代物品商人)
case 70021: // ロッテ(グル道具屋)
case 70022: // 船着場管理人
case 70024: // ケティ(グル武器屋)
town_id = TOWNID_GLUDIO;
break;
case 70815: // 火田村タウンマスター
case 70079: // ジャクソン(道具屋)
case 70836: // ハンス(ペット屋)
town_id = TOWNID_ORCISH_FOREST;
break;
case 70774: // タウンマスター(WB)
case 50054: // トレイ(テレポーター)
case 70070: // ベリッサ(宿屋)
case 70071: // アシュール(オアシス)
case 70072: // エルミナ(道具屋)
case 70773: // マービン(ペット屋)
town_id = TOWNID_WINDAWOOD;
break;
case 70594: // タウンマスター(ギラン)
case 50036: // ウィルマ(テレポーター)
case 70026: // デレック(ハンター)
case 70028: // ランダル(薬品商人)
case 70029: // マーガレット(食料品商人)
case 70030: // メイアー(道具屋)
case 70031: // モーリ(宿屋)
case 70032: // バージル(防具屋)
case 70033: // ベリタ(道具屋)
case 70038: // エバート(布商人)
case 70039: // ワーナー(武器屋)
case 70043: // フィリップ(皮商人)
case 70617: // アルモン(ペット屋)
case 70632: // ケビン(ペット屋)
town_id = TOWNID_GIRAN;
break;
case 70860: // タウンマスター(ハイネ)
case 50066: // リオル(テレポーター)
case 70082: // ブリット(道具屋)
case 70083: // シバン(武器屋)
case 70084: // エリー(宿屋)
case 70873: // エラン(ペット屋)
town_id = TOWNID_HEINE;
break;
case 70654: // タウンマスター(ウェルダン)
case 50039: // レスリー(テレポーター)
case 70045: // ベリー(道具屋)
case 70044: // ラルフ(武器屋)
case 70664: // コブ(ペット屋)
town_id = TOWNID_WERLDAN;
break;
case 70748: // タウンマスター(オーレン)
case 50051: // キリウス(テレポーター)
case 70059: // ディコ(国境要塞道具屋)
case 70060: // リンダ(象牙の塔精霊魔法屋)
case 70061: // マンドラ(武器屋)
case 70062: // バリエス(象牙の塔魔法屋)
case 70063: // ビウス(道具屋)
case 70065: // エンケ(宿屋)
case 70066: // クリスト(象牙の塔魔法屋)
case 70067: // パゴル(象牙の塔道具屋)
case 70068: // フランコ(古代物品商人)
case 70749: // マイルド(ペット屋)
town_id = TOWNID_OREN;
break;
case 50044: // シリウス(テレポーター)
case 70057: // キャサリン(道具屋)
case 70048: // ラオン(道具屋)
case 70052: // メリサ(道具屋)
case 70053: // シャル(食料品屋)
case 70049: // ローゼン(ポーション屋)
case 70051: // マグス(道具屋)
case 70047: // デフマン(武器屋)
case 70058: // フェガ(防具屋)
case 70054: // スビン(宿屋)
case 70055: // エイシヌ(ペットショップ)
case 70056: // ゾード(ジプシータウン古代物品商人)
town_id = TOWNID_ADEN;
break;
case 70092: // 商人 エマルト
case 70093: // 商人 カルプ
town_id = TOWNID_OUM_DUNGEON;
break;
default:
break;
}
return town_id;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -