RarityLib
A utility library for adding custom rarities to the game.
Last updated | a year ago |
Total downloads | 1290689 |
Total rating | 5 |
Categories | Utilities Patch |
Dependency string | Root-RarityLib-1.2.8 |
Dependants | 199 other packages depend on this package |
This mod requires the following mods to function
BepInEx-BepInExPack_ROUNDS
BepInEx pack for ROUNDS. Preconfigured and ready to use.
Preferred version: 5.4.1100willis81808-UnboundLib
This is a helpful utility for ROUNDS modders aimed at simplifying common tasks.
Preferred version: 2.7.3Pykess-CardChoiceSpawnUniqueCardPatch
Patches erroneous logic in the base game CardChoice method SpawnUniqueCard
Preferred version: 0.1.7Pykess-ModdingUtils
Utilities aimed at making modding easier and more accessible
Preferred version: 0.3.5README
RarityLib
Adds the ability to create and fetch custom rarities for cards, along with functionality for modifying the relative rarity of a card.
If you would like acsess to a pile of existing modded raritys checkout Rarity Bundle
Functions
### AddRarity() ```cs int AddRarity(string name, float relativeRarity, Color color, Color colorOff) ``` #### Description Adds a new rarity for cards to utilize and returns the curent number of raritys regestered.Parameters
- string
name
the name of the rarity to add. - float
relativeRarity
how rare should it be (Common is 1, Rare is 0.1). - Color
color
what color should the rarity be when the card is selected. - Color
colorOff
what color should the rarity be when the card is not selected.
Example Usage
RarityUtils.AddRarity("Legendary", 0.025f, new Color(1, 1, 0), new Color(0.7f, 0.7f, 0));
Notes
AddRarity should be utilized in your mod's Awake function, that way the rarities are present before building the cards that need them.
GetRarity()
CardInfo.Rarity GetRarity(string rarityName)
Description
Returns the rarity with the given name if it exists, otherwise returns Common. Can not be called untill after the rarities are finalized in RarityLib's start function.
Parameters
- string
rarityName
the rarity to fetch.
Example Usage
RarityUtils.GetRarity("Legendary");
GetRarityData()
Rarity GetRarityData(CardInfo.Rarity rarity)
Description
Returns the data for a rarity.
Parameters
- CardInfo.Rarity
rarity
the rarity data to fetch.
Example Usage
RarityUtils.GetRarityData(CardInfo.Rarity.Common);
GetCardRarityModifier()
float GetCardRarityModifier(CardInfo card)
Description
Returns the rarity modifier for a card.
Parameters
- CardInfo
card
the rarity data to fetch.
Example Usage
float rarityMod = RarityUtils.GetCardRarityModifier(card);
UnityEngine.Debug.Log(rarityMod);
SetCardRarityModifier()
void SetCardRarityModifier(CardInfo card, float modifier)
Description
Sets the default rarity modifier for a card.
Parameters
- CardInfo
card
the rarity data to fetch. - float
modifier
the new default rarity modifier for the card.
Example Usage
RarityUtils.SetCardRarityModifier(card, 5);
AjustCardRarityModifier()
void AjustCardRarityModifier(CardInfo card, float add = 0, float mul = 0)
Description
Adjusts the rarity modifier for a card.
Parameters
- CardInfo
card
the rarity data to fetch. - float
add
the amount the default rarity modifier is adjusted by additively. - float
mul
the amount the default rarity modifier is adjusted by multiplicatively. Applies after the additive modifier.
Example Usage
RarityUtils.AjustCardRarityModifier(CardInfo card, 5, 100)
Classes
Rarity
Description
The information about a given card rarity.
Fields
- string name
- The name of a rarity.
- float relativeRarity
- How common the rarity is compared to commons.
- float calculatedRarity
- No idea.
- Color color
- The color of the rarity when a card is selected.
- Color colorOff
- The color of the rarity when a card is not selected.
- CardInfo.Rarity value
- The CardInfo rarity of a card rarity.