Class MapleMapItem


public class MapleMapItem extends MapleMapObject
地圖上的掉落物(道具或楓幣),實作為 MapleMapObject 子類別。

每個掉落物持有以下資訊:

  • Item 實體(楓幣掉落時為 null,改以 meso 欄位記錄金額)
  • 掉落者 dropper(可能是怪物、NPC 或玩家對應的 MapleMapObject
  • 最初擁有者 character_ownerid(保護期間僅限該角色撿取)
  • 掉落類型 type、是否為玩家主動丟棄 playerDrop、任務限定 questid
  • 自由撿取時間戳 nextFFA 與過期時間戳 nextExpiry

MapleMonsterKillManager 的掉落邏輯生成,並透過 MapleMapspawnItemDrop/spawnMesoDrop 系列方法放置到地圖; 封包組裝依賴 CField

  • Field Details

    • item

      protected Item item
    • dropper

      protected MapleMapObject dropper
    • character_ownerid

      protected int character_ownerid
    • meso

      protected int meso
    • questid

      protected int questid
    • type

      protected byte type
    • pickedUp

      protected boolean pickedUp
    • playerDrop

      protected boolean playerDrop
    • randDrop

      protected boolean randDrop
    • nextExpiry

      protected long nextExpiry
    • nextFFA

      protected long nextFFA
  • Constructor Details

  • Method Details

    • getItem

      public final Item getItem()
    • setItem

      public void setItem(Item z)
    • getQuest

      public final int getQuest()
    • getItemId

      public final int getItemId()
    • getDropper

      public final MapleMapObject getDropper()
    • getOwner

      public final int getOwner()
    • getMeso

      public final int getMeso()
    • isPlayerDrop

      public final boolean isPlayerDrop()
    • isPickedUp

      public final boolean isPickedUp()
    • setPickedUp

      public void setPickedUp(boolean pickedUp)
    • getDropType

      public byte getDropType()
    • setDropType

      public void setDropType(byte z)
    • isRandDrop

      public final boolean isRandDrop()
    • getType

      public final MapleMapObjectType getType()
      Specified by:
      getType in class MapleMapObject
    • sendSpawnData

      public void sendSpawnData(MapleClient client)
      Specified by:
      sendSpawnData in class MapleMapObject
    • sendDestroyData

      public void sendDestroyData(MapleClient client)
      Specified by:
      sendDestroyData in class MapleMapObject
    • getLock

      public Lock getLock()
    • registerExpire

      public void registerExpire(long time)
    • registerFFA

      public void registerFFA(long time)
    • shouldExpire

      public boolean shouldExpire(long now)
    • shouldFFA

      public boolean shouldFFA(long now)
    • hasFFA

      public boolean hasFFA()
    • expire

      public void expire(MapleMap map)