#if defined _csdm_included
#endinput
#endif
#define _csdm_included
#if AMXX_VERSION_NUM >= 175
#pragma reqlib csdm
#if !defined AMXMODX_NOAUTOLOAD
#pragma loadlib csdm
#endif
#else
#pragma library csdm
#endif
#define CSDM_VERSION "3.6"
#define CFG_READ 0
#define CFG_RELOAD 1
#define CFG_DONE 2
#define DEFAULT_ARMOR 100
#define MAX_WEAPONS 32
#define MAX_SECONDARY 8
#define MAX_PRIMARY 18
#define CSDM_FFA_ENABLE 3
#define CSDM_FFA_DISABLE 2
#define CSDM_ENABLE 1
#define CSDM_DISABLE 0
#define CSDM_DROP_CONTINUE 0
#define CSDM_DROP_REMOVE 1
#define CSDM_DROP_IGNORE 2
#define CSDM_MAXPLAYERS 32
****/
forward csdm_Init(const version[]);
forward csdm_CfgInit();
forward csdm_PreDeath(killer, victim, headshot, const weapon[]);
forward csdm_PostDeath(killer, victim, headshot, const weapon[]);
forward csdm_PreSpawn(player, bool:fake);
forward csdm_PostSpawn(player, bool:fake);
forward csdm_RoundRestart(post);
forward csdm_StateChange(csdm_state);
forward csdm_RemoveWeapon(owner, entity_id, boxed_id);
forward csdm_HandleDrop(id, weapon, death);
***/
native csdm_getpos(player, Float:origin[3], ...);
native csdm_setpos(player, const Float:origin[3], ...);
native csdm_spawnstyles();
native csdm_styleinfo(style_index, name[], maxlength);
native csdm_addstyle(const name[], const function[]);
native csdm_setstyle(const name[]);
native csdm_curstyle();
native csdm_respawn(player);
native csdm_fakespawn(player);
native csdm_reg_cfg(const sectionName[], const handler[]);
native csdm_give_item(player, const item_name[]);
native csdm_force_drop(player, const weapon[], remove = 1);
native csdm_remove_weapon(player, const weapon[], seconds, delay);
native csdm_remove_weaponbox(player, ent, seconds, delay, shield);
native csdm_remove_entity_all(const NameEnt[]);
native csdm_reload_cfg(const file[] = "");
native csdm_active();
native csdm_set_active(on_or_off);
native csdm_get_ffa();
native csdm_set_ffa(on_or_off);
native Float:csdm_get_spawnwait();
native csdm_set_spawnwait(Float:time);
native csdm_cache(ar[6], vers = 2);
native csdm_trace_hull(Float:origin[3], hull_no);
native csdm_set_intromsg(value = -1);
native csdm_main_menu();
native csdm_settings_menu();
#define CSDM_OPTION_SAYRESPAWN 1
#define CSDM_SET_DISABLED -1
#define CSDM_SET_DEFAULT 0
#define CSDM_SET_ENABLED 1
native csdm_set_mainoption(option, setting, ...);
native csdm_fwd_drop(player, weapon_id, const name[]);
native csdm_write_cfg(id, const section[], const parameter[], const value[]);
native csdm_respawn_all_player();
*** HELPER STUFF
***/
#define SLOT_PRIMARY 1
#define SLOT_SECONDARY 2
#define SLOT_KNIFE 3
#define SLOT_GRENADE 4
#define SLOT_C4 5
#define _TEAM_T 1
#define _TEAM_CT 2
stock g_WeaponSlots[] = {
0,
2,
0,
1,
4,
1,
5,
1,
1,
4,
2,
2,
1,
1,
1,
1,
2,
2,
1,
1,
1,
1,
1,
1,
1,
4,
2,
1,
1,
3,
1
};
stock g_MaxBPAmmo[] = {
0,
52,
0,
90,
1,
32,
1,
100,
90,
1,
120,
100,
100,
90,
90,
90,
100,
120,
30,
120,
200,
32,
90,
120,
90,
2,
35,
90,
90,
0,
100
};
#define getWepId(%1) get_weaponid(%1)
stock bool:IsValidTeam(team)
{
if (team == 1 || team == 2) {
return true;
}
return false;
}
stock drop_with_shield(player, weapon_id)
{
new name[32];
get_weaponname(weapon_id, name, charsmax(name));
csdm_force_drop(player, "weapon_shield", 0);
csdm_force_drop(player, name, 0);
csdm_fwd_drop(player, -1, "weapon_shield");
csdm_fwd_drop(player, weapon_id, name);
csdm_give_item(player, "weapon_shield");
}