1. The forums will be archived and moved to a read only mode in about 2 weeks (mid march).

Solved How to protect item frame in spawn

Discussion in 'Development' started by NapolGamer TH, Oct 28, 2018.

  1. NapolGamer TH

    NapolGamer TH Silverfish

    Messages:
    15
    GitHub:
    napolgamerth
    I want to protect item frame in spawn
    but i dont know to do it?
     
  2. Jules

    Jules Witch

    Messages:
    53
    GitHub:
    Julooooos
    PHP:
    public function onDataPacketReceiveEvent(DataPacketReceiveEvent $event)
        {
            
    $player $event->getPlayer();
            
    $packet $event->getPacket();

            if (
    $packet::NETWORK_ID === ProtoInfo::ITEM_FRAME_DROP_ITEM_PACKET) {

                if (!
    $player->isOp()) {

                    
    $event->setCancelled();
                    
    $player->sendMessage("You can't do that !");
                }
            }
        }
    }
    PS : i'm french ;)
     
  3. NapolGamer TH

    NapolGamer TH Silverfish

    Messages:
    15
    GitHub:
    napolgamerth
  4. Muqsit

    Muqsit Chicken

    Messages:
    1,548
    GitHub:
    muqsit
    Sorry but there's no reason to rely on DataPacket events for this. DataPacket events should be used in places where there's no suitable event existing to assist you with your issue, or there are events but are too vague for your case. For your case, you can listen to PlayerInteractEvent which gets called everytime a player interacts with a block or clicks an item.
    PHP:
    public function onPlayerInteract(PlayerInteractEvent $event){
        if(
    $event->getBlock()->getId() === Block::ITEM_FRAME_BLOCK){
            
    //$player = $event->getPlayer();
            //$player clicked item frame
            
    $event->setCancelled();
        }
    }
     
    Flupko and xXNiceAssassinlo YT like this.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.