Example #1
0
        public override IAction Interact(Entity activeActor, Entity pasiveActor)
        {
            ItemInteractionController visualizer = GetVisualizersList().Find(x => x.ReplaceItem.GetComponent <Entity>() == pasiveActor);

            GetVisualizersList().Remove(visualizer);
            PickItemAction result = new PickItemAction(activeActor, pasiveActor, visualizer);

            return(result);
        }
Example #2
0
        private void PickByMe()
        {
            var whoAttr = ObjectManager.objectManager.GetMyAttr();
            var cg      = CGPlayerCmd.CreateBuilder();

            cg.Cmd = "Pick";
            var pickAction = PickItemAction.CreateBuilder();

            pickAction.Id      = netView.GetServerID();
            pickAction.ItemId  = itemData.ObjectId;
            pickAction.ItemNum = num;
            pickAction.Who     = whoAttr.GetComponent <KBEngine.KBNetworkView>().GetServerID();
            cg.PickAction      = pickAction.Build();
            NetworkUtil.Broadcast(cg);
        }
Example #3
0
        IEnumerator PickItem(GameObject who)
        {
            PickItemFromNetwork(who);

            var cg = CGPlayerCmd.CreateBuilder();

            cg.Cmd = "Pick";
            var pickAction = PickItemAction.CreateBuilder();

            pickAction.Id      = netView.GetServerID();
            pickAction.ItemId  = itemData.ObjectId;
            pickAction.ItemNum = num;
            pickAction.Who     = who.GetComponent <KBEngine.KBNetworkView>().GetServerID();
            cg.PickAction      = pickAction.Build();
            NetworkUtil.Broadcast(cg);
            NetworkUtil.RemoveEntityToNetwork(netView);

            yield break;
        }
Example #4
0
 protected override bool IsValidInteractionInternal(Entity activeActor, Entity pasiveActor)
 {
     return(PickItemAction.IsValidInteraction(activeActor, pasiveActor));
 }