# fightBasic

### addSpell

**🎮Méthode**

```lua
fightBasic:addSpell(spellId, target, turns, relaunch, cac, targetLife)
```

Ajoute un sort a la liste des sorts a utiliser.

**Paramètres:**

| Nom          | Type      | Description                             |
| ------------ | --------- | --------------------------------------- |
| `spellId`    | `number`  | ID du sort                              |
| `target`     | `string`  | Type de cible (enemy, ally, self, cell) |
| `turns`      | `number`  | Tous les X tours (0 = toujours)         |
| `relaunch`   | `number`  | Nombre de relances max par tour         |
| `cac`        | `boolean` | Utiliser au corps a corps               |
| `targetLife` | `number`  | Vie cible minimum en %                  |

**Exemple:**

{% code title="Exemples" %}

```lua
-- Sort offensif sur ennemi, toujours, max 3 fois par tour
fightBasic:addSpell(12345, "enemy", 0, 3, false, 0)

-- Sort de buff sur soi, tour 1 uniquement
fightBasic:addSpell(12346, "self", 1, 1, false, 0)

-- Sort de soin sur allie si vie < 50%
fightBasic:addSpell(12347, "ally", 0, 2, false, 50)
```

{% endcode %}

{% hint style="info" %}
Cibles: "enemy" (ennemi), "ally" (allie), "self" (soi-meme), "cell" (cellule)
{% endhint %}

***

### clearSpells

**🎮Méthode**

```lua
fightBasic:clearSpells()
```

Vide la liste des sorts configures.

**Exemple:**

{% code title="Exemple" %}

```lua
fightBasic:clearSpells()
-- Reconfigurer les sorts
fightBasic:addSpell(12345, "enemy", 0, 3, false, 0)
```

{% endcode %}

***

### playTurn

**🎮Méthode**

```lua
fightBasic:playTurn(tactic)
```

Joue le tour avec une tactique donnée.

**Paramètres:**

| Nom      | Type     | Description        |
| -------- | -------- | ------------------ |
| `tactic` | `string` | Tactique de combat |

**Exemple:**

{% code title="Exemples de tactiques" %}

```lua
-- Tactiques disponibles:
fightBasic:playTurn("aggressive") -- Foncer sur l'ennemi
fightBasic:playTurn("defensive")  -- Rester a distance
fightBasic:playTurn("immobile")   -- Ne pas bouger
fightBasic:playTurn("fugitive")   -- Fuir les ennemis
```

{% endcode %}

{% hint style="info" %}
Tactiques: "aggressive", "defensive", "immobile", "fugitive"
{% endhint %}

***

### setApproachDistance

**🎮Méthode**

```lua
fightBasic:setApproachDistance(distance)
```

Definit la distance d'approche souhaitee.

**Paramètres:**

| Nom        | Type     | Description          |
| ---------- | -------- | -------------------- |
| `distance` | `number` | Distance en cellules |

**Exemple:**

{% code title="Exemple" %}

```lua
-- Rester a 3 cellules de l'ennemi
fightBasic:setApproachDistance(3)
```

{% endcode %}

***

### setFightSpeed

**🎮Méthode**

```lua
fightBasic:setFightSpeed(speed)
```

Definit la vitesse de combat.

**Paramètres:**

| Nom     | Type     | Description               |
| ------- | -------- | ------------------------- |
| `speed` | `number` | Multiplicateur de vitesse |

**Exemple:**

{% code title="Exemple" %}

```lua
fightBasic:setFightSpeed(2) -- Combat 2x plus rapide
```

{% endcode %}
