Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ TryGetPrefixStatMultipliersForItem()

bool Terraria.Item.TryGetPrefixStatMultipliersForItem ( int rolledPrefix,
out float dmg,
out float kb,
out float spd,
out float size,
out float shtspd,
out float mcst,
out int crt )
inlineprivate

Definition at line 644 of file Item.cs.

645 {
646 dmg = 1f;
647 kb = 1f;
648 spd = 1f;
649 size = 1f;
650 shtspd = 1f;
651 mcst = 1f;
652 crt = 0;
653 switch (rolledPrefix)
654 {
655 case 1:
656 size = 1.12f;
657 break;
658 case 2:
659 size = 1.18f;
660 break;
661 case 3:
662 dmg = 1.05f;
663 crt = 2;
664 size = 1.05f;
665 break;
666 case 4:
667 dmg = 1.1f;
668 size = 1.1f;
669 kb = 1.1f;
670 break;
671 case 5:
672 dmg = 1.15f;
673 break;
674 case 6:
675 dmg = 1.1f;
676 break;
677 case 81:
678 kb = 1.15f;
679 dmg = 1.15f;
680 crt = 5;
681 spd = 0.9f;
682 size = 1.1f;
683 break;
684 case 7:
685 size = 0.82f;
686 break;
687 case 8:
688 kb = 0.85f;
689 dmg = 0.85f;
690 size = 0.87f;
691 break;
692 case 9:
693 size = 0.9f;
694 break;
695 case 10:
696 dmg = 0.85f;
697 break;
698 case 11:
699 spd = 1.1f;
700 kb = 0.9f;
701 size = 0.9f;
702 break;
703 case 12:
704 kb = 1.1f;
705 dmg = 1.05f;
706 size = 1.1f;
707 spd = 1.15f;
708 break;
709 case 13:
710 kb = 0.8f;
711 dmg = 0.9f;
712 size = 1.1f;
713 break;
714 case 14:
715 kb = 1.15f;
716 spd = 1.1f;
717 break;
718 case 15:
719 kb = 0.9f;
720 spd = 0.85f;
721 break;
722 case 16:
723 dmg = 1.1f;
724 crt = 3;
725 break;
726 case 17:
727 spd = 0.85f;
728 shtspd = 1.1f;
729 break;
730 case 18:
731 spd = 0.9f;
732 shtspd = 1.15f;
733 break;
734 case 19:
735 kb = 1.15f;
736 shtspd = 1.05f;
737 break;
738 case 20:
739 kb = 1.05f;
740 shtspd = 1.05f;
741 dmg = 1.1f;
742 spd = 0.95f;
743 crt = 2;
744 break;
745 case 21:
746 kb = 1.15f;
747 dmg = 1.1f;
748 break;
749 case 82:
750 kb = 1.15f;
751 dmg = 1.15f;
752 crt = 5;
753 spd = 0.9f;
754 shtspd = 1.1f;
755 break;
756 case 22:
757 kb = 0.9f;
758 shtspd = 0.9f;
759 dmg = 0.85f;
760 break;
761 case 23:
762 spd = 1.15f;
763 shtspd = 0.9f;
764 break;
765 case 24:
766 spd = 1.1f;
767 kb = 0.8f;
768 break;
769 case 25:
770 spd = 1.1f;
771 dmg = 1.15f;
772 crt = 1;
773 break;
774 case 58:
775 spd = 0.85f;
776 dmg = 0.85f;
777 break;
778 case 26:
779 mcst = 0.85f;
780 dmg = 1.1f;
781 break;
782 case 27:
783 mcst = 0.85f;
784 break;
785 case 28:
786 mcst = 0.85f;
787 dmg = 1.15f;
788 kb = 1.05f;
789 break;
790 case 83:
791 kb = 1.15f;
792 dmg = 1.15f;
793 crt = 5;
794 spd = 0.9f;
795 mcst = 0.9f;
796 break;
797 case 29:
798 mcst = 1.1f;
799 break;
800 case 30:
801 mcst = 1.2f;
802 dmg = 0.9f;
803 break;
804 case 31:
805 kb = 0.9f;
806 dmg = 0.9f;
807 break;
808 case 32:
809 mcst = 1.15f;
810 dmg = 1.1f;
811 break;
812 case 33:
813 mcst = 1.1f;
814 kb = 1.1f;
815 spd = 0.9f;
816 break;
817 case 34:
818 mcst = 0.9f;
819 kb = 1.1f;
820 spd = 1.1f;
821 dmg = 1.1f;
822 break;
823 case 35:
824 mcst = 1.2f;
825 dmg = 1.15f;
826 kb = 1.15f;
827 break;
828 case 52:
829 mcst = 0.9f;
830 dmg = 0.9f;
831 spd = 0.9f;
832 break;
833 case 84:
834 kb = 1.17f;
835 dmg = 1.17f;
836 crt = 8;
837 break;
838 case 36:
839 crt = 3;
840 break;
841 case 37:
842 dmg = 1.1f;
843 crt = 3;
844 kb = 1.1f;
845 break;
846 case 38:
847 kb = 1.15f;
848 break;
849 case 53:
850 dmg = 1.1f;
851 break;
852 case 54:
853 kb = 1.15f;
854 break;
855 case 55:
856 kb = 1.15f;
857 dmg = 1.05f;
858 break;
859 case 59:
860 kb = 1.15f;
861 dmg = 1.15f;
862 crt = 5;
863 break;
864 case 60:
865 dmg = 1.15f;
866 crt = 5;
867 break;
868 case 61:
869 crt = 5;
870 break;
871 case 39:
872 dmg = 0.7f;
873 kb = 0.8f;
874 break;
875 case 40:
876 dmg = 0.85f;
877 break;
878 case 56:
879 kb = 0.8f;
880 break;
881 case 41:
882 kb = 0.85f;
883 dmg = 0.9f;
884 break;
885 case 57:
886 kb = 0.9f;
887 dmg = 1.18f;
888 break;
889 case 42:
890 spd = 0.9f;
891 break;
892 case 43:
893 dmg = 1.1f;
894 spd = 0.9f;
895 break;
896 case 44:
897 spd = 0.9f;
898 crt = 3;
899 break;
900 case 45:
901 spd = 0.95f;
902 break;
903 case 46:
904 crt = 3;
905 spd = 0.94f;
906 dmg = 1.07f;
907 break;
908 case 47:
909 spd = 1.15f;
910 break;
911 case 48:
912 spd = 1.2f;
913 break;
914 case 49:
915 spd = 1.08f;
916 break;
917 case 50:
918 dmg = 0.8f;
919 spd = 1.15f;
920 break;
921 case 51:
922 kb = 0.9f;
923 spd = 0.9f;
924 dmg = 1.05f;
925 crt = 2;
926 break;
927 }
928 if (dmg != 1f && Math.Round((float)damage * dmg) == (double)damage)
929 {
930 return false;
931 }
932 if (spd != 1f && Math.Round((float)useAnimation * spd) == (double)useAnimation)
933 {
934 return false;
935 }
936 if (mcst != 1f && Math.Round((float)mana * mcst) == (double)mana)
937 {
938 return false;
939 }
940 if (kb != 1f && knockBack == 0f)
941 {
942 return false;
943 }
944 return true;
945 }
static decimal Round(decimal d)
Definition Math.cs:1096
float knockBack
Definition Item.cs:169
int useAnimation
Definition Item.cs:145
int damage
Definition Item.cs:167

References Terraria.Item.damage, Terraria.Item.knockBack, Terraria.Item.mana, System.Math.Round(), and Terraria.Item.useAnimation.

Referenced by Terraria.Item.CanApplyPrefix(), and Terraria.Item.Prefix().