# Animal Effects

## Installation

* lumen\_animaleffects works with [RedEM:RP](https://github.com/RedEM-RP) / [VORP](https://github.com/VORPCORE) / [RSG](https://rexshack-gaming.gitbook.io/rsg/). Be sure you installed one of them before to use this script.
* Drag and drop the resource in your resources folder
  * lumen\_animaleffects
* Add this ensure in your server.cfg below redemrp\_roleplay
  * `ensure` lumen\_animaleffects
* Edit the config.lua to make sure to customize the code

If you have any questions, please contact our lumen works discord.

## Framework

```lua
Config.framework = "redemrp"
```

You can set the framework you need. The available options are "redemrp" or "vorp".

## Language

```lua
Config.Text = {
    [1] = "You have poisoned yourself",
    [2] = "You have caused yourself a trauma",
    [3] = "You have caused a hemorrhage",
    [4] = "That cure didn't work", 
}
```

## Animals

```lua
Config.Animals = {
    ["a_c_snake_01"] = {effect = "poison",variant = {1}, probability = 100},
    ["a_c_wolf"] = {effect = "bleeding",variant = {1,2}, probability = 90},
    ["horse"] = {effect = "trauma",variant = {1}, probability = 90},
}

```

Here you can add more animals indicating the model (there are 3 examples available here) and the following characteristics.

* Effect: Sets the effect category. You can choose between poison, bleeding or trauma.
* Variant : Here you can indicate which type of variant can infect the animal. You can set more than one variant as indicated in the example of "a\_c\_wolf". In case you want only one option, leave only one value.
* Probablility: Sets the probability of applying the effect for each impact of the animal on the player.

## Hud icons

```lua
Config.hudPosition = {
    ["poisonX"] = 0.02,
    ["poisonY"] = 0.75,

    ["hemorrhageX"] = 0.02,
    ["hemorrhageY"] = 0.75,
    
    ["traumaX"] = 0.02,
    ["traumaY"] = 0.75,
}
```

Here you can set the location of the icons of each effect on the screen.

## <mark style="color:green;">Poisons</mark>

```lua
Config.PoisonTable = {
    [1] = {fx = "PlayerKnockout_WeirdoPat",        timer = 60,          damage = 1,          timeDamage = 3,          vomit = true,      canrun = false,    remedy = "ds", color = {r =0,g=255,b=255,a=255}},
    
}
```

In this table you can customize the effects of poisons or add new ones, the values are detailed below:

* Fx: Modify the effect on screen. In the original code you can see 6 examples compatible with poisons
* Timer: Sets the duration of the poison in seconds
* Damage: Sets the poison damage
* TimeDamage: Sets how many seconds damage is inflicted
* Vomit: Sets up a vomiting animation when the poison effect is over
* Canrun: Establishes the possibility of running
* Remedy : Set an item to be able to heal the poison.
* Color: Sets the color of the poison indicator. This is useful to differentiate which type of poison variant is used.

## <mark style="color:red;">Bleeds</mark>

```lua
Config.BloodTable = {
	[1] = {fx = "KingCastleRed",        timer = 80,         damage = 0,       timeDamage = 1,        blood = true,    canrun = true,    remedy = "pan", color = {r =0,g=255,b=255,a=255}},
}
```

In this table you can customize the bleed effects or add new ones, the values are detailed below:

* Fx: Modify the effect on the screen. In the original code you can see 3 examples compatible with bleeds
* Timer: Sets the duration of the bleed in seconds
* Damage: Sets the bleeding damage
* TimeDamage: Sets how many seconds damage is inflicted
* Canrun: Establishes the possibility of running
* Blood: Sets a bleeding effect of the player's body for the duration of the effect
* Remedy : Set an item to be able to heal the bleeding
* Color: Sets the color of the bleeds indicator. This is useful to differentiate which type of bleeding variant is used

## <mark style="color:blue;">Trauma</mark>

```lua
Config.TraumaTable = {
	[1] = {fx = "KingCastleRed",        timer = 20,         damage = 0,       timeDamage = 1,        blood = false,    floor = true,     color = {r =0,g=255,b=255,a=255}},
}
```

En esta tabla puedes personalizar los efectos de trauma o añadir nuevos, los valores se detallan a continuación:

* Fx: Modify the effect on screen. In the original code you can see 2 examples compatible with trauma
* Timer: Sets the duration of the trauma in seconds
* Damage: Establishes trauma damage
* TimeDamage: Sets how many seconds damage is inflicted
* Canrun: Establishes the possibility of running
* Blood: Sets a bleeding effect of the player's body for the duration of the effect
* Floor: Sets whether the player remains unconscious on the ground for the duration of the effect
* Color: Sets the color of the trauma indicator. This is useful to differentiate which type of trauma variant is used

## Notifications

```lua
Config.notify = function(text)
    TriggerEvent('redem_roleplay:ShowObjective', text, 4000)
end
```

You can set your custom notification system here, by default redemrp is added
