コード例 #1
0
ファイル: JavaClient.cs プロジェクト: LegacyGamerHD/Alex
        public void EntityInteraction(IEntity player, IEntity target, McpeInventoryTransaction.ItemUseOnEntityAction action)
        {
            switch (action)
            {
            case McpeInventoryTransaction.ItemUseOnEntityAction.Interact:
            {
                var packet = new InteractEntityPacket();
                packet.EntityId = (int)target.EntityId;
                packet.Type     = 0;
                packet.Hand     = 0;

                SendPacket(packet);
            }
            break;

            case McpeInventoryTransaction.ItemUseOnEntityAction.Attack:
            {
                var packet = new InteractEntityPacket();
                packet.EntityId = (int)target.EntityId;
                packet.Type     = 1;

                SendPacket(packet);
            }
            break;

            case McpeInventoryTransaction.ItemUseOnEntityAction.ItemInteract:
                break;
            }
        }
コード例 #2
0
ファイル: BedrockClient.cs プロジェクト: wqd1019dqw/Alex
        public void EntityInteraction(IEntity player, IEntity target,
                                      McpeInventoryTransaction.ItemUseOnEntityAction action)
        {
            if (player is Player p)
            {
                var itemInHand = p.Inventory[p.Inventory.SelectedSlot];

                // WorldProvider?.GetChatReceiver?.Receive(new ChatObject($"(CLIENT) Hit entity: {target.EntityId} | Action: {action.ToString()} | Item: {itemInHand.Id}:{itemInHand.Meta} ({itemInHand.Name})"));

                var packet = McpeInventoryTransaction.CreateObject();
                packet.transaction = new Transaction()
                {
                    TransactionType = McpeInventoryTransaction.TransactionType.ItemUseOnEntity,
                    ActionType      = (int)action,
                    Item            = MiNET.Items.ItemFactory.GetItem(itemInHand.Id, itemInHand.Meta, itemInHand.Count),
                    EntityId        = target.EntityId
                };

                SendPacket(packet);
            }
        }
コード例 #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="entity">The entity the player has interacted with</param>
 /// <param name="source">The player that initiated the interaction</param>
 /// <param name="action">The action that got initiated</param>
 public EntityInteractEvent(MiNET.Entities.Entity entity, OpenPlayer source, McpeInventoryTransaction.ItemUseOnEntityAction action) : base(entity)
 {
     SourcePlayer = source;
     Action       = action;
 }
コード例 #4
0
 public override void EntityInteraction(Entity player, Entity target, McpeInventoryTransaction.ItemUseOnEntityAction action)
 {
 }
コード例 #5
0
ファイル: SPWorldProvider.cs プロジェクト: LegacyGamerHD/Alex
 public void EntityInteraction(IEntity player, IEntity target, McpeInventoryTransaction.ItemUseOnEntityAction action)
 {
 }
コード例 #6
0
ファイル: NetworkProvider.cs プロジェクト: astroffnet/Alex
 public abstract void EntityInteraction(Entity player, Entity target,
                                        McpeInventoryTransaction.ItemUseOnEntityAction action);
コード例 #7
0
ファイル: JavaClient.cs プロジェクト: wqd1019dqw/Alex
 public void EntityInteraction(IEntity player, IEntity target, McpeInventoryTransaction.ItemUseOnEntityAction action)
 {
     throw new NotImplementedException();
 }