跳转到帖子
Facebook Instagram Twitter Youtube

l2fater

管理员
  • 帖子数

    126
  • 注册日期

  • 上次访问

  • 得奖次数

    4

l2fater 发布的所有帖子

  1. 版本 1.0.0

    0次下载

    我们知道config里面的character里面可以设置玩家加BUFF的时间 这里提供了大部分辅助状态的一个参考 基本上全了【备注:43200 是设置的状态时间 12小时】 SkillDurationList = 1059,43200;1085,43200;1077,43200;1388,43200;1062,43200;1389,43200;1032,43200;529,43200;\ 1035,43200;1036,43200;1044,43200;1045,43200;1048,43200;1078,43200;1086,43200;1182,43200;1189,43200;\ 1087,43200;1204,43200;1240,43200;1242,43200;1268,43200;1243,43200;271,43200;1191,43200;\ 272,43200;273,43200;274,43200;275,43200;276,43200;277,43200;307,43200;\ 309,43200;310,43200;311,43200;365,43200;366,43200;264,43200;265,43200;\ 266,43200;267,43200;268,43200;269,43200;270,43200;304,43200;305,43200;\ 306,43200;308,43200;349,43200;363,43200;364,43200;1002,43200;1003,43200;1354,43200;\ 1249,43200;1250,43200;1260,43200;1261,43200;1305,43200;1364,43200;1365,43200;\ 1256,43200;1251,43200;1252,43200;1253,43200;1284,43200;1308,43200;1309,43200;\ 22,43200;67,43200;278,43200;1279,43200;1280,43200;1281,43200;395,43200;\ 396,43200;1374,43200;1325,43200;4699,43200;4700,43200;4701,43200;\ 4702,43200;4703,43200;4704,43200;1303,43200;10,43200;33,43200;\ 1068,43200;1040,43200;1393,43200;1392,43200;1352,43200;1353,43200;1259,43200;\ 94,43200;420,43200;176,43200;482,43200;406,43200;1499,43200;1500,43200;1501,43200;1501,43200;1502,43200;1503,43200;1504,43200;\ 1519,43200;825,43200;826,43200;827,43200;828,43200;829,43200;830,43200;915,43200;\ 1532,43200;1533,43200;10087,43200;139,43200;982,43200;\ 7041,14400;7042,14400;7043,14400;7044,14400;7045,14400;7046,14400;7047,14400;7048,14400;7049,14400;7050,14400;\ 7051,14400;7052,14400;7053,14400;7054,14400;7055,14400;7056,14400;7057,14400;7058,14400;7059,14400;7060,14400;\ 7061,14400;7062,14400;7063,14400;7064,14400;7088,14400;7089,14400;7090,14400;7091,14400;7092,14400;7093,14400;\ 1537,43200;1538,43200;1548,43200;1232,43200;1307,43200;1257,43200;1047,43200;4351,43200;\ 4344,43200;4348,43200;4347,43200;4353,43200;4346,43200;4352,43200;4356,43200;4355,43200;\ 4358,43200;4359,43200;4357,43200;4354,43200;4360,43200;1460,43200;\ 4349,43200;4350,43200;1461,43200;1397,43200;1304,43200;530,43200;914,43200;\ 1078,43200;1242,43200;1059,43200;1077,43200;1240,43200;1086,43200;1043,43200;\ 1033,43200;1259,43200;1189,43200;1040,43200;1268,43200;1284,43200;1139,43200;1140,43200;\ 1141,43200;1144,43200;1145,43200;1146,43200;1497,43200;1388,43200;1389,43200;1413,43200;\ 1363,43200;1356,43200;1355,43200;1357,43200;1414,43200;\ 1349,43200;1346,43200;1347,43200;1348,43200;1311,43200;1087,43200;\ 1007,43200;1009,43200;1229,43200;1251,43200;1252,43200;1253,43200;1284,43200;1308,43200;\ 1309,43200;1310,43200;1362,43200;1363,43200;1390,43200;1391,43200;1413,43200;1006,43200;\ 1204,43200;1003,43200;1004,43200;1005,43200;1008,43200;1010,1400;1249,1400;1250,43200;\ 1256,43200;1260,43200;1261,43200;1282,43200;1364,43200;1365,43200;1415,43200;1416,43200;\ 1545,43200;1536,43200;1542,43200;1562,43200;1535,43200;4342,43200;4345,43200;4343,43200;\ 1323,43200;764,60;765,60;7006,43200;7029,43200;1549,43200;1238,43200;\
    免费
  2. Index: dist/game/data/scripts/ai/sunriseNpc/EnchantManager/EnchantManager.java =================================================================== --- dist/game/data/scripts/ai/sunriseNpc/EnchantManager/EnchantManager.java (revision 0) +++ dist/game/data/scripts/ai/sunriseNpc/EnchantManager/EnchantManager.java (working copy) @@ -0,0 +1,176 @@ +package ai.sunriseNpc.EnchantManager; + +import l2r.gameserver.data.xml.impl.ItemData; +import l2r.gameserver.model.actor.L2Npc; +import l2r.gameserver.model.actor.instance.L2PcInstance; +import l2r.gameserver.model.itemcontainer.Inventory; +import l2r.gameserver.model.items.instance.L2ItemInstance; +import l2r.gameserver.network.SystemMessageId; +import l2r.gameserver.network.serverpackets.InventoryUpdate; +import l2r.gameserver.network.serverpackets.NpcHtmlMessage; + +import ai.npc.AbstractNpcAI; + +/** + * @author L2fuLL + */ +public final class EnchantManager extends AbstractNpcAI +{ + private static final int NpcId = 576; + private static final int SafeEnchantMax = 6; + private static final int[] IdItemAndCost = + { + 57, // Id Item + 100000000 // Count + }; + + public EnchantManager() + { + super(EnchantManager.class.getSimpleName(), "ai/sunriseNpc"); + addFirstTalkId(NpcId); + addTalkId(NpcId); + addStartNpc(NpcId); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + int armorType = -1; + + if (event.startsWith("safe_seteh")) + { + armorType = Inventory.PAPERDOLL_HEAD; + } + else if (event.startsWith("safe_setec")) + { + armorType = Inventory.PAPERDOLL_CHEST; + } + else if (event.startsWith("safe_seteg")) + { + armorType = Inventory.PAPERDOLL_GLOVES; + } + else if (event.startsWith("safe_seteb")) + { + armorType = Inventory.PAPERDOLL_FEET; + } + else if (event.startsWith("safe_setel")) + { + armorType = Inventory.PAPERDOLL_LEGS; + } + else if (event.startsWith("safe_setew")) + { + armorType = Inventory.PAPERDOLL_RHAND; + } + else if (event.startsWith("safe_setes")) + { + armorType = Inventory.PAPERDOLL_LHAND; + } + else if (event.startsWith("safe_setle")) + { + armorType = Inventory.PAPERDOLL_LEAR; + } + else if (event.startsWith("safe_setre")) + { + armorType = Inventory.PAPERDOLL_REAR; + } + else if (event.startsWith("safe_setlf")) + { + armorType = Inventory.PAPERDOLL_LFINGER; + } + else if (event.startsWith("safe_setrf")) + { + armorType = Inventory.PAPERDOLL_RFINGER; + } + else if (event.startsWith("safe_seten")) + { + armorType = Inventory.PAPERDOLL_NECK; + } + else if (event.startsWith("safe_setun")) + { + armorType = Inventory.PAPERDOLL_UNDER; + } + else if (event.startsWith("safe_setba")) + { + armorType = Inventory.PAPERDOLL_CLOAK; + } + else if (event.startsWith("safe_setbe")) + { + armorType = Inventory.PAPERDOLL_BELT; + } + + if (armorType != -1) + { + setEnchant(player, SafeEnchantMax, armorType); + } + sendMainHtmlWindow(player, npc); + return ""; + } + + @Override + public String onFirstTalk(L2Npc npc, L2PcInstance player) + { + sendMainHtmlWindow(player, npc); + return ""; + } + + private void sendMainHtmlWindow(L2PcInstance player, L2Npc npc) + { + final NpcHtmlMessage html = getHtmlPacket(player, npc, "main.htm"); + html.replace("%player%", player.getName()); + html.replace("%PRICE%", String.valueOf(IdItemAndCost[1])); + html.replace("%ITEM_ID%", ItemData.getInstance().getTemplate(IdItemAndCost[0]).getName()); + + player.sendPacket(html); + } + + private NpcHtmlMessage getHtmlPacket(L2PcInstance player, L2Npc npc, String htmlFile) + { + final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId()); + packet.setHtml(getHtm(player, player.getHtmlPrefix(), htmlFile)); + return packet; + } + + private void setEnchant(L2PcInstance activeChar, int ench, int armorType) + { + // now we need to find the equipped weapon of the targeted character... + int curEnchant = 0; // display purposes only + L2ItemInstance itemInstance = null; + + // only attempt to enchant if there is a weapon equipped + L2ItemInstance parmorInstance = activeChar.getInventory().getPaperdollItem(armorType); + if ((parmorInstance != null) && (parmorInstance.getLocationSlot() == armorType)) + { + itemInstance = parmorInstance; + } + + if (itemInstance != null) + { + curEnchant = itemInstance.getEnchantLevel(); + + // set enchant value + if ((curEnchant < SafeEnchantMax) && !itemInstance.isHeroItem()) + { + if (activeChar.destroyItemByItemId("enchant", IdItemAndCost[0], IdItemAndCost[1], activeChar, true)) + { + activeChar.getInventory().unEquipItemInSlot(armorType); + itemInstance.setEnchantLevel(ench); + activeChar.getInventory().equipItem(itemInstance); + + // send packets + InventoryUpdate iu = new InventoryUpdate(); + iu.addModifiedItem(itemInstance); + activeChar.sendInventoryUpdate(iu); + activeChar.broadcastUserInfo(); + + // informations + activeChar.sendMessageS("Congratulation, You enchanted your item to +" + SafeEnchantMax + "!", 4); + activeChar.sendMessage("Changed enchantment of " + activeChar.getName() + "'s " + itemInstance.getItem().getName() + " from " + curEnchant + " to " + ench + "."); + } + } + else + { + activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_ITEMS); + } + } + } +} \ No newline at end of file Index: dist/game/data/scripts/ai/sunriseNpc/EnchantManager/main.htm =================================================================== --- dist/game/data/scripts/ai/sunriseNpc/EnchantManager/main.htm (revision 0) +++ dist/game/data/scripts/ai/sunriseNpc/EnchantManager/main.htm (working copy) @@ -0,0 +1,43 @@ +<html> + <title>Enchant Manager</title> +<body> +<br> + <center> + <img src="L2UI_CH3.herotower_deco" width=256 height=32> + <font color="00FFFF" > <h4>Safe Enchant</h4></font><br> + </center><br> + <center> + Hello <font color="LEVEL">%player%</font>, I can safely enchant your items<br> + This action cost <font color="LEVEL" > %ITEM_ID% %PRICE%</font><br><br> + <table> + <tr> + <td><button action="bypass -h Quest EnchantManager safe_seteh" width=32 height=32 back="icon.armor_circlet_i00" fore="icon.armor_circlet_i00"></td> + <td><button action="bypass -h Quest EnchantManager safe_setec" width=32 height=32 back="icon.armor_t96_u_i00" fore="icon.armor_t96_u_i00"></td> + <td><button action="bypass -h Quest EnchantManager safe_setel" width=32 height=32 back="icon.armor_t96_l_i00" fore="icon.armor_t96_l_i00"></td> + <td><button action="bypass -h Quest EnchantManager safe_seteg" width=32 height=32 back="icon.armor_t96_g_i01" fore="icon.armor_t96_g_i01"></td> + <td><button action="bypass -h Quest EnchantManager safe_seteb" width=32 height=32 back="icon.armor_t96_b_i01" fore="icon.armor_t96_b_i01"></td> + </tr> + </table> + <br> + <table> + <tr> + <td><button action="bypass -h Quest EnchantManager safe_setle" width=32 height=32 back="icon.accessory_earring_of_antaras_i00" fore="icon.accessory_earring_of_antaras_i00"></td> + <td><button action="bypass -h Quest EnchantManager safe_setre" width=32 height=32 back="icon.accessory_earring_of_zaken_i00" fore="icon.accessory_earring_of_zaken_i00"></td> + <td><button action="bypass -h Quest EnchantManager safe_seten" width=32 height=32 back="icon.accessory_necklace_of_valakas_i00" fore="icon.accessory_necklace_of_valakas_i00"></td> + <td><button action="bypass -h Quest EnchantManager safe_setlf" width=32 height=32 back="icon.accessory_ring_of_queen_ant_i00" fore="icon.accessory_ring_of_queen_ant_i00"></td> + <td><button action="bypass -h Quest EnchantManager safe_setrf" width=32 height=32 back="icon.accessory_ring_of_baium_i00" fore="icon.accessory_ring_of_baium_i00"></td> + </tr> + </table> + <br> + <table> + <tr> + <td><button action="bypass -h Quest EnchantManager safe_setew" width=32 height=32 back="icon.weapon_vesper_shaper_i01" fore="icon.weapon_vesper_shaper_i01"></td> + <td><button action="bypass -h Quest EnchantManager safe_setes" width=32 height=32 back="icon.verper_sigil_i01" fore="icon.verper_sigil_i01"></td> + <td><button action="bypass -h Quest EnchantManager safe_setbe" width=32 height=32 back="icon.belt_i03" fore="icon.belt_i03"></td> + <td><button action="bypass -h Quest EnchantManager safe_setun" width=32 height=32 back="icon.etc_stripe_shirts_s_i05" fore="icon.etc_stripe_shirts_s_i05"></td> + </tr> + </table> + <br> +<img src="L2UI_CH3.herotower_deco" width=256 height=32> +</center> +</body></html> Index: dist/game/data/scripts/handlers/SunriseNpcsLoader.java =================================================================== --- dist/game/data/scripts/handlers/SunriseNpcsLoader.java (revision 947) +++ dist/game/data/scripts/handlers/SunriseNpcsLoader.java (working copy) @@ -8,6 +8,7 @@ import ai.sunriseNpc.CastleManager.CastleManager; import ai.sunriseNpc.CommunityNpcs.CommunityNpcs; import ai.sunriseNpc.DelevelManager.DelevelManager; +import ai.sunriseNpc.EnchantManager.EnchantManager; import ai.sunriseNpc.GrandBossManager.GrandBossManager; import ai.sunriseNpc.NoblesseManager.NoblesseManager; import ai.sunriseNpc.PointsManager.PointsManager; @@ -33,6 +34,7 @@ PointsManager.class, PremiumManager.class, ReportManager.class, + EnchantManager.class, }; public SunriseNpcsLoader() Index: dist/game/data/xml/stats/npcs/custom/custom.xml =================================================================== --- dist/game/data/xml/stats/npcs/custom/custom.xml (revision 947) +++ dist/game/data/xml/stats/npcs/custom/custom.xml (working copy) @@ -114,6 +114,12 @@ <height normal="22" /> </collision> </npc> + <npc id="576" displayId="13298" name="Enchant Manager" usingServerSideName="true" title="www.l2jsunrise.com" usingServerSideTitle="true" type="L2Npc"> + <collision> + <radius normal="10" /> + <height normal="22" /> + </collision> + </npc> <npc id="8983" displayId="21804" name="Chest" usingServerSideName="true" title="THunt" usingServerSideTitle="true" type="L2Monster"> <sex>MALE</sex> <stats str="10" int="10" dex="10" wit="10" con="10" men="10">
  3. 版本 1.0.0

    7次下载

    Java环境变量一键配置 【需要.netfremework4以上环境】
    免费
  4. 一些老资源,老工具请在 资源中心 导航里面进行下载!
  5. 版本 1.0.0

    4次下载

    安装前,建议卸载或者清除已使用过的mysql 下载安装包,后安装 1. 2. 3. 4. 5,接下来一直按 next 就可以了,安装完毕 ,桌面会出现HeidiSQL 用这个就可以打开数据库了,也省着安装以前的数据库管理工具了!
    免费
  6. 版本 2.0.0

    4次下载

    l2oggpatcher 【天堂II客户端 MUSIC 破解工具】 B站有网友私信我要天堂II无损音乐, 之前电脑是有的,可惜硬盘坏了,网上找了一圈也都不全,就找到了这个工具 可以在任何客户端内使用, 只需将此工具解压到客户端内的music文件夹内,直接打开自动破解,破解后的ogg可直接播放,也可以使用 格式工厂 进行MP3的格式转换
    免费
  7. 版本 1.0.0

    15次下载

    H5 HighFive 嗨翻天 漢化說明 此漢化主要文件:- 1)用 Mobius_CT_2.6_HighFive 端做數據 2)以台版客戶端的資料為標準,配合端中的NPC、物品、地區名稱為主。 3)任務中的Java我已刪除,套用自己對照。 4)主要漢化html和scripts文件夾中的htm文件共20721個html文件。 漢化的工作的確是吃力不討好的工作。 玩了那麼久的天2沒有看過全端是中文的 要翻譯的對話頁都上萬個,而且NPC、物品、地區名稱查找也不容易 更要命的是老外用的NPC、物品、地區名稱好多都用拼音來寫,看得一頭雾水。 此漢化不敢說100%都翻譯,但也做到對話都是中文的。 原本想套用各以前前輩漢化的資料,但有些出入太大 感謝之前的前輩的付出才有今天這份比較全面的漢化! 此漢化或許有些文不對題還是語法用詞不當。 希望能告知再次修正。 如果喜歡簡體字的朋友要套用請注意。 簡體版和繁體版的NPC、物品名稱有很大差異。不能直接套用。 有時間再搞個用tx台版客戶端為主的簡體版。 價值連城分享於15-Oct-2021 QQ:3047064063,947727587
    免费
  8. 版本 3.0.0

    38次下载

    L2Client_dat_311
    免费
  9. 版本 1.0.0

    1次下载

    值得收藏的天堂2初章海报 这是我入坑天堂2的海报,当时网吧门口就贴了这张大海报!
    免费
  10. L2JSunrise 开源介绍及相关源码地址 L2Jsunrise可能是扩展H5最多的源了, 布告栏功能多而且花哨, 不足:网上能找到的L2jsunrise开源,基本都是收费购买后,二次发布的,部分缺少关键文件,而且其源本身也有外网验证! 总结:单机可以,外网自重! 官网地址
  11. 版本 1.0.0

    26次下载

    适用于L2JMOBIUS的布告栏首页补丁 开发于 306版本,已知可用于所有经典L2JMOBIUS版本,无需额外补丁,页面内所有素材皆来自官方客户端
    免费
  12. 社区所有开源SVN基本已备份至腾讯coding平台,访问速度极快
  13. L2-Scripts 官网地址 非开源项目,但网上有分享部分源码,该源脚本开发特别的好, 仿官方程度极高,自身扩展少
  14. 1,因现使用的论坛系统和之前用的DISCUZ不同, 所以需要大家重新注册账号,【抱拳+抱歉】 社区使用邮箱登录,所以在注册的时候一定要看好自己的邮箱,以及注意自己的邮箱能正常接收邮件 2,原社区论坛内容不会删除,大家仍然可以进行访问及学习 3,您在原社区获得的金币,后续将进行补偿,根据老社区注册时间发放纪念徽章 暂定: ①在新社区开发期间登录社区的朋友发放 先遣者的荣耀 勋章 ②在老社区注册时间超过5年的发放 5年荣誉勋章 ③老社区账户内金币情况,后续补偿 4,如果您觉得浏览的时候有些卡,您可以将网页拉到最底,找到选择模版,切换默认模版Default 5,在社区使用中有任何问题可联系 杀气QQ 51605539 曾经,我们如一张白纸 现在,我们能做的更多。。。 未来,期待重铸天堂II荣光 感谢,一路上默默支持着血玫瑰社区的每位朋友们
  15. 血玫瑰社区
  16. Welcome to your new Invision Community! Take some time to read through the Getting Started Guide and Administrator Documentation. The Getting Started Guide will walk you through some of the necessary steps to setting up your community. The Administrator Documentation takes you through the details of the capabilities of our platform. Go to the Documentation

天堂2中文开源社区L2FATER.CN

专注于玩家游戏体验的交流社区.

血玫瑰社区bbs.l2fater.cn

关于血玫瑰社区

Important Links

×
×
  • 创建新的...