2483 {
2484 if (
drawinfo.drawPlayer.JustDroppedAnItem)
2485 {
2486 return;
2487 }
2489 {
2490 drawinfo.projectileDrawPosition =
drawinfo.DrawDataCache.
Count;
2491 }
2493 int num = heldItem.type;
2494 if (
drawinfo.drawPlayer.UsingBiomeTorches)
2495 {
2496 switch (num)
2497 {
2498 case 8:
2499 num =
drawinfo.drawPlayer.BiomeTorchHoldStyle(num);
2500 break;
2501 case 966:
2502 num =
drawinfo.drawPlayer.BiomeCampfireHoldStyle(num);
2503 break;
2504 }
2505 }
2507 Main.instance.LoadItem(num);
2511 drawinfo.itemColor = Lighting.GetColor((
int)((
double)
drawinfo.Position.X + (
double)
drawinfo.drawPlayer.width * 0.5) / 16, (
int)(((
double)
drawinfo.Position.Y + (
double)
drawinfo.drawPlayer.height * 0.5) / 16.0));
2512 if (num == 678)
2513 {
2515 }
2516 if (
drawinfo.drawPlayer.shroomiteStealth && heldItem.ranged)
2517 {
2519 if ((
double)
num2 < 0.03)
2520 {
2522 }
2523 float num3 = (1f +
num2 * 10f) / 11f;
2525 }
2526 if (
drawinfo.drawPlayer.setVortex && heldItem.ranged)
2527 {
2529 if ((
double)
num4 < 0.03)
2530 {
2532 }
2533 _ = (1f +
num4 * 10f) / 11f;
2535 }
2536 bool flag = drawinfo.drawPlayer.itemAnimation > 0 && heldItem.useStyle != 0;
2537 bool flag2 = heldItem.holdStyle != 0 && !
drawinfo.drawPlayer.pulley;
2538 if (!
drawinfo.drawPlayer.CanVisuallyHoldItem(heldItem))
2539 {
2541 }
2542 if (
drawinfo.shadow != 0f ||
drawinfo.drawPlayer.frozen || !(flag ||
flag2) || num <= 0 || drawinfo.drawPlayer.dead || heldItem.noUseGraphic || (drawinfo.drawPlayer.wet && heldItem.noWet) || (
drawinfo.drawPlayer.happyFunTorchTime &&
drawinfo.drawPlayer.inventory[
drawinfo.drawPlayer.selectedItem].createTile == 4 &&
drawinfo.drawPlayer.itemAnimation == 0))
2543 {
2544 return;
2545 }
2547 Color color =
new Color(250, 250, 250, heldItem.alpha);
2549 switch (num)
2550 {
2551 case 104:
2552 case 5094:
2553 case 5095:
2555 break;
2556 case 426:
2557 case 797:
2558 case 1506:
2559 case 5096:
2560 case 5097:
2562 break;
2563 case 46:
2564 {
2565 float amount = Utils.Remap(
drawinfo.itemColor.ToVector3().Length() / 1.731f, 0.3f, 0.5f, 1f, 0f);
2567 break;
2568 }
2569 case 204:
2571 break;
2572 case 3349:
2574 break;
2575 }
2576 if (num == 3823)
2577 {
2579 }
2580 if (num == 3827)
2581 {
2583 color = heldItem.GetAlpha(
drawinfo.itemColor);
2585 color.A = 66;
2586 }
2588 if (heldItem.useStyle == 9 &&
drawinfo.drawPlayer.itemAnimation > 0)
2589 {
2591 if (heldItem.type == 5009 || heldItem.type == 5042)
2592 {
2594 if (
drawinfo.drawPlayer.direction == -1)
2595 {
2597 }
2598 }
2600 }
2601 if (
drawinfo.drawPlayer.gravDir == -1f)
2602 {
2604 }
2607 if (heldItem.useStyle == 8)
2608 {
2614 origin.Y = 2f;
2615 origin.X += 2 *
drawinfo.drawPlayer.direction;
2616 }
2617 if (num == 425 || num == 507)
2618 {
2619 if (
drawinfo.drawPlayer.gravDir == 1f)
2620 {
2621 if (
drawinfo.drawPlayer.direction == 1)
2622 {
2624 }
2625 else
2626 {
2627 drawinfo.itemEffect = SpriteEffects.FlipHorizontally |
SpriteEffects.FlipVertically;
2628 }
2629 }
2630 else if (
drawinfo.drawPlayer.direction == 1)
2631 {
2633 }
2634 else
2635 {
2637 }
2638 }
2639 if ((num == 946 || num == 4707) &&
num5 != 0f)
2640 {
2641 position.Y -= 22f *
drawinfo.drawPlayer.gravDir;
2643 }
2646 switch (num)
2647 {
2648 case 3476:
2649 {
2654 item =
new DrawData(
value3, (
drawinfo.ItemLocation - Main.screenPosition +
vector4).Floor(),
rectangle2, heldItem.GetAlpha(
drawinfo.itemColor).MultiplyRGBA(
new Color(
new Vector4(0.5f, 0.5f, 0.5f, 0.8f))),
drawinfo.drawPlayer.itemRotation,
origin3,
adjustedItemScale,
drawinfo.itemEffect);
2657 item =
new DrawData(
value3, (
drawinfo.ItemLocation - Main.screenPosition +
vector4).Floor(),
rectangle2,
new Color(250, 250, 250, heldItem.alpha) * 0.5f,
drawinfo.drawPlayer.itemRotation,
origin3,
adjustedItemScale,
drawinfo.itemEffect);
2659 return;
2660 }
2661 case 4049:
2662 {
2670 return;
2671 }
2672 case 3779:
2673 {
2678 float num7 = ((float)
drawinfo.drawPlayer.miscCounter / 75f * ((
float)Math.PI * 2f)).ToRotationVector2().X * 1f + 0f;
2682 {
2685 }
2686 item =
new DrawData(
texture2D, (
drawinfo.ItemLocation - Main.screenPosition +
vector5).Floor(),
rectangle3, heldItem.GetAlpha(
drawinfo.itemColor).MultiplyRGBA(
new Color(
new Vector4(0.5f, 0.5f, 0.5f, 0.8f))),
drawinfo.drawPlayer.itemRotation,
origin4,
adjustedItemScale,
drawinfo.itemEffect);
2688 return;
2689 }
2690 }
2691 if (heldItem.useStyle == 5)
2692 {
2693 if (
Item.staff[num])
2694 {
2695 float num9 = drawinfo.drawPlayer.itemRotation + 0.785f * (float)
drawinfo.drawPlayer.direction;
2699 if (num == 3210)
2700 {
2703 }
2704 if (num == 3870)
2705 {
2709 }
2710 if (num == 3787)
2711 {
2713 }
2714 if (num == 3209)
2715 {
2719 }
2720 if (
drawinfo.drawPlayer.gravDir == -1f)
2721 {
2722 if (
drawinfo.drawPlayer.direction == -1)
2723 {
2727 }
2728 else
2729 {
2732 }
2733 }
2734 else if (
drawinfo.drawPlayer.direction == -1)
2735 {
2738 }
2741 if (num == 3870)
2742 {
2743 item =
new DrawData(
TextureAssets.
GlowMask[238].Value,
new Vector2((
int)(
drawinfo.ItemLocation.X - Main.screenPosition.X +
origin5.X +
num10), (
int)(
drawinfo.ItemLocation.Y - Main.screenPosition.Y +
num11)),
itemDrawFrame,
new Color(255, 255, 255, 127),
num9,
origin5,
adjustedItemScale,
drawinfo.itemEffect);
2745 }
2746 return;
2747 }
2748 if (num == 5118)
2749 {
2750 float rotation = drawinfo.drawPlayer.itemRotation + 1.57f * (float)
drawinfo.drawPlayer.direction;
2757 return;
2758 }
2765 if (
drawinfo.drawPlayer.direction == -1)
2766 {
2768 }
2771 if (heldItem.color !=
default(
Color))
2772 {
2775 }
2776 if (heldItem.glowMask != -1)
2777 {
2778 item =
new DrawData(
TextureAssets.
GlowMask[heldItem.glowMask].Value,
new Vector2((
int)(
drawinfo.ItemLocation.X - Main.screenPosition.X +
vector9.X), (
int)(
drawinfo.ItemLocation.Y - Main.screenPosition.Y +
vector9.Y)),
itemDrawFrame,
new Color(250, 250, 250, heldItem.alpha),
drawinfo.drawPlayer.itemRotation,
origin7,
adjustedItemScale,
drawinfo.itemEffect);
2780 }
2781 if (num == 3788)
2782 {
2783 float num13 = ((float)
drawinfo.drawPlayer.miscCounter / 75f * ((
float)Math.PI * 2f)).ToRotationVector2().X * 1f + 0f;
2786 {
2789 }
2790 }
2791 return;
2792 }
2793 if (
drawinfo.drawPlayer.gravDir == -1f)
2794 {
2797 if (heldItem.color !=
default(
Color))
2798 {
2801 }
2802 if (heldItem.glowMask != -1)
2803 {
2804 item =
new DrawData(
TextureAssets.
GlowMask[heldItem.glowMask].Value, position,
itemDrawFrame,
new Color(250, 250, 250, heldItem.alpha),
num5, origin,
adjustedItemScale,
drawinfo.itemEffect);
2806 }
2807 return;
2808 }
2811 if (heldItem.color !=
default(
Color))
2812 {
2815 }
2816 if (heldItem.glowMask != -1)
2817 {
2820 }
2821 if (!heldItem.flame ||
drawinfo.shadow != 0f)
2822 {
2823 return;
2824 }
2825 try
2826 {
2827 Main.instance.LoadItemFlames(num);
2829 {
2834 switch (num)
2835 {
2836 case 3045:
2837 color4 =
new Color(Main.DiscoR, Main.DiscoG, Main.DiscoB, 0);
2838 break;
2839 case 5293:
2841 break;
2842 case 5353:
2844 break;
2845 case 4952:
2849 break;
2850 case 5322:
2853 break;
2854 }
2855 for (
int i = 0;
i <
num15;
i++)
2856 {
2861 }
2862 }
2863 }
2864 catch
2865 {
2866 }
2867 }
void Add(TKey key, TValue value)
static double Cos(double d)
static Asset< Texture2D >[] GlowMask
static Asset< Texture2D >[] Item
static Asset< Texture2D >[] Extra
static Asset< Texture2D >[] ItemFlame
static void GetItemLight(ref Color currentColor, Item item, bool outInTheWorld=false)
static Color Lerp(Color value1, Color value2, float amount)
static Vector4 Lerp(Vector4 value1, Vector4 value2, float amount)