Beispiel #1
0
        public static void OnRightClickWith(Players.Player player, Shared.PlayerClickedData boxedData)
        {
            AdvancedWand wand = AdvancedWand.GetAdvancedWand(player);

            if (!wand.active || boxedData.HitType != EHitType.Block || boxedData.GetVoxelHit().TypeHit == BlockTypes.BuiltinBlocks.Indices.air)
            {
                return;
            }

            wand.area.SetCorner2(boxedData.GetVoxelHit().BlockHit, player);

            Chat.Send(player, string.Format("<color=lime>Pos 2: {0}</color>", boxedData.GetVoxelHit().BlockHit));
        }
Beispiel #2
0
 public static void OnPlayerClicked(Players.Player player, Shared.PlayerClickedData playerClickedData)
 {
     if (player.ActiveColony != null && playerClickedData.HitType == Shared.PlayerClickedData.EHitType.Block && playerClickedData.ConsumedType == Shared.PlayerClickedData.EConsumedType.ChangedBlock && playerClickedData.IsConsumed && ItemTypes.TryGetType(playerClickedData.TypeSelected, out ItemTypes.ItemType block))
     {
         while (block.ParentItemType != null)
         {
             block = block.ParentItemType;
         }
         int blockCount = player.Inventory.GetAmount(block.ItemIndex);
         int looted     = Mathf.Clamp(block.MaxStackSize - blockCount, 0, player.ActiveColony.Stockpile.AmountContained(block.ItemIndex));
         if (blockCount == 1 && looted > 0 && player.ActiveColony.Stockpile.TryRemove(block.ItemIndex, looted))
         {
             player.Inventory.TryAdd(block.ItemIndex, looted);
         }
     }
 }
Beispiel #3
0
        public static void OnPlayerClicked(Players.Player player, Shared.PlayerClickedData playerClickedData)
        {
            if (playerClickedData.TypeSelected != wandType.ItemIndex)
            {
                return;
            }

            if (playerClickedData.ClickType == EClickType.Left)
            {
                OnLeftClickWith(player, playerClickedData);
            }
            else if (playerClickedData.ClickType == EClickType.Right)
            {
                OnRightClickWith(player, playerClickedData);
            }
        }
Beispiel #4
0
        public static void OnPlayerClicked(Players.Player player, Shared.PlayerClickedData playerClickedData)
        {
            if (player == null || playerClickedData.TypeSelected != ItemTypes.IndexLookup.GetIndex("Khanx.AdvancedForester.ForesterTool"))
            {
                return;
            }

            switch (playerClickedData.ClickType)
            {
            case Shared.PlayerClickedData.EClickType.Left:
                Left_Click(player);
                break;

            case Shared.PlayerClickedData.EClickType.Right:
                Right_Click(player);
                break;
            }
            ;
        }
Beispiel #5
0
        public static void OnPlayerClicked(Players.Player player, Shared.PlayerClickedData playerClickedData)
        {
            if (player == null || playerClickedData.TypeSelected != ItemTypes.IndexLookup.GetIndex("Khanx.Compass"))
            {
                return;
            }

            switch (playerClickedData.ClickType)
            {
            case Shared.PlayerClickedData.EClickType.Left:
                CompassUI(player);
                break;

            case Shared.PlayerClickedData.EClickType.Right:
                RepeatLastAction(player);
                break;
            }
            ;
        }