TModLoader v1.4.4.9
TModLoader 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 1472 of file Item.cs.

1473 {
1474 dmg = 1f;
1475 kb = 1f;
1476 spd = 1f;
1477 size = 1f;
1478 shtspd = 1f;
1479 mcst = 1f;
1480 crt = 0;
1481 switch (rolledPrefix)
1482 {
1483 case 1:
1484 size = 1.12f;
1485 break;
1486 case 2:
1487 size = 1.18f;
1488 break;
1489 case 3:
1490 dmg = 1.05f;
1491 crt = 2;
1492 size = 1.05f;
1493 break;
1494 case 4:
1495 dmg = 1.1f;
1496 size = 1.1f;
1497 kb = 1.1f;
1498 break;
1499 case 5:
1500 dmg = 1.15f;
1501 break;
1502 case 6:
1503 dmg = 1.1f;
1504 break;
1505 case 81:
1506 kb = 1.15f;
1507 dmg = 1.15f;
1508 crt = 5;
1509 spd = 0.9f;
1510 size = 1.1f;
1511 break;
1512 case 7:
1513 size = 0.82f;
1514 break;
1515 case 8:
1516 kb = 0.85f;
1517 dmg = 0.85f;
1518 size = 0.87f;
1519 break;
1520 case 9:
1521 size = 0.9f;
1522 break;
1523 case 10:
1524 dmg = 0.85f;
1525 break;
1526 case 11:
1527 spd = 1.1f;
1528 kb = 0.9f;
1529 size = 0.9f;
1530 break;
1531 case 12:
1532 kb = 1.1f;
1533 dmg = 1.05f;
1534 size = 1.1f;
1535 spd = 1.15f;
1536 break;
1537 case 13:
1538 kb = 0.8f;
1539 dmg = 0.9f;
1540 size = 1.1f;
1541 break;
1542 case 14:
1543 kb = 1.15f;
1544 spd = 1.1f;
1545 break;
1546 case 15:
1547 kb = 0.9f;
1548 spd = 0.85f;
1549 break;
1550 case 16:
1551 dmg = 1.1f;
1552 crt = 3;
1553 break;
1554 case 17:
1555 spd = 0.85f;
1556 shtspd = 1.1f;
1557 break;
1558 case 18:
1559 spd = 0.9f;
1560 shtspd = 1.15f;
1561 break;
1562 case 19:
1563 kb = 1.15f;
1564 shtspd = 1.05f;
1565 break;
1566 case 20:
1567 kb = 1.05f;
1568 shtspd = 1.05f;
1569 dmg = 1.1f;
1570 spd = 0.95f;
1571 crt = 2;
1572 break;
1573 case 21:
1574 kb = 1.15f;
1575 dmg = 1.1f;
1576 break;
1577 case 82:
1578 kb = 1.15f;
1579 dmg = 1.15f;
1580 crt = 5;
1581 spd = 0.9f;
1582 shtspd = 1.1f;
1583 break;
1584 case 22:
1585 kb = 0.9f;
1586 shtspd = 0.9f;
1587 dmg = 0.85f;
1588 break;
1589 case 23:
1590 spd = 1.15f;
1591 shtspd = 0.9f;
1592 break;
1593 case 24:
1594 spd = 1.1f;
1595 kb = 0.8f;
1596 break;
1597 case 25:
1598 spd = 1.1f;
1599 dmg = 1.15f;
1600 crt = 1;
1601 break;
1602 case 58:
1603 spd = 0.85f;
1604 dmg = 0.85f;
1605 break;
1606 case 26:
1607 mcst = 0.85f;
1608 dmg = 1.1f;
1609 break;
1610 case 27:
1611 mcst = 0.85f;
1612 break;
1613 case 28:
1614 mcst = 0.85f;
1615 dmg = 1.15f;
1616 kb = 1.05f;
1617 break;
1618 case 83:
1619 kb = 1.15f;
1620 dmg = 1.15f;
1621 crt = 5;
1622 spd = 0.9f;
1623 mcst = 0.9f;
1624 break;
1625 case 29:
1626 mcst = 1.1f;
1627 break;
1628 case 30:
1629 mcst = 1.2f;
1630 dmg = 0.9f;
1631 break;
1632 case 31:
1633 kb = 0.9f;
1634 dmg = 0.9f;
1635 break;
1636 case 32:
1637 mcst = 1.15f;
1638 dmg = 1.1f;
1639 break;
1640 case 33:
1641 mcst = 1.1f;
1642 kb = 1.1f;
1643 spd = 0.9f;
1644 break;
1645 case 34:
1646 mcst = 0.9f;
1647 kb = 1.1f;
1648 spd = 1.1f;
1649 dmg = 1.1f;
1650 break;
1651 case 35:
1652 mcst = 1.2f;
1653 dmg = 1.15f;
1654 kb = 1.15f;
1655 break;
1656 case 52:
1657 mcst = 0.9f;
1658 dmg = 0.9f;
1659 spd = 0.9f;
1660 break;
1661 case 84:
1662 kb = 1.17f;
1663 dmg = 1.17f;
1664 crt = 8;
1665 break;
1666 case 36:
1667 crt = 3;
1668 break;
1669 case 37:
1670 dmg = 1.1f;
1671 crt = 3;
1672 kb = 1.1f;
1673 break;
1674 case 38:
1675 kb = 1.15f;
1676 break;
1677 case 53:
1678 dmg = 1.1f;
1679 break;
1680 case 54:
1681 kb = 1.15f;
1682 break;
1683 case 55:
1684 kb = 1.15f;
1685 dmg = 1.05f;
1686 break;
1687 case 59:
1688 kb = 1.15f;
1689 dmg = 1.15f;
1690 crt = 5;
1691 break;
1692 case 60:
1693 dmg = 1.15f;
1694 crt = 5;
1695 break;
1696 case 61:
1697 crt = 5;
1698 break;
1699 case 39:
1700 dmg = 0.7f;
1701 kb = 0.8f;
1702 break;
1703 case 40:
1704 dmg = 0.85f;
1705 break;
1706 case 56:
1707 kb = 0.8f;
1708 break;
1709 case 41:
1710 kb = 0.85f;
1711 dmg = 0.9f;
1712 break;
1713 case 57:
1714 kb = 0.9f;
1715 dmg = 1.18f;
1716 break;
1717 case 42:
1718 spd = 0.9f;
1719 break;
1720 case 43:
1721 dmg = 1.1f;
1722 spd = 0.9f;
1723 break;
1724 case 44:
1725 spd = 0.9f;
1726 crt = 3;
1727 break;
1728 case 45:
1729 spd = 0.95f;
1730 break;
1731 case 46:
1732 crt = 3;
1733 spd = 0.94f;
1734 dmg = 1.07f;
1735 break;
1736 case 47:
1737 spd = 1.15f;
1738 break;
1739 case 48:
1740 spd = 1.2f;
1741 break;
1742 case 49:
1743 spd = 1.08f;
1744 break;
1745 case 50:
1746 dmg = 0.8f;
1747 spd = 1.15f;
1748 break;
1749 case 51:
1750 kb = 0.9f;
1751 spd = 0.9f;
1752 dmg = 1.05f;
1753 crt = 2;
1754 break;
1755 default:
1756 {
1758 if (modPrefix != null)
1759 {
1760 if (!modPrefix.AllStatChangesHaveEffectOn(this))
1761 {
1762 return false;
1763 }
1764 modPrefix.SetStats(ref dmg, ref kb, ref spd, ref size, ref shtspd, ref mcst, ref crt);
1765 }
1766 break;
1767 }
1768 }
1769 if (dmg != 1f && Math.Round((float)damage * dmg) == (double)damage)
1770 {
1771 return false;
1772 }
1773 if (spd != 1f && Math.Round((float)useAnimation * spd) == (double)useAnimation)
1774 {
1775 return false;
1776 }
1777 if (mcst != 1f && Math.Round((float)mana * mcst) == (double)mana)
1778 {
1779 return false;
1780 }
1781 if (kb != 1f && knockBack == 0f)
1782 {
1783 return false;
1784 }
1785 return true;
1786 }
float knockBack
The force of the knock back. Max value is 20. The Knockback wiki pagehas info on existing values....
Definition Item.cs:462
int useAnimation
The time span of the using animation for the item in ticks. This is independent of the time it takes ...
Definition Item.cs:384
int damage
The base damage inflicted by this item. The List of weapons wiki pagecan be a useful guide for decidi...
Definition Item.cs:455
int mana
The amount of mana this item consumes on use. Use M:Terraria.ModLoader.ModItem.ModifyManaCost(Terra...
Definition Item.cs:635
static ModPrefix GetPrefix(int type)
Returns the ModPrefix associated with specified type If not a ModPrefix, returns null.

References Terraria.Item.damage, Terraria.ModLoader.PrefixLoader.GetPrefix(), Terraria.Item.knockBack, Terraria.Item.mana, and Terraria.Item.useAnimation.

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

+ Here is the call graph for this function:
+ Here is the caller graph for this function: