AALUND13-JARL icon

JARL

JARL (Just Another Rounds Library) is a versatile toolkit that introduces a Armor Framework and provides utilities like CustomCardUnity to streamline the creation of custom cards in Unity.

Last updated 2 months ago
Total downloads 18479
Total rating 1 
Categories Server-side Custom Cards Utilities
Dependency string AALUND13-JARL-1.3.1
Dependants 3 other packages depend on this package

This mod requires the following mods to function

Root-Classes_Manager_Reborn-1.5.4 icon
Root-Classes_Manager_Reborn

A recreation of the original Classes Manager, with added features.

Preferred version: 1.5.4
Pykess-ModdingUtils-0.4.6 icon
Pykess-ModdingUtils

Utilities aimed at making modding easier and more accessible

Preferred version: 0.4.6
willis81808-UnboundLib-3.2.10 icon
willis81808-UnboundLib

This is a helpful utility for ROUNDS modders aimed at simplifying common tasks.

Preferred version: 3.2.10
willis81808-ModsPlus-1.6.2 icon
willis81808-ModsPlus

Willis' amazing modding utilities

Preferred version: 1.6.2

README

JARL (Just Another Rounds Library) 1.3.1

JARL (Just Another Rounds Library) is a versatile toolkit that introduces a Armor Framework and provides utilities like CustomCardUnity to streamline the creation of custom cards in Unity.

Feel free send your suggestions or bug report in issues tab.

Features

  • Armor Framework: JARL integrates a flexible Armor Framework, empowering developers to craft their own armor or incorporate methods into armors created by other developers. This is achieved through the utilization of DamageProcessingMethodsAfter and DamageProcessingMethodsBefore, allowing for extensive customization.

  • Custom Card Unity: JARL also includes CustomCard for Unity, a class that can be inherited to create custom cards within the Unity environment.

Usage

Armor Framework

Creating a Armor Type

You can create an armor type by inheriting from the ArmorBase class. Here is an example of an armor type:

public class ExampleArmor : ArmorBase
{
    public override string GetArmorType()
    {
        return "Example";
    }

    public override BarColor GetBarColor()
    {
        return new BarColor(Color.cyan * 0.6f, Color.cyan * 0.45f);
    }

    public override void SetupArmor()
    {
        armorTags.Add("CanArmorPierce");
        reactivateArmorType = ArmorReactivateType.Second;
    }
}

Registering Armor

After creating your armor, you can register it using the RegisterArmorType method from the ArmorFramework class:

void Start()
{
	ArmorFramework.RegisterArmorType(new ExampleArmor());
}

Adding Armor To Players

You can add armor to a player, for example, when a player picks a card, by using the AddArmor method from the ArmorHandler class:

public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
    player.data.GetAdditionalData().armorHandler.AddArmor("Example", 50, 5, 5, ArmorReactivateType.Second, 5);
}

Custom Card Unity

Creating a Custom Card Fr Unity

You can create a custom card unity by inheriting from CustomCardUnity. Here is an example of a custom card for Unity:

using JARL.Abstract;
using JARL.Extensions;
using UnityEngine;

public class ExampleUnityCard : CustomCardUnity
{
    public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
    {
	// Your Code Here
    }

    public override string GetModName()
    {
        return "Your Mod Initials";
    }
}