Beruflich Dokumente
Kultur Dokumente
#include <cstrike>
#include <engine>
#include <fakemeta>
#include <fakemeta_util>
#include <hamsandwich>
#include <fun>
#if cellbits == 32
#define OFFSET_BZ 235
#else
#define OFFSET_BZ 268
#endif
//Shop
new SuperKnifeModel_V[] = "models/nike_knife.mdl"
new bool: HaveSuperKnife[33]
//Settings
new bool:MakeVisible[33], Float:Wallorigin[33][3]
//Parachute
#define PARACHUTE_CLASS "Parachute"
new ParaENT[33];
new Menu;
new cvar_gamedescription, furienspawnhp, antifurienspawnhp, removebuyzone,
superknife_damage_multiplier, cvar_autojoin_class, cvar_autojoin_team,
cvar_aim_info,
MSGID_SayText, MSGID_StatusIcon, MSGID_TextMsg, MSGID_SendAudio, MSGID_ShowMenu,
MSGID_VGUIMenu, MSGID_Health, MSGID_ScreenFade,
bool:CanPlant, C4_CountDownDelay;
public plugin_cfg() {
server_cmd("amx_cvar mp_playerid 2")
server_cmd("amx_cvar sv_maxspeed 900")
server_cmd("amx_cvar sv_restart 5")
}
//=================================================================================
==========//
//===============================[Weapons
Settings]=========================================//
//=================================================================================
========//
new bool:HavePrimaryWeapon[33], bool:HaveSecondaryWeapon[33], PrimaryWeapon[33],
SecondaryWeapon[33];
//---|| Primary
#define M4A1_KEY 100
#define AK47_KEY 101
#define M3_KEY 102
#define AUG_KEY 103
#define FAMAS_KEY 104
#define MP5_KEY 105
#define XM1014_KEY 106
//---|| Secondary
#define USP_KEY 107
#define DEAGLE_KEY 108
#define ELITE_KEY 109
#define FIVESEVEN_KEY 110
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
MSGID_SayText = get_user_msgid("SayText")
MSGID_StatusIcon = get_user_msgid("StatusIcon")
MSGID_TextMsg = get_user_msgid("TextMsg")
MSGID_SendAudio = get_user_msgid("SendAudio")
MSGID_ShowMenu = get_user_msgid("ShowMenu")
MSGID_VGUIMenu = get_user_msgid("VGUIMenu")
MSGID_ScreenFade = get_user_msgid("ScreenFade")
register_forward(FM_PlayerPreThink, "Player_PreThink");
register_forward(FM_AddToFullPack, "FWD_AddToFullPack", 1);
register_forward(FM_PlayerPreThink, "FWD_ParachutePreThink");
register_forward(FM_GetGameDescription, "FWD_GameDescription")
register_message(MSGID_StatusIcon, "MSG_StatusIcon");
register_message(MSGID_TextMsg, "MSG_TextMessage");
register_message(MSGID_ShowMenu, "MSG_ShowMenu");
register_message(MSGID_VGUIMenu, "MSG_VGUIMenu");
register_message(MSGID_SendAudio, "MSG_SendAudio");
register_message(MSGID_Health, "MSG_Health")
register_message(MSGID_ScreenFade, "MSG_ScreenFade")
}
public plugin_precache() {
removebuyzone = register_cvar("furien_removebuyzone", "1")
if(get_pcvar_num(removebuyzone)) {
remove_entity_name("info_map_parameters");
remove_entity_name("func_buyzone");
public client_connect(id) {
client_cmd(id, "cl_forwardspeed 999.0")
client_cmd(id, "cl_sidespeed 999.0")
client_cmd(id, "cl_backspeed 999.0")
}
public client_putinserver(id) {
client_cmd(id, "cl_forwardspeed 999.0")
client_cmd(id, "cl_sidespeed 999.0")
client_cmd(id, "cl_backspeed 999.0")
PrimaryWeapon[id] = 0
SecondaryWeapon[id] = 0
}
public Ham_Spawn_Post(id) {
if(is_user_connected(id) && is_user_alive(id)) {
strip_user_weapons(id)
HavePrimaryWeapon[id] = false
HaveSecondaryWeapon[id] = false
switch(get_user_team(id)) {
case TEAM_FURIEN: {
fm_give_item(id, "weapon_hegrenade")
fm_give_item(id, "weapon_knife")
set_user_footsteps(id, 1)
fm_set_user_health(id, get_pcvar_num(furienspawnhp))
}
case TEAM_ANTIFURIEN: {
fm_give_item(id, "weapon_knife")
set_user_footsteps(id, 0)
fm_set_user_health(id, get_pcvar_num(antifurienspawnhp))
HaveSuperKnife[id] = false;
Equipment(id)
}
}
}
}
public EVENT_NewRound()
{
CanPlant = false;
remove_task(TASKID_CANPLANT)
remove_task(TASKID_C4COUNTDOWN)
public EVENT_FireINTheHole()
return PLUGIN_HANDLED
return HAM_IGNORED
}
///////////////////////////////////////////////////////////////////////////////////
////////////
public C4_PrimaryAttack(Ent) {
if(!CanPlant)
return HAM_SUPERCEDE
return HAM_IGNORED
}
public CmdResetScore(id) {
if(get_user_frags(id) == 0 && get_user_deaths(id) == 0)
ColorChat(id, "!gScorul tau a fost resetat cu succes!g !")
else {
for(new i = 0; i < 2; i++) {
cs_set_user_deaths(id, 0);
set_user_frags(id, 0);
}
ColorChat(id, "!gTi-ai resetat scorul cu succes !")
}
}
public client_command(id)
{
static Cmd[6], Said[100];
read_args(Said,99);
remove_quotes(Said);
read_argv(0,Cmd,5);
if(equali(Cmd,"Say",3)&&containi(Said,"/shop")!=-1 ||
equali(Cmd,"Say",3)&&containi(Said,"shop")!=-1)
{
if(!is_user_alive(id))
return PLUGIN_HANDLED;
switch(get_user_team(id))
{
case TEAM_FURIEN: CmdFurienShop(id)
case TEAM_ANTIFURIEN: CmdAntiFurienShop(id)
}
}
return PLUGIN_CONTINUE;
public CmdFurienShop(id) {
if(is_user_alive(id) && get_user_team(id) == TEAM_FURIEN) {
Menu = menu_create("\yFurien Shop", "CmdFurienHandler")
new SuperKnife[256];
formatex(SuperKnife, sizeof(SuperKnife)-1, "Super knife - \y10000$")
menu_additem(Menu, SuperKnife, "1", 0)
new Health[256];
formatex(Health, sizeof(Health)-1, "50 HP - \y3000$")
menu_additem(Menu, Health, "2", 0)
new Armor[256];
formatex(Armor, sizeof(Armor)-1, "50 AP + Helmet - \y500$")
menu_additem(Menu, Armor, "3", 0)
new Grenade[256];
formatex(Grenade, sizeof(Grenade)-1, "He grenade - \y4000$")
menu_additem(Menu, Grenade, "4", 0)
public CmdAntiFurienShop(id) {
if(is_user_alive(id) && get_user_team(id) == TEAM_ANTIFURIEN) {
Menu = menu_create("\yAnti-Furien Shop", "CmdAntiFurienHandler")
new Defuse[256];
formatex(Defuse, sizeof(Defuse)-1, "Defuse kit - \y500$")
menu_additem(Menu, Defuse, "1", 0)
new Health[256];
formatex(Health, sizeof(Health)-1, "50 HP - \y3000$")
menu_additem(Menu, Health, "2", 0)
new Armor[256];
formatex(Armor, sizeof(Armor)-1, "50 AP + Helmet - \y500$")
menu_additem(Menu, Armor, "3", 0)
new Grenade[256];
formatex(Grenade, sizeof(Grenade)-1, "He grenade - \y4000$")
menu_additem(Menu, Grenade, "4", 0)
//=========================================================================//
//=======================[Weapons Settings]===============================//
//=======================================================================//
public Equipment(id) {
if(is_user_alive(id) && get_user_team(id) == 2) {
Menu = menu_create("\rWeapons Menu", "EquipmentCmd");
menu_additem(Menu, "\wNew Weapons", "1", 0);
if(PrimaryWeapon[id] && SecondaryWeapon[id])
menu_additem(Menu, "\wPrevious Setup", "2", 0);
else
menu_additem(Menu, "\dPrevious Setup", "2", 0);
menu_setprop(Menu, MPROP_EXIT, MEXIT_NEVER)
menu_display(id, Menu, 0);
}
}
public Primary(id) {
if(is_user_alive(id) && get_user_team(id) == TEAM_ANTIFURIEN) {
Menu = menu_create("\yAnti-Furien Weapons^n\rPrimary:",
"CmdWeaponsHandler")
public Secondary(id) {
if(is_user_alive(id) && get_user_team(id) == TEAM_ANTIFURIEN) {
Menu = menu_create("\yAnti-Furien Weapons^n\rSecondary:",
"CmdSecondaryHandler")
public GiveLastWeapons(id) {
if(!HavePrimaryWeapon[id]) {
switch(PrimaryWeapon[id]) {
case M4A1_KEY: {
fm_give_item(id, "weapon_m4a1")
cs_set_user_bpammo(id, CSW_M4A1, 256)
HavePrimaryWeapon[id] = true;
}
case AK47_KEY: {
fm_give_item(id, "weapon_ak47")
cs_set_user_bpammo(id, CSW_AK47, 256)
HavePrimaryWeapon[id] = true;
}
case M3_KEY: {
fm_give_item(id, "weapon_m3")
cs_set_user_bpammo(id, CSW_M3, 256)
HavePrimaryWeapon[id] = true;
}
case AUG_KEY: {
fm_give_item(id, "weapon_aug")
cs_set_user_bpammo(id, CSW_AUG, 256)
HavePrimaryWeapon[id] = true;
}
case FAMAS_KEY: {
fm_give_item(id, "weapon_famas")
cs_set_user_bpammo(id, CSW_FAMAS, 256)
HavePrimaryWeapon[id] = true;
}
case MP5_KEY: {
fm_give_item(id, "weapon_mp5navy")
cs_set_user_bpammo(id, CSW_MP5NAVY, 256)
HavePrimaryWeapon[id] = true;
}
case XM1014_KEY: {
fm_give_item(id, "weapon_xm1014")
cs_set_user_bpammo(id, CSW_XM1014, 256)
HavePrimaryWeapon[id] = true;
}
}
}
if(!HaveSecondaryWeapon[id]) {
switch(SecondaryWeapon[id]) {
case USP_KEY: {
fm_give_item(id, "weapon_usp")
cs_set_user_bpammo(id, CSW_USP, 256)
HaveSecondaryWeapon[id] = true;
}
case DEAGLE_KEY: {
fm_give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 256)
HaveSecondaryWeapon[id] = true;
}
case ELITE_KEY: {
fm_give_item(id, "weapon_elite")
cs_set_user_bpammo(id, CSW_ELITE, 256)
HaveSecondaryWeapon[id] = true;
}
case FIVESEVEN_KEY: {
fm_give_item(id, "weapon_fiveseven")
cs_set_user_bpammo(id, CSW_FIVESEVEN, 256)
HaveSecondaryWeapon[id] = true;
}
}
}
}
public CMD_BlockJoinTeam(id) {
console_print(id, "*** Nu ai voie sa foloseti JoinTeam ! ***")
return 1;
}
public CMD_BlockChooseTeam(id) {
console_print(id, "*** Nu ai voie sa foloseti ChooseTeam ! ***")
return 1;
}
public CmdShowMotd(id)
show_motd(id, "addons/amxmodx/configs/beneficii.html")
/////////////////////////////////////////////////////////////////////////
public EVENT_CurWeapon(id) {
if(is_user_connected(id)) {
if(get_user_weapon(id) == CSW_KNIFE) {
if(HaveSuperKnife[id])
set_pev(id, pev_viewmodel2, SuperKnifeModel_V)
}
new PlayerHealth;
PlayerHealth = get_user_health(id)
if(PlayerHealth == 256)
fm_set_user_health(id, 255)
}
public EVENT_Death()
{
static Attacker, Victim;
Attacker = read_data(1)
Victim = read_data(2)
HaveSuperKnife[Victim] = false;
if(Victim == Attacker)
{
return 1;
}
return 0;
}
if(Attrib == (1<<1))
set_msg_arg_int(2, ARG_BYTE, 0)
new Icon[8];
get_msg_arg_string(2, Icon, 7);
if(get_pcvar_num(removebuyzone)) {
static const BuyZone[] = "buyzone";
if(equal(Icon, BuyZone)) {
set_pdata_int(id, OFFSET_BZ, get_pdata_int(id, OFFSET_BZ, 5) &
~(1 << 0), 5);
return PLUGIN_HANDLED;
}
}
return PLUGIN_CONTINUE;
}
public MSG_TextMessage() {
static TextMsg[22];
get_msg_arg_string(2, TextMsg, charsmax(TextMsg))
if(equal(TextMsg, "#Terrorists_Win")) {
client_print(0, print_center, "Furienii au castigat runda!")
return PLUGIN_HANDLED;
}
else if(equal(TextMsg, "#CTs_Win")) {
client_print(0, print_center, "Anti-furienii au castigat runda!")
return PLUGIN_HANDLED;
}
else if(equal(TextMsg, "#Bomb_Defused")) {
client_print(0, print_center, "Anti-furienii au castigat runda!")
return PLUGIN_HANDLED;
}
else if(equal(TextMsg, "#Target_Bombed")) {
client_print(0, print_center, "Furienii au castigat runda!")
return PLUGIN_HANDLED;
}
else if(equal(TextMsg, "#Target_Saved")) {
client_print(0, print_center, "Anti-furienii au castgat runda!")
return PLUGIN_HANDLED;
}
else if(equal(TextMsg, "#Fire_in_the_hole"))
return PLUGIN_HANDLED
else if(equal(TextMsg, "#C4_Plant_At_Bomb_Spot")) {
if(!CanPlant)
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE;
}
JoinTeam_Task(id, msgid)
return PLUGIN_HANDLED
}
JoinTeam_Task(id, msgid)
return PLUGIN_HANDLED
}
public MSG_SendAudio() {
static Sound[17]
get_msg_arg_string(2, Sound, sizeof Sound - 1)
return PLUGIN_CONTINUE;
}
if(data[0] == 255 && data[1] == 255 && data[2] == 255 && data[3]
> 199)
return PLUGIN_HANDLED
}
}
return PLUGIN_CONTINUE
}
bool:Should_AutoJoin(id) {
return(get_pcvar_num(cvar_autojoin_team) && !get_user_team(id) && !
task_exists(id))
}
JoinTeam_Task(id, menu_msgid) {
static param_menu_msgid[2]
param_menu_msgid[0] = menu_msgid
public bomb_planted(planter) {
C4_CountDownDelay = get_cvar_num("mp_c4timer") - 1
TASK_C4_CountDown();
set_hudmessage(random(255), random(255), random(255), -1.0, -1.0, 1, 3.1,
3.0)
show_hudmessage(0, "Furienii au plantat bomba!")
}
public EVENT_SwitchTeam() {
new Players[32], PlayersNum, id;
get_players(Players, PlayersNum)
if(PlayersNum) {
for(new i; i < PlayersNum; i++) {
id = Players[i]
BeginDelay(id)
}
}
}
public BeginDelay(id) {
if(is_user_connected(id)) {
switch(id) {
case 1..7: set_task(0.1, "BeginTeamSwap", id)
case 8..15: set_task(0.2, "BeginTeamSwap", id)
case 16..23: set_task(0.3, "BeginTeamSwap", id)
case 24..32: set_task(0.4, "BeginTeamSwap", id)
}
}
}
public BeginTeamSwap(id) {
if(is_user_connected(id)) {
switch(get_user_team(id)) {
case TEAM_FURIEN: cs_set_user_team(id, CS_TEAM_CT)
case TEAM_ANTIFURIEN: cs_set_user_team(id, CS_TEAM_T)
}
}
}
///////////////////////////////////////////////////////////////////////////////////
////////////
public Player_PreThink(id) {
if(is_user_connected(id)) {
if(get_user_team(id) == TEAM_FURIEN) {
if(pev(id, pev_gravity) > FURIEN_GRAVITY && pev(id, pev_gravity)
> 0.1)
set_pev(id, pev_gravity, FURIEN_GRAVITY)
public FWD_ParachutePreThink(id) {
if(is_user_alive(id)) {
new Float:FallSpeed = -50.0;
new Float:Frame;
if(pev(ParaENT[id],pev_sequence) != 2) {
set_pev(ParaENT[id], pev_sequence, 2);
set_pev(ParaENT[id], pev_gaitsequence, 1);
set_pev(ParaENT[id], pev_frame, 0.0);
set_pev(ParaENT[id], pev_fuser1, 0.0);
set_pev(ParaENT[id], pev_animtime, 0.0);
return;
}
pev(ParaENT[id],pev_fuser1, Frame);
Frame += 2.0;
set_pev(ParaENT[id],pev_fuser1,Frame);
set_pev(ParaENT[id],pev_frame,Frame);
if(ParaENT[id] > 0) {
set_pev(ParaENT[id],pev_classname,
PARACHUTE_CLASS);
set_pev(ParaENT[id], pev_aiment, id);
set_pev(ParaENT[id], pev_owner, id);
set_pev(ParaENT[id], pev_movetype,
MOVETYPE_FLY);
set_pev(ParaENT[id], pev_sequence, 0);
set_pev(ParaENT[id], pev_gaitsequence, 1);
set_pev(ParaENT[id], pev_frame, 0.0);
set_pev(ParaENT[id], pev_fuser1, 0.0);
}
}
if(ParaENT[id] > 0) {
set_pev(id, pev_sequence, 3);
set_pev(id, pev_gaitsequence, 1);
set_pev(id, pev_frame, 1.0);
set_pev(id, pev_framerate, 1.0);
if(pev(ParaENT[id],pev_sequence) == 0) {
pev(ParaENT[id],pev_fuser1, Frame);
Frame += 1.0;
set_pev(ParaENT[id],pev_fuser1,Frame);
set_pev(ParaENT[id],pev_frame,Frame);
public FWD_GameDescription() {
static GameName[32]
get_pcvar_string(cvar_gamedescription, GameName, 31)
forward_return(FMV_STRING, GameName)
return FMRES_SUPERCEDE
}
public TASK_CanPlant() {
CanPlant = true;
set_hudmessage(random(255), random(255), random(255), -1.0, -1.0, 1, 3.1,
3.0)
show_hudmessage(0, "Furienii pot planta bomba!")
}
public TASK_C4_CountDown() {
new Red, Green, Blue
if(C4_CountDownDelay > 10)
Red = 0, Green = 255, Blue = 0;
else if(C4_CountDownDelay > 5)
Red = 255, Green = 200, Blue = 0;
else if(C4_CountDownDelay <= 5)
Red = 255, Green = 0, Blue = 0;
if(C4_CountDownDelay) {
new Message[256];
formatex(Message,sizeof(Message)-1,"----------^n| C4: %d |
^n----------", C4_CountDownDelay);