#pragma once

class c_variable
{
public:


	struct
	{
		bool enabled = false;
		int keybind;
		int keybind_mode;
		bool toggle_or_hold = false;
		bool memory_or_mouse = false;

		int aim_bone = 0;
		int aim_priority = 0;

		int fov = 0;
		int smooth = 0;

		bool visible_check = false;
		bool draw_fov = false;
		bool prediction = false;
	} c_aimbot;

	struct
	{
		bool player_box = false;
		int box_type = 0;

		bool skeleton_esp = false;
		bool snaplines = false;
		bool distance = false;
		bool username = false;
		bool platform = false;
		bool weapon = false;
		bool rank = false;

		int esp_distance = 0;
		int text_size = 0;
		
		float box_vis_col[4] = { 1.0f, 0.5f, 0.0f, 1.0f };
		float box_invis_col[4] = { 1.0f, 0.5f, 0.0f, 1.0f };
		float skel_vis_col[4] = { 1.0f, 0.5f, 0.0f, 1.0f };
		float skel_invis_col[4] = { 1.0f, 0.5f, 0.0f, 1.0f };
	} c_esp;

	struct
	{
		bool world_esp = false;
		bool uncommon_loot = false;
		bool common_loot = false;
		bool rare_loot = false;
		bool epic_loot = false;
		bool legendary_loot = false;
		bool mythical_loot = false;
		bool exotic_loot = false;
		bool chests = false;
		bool ammo = false;
		bool llamas = false;
		bool supply_drop = false;
		bool chicken = false;

		int render_distance = 0;
		int loot_distance = 0;
	} c_world;

	struct
	{
		bool bullet_teleport = false;
		bool no_spread = false;
		bool ads_in_air = false;
		bool car_fly = false;
		bool car_speed_mod = false;
		bool car_gravity_mod = false;
		bool speed_hack = false;
	} c_exploits;

	struct
	{
		bool opened = true;

		bool vsync = false;
		bool streamproof = false;
	} c_settings;

};

inline static c_variable* var = new c_variable();