/* ************************************************************************** */
/*                                                                            */
/*                                                        :::      ::::::::   */
/*   main.cpp                                           :+:      :+:    :+:   */
/*                                                    +:+ +:+         +:+     */
/*   By: bchanot <bchanot@42.fr>                    +#+  +:+       +#+        */
/*                                                +#+#+#+#+#+   +#+           */
/*   Created: 2025/07/17 15:10:40 by bchanot           #+#    #+#             */
/*   Updated: 2025/12/18 14:46:21 by bchanot          ###   ########.fr       */
/*                                                                            */
/* ************************************************************************** */

#include "ScavTrap.hpp"

#include <iostream>
#include <limits>

int main( void ) {
			ScavTrap    scav("Scav");
		ScavTrap    trap("Trap");

		scav.attack("Trap");
		trap.beRepaired(2);
		trap.takeDamage(112);

		// Can't attack because he is dead
		trap.attack("Scav");
		scav.beRepaired(std::numeric_limits<short unsigned int>::max());
		scav.takeDamage(100);
		scav.takeDamage(std::numeric_limits<short unsigned int>::max());
		scav = ScavTrap("Scav");
		for (int i = 0; i < 52; i++)
			scav.attack("Bidule");
		trap = ScavTrap(scav);
		trap.takeDamage(100);
		scav = trap;
		trap.takeDamage(100);
		scav.guardGate();
	return (0);
}
