微信扫一扫 分享朋友圈

已有 1801 人浏览分享

[服務器教學] 《Java技術》物品使用位址 記錄

  [複製鏈接]

集團新軍

Rank: 1

96

威望

125

金錢

15

A幣
主題
64
帖子
114
精華
1
綜合社群主題發文量
0
電玩社群主題發文量
0
娛樂社群主題發文量
0
技術社群主題發文量
0
閱讀權限
10
註冊時間
2016-11-17
  • TA的每日心情

    2017-2-1 17:20
  • 簽到天數: 63 天

    連續簽到: 0 天

    [LV.6]常住居民II

    雪楓月舞 發表於  2016-12-13 13:21:15 | 顯示全部樓層 | 閱讀模式
    以下為 OD端中 UseItemHandler class
    主要是 使用物品時的相關控制
    目前還在研究中^^

    1. net.sf.odinms.net.channel.handler

    2. import net.sf.odinms.client.IItem;
    3. import net.sf.odinms.client.MapleCharacter;
    4. import net.sf.odinms.client.MapleClient;
    5. import net.sf.odinms.client.MapleInventory;
    6. import net.sf.odinms.client.MapleInventoryType;
    7. import net.sf.odinms.net.AbstractMaplePacketHandler;
    8. import net.sf.odinms.scripting.npc.NPCScriptManager;
    9. import net.sf.odinms.server.MapleInventoryManipulator;
    10. import net.sf.odinms.server.MapleItemInformationProvider;
    11. import net.sf.odinms.server.MapleStatEffect;
    12. import net.sf.odinms.tools.MaplePacketCreator;
    13. import net.sf.odinms.tools.data.input.SeekableLittleEndianAccessor;
    14. import org.apache.mina.common.IoSession;

    15. public class UseItemHandler
    16.   extends AbstractMaplePacketHandler
    17. {
    18.   public void handlePacket(SeekableLittleEndianAccessor slea, MapleClient c)
    19.   {
    20.     c.getPlayer().resetAfkTime();
    21.     if (!c.getPlayer().isAlive())
    22.     {
    23.       c.getSession().write(MaplePacketCreator.enableActions());
    24.       return;
    25.     }
    26.     MapleItemInformationProvider ii = MapleItemInformationProvider.getInstance();
    27.     slea.readInt();
    28.     byte slot = (byte)slea.readShort();
    29.     int itemId = slea.readInt();
    30.     IItem toUse = c.getPlayer().getInventory(MapleInventoryType.USE).getItem(slot);
    31.     if (itemId == 2022118)
    32.     {
    33.       c.getPlayer().dropMessage(1, "請保留該物品. 他將會讓妳衝捲100%過.");
    34.       c.getSession().write(MaplePacketCreator.enableActions());
    35.       return;
    36.     }
    37.     if (itemId == 2022065)
    38.     {
    39.       NPCScriptManager.getInstance().start(c, 9010000, "JobChanger", null);
    40.     }
    41.     else if ((toUse != null) && (toUse.getQuantity() > 0))
    42.     {
    43.       if (toUse.getItemId() != itemId) {
    44.         return;
    45.       }
    46.       if (ii.isTownScroll(itemId))
    47.       {
    48.         if (ii.getItemEffect(toUse.getItemId()).applyTo(c.getPlayer())) {
    49.           MapleInventoryManipulator.removeFromSlot(c, MapleInventoryType.USE, slot, (short)1, false);
    50.         }
    51.         c.getSession().write(MaplePacketCreator.enableActions());
    52.         return;
    53.       }
    54.       MapleInventoryManipulator.removeFromSlot(c, MapleInventoryType.USE, slot, (short)1, false);
    55.       ii.getItemEffect(toUse.getItemId()).applyTo(c.getPlayer());
    56.     }
    57.   }
    58. }
    複製代碼
    共收到 0 A幣
    打賞榜
    暫無
    暫無
    暫無
    暫無
    ----
    暫無
    ----
    暫無
    ----
    暫無
    ----

    站長

    Rank: 12Rank: 12Rank: 12

    1964

    威望

    3461

    金錢

    11

    A幣
    主題
    1324
    帖子
    2477
    精華
    3
    綜合社群主題發文量
    267
    電玩社群主題發文量
    1
    娛樂社群主題發文量
    4
    技術社群主題發文量
    31
    閱讀權限
    200
    註冊時間
    2013-1-28

    我是傳奇贊助感謝勳章精華作者勳章

  • TA的每日心情

    2024-11-9 23:41
  • 簽到天數: 397 天

    連續簽到: 1 天

    [LV.9]以壇為家II

    TWAICL 發表於 2016-12-13 14:38:59 | 顯示全部樓層
    這不是傳說中的生日祝福

    社群管理員

    Rank: 10Rank: 10Rank: 10

    301

    威望

    793

    金錢

    196

    A幣
    主題
    198
    帖子
    258
    精華
    1
    綜合社群主題發文量
    6
    電玩社群主題發文量
    0
    娛樂社群主題發文量
    4
    技術社群主題發文量
    0
    閱讀權限
    0
    註冊時間
    2016-5-18

    夢蘿兩週年勳章

  • TA的每日心情
    無聊
    2022-6-18 23:03
  • 簽到天數: 202 天

    連續簽到: 1 天

    [LV.7]常住居民III

    雪靈 發表於 2016-12-13 15:14:33 | 顯示全部樓層
    哈哈,這東西我是希望能消失,根本破壞平衡。


    集團新軍

    Rank: 1

    96

    威望

    125

    金錢

    15

    A幣
    主題
    64
    帖子
    114
    精華
    1
    綜合社群主題發文量
    0
    電玩社群主題發文量
    0
    娛樂社群主題發文量
    0
    技術社群主題發文量
    0
    閱讀權限
    10
    註冊時間
    2016-11-17
  • TA的每日心情

    2017-2-1 17:20
  • 簽到天數: 63 天

    連續簽到: 0 天

    [LV.6]常住居民II

     樓主| 雪楓月舞 發表於 2016-12-13 17:34:21 | 顯示全部樓層
    這是我在 OD 端裡面翻到的
    您需要登錄後才可以回帖 登錄 | 註冊會員

    本版積分規則

    114

    發文

    125

    金錢

    15

    A幣

    ----------榮譽勳章----------

    熱門推薦
    圖文推薦
    • 聯繫我們

    小黑屋|AICL社群娛樂集團

    GMT+8, 2024-11-23 16:02 , 網路刷新 0.113425 秒 .

    歡迎來到 AICL網路社群

    版權AICL社群所有 2011-2021.

    Total:123 Today:213 Online:322