http://amxx.pl/topic...nk-mod-pl-v155/
Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse
bamber
Rejestracja: 16.06.2011Aktualnie: Nieaktywny
Poza forum Ostatnio: 16.12.2014 22:23
Statystyki
- Grupa: Użytkownik
- Całość postów: 123
- Odwiedzin: 3 440
- Tytuł: Zaawansowany
- Wiek: 31 lat
- Urodziny: Luty 19, 1993
-
Imię
Zenek
-
Płeć
Mężczyzna
-
Lokalizacja
warszawa
Kontakt
#674442 Szukam Systemu Odznak
Napisane przez bamber w 09.12.2014 21:00
#657453 Szukam Pluginu na ss
Napisane przez bamber w 16.08.2014 21:43
#655087 Przerobienie systemu monet z coda na zombie
Napisane przez bamber w 06.08.2014 10:43
Czy ktoś przerobiłby mi ten plugin http://amxx.pl/topic...3-system-monet/ na zombie plague 4.3
Tak aby dawało tylko monety za zabójstwo i za hs.
#654731 [ROZWIĄZANE] Wiadomość w HUD
Napisane przez bamber w 04.08.2014 16:46
#652566 [ROZWIĄZANE] Animacja przy wyciągnięciu łuku
Napisane przez bamber w 24.07.2014 02:13
#641713 Czy ktoś może mi to skompilować?
Napisane przez bamber w 03.06.2014 18:54
#472591 [ROZWIĄZANE] Serwer.cfg - cvary
Napisane przez bamber w 29.10.2012 16:24
mp_timelimit 20 - długość mapy mp_autokick 1 mp_autoteambalance 1 - balans teamów mp_c4timer 40 - czas do wybuchu paki mp_flashlight 1 - latarka 0wył 1 wł mp_footsteps 1 - słyszenie kroków mp_freezetime 0 - czas na początku ruchu zanim możesz się ruszyć mp_friendlyfire 0 - czy możesz zranić ze swoich z teamu 1 wł 0 wł mp_hostagepenalty 5 mp_limitteams 0 - limitowanie teamów mp_roundtime 3 czas trwania rundy mp_tkpunish 5 sv_restartround 3 - ilosc restartow sv_maxspeed 320 maksymalny speed na serwerze sv_proxies 1 allow_spectators 1 -czy można dojść na specta mp_fadetoblack 0 mp_forcecamera 0 - widzenie z kamery mp_forcechasecam mp_fadetoblack 0 mp_startmoney 800 - ilosc kasy na start mp_chattime 0 sv_voiceenable 1 sv_alltalk 0 - kto kogo słyszy 1 słychać all pausable 0 decalfrequency 60 mp_falldamage 1
#469433 [ROZWIĄZANE] Na serwerze widać niewidzialnych graczy
Napisane przez bamber w 19.10.2012 18:08
#469428 [ROZWIĄZANE] Na serwerze widać niewidzialnych graczy
Napisane przez bamber w 19.10.2012 18:02
#469406 [ROZWIĄZANE] Na serwerze widać niewidzialnych graczy
Napisane przez bamber w 19.10.2012 17:27
Nie gram na software.
1 klasa
2 klasa
3 klasa
Perki:
1 klasa
Spoiler
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <fakemeta>
new const nazwa[] = "Ninja";
new const opis[] = "Na nozu 10% widocznosci, 3 podskoki w powietrzu, zmniejszona grawitacja";
new const bronie = (1<<CSW_DEAGLE);
new const zdrowie = -10;
new const kondycja = 30;
new const inteligencja = 0;
new const wytrzymalosc = 5;
new skoki[33];
new ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "amxx.pl");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_event("CurWeapon", "eventKnife_Niewidzialnosc", "be", "1=1");
RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1);
register_forward(FM_CmdStart, "fwCmdStart_MultiJump");
}
public cod_class_enabled(id)
{
entity_set_float(id, EV_FL_gravity, 600.0/800.0);
ma_klase[id] = true;
}
public cod_class_disabled(id)
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
entity_set_float(id, EV_FL_gravity, 1.0);
ma_klase[id] = false;
}
public eventKnife_Niewidzialnosc(id)
{
if(!ma_klase[id])
return;
if( read_data(2) == CSW_KNIFE )
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 25);
}
else
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
}
public fwSpawn_Grawitacja(id)
{
if(ma_klase[id])
entity_set_float(id, EV_FL_gravity, 600.0/800.0);
}
public fwCmdStart_MultiJump(id, uc_handle)
{
if(!is_user_alive(id) || !ma_klase[id])
return FMRES_IGNORED;
new flags = pev(id, pev_flags);
if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id])
{
skoki[id]--;
new Float:velocity[3];
pev(id, pev_velocity,velocity);
velocity[2] = random_float(265.0,285.0);
set_pev(id, pev_velocity,velocity);
}
else if(flags & FL_ONGROUND)
skoki[id] = 3;
return FMRES_IGNORED;
}
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <fakemeta>
new const nazwa[] = "Ninja";
new const opis[] = "Na nozu 10% widocznosci, 3 podskoki w powietrzu, zmniejszona grawitacja";
new const bronie = (1<<CSW_DEAGLE);
new const zdrowie = -10;
new const kondycja = 30;
new const inteligencja = 0;
new const wytrzymalosc = 5;
new skoki[33];
new ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "amxx.pl");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_event("CurWeapon", "eventKnife_Niewidzialnosc", "be", "1=1");
RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1);
register_forward(FM_CmdStart, "fwCmdStart_MultiJump");
}
public cod_class_enabled(id)
{
entity_set_float(id, EV_FL_gravity, 600.0/800.0);
ma_klase[id] = true;
}
public cod_class_disabled(id)
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
entity_set_float(id, EV_FL_gravity, 1.0);
ma_klase[id] = false;
}
public eventKnife_Niewidzialnosc(id)
{
if(!ma_klase[id])
return;
if( read_data(2) == CSW_KNIFE )
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 25);
}
else
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
}
public fwSpawn_Grawitacja(id)
{
if(ma_klase[id])
entity_set_float(id, EV_FL_gravity, 600.0/800.0);
}
public fwCmdStart_MultiJump(id, uc_handle)
{
if(!is_user_alive(id) || !ma_klase[id])
return FMRES_IGNORED;
new flags = pev(id, pev_flags);
if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id])
{
skoki[id]--;
new Float:velocity[3];
pev(id, pev_velocity,velocity);
velocity[2] = random_float(265.0,285.0);
set_pev(id, pev_velocity,velocity);
}
else if(flags & FL_ONGROUND)
skoki[id] = 3;
return FMRES_IGNORED;
}
2 klasa
Spoiler
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <cstrike>
#include <fun>
new const nazwa[] = "Szotgunista";
new const opis[] = "Posiada 1/7 z M3,ma mniejsza widocznosc i grawitacje";
new const bronie = (1<<CSW_P228)|(1<<CSW_HEGRENADE)|(1<<CSW_XM1014)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_M3)|(1<<CSW_FLASHBANG);
new const zdrowie = 25;
new const kondycja = -15;
new const inteligencja = 10;
new const wytrzymalosc = 15;
new ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "amxx.pl");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1);
RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenZ");
}
public cod_class_enabled(id)
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 150);
entity_set_float(id, EV_FL_gravity, 500.0/800.0);
give_item(id, "weapon_hegrenade");
give_item(id, "weapon_flashbang");
give_item(id, "weapon_flashbang");
give_item(id, "weapon_smokegrenade");
ma_klase[id] = true;
}
public cod_class_disabled(id)
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
entity_set_float(id, EV_FL_gravity, 1.0);
ma_klase[id] = false;
}
public fwSpawn_Grawitacja(id)
{
if(ma_klase[id])
entity_set_float(id, EV_FL_gravity, 500.0/800.0);
}
public fwTakeDamage_JedenZ(this, idInf, idAtt, Float:fDmg, dmgBits){
if(!is_user_alive(idAtt) || !ma_klase[idAtt] || !(dmgBits & (1<<1) ) || random_num(1, 7) != 1 )
return HAM_IGNORED;
cs_set_user_armor(this, 0, CS_ARMOR_NONE);
SetHamParamFloat(4, float(get_user_health(this) + 1));
return HAM_HANDLED;
}
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <cstrike>
#include <fun>
new const nazwa[] = "Szotgunista";
new const opis[] = "Posiada 1/7 z M3,ma mniejsza widocznosc i grawitacje";
new const bronie = (1<<CSW_P228)|(1<<CSW_HEGRENADE)|(1<<CSW_XM1014)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_M3)|(1<<CSW_FLASHBANG);
new const zdrowie = 25;
new const kondycja = -15;
new const inteligencja = 10;
new const wytrzymalosc = 15;
new ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "amxx.pl");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1);
RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenZ");
}
public cod_class_enabled(id)
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 150);
entity_set_float(id, EV_FL_gravity, 500.0/800.0);
give_item(id, "weapon_hegrenade");
give_item(id, "weapon_flashbang");
give_item(id, "weapon_flashbang");
give_item(id, "weapon_smokegrenade");
ma_klase[id] = true;
}
public cod_class_disabled(id)
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
entity_set_float(id, EV_FL_gravity, 1.0);
ma_klase[id] = false;
}
public fwSpawn_Grawitacja(id)
{
if(ma_klase[id])
entity_set_float(id, EV_FL_gravity, 500.0/800.0);
}
public fwTakeDamage_JedenZ(this, idInf, idAtt, Float:fDmg, dmgBits){
if(!is_user_alive(idAtt) || !ma_klase[idAtt] || !(dmgBits & (1<<1) ) || random_num(1, 7) != 1 )
return HAM_IGNORED;
cs_set_user_armor(this, 0, CS_ARMOR_NONE);
SetHamParamFloat(4, float(get_user_health(this) + 1));
return HAM_HANDLED;
}
3 klasa
Spoiler
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <cstrike>
#include <fakemeta>
#include <fun>
#include <colorchat>
#include <codmod>
#include <hamsandwich>
#define POKAZ_STATUS 2895
#define MINIMUM_FALL_SPEED 300
#define MAXIMUM_DAMAGE_FROM_JUMP 70.0
#define DAMAGE 30.0
#define DELAY 0.2
new const nazwa[] = "Nozownik (Premium)";
new const opis[] = "Ma 20 nozy do rzucania, jest niewidzialny, po skoczeniu komus na glowe zabija go, nie slychac jego krokow, zostawia slady za soba.";
new const bronie = 1<<CSW_KNIFE;
new const zdrowie = -95;
new const kondycja = 0;
new const inteligencja = 0;
new const wytrzymalosc = 10;
new noze[33], bool: ma_klase[33], skoki[33], SyncHudObj
new blood
new blood2
new amx_headsplash;
new Float:falling_speed[33];
new Float:damage_after[33][33];
new decals[2] = {107,108}
new bool:g_isDying[33]
new g_decalSwitch[33]
public plugin_init() {
register_plugin(nazwa, "1.0", "_nothing_");
register_cvar("amx_knifedamage_mw2","20")
register_cvar("amx_knifespeed_mw2","700")
register_cvar("amx_knifegravity_mw2","0.3")
RegisterHam(Ham_Spawn, "player", "Spawn", 1)
register_event("HLTV", "Nowa_Runda", "a", "1=0", "2=0")
register_touch("throw_knife", "player", "knife_touch")
register_touch("throw_knife", "worldspawn", "touchWorld")
register_touch("throw_knife", "func_wall", "touchWorld")
register_touch("throw_knife", "func_wall_toggle", "touchWorld")
amx_headsplash = register_cvar("amx_headsplash", "1");
register_forward(FM_Touch, "forward_touch");
register_forward(FM_PlayerPreThink, "forward_PlayerPreThink");
SyncHudObj = CreateHudSyncObj();
register_forward(FM_PlayerPreThink, "PlayerPreThink");
register_event("DeathMsg","death_event","a")
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
public plugin_precache(){
precache_model("models/w_throw.mdl");
blood = precache_model("sprites/blood.spr")
blood2 = precache_model("sprites/bloodspray.spr")
precache_sound("player/headshot1.wav")
precache_sound("player/die1.wav")
}
public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_G))
{
client_print(id, print_chat, "[Nozownik] Nie masz uprawnien, aby uzywac tej klasy.")
return COD_STOP;
}
noze[id] = 20
ma_klase[id] = true
g_isDying[id] = true
set_task(0.1, "pokaz_informacje", id+POKAZ_STATUS, _, _, "b");
set_user_footsteps(id, 1);
new param[1]
param[0] = id
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 0);
set_task(0.2, "make_footsteps", 4247545+id, param, 1, "b")
return COD_CONTINUE;
}
public pokaz_informacje(id)
{
id -= POKAZ_STATUS
if(is_user_alive(id))
{
set_hudmessage(0, 255, 0, 0.02, 0.5, 0, 0.1, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "[Noze : %d / 20]", noze[id])
}
}
public Spawn(id)
{
if(ma_klase[id])
{
noze[id] = 20
new param[1]
param[0] = id
if(!task_exists(id + POKAZ_STATUS))
set_task(0.1, "pokaz_informacje", id+POKAZ_STATUS, _, _, "b");
if(!task_exists(4247545 + id))
set_task(0.2, "make_footsteps", 4247545+id, param, 1, "b")
strip_user_weapons(id)
give_item(id, "weapon_knife");
g_isDying[id] = true
set_user_footsteps(id, 1);
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 0);
}
}
public client_disconnect(id)
noze[id] = 0
public client_connect(id)
noze[id] = 0
public cod_class_disabled(id)
{
g_isDying[id] = false
noze[id] = 0
ma_klase[id] = false
set_user_footsteps(id,0)
remove_task(id + POKAZ_STATUS)
remove_task(4247545+id)
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
public Nowa_Runda()
{
new iEnt = find_ent_by_class(-1, "throw_knife");
while(iEnt > 0)
{
remove_entity(iEnt);
iEnt = find_ent_by_class(iEnt, "throw_knife");
}
}
public cod_class_skill_used(id)
{
paint_fire(id)
}
public touchWorld(Toucher, Touched){
remove_entity(Toucher)
return PLUGIN_HANDLED;
}
public knife_touch(Toucher, Touched){
new kid = entity_get_edict(Toucher, EV_ENT_owner)
new vic = entity_get_edict(Toucher, EV_ENT_enemy)
if(is_user_alive(Touched))
{
new bool:zyje = true;
if(kid == Touched || vic == Touched)
{
return ;
}
if(get_cvar_num("mp_friendlyfire") == 0 && get_user_team(Touched) == get_user_team(kid))
{
return ;
}
new Float:Random_Float[3]
for(new i = 0; i < 3; i++) Random_Float[i] = random_float(-50.0, 50.0)
Punch_View(Touched, Random_Float)
if(get_cvar_num("amx_knifedamage_mw2") >= get_user_health(Touched)){
zyje = false;
}
new origin[3];
get_user_origin(Touched,origin)
origin[2] += 25
if(zyje == true){
if(get_user_team(Touched) == get_user_team(kid))
{
new name[33]
get_user_name(kid,name,32)
client_print(0,print_chat,"%s attacked a teammate",name)
}
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSPRITE)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2])
write_short(blood2)
write_short(blood)
write_byte(229)
write_byte(25)
message_end()
set_user_health(Touched,get_user_health(Touched) - get_cvar_num("amx_knifedamage_mw2"));
emit_sound(Touched, CHAN_ITEM, "player/headshot1.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
cod_inflict_damage(Toucher, Touched, 100.0, 1.0, 0, 0)
//cod_set_user_xp(kid, cod_get_user_xp(kid) + 100)
}
else
{
if(get_user_team(Touched) == get_user_team(kid)) {
set_user_frags(kid, get_user_frags(kid) - 1)
client_print(kid,print_center,"You killed a teammate")
}
else {
set_user_frags(kid, get_user_frags(kid) + 1)
cod_set_user_xp(kid, cod_get_user_xp(kid) + 10)
}
new gmsgScoreInfo = get_user_msgid("ScoreInfo")
new gmsgDeathMsg = get_user_msgid("DeathMsg")
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSPRITE)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2])
write_short(blood2)
write_short(blood)
write_byte(229)
write_byte(25)
message_end()
set_msg_block(gmsgDeathMsg,BLOCK_ONCE)
set_msg_block(gmsgScoreInfo,BLOCK_ONCE)
user_kill(Touched,1)
message_begin(MSG_ALL,gmsgScoreInfo)
write_byte(kid)
write_short(get_user_frags(kid))
write_short(get_user_deaths(kid))
write_short(0)
write_short(get_user_team(kid))
message_end()
message_begin(MSG_ALL,gmsgScoreInfo)
write_byte(Touched)
write_short(get_user_frags(Touched))
write_short(get_user_deaths(Touched))
write_short(0)
write_short(get_user_team(Touched))
message_end()
message_begin(MSG_ALL,gmsgDeathMsg,{0,0,0},0)
write_byte(kid)
write_byte(Touched)
write_byte(0)
write_string("knife")
message_end()
emit_sound(Touched, CHAN_ITEM, "player/die1.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
}
//usuwam noz
remove_entity(Toucher)
}
}
public paint_fire(id)
{
new ent = create_entity("info_target")
if (pev_valid(ent) && is_user_alive(id) && ma_klase[id] && noze[id] > 0)
{
new Float:vangles[3], Float:nvelocity[3], Float:voriginf[3], vorigin[3];
set_pev(ent, pev_owner, id);
set_pev(ent, pev_classname, "throw_knife");
engfunc(EngFunc_SetModel, ent, "models/w_throw.mdl");
set_pev(ent, pev_gravity, get_cvar_float("amx_knifegravity_mw2"));
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 0);
get_user_origin(id, vorigin, 1);
IVecFVec(vorigin, voriginf);
set_pev(ent,pev_origin,voriginf)
static Float:player_angles[3]
pev(id, pev_angles, player_angles)
player_angles[2] = 0.0
set_pev(ent, pev_angles, player_angles);
pev(id, pev_v_angle, vangles);
set_pev(ent, pev_v_angle, vangles);
pev(id, pev_view_ofs, vangles);
set_pev(ent, pev_view_ofs, vangles);
new veloc = get_cvar_num("amx_knifespeed_mw2")
set_pev(ent, pev_movetype, MOVETYPE_TOSS);
set_pev(ent, pev_solid, 2);
velocity_by_aim(id, veloc, nvelocity);
set_pev(ent, pev_velocity, nvelocity);
set_pev(ent, pev_effects, pev(ent, pev_effects) & ~EF_NODRAW);
set_pev(ent,pev_sequence,0)
set_pev(ent,pev_framerate,1.0)
entity_set_edict(ent, EV_ENT_owner, id)
noze[id]-= 1
}
return ent;
}
public Punch_View(id, Float:ViewAngle[3])
{
set_pev(id, pev_punchangle, ViewAngle)
}
public forward_touch(toucher, touched) // This function is called every time a player touches another player.
{
// NOTE: The toucher is the player standing/falling on top of the other (touched) player's head.
if(!is_user_alive(toucher) || !is_user_alive(touched)) // The touching players can't be dead.
return;
if(!get_pcvar_num(amx_headsplash)) // If the plugin is disabled, stop messing with things.
return;
if(!ma_klase[toucher])
return;
if(falling_speed[touched]) // Check if the touched player is falling. If he/she is, don't continue.
return;
if(get_user_team(toucher) == get_user_team(touched) && !get_cvar_num("mp_friendlyfire")) // If the touchers are in the same team and friendly fire is off, don't continue.
return;
new touched_origin[3], toucher_origin[3];
get_user_origin(touched, touched_origin); // Get the origins of the players so it's possible to check if the toucher is standing on the touched's head.
get_user_origin(toucher, toucher_origin);
new Float:toucher_minsize[3], Float:touched_minsize[3];
pev(toucher,pev_mins,toucher_minsize);
pev(touched,pev_mins,touched_minsize); // If touche*_minsize is equal to -18.0, touche* is crouching.
if(touched_minsize[2] != -18.0) // If the touched player IS NOT crouching, check if the toucher is on his/her head.
{
if(!(toucher_origin[2] == touched_origin[2]+72 && toucher_minsize[2] != -18.0) && !(toucher_origin[2] == touched_origin[2]+54 && toucher_minsize[2] == -18.0))
{
return;
}
}
else // If the touched player is crouching, check if the toucher is on his/her head
{
if(!(toucher_origin[2] == touched_origin[2]+68 && toucher_minsize[2] != -18.0) && !(toucher_origin[2] == touched_origin[2]+50 && toucher_minsize[2] == -18.0))
{
return;
}
}
if(falling_speed[toucher] >= MINIMUM_FALL_SPEED) // If the toucher is falling in the required speed or faster, then landing on top of the touched's head, do some damage to the touched. MUHAHAHAHAHA!!!
{
new Float:damage = ((falling_speed[toucher] - MINIMUM_FALL_SPEED + 30) * (falling_speed[toucher] - MINIMUM_FALL_SPEED + 30)) / 1300;
if(damage > MAXIMUM_DAMAGE_FROM_JUMP) // Make shure that the touched player don't take too much damage.
damage = MAXIMUM_DAMAGE_FROM_JUMP;
damage_player(touched, toucher, damage); // Damage or kill the touched player.
damage_after[toucher][touched] = 0.0; // Reset.
}
if(is_user_alive(touched) && damage_after[toucher][touched] <= get_gametime()) // This makes shure that you won't get damaged every frame you have some one on your head. It also makes shure that players won't get damaged faster on fast servers than laggy servers.
{
damage_after[toucher][touched] = get_gametime() + DELAY;
damage_player(touched, toucher, DAMAGE); // Damage or kill the touched player.
}
}
public forward_PlayerPreThink(id) // This is called every time before a player "thinks". A player thinks many times per second.
{
//falling_speed[id] = entity_get_float(id, EV_FL_flFallVelocity); // Store the falling speed of the soon to be "thinking" player.
pev(id, pev_flFallVelocity, falling_speed[id])
}
public damage_player(pwned, pwnzor, Float:damage) // Damages or kills a player. Home made HAX
{
new health = get_user_health(pwned);
if(get_user_team(pwned) == get_user_team(pwnzor)) // If both players are in the same team, reduce the damage.
damage /= 1.4;
new CsArmorType:armortype;
cs_get_user_armor(pwned, armortype);
if(armortype == CS_ARMOR_VESTHELM)
damage *= 0.7;
if(health > damage)
{
new pwned_origin[3];
get_user_origin(pwned, pwned_origin);
message_begin(MSG_BROADCAST, SVC_TEMPENTITY); // BLOOOOOOOOOOOD!!
write_byte(TE_BLOODSPRITE);
write_coord(pwned_origin[0]+8);
write_coord(pwned_origin[1]);
write_coord(pwned_origin[2]+26);
write_short(blood2);
write_short(blood);
write_byte(248);
write_byte(4);
message_end();
new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "trigger_hurt"));
if(!ent)
return;
new value[16];
float_to_str(damage * 2, value, sizeof value - 1);
set_kvd(0, KV_ClassName, "trigger_hurt");
set_kvd(0, KV_KeyName, "dmg");
set_kvd(0, KV_Value, value);
set_kvd(0, KV_fHandled, 0);
dllfunc(DLLFunc_KeyValue, ent, 0);
num_to_str(DMG_GENERIC, value, sizeof value - 1);
set_kvd(0, KV_ClassName, "trigger_hurt");
set_kvd(0, KV_KeyName, "damagetype");
set_kvd(0, KV_Value, value);
set_kvd(0, KV_fHandled, 0);
dllfunc(DLLFunc_KeyValue, ent, 0);
set_kvd(0, KV_ClassName, "trigger_hurt");
set_kvd(0, KV_KeyName, "origin");
set_kvd(0, KV_Value, "8192 8192 8192");
set_kvd(0, KV_fHandled, 0);
dllfunc(DLLFunc_KeyValue, ent, 0);
dllfunc(DLLFunc_Spawn, ent);
set_pev(ent, pev_classname, "head_splash");
dllfunc(DLLFunc_Touch, ent, pwned);
engfunc(EngFunc_RemoveEntity, ent);
}
else
{
new pwned_origin[3];
get_user_origin(pwned, pwned_origin);
message_begin(MSG_BROADCAST, SVC_TEMPENTITY); // BLOOOOOOOOOOOD!!
write_byte(TE_BLOODSPRITE);
write_coord(pwned_origin[0]+8);
write_coord(pwned_origin[1]);
write_coord(pwned_origin[2]+26);
write_short(blood2);
write_short(blood);
write_byte(248);
write_byte(12);
message_end();
set_pev(pwned, pev_frags, float(get_user_frags(pwned) + 1));
user_silentkill(pwned);
make_deathmsg(pwnzor, pwned, 1, "his/her feet ");
if(get_user_team(pwnzor) != get_user_team(pwned)) // If it was a team kill, the pwnzor's money should get reduced instead of increased.
{
set_pev(pwnzor, pev_frags, float(get_user_frags(pwnzor) + 1));
cs_set_user_money(pwnzor, cs_get_user_money(pwnzor) + 300);
cod_set_user_xp(pwnzor, cod_get_user_xp(pwnzor) + 10)
}
else
{
set_pev(pwnzor, pev_frags, float(get_user_frags(pwnzor) - 1));
cs_set_user_money(pwnzor, cs_get_user_money(pwnzor) - 300);
}
message_begin(MSG_ALL, get_user_msgid("ScoreInfo")); // Fixes the scoreboard.
write_byte(pwnzor);
write_short(get_user_frags(pwnzor));
write_short(cs_get_user_deaths(pwnzor));
write_short(0);
write_short(get_user_team(pwnzor));
message_end();
message_begin(MSG_ALL, get_user_msgid("ScoreInfo"));
write_byte(pwned);
write_short(get_user_frags(pwned));
write_short(cs_get_user_deaths(pwned));
write_short(0);
write_short(get_user_team(pwned));
message_end();
set_pev(pwned, pev_frags, float(get_user_frags(pwned) - 1));
}
}
public death_event()
{
new kid = read_data(1)
new id = read_data(2)
if(g_isDying[id])
{
g_isDying[id] = false
remove_task(4247545+id)
}
if( kid != id && is_user_alive(kid) && ma_klase[id])
{
cod_set_user_xp(kid, cod_get_user_xp(kid) + 30)
}
}
public make_footsteps(param[])
{
new id = param[0]
if(!is_user_alive(id) || get_cvar_num("ftw_active") == 1 || get_speed(id) < 120) return
new origin[3]
get_user_origin(id, origin)
if(entity_get_int(id, EV_INT_bInDuck) == 1)
origin[2] -= 18
else
origin[2] -= 36
new Float:velocity[3]
new Float:ent_angles[3]
new Float:ent_origin[3]
new ent
entity_get_vector(id, EV_VEC_v_angle, ent_angles)
entity_get_vector(id, EV_VEC_origin, ent_origin)
ent = create_entity("info_target")
if(ent > 0)
{
ent_angles[0] = 0.0
if(g_decalSwitch[id] == 0) ent_angles[1] -= 90
else ent_angles[1] += 90
entity_set_vector(ent, EV_VEC_origin, ent_origin)
entity_set_vector(ent, EV_VEC_v_angle, ent_angles)
VelocityByAim(ent, 12, velocity)
remove_entity(ent)
}
message_begin(MSG_BROADCAST, SVC_TEMPENTITY, origin)
write_byte(116)
write_coord(origin[0] + floatround(velocity[0]))
write_coord(origin[1] + floatround(velocity[1]))
write_coord(origin[2])
write_byte(decals[g_decalSwitch[id]])
message_end()
g_decalSwitch[id] = 1 - g_decalSwitch[id]
return
}
public PlayerPreThink(id)
{
if(!ma_klase[id])
return PLUGIN_CONTINUE;
new button = pev(id, pev_button);
new oldbutton = pev(id, pev_oldbuttons);
new flags = pev(id, pev_flags);
if((button & IN_JUMP) && !(flags & FL_ONGROUND) && !(oldbutton & IN_JUMP) && skoki[id])
{
skoki[id]--;
new Float:velocity[3];
pev(id, pev_velocity, velocity);
velocity[2] = random_float(265.0,285.0);
set_pev(id, pev_velocity, velocity);
}
else if(flags & FL_ONGROUND)
skoki[id] = 5;
return PLUGIN_CONTINUE;
}
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <cstrike>
#include <fakemeta>
#include <fun>
#include <colorchat>
#include <codmod>
#include <hamsandwich>
#define POKAZ_STATUS 2895
#define MINIMUM_FALL_SPEED 300
#define MAXIMUM_DAMAGE_FROM_JUMP 70.0
#define DAMAGE 30.0
#define DELAY 0.2
new const nazwa[] = "Nozownik (Premium)";
new const opis[] = "Ma 20 nozy do rzucania, jest niewidzialny, po skoczeniu komus na glowe zabija go, nie slychac jego krokow, zostawia slady za soba.";
new const bronie = 1<<CSW_KNIFE;
new const zdrowie = -95;
new const kondycja = 0;
new const inteligencja = 0;
new const wytrzymalosc = 10;
new noze[33], bool: ma_klase[33], skoki[33], SyncHudObj
new blood
new blood2
new amx_headsplash;
new Float:falling_speed[33];
new Float:damage_after[33][33];
new decals[2] = {107,108}
new bool:g_isDying[33]
new g_decalSwitch[33]
public plugin_init() {
register_plugin(nazwa, "1.0", "_nothing_");
register_cvar("amx_knifedamage_mw2","20")
register_cvar("amx_knifespeed_mw2","700")
register_cvar("amx_knifegravity_mw2","0.3")
RegisterHam(Ham_Spawn, "player", "Spawn", 1)
register_event("HLTV", "Nowa_Runda", "a", "1=0", "2=0")
register_touch("throw_knife", "player", "knife_touch")
register_touch("throw_knife", "worldspawn", "touchWorld")
register_touch("throw_knife", "func_wall", "touchWorld")
register_touch("throw_knife", "func_wall_toggle", "touchWorld")
amx_headsplash = register_cvar("amx_headsplash", "1");
register_forward(FM_Touch, "forward_touch");
register_forward(FM_PlayerPreThink, "forward_PlayerPreThink");
SyncHudObj = CreateHudSyncObj();
register_forward(FM_PlayerPreThink, "PlayerPreThink");
register_event("DeathMsg","death_event","a")
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
public plugin_precache(){
precache_model("models/w_throw.mdl");
blood = precache_model("sprites/blood.spr")
blood2 = precache_model("sprites/bloodspray.spr")
precache_sound("player/headshot1.wav")
precache_sound("player/die1.wav")
}
public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_G))
{
client_print(id, print_chat, "[Nozownik] Nie masz uprawnien, aby uzywac tej klasy.")
return COD_STOP;
}
noze[id] = 20
ma_klase[id] = true
g_isDying[id] = true
set_task(0.1, "pokaz_informacje", id+POKAZ_STATUS, _, _, "b");
set_user_footsteps(id, 1);
new param[1]
param[0] = id
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 0);
set_task(0.2, "make_footsteps", 4247545+id, param, 1, "b")
return COD_CONTINUE;
}
public pokaz_informacje(id)
{
id -= POKAZ_STATUS
if(is_user_alive(id))
{
set_hudmessage(0, 255, 0, 0.02, 0.5, 0, 0.1, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "[Noze : %d / 20]", noze[id])
}
}
public Spawn(id)
{
if(ma_klase[id])
{
noze[id] = 20
new param[1]
param[0] = id
if(!task_exists(id + POKAZ_STATUS))
set_task(0.1, "pokaz_informacje", id+POKAZ_STATUS, _, _, "b");
if(!task_exists(4247545 + id))
set_task(0.2, "make_footsteps", 4247545+id, param, 1, "b")
strip_user_weapons(id)
give_item(id, "weapon_knife");
g_isDying[id] = true
set_user_footsteps(id, 1);
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 0);
}
}
public client_disconnect(id)
noze[id] = 0
public client_connect(id)
noze[id] = 0
public cod_class_disabled(id)
{
g_isDying[id] = false
noze[id] = 0
ma_klase[id] = false
set_user_footsteps(id,0)
remove_task(id + POKAZ_STATUS)
remove_task(4247545+id)
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
public Nowa_Runda()
{
new iEnt = find_ent_by_class(-1, "throw_knife");
while(iEnt > 0)
{
remove_entity(iEnt);
iEnt = find_ent_by_class(iEnt, "throw_knife");
}
}
public cod_class_skill_used(id)
{
paint_fire(id)
}
public touchWorld(Toucher, Touched){
remove_entity(Toucher)
return PLUGIN_HANDLED;
}
public knife_touch(Toucher, Touched){
new kid = entity_get_edict(Toucher, EV_ENT_owner)
new vic = entity_get_edict(Toucher, EV_ENT_enemy)
if(is_user_alive(Touched))
{
new bool:zyje = true;
if(kid == Touched || vic == Touched)
{
return ;
}
if(get_cvar_num("mp_friendlyfire") == 0 && get_user_team(Touched) == get_user_team(kid))
{
return ;
}
new Float:Random_Float[3]
for(new i = 0; i < 3; i++) Random_Float[i] = random_float(-50.0, 50.0)
Punch_View(Touched, Random_Float)
if(get_cvar_num("amx_knifedamage_mw2") >= get_user_health(Touched)){
zyje = false;
}
new origin[3];
get_user_origin(Touched,origin)
origin[2] += 25
if(zyje == true){
if(get_user_team(Touched) == get_user_team(kid))
{
new name[33]
get_user_name(kid,name,32)
client_print(0,print_chat,"%s attacked a teammate",name)
}
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSPRITE)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2])
write_short(blood2)
write_short(blood)
write_byte(229)
write_byte(25)
message_end()
set_user_health(Touched,get_user_health(Touched) - get_cvar_num("amx_knifedamage_mw2"));
emit_sound(Touched, CHAN_ITEM, "player/headshot1.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
cod_inflict_damage(Toucher, Touched, 100.0, 1.0, 0, 0)
//cod_set_user_xp(kid, cod_get_user_xp(kid) + 100)
}
else
{
if(get_user_team(Touched) == get_user_team(kid)) {
set_user_frags(kid, get_user_frags(kid) - 1)
client_print(kid,print_center,"You killed a teammate")
}
else {
set_user_frags(kid, get_user_frags(kid) + 1)
cod_set_user_xp(kid, cod_get_user_xp(kid) + 10)
}
new gmsgScoreInfo = get_user_msgid("ScoreInfo")
new gmsgDeathMsg = get_user_msgid("DeathMsg")
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSPRITE)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2])
write_short(blood2)
write_short(blood)
write_byte(229)
write_byte(25)
message_end()
set_msg_block(gmsgDeathMsg,BLOCK_ONCE)
set_msg_block(gmsgScoreInfo,BLOCK_ONCE)
user_kill(Touched,1)
message_begin(MSG_ALL,gmsgScoreInfo)
write_byte(kid)
write_short(get_user_frags(kid))
write_short(get_user_deaths(kid))
write_short(0)
write_short(get_user_team(kid))
message_end()
message_begin(MSG_ALL,gmsgScoreInfo)
write_byte(Touched)
write_short(get_user_frags(Touched))
write_short(get_user_deaths(Touched))
write_short(0)
write_short(get_user_team(Touched))
message_end()
message_begin(MSG_ALL,gmsgDeathMsg,{0,0,0},0)
write_byte(kid)
write_byte(Touched)
write_byte(0)
write_string("knife")
message_end()
emit_sound(Touched, CHAN_ITEM, "player/die1.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
}
//usuwam noz
remove_entity(Toucher)
}
}
public paint_fire(id)
{
new ent = create_entity("info_target")
if (pev_valid(ent) && is_user_alive(id) && ma_klase[id] && noze[id] > 0)
{
new Float:vangles[3], Float:nvelocity[3], Float:voriginf[3], vorigin[3];
set_pev(ent, pev_owner, id);
set_pev(ent, pev_classname, "throw_knife");
engfunc(EngFunc_SetModel, ent, "models/w_throw.mdl");
set_pev(ent, pev_gravity, get_cvar_float("amx_knifegravity_mw2"));
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 0);
get_user_origin(id, vorigin, 1);
IVecFVec(vorigin, voriginf);
set_pev(ent,pev_origin,voriginf)
static Float:player_angles[3]
pev(id, pev_angles, player_angles)
player_angles[2] = 0.0
set_pev(ent, pev_angles, player_angles);
pev(id, pev_v_angle, vangles);
set_pev(ent, pev_v_angle, vangles);
pev(id, pev_view_ofs, vangles);
set_pev(ent, pev_view_ofs, vangles);
new veloc = get_cvar_num("amx_knifespeed_mw2")
set_pev(ent, pev_movetype, MOVETYPE_TOSS);
set_pev(ent, pev_solid, 2);
velocity_by_aim(id, veloc, nvelocity);
set_pev(ent, pev_velocity, nvelocity);
set_pev(ent, pev_effects, pev(ent, pev_effects) & ~EF_NODRAW);
set_pev(ent,pev_sequence,0)
set_pev(ent,pev_framerate,1.0)
entity_set_edict(ent, EV_ENT_owner, id)
noze[id]-= 1
}
return ent;
}
public Punch_View(id, Float:ViewAngle[3])
{
set_pev(id, pev_punchangle, ViewAngle)
}
public forward_touch(toucher, touched) // This function is called every time a player touches another player.
{
// NOTE: The toucher is the player standing/falling on top of the other (touched) player's head.
if(!is_user_alive(toucher) || !is_user_alive(touched)) // The touching players can't be dead.
return;
if(!get_pcvar_num(amx_headsplash)) // If the plugin is disabled, stop messing with things.
return;
if(!ma_klase[toucher])
return;
if(falling_speed[touched]) // Check if the touched player is falling. If he/she is, don't continue.
return;
if(get_user_team(toucher) == get_user_team(touched) && !get_cvar_num("mp_friendlyfire")) // If the touchers are in the same team and friendly fire is off, don't continue.
return;
new touched_origin[3], toucher_origin[3];
get_user_origin(touched, touched_origin); // Get the origins of the players so it's possible to check if the toucher is standing on the touched's head.
get_user_origin(toucher, toucher_origin);
new Float:toucher_minsize[3], Float:touched_minsize[3];
pev(toucher,pev_mins,toucher_minsize);
pev(touched,pev_mins,touched_minsize); // If touche*_minsize is equal to -18.0, touche* is crouching.
if(touched_minsize[2] != -18.0) // If the touched player IS NOT crouching, check if the toucher is on his/her head.
{
if(!(toucher_origin[2] == touched_origin[2]+72 && toucher_minsize[2] != -18.0) && !(toucher_origin[2] == touched_origin[2]+54 && toucher_minsize[2] == -18.0))
{
return;
}
}
else // If the touched player is crouching, check if the toucher is on his/her head
{
if(!(toucher_origin[2] == touched_origin[2]+68 && toucher_minsize[2] != -18.0) && !(toucher_origin[2] == touched_origin[2]+50 && toucher_minsize[2] == -18.0))
{
return;
}
}
if(falling_speed[toucher] >= MINIMUM_FALL_SPEED) // If the toucher is falling in the required speed or faster, then landing on top of the touched's head, do some damage to the touched. MUHAHAHAHAHA!!!
{
new Float:damage = ((falling_speed[toucher] - MINIMUM_FALL_SPEED + 30) * (falling_speed[toucher] - MINIMUM_FALL_SPEED + 30)) / 1300;
if(damage > MAXIMUM_DAMAGE_FROM_JUMP) // Make shure that the touched player don't take too much damage.
damage = MAXIMUM_DAMAGE_FROM_JUMP;
damage_player(touched, toucher, damage); // Damage or kill the touched player.
damage_after[toucher][touched] = 0.0; // Reset.
}
if(is_user_alive(touched) && damage_after[toucher][touched] <= get_gametime()) // This makes shure that you won't get damaged every frame you have some one on your head. It also makes shure that players won't get damaged faster on fast servers than laggy servers.
{
damage_after[toucher][touched] = get_gametime() + DELAY;
damage_player(touched, toucher, DAMAGE); // Damage or kill the touched player.
}
}
public forward_PlayerPreThink(id) // This is called every time before a player "thinks". A player thinks many times per second.
{
//falling_speed[id] = entity_get_float(id, EV_FL_flFallVelocity); // Store the falling speed of the soon to be "thinking" player.
pev(id, pev_flFallVelocity, falling_speed[id])
}
public damage_player(pwned, pwnzor, Float:damage) // Damages or kills a player. Home made HAX
{
new health = get_user_health(pwned);
if(get_user_team(pwned) == get_user_team(pwnzor)) // If both players are in the same team, reduce the damage.
damage /= 1.4;
new CsArmorType:armortype;
cs_get_user_armor(pwned, armortype);
if(armortype == CS_ARMOR_VESTHELM)
damage *= 0.7;
if(health > damage)
{
new pwned_origin[3];
get_user_origin(pwned, pwned_origin);
message_begin(MSG_BROADCAST, SVC_TEMPENTITY); // BLOOOOOOOOOOOD!!
write_byte(TE_BLOODSPRITE);
write_coord(pwned_origin[0]+8);
write_coord(pwned_origin[1]);
write_coord(pwned_origin[2]+26);
write_short(blood2);
write_short(blood);
write_byte(248);
write_byte(4);
message_end();
new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "trigger_hurt"));
if(!ent)
return;
new value[16];
float_to_str(damage * 2, value, sizeof value - 1);
set_kvd(0, KV_ClassName, "trigger_hurt");
set_kvd(0, KV_KeyName, "dmg");
set_kvd(0, KV_Value, value);
set_kvd(0, KV_fHandled, 0);
dllfunc(DLLFunc_KeyValue, ent, 0);
num_to_str(DMG_GENERIC, value, sizeof value - 1);
set_kvd(0, KV_ClassName, "trigger_hurt");
set_kvd(0, KV_KeyName, "damagetype");
set_kvd(0, KV_Value, value);
set_kvd(0, KV_fHandled, 0);
dllfunc(DLLFunc_KeyValue, ent, 0);
set_kvd(0, KV_ClassName, "trigger_hurt");
set_kvd(0, KV_KeyName, "origin");
set_kvd(0, KV_Value, "8192 8192 8192");
set_kvd(0, KV_fHandled, 0);
dllfunc(DLLFunc_KeyValue, ent, 0);
dllfunc(DLLFunc_Spawn, ent);
set_pev(ent, pev_classname, "head_splash");
dllfunc(DLLFunc_Touch, ent, pwned);
engfunc(EngFunc_RemoveEntity, ent);
}
else
{
new pwned_origin[3];
get_user_origin(pwned, pwned_origin);
message_begin(MSG_BROADCAST, SVC_TEMPENTITY); // BLOOOOOOOOOOOD!!
write_byte(TE_BLOODSPRITE);
write_coord(pwned_origin[0]+8);
write_coord(pwned_origin[1]);
write_coord(pwned_origin[2]+26);
write_short(blood2);
write_short(blood);
write_byte(248);
write_byte(12);
message_end();
set_pev(pwned, pev_frags, float(get_user_frags(pwned) + 1));
user_silentkill(pwned);
make_deathmsg(pwnzor, pwned, 1, "his/her feet ");
if(get_user_team(pwnzor) != get_user_team(pwned)) // If it was a team kill, the pwnzor's money should get reduced instead of increased.
{
set_pev(pwnzor, pev_frags, float(get_user_frags(pwnzor) + 1));
cs_set_user_money(pwnzor, cs_get_user_money(pwnzor) + 300);
cod_set_user_xp(pwnzor, cod_get_user_xp(pwnzor) + 10)
}
else
{
set_pev(pwnzor, pev_frags, float(get_user_frags(pwnzor) - 1));
cs_set_user_money(pwnzor, cs_get_user_money(pwnzor) - 300);
}
message_begin(MSG_ALL, get_user_msgid("ScoreInfo")); // Fixes the scoreboard.
write_byte(pwnzor);
write_short(get_user_frags(pwnzor));
write_short(cs_get_user_deaths(pwnzor));
write_short(0);
write_short(get_user_team(pwnzor));
message_end();
message_begin(MSG_ALL, get_user_msgid("ScoreInfo"));
write_byte(pwned);
write_short(get_user_frags(pwned));
write_short(cs_get_user_deaths(pwned));
write_short(0);
write_short(get_user_team(pwned));
message_end();
set_pev(pwned, pev_frags, float(get_user_frags(pwned) - 1));
}
}
public death_event()
{
new kid = read_data(1)
new id = read_data(2)
if(g_isDying[id])
{
g_isDying[id] = false
remove_task(4247545+id)
}
if( kid != id && is_user_alive(kid) && ma_klase[id])
{
cod_set_user_xp(kid, cod_get_user_xp(kid) + 30)
}
}
public make_footsteps(param[])
{
new id = param[0]
if(!is_user_alive(id) || get_cvar_num("ftw_active") == 1 || get_speed(id) < 120) return
new origin[3]
get_user_origin(id, origin)
if(entity_get_int(id, EV_INT_bInDuck) == 1)
origin[2] -= 18
else
origin[2] -= 36
new Float:velocity[3]
new Float:ent_angles[3]
new Float:ent_origin[3]
new ent
entity_get_vector(id, EV_VEC_v_angle, ent_angles)
entity_get_vector(id, EV_VEC_origin, ent_origin)
ent = create_entity("info_target")
if(ent > 0)
{
ent_angles[0] = 0.0
if(g_decalSwitch[id] == 0) ent_angles[1] -= 90
else ent_angles[1] += 90
entity_set_vector(ent, EV_VEC_origin, ent_origin)
entity_set_vector(ent, EV_VEC_v_angle, ent_angles)
VelocityByAim(ent, 12, velocity)
remove_entity(ent)
}
message_begin(MSG_BROADCAST, SVC_TEMPENTITY, origin)
write_byte(116)
write_coord(origin[0] + floatround(velocity[0]))
write_coord(origin[1] + floatround(velocity[1]))
write_coord(origin[2])
write_byte(decals[g_decalSwitch[id]])
message_end()
g_decalSwitch[id] = 1 - g_decalSwitch[id]
return
}
public PlayerPreThink(id)
{
if(!ma_klase[id])
return PLUGIN_CONTINUE;
new button = pev(id, pev_button);
new oldbutton = pev(id, pev_oldbuttons);
new flags = pev(id, pev_flags);
if((button & IN_JUMP) && !(flags & FL_ONGROUND) && !(oldbutton & IN_JUMP) && skoki[id])
{
skoki[id]--;
new Float:velocity[3];
pev(id, pev_velocity, velocity);
velocity[2] = random_float(265.0,285.0);
set_pev(id, pev_velocity, velocity);
}
else if(flags & FL_ONGROUND)
skoki[id] = 5;
return PLUGIN_CONTINUE;
}
Perki:
Spoiler
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
#include <engine>
new const perk_name[] = "Kamuflaz";
new const perk_desc[] = "Twoja widocznosc spada do LW";
public plugin_init()
{
register_plugin(perk_name, "1.0", "QTM_Peyote");
cod_register_perk(perk_name, perk_desc, 50, 100);
}
public cod_perk_enabled(id, wartosc)
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, wartosc);
public cod_perk_disabled(id)
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
#include <amxmodx>
#include <codmod>
#include <engine>
new const perk_name[] = "Kamuflaz";
new const perk_desc[] = "Twoja widocznosc spada do LW";
public plugin_init()
{
register_plugin(perk_name, "1.0", "QTM_Peyote");
cod_register_perk(perk_name, perk_desc, 50, 100);
}
public cod_perk_enabled(id, wartosc)
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, wartosc);
public cod_perk_disabled(id)
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
Spoiler
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <fakemeta>
#include <engine>
#define AUTHOR "J River"
new const perk_name[] = "Lake Shit";
new const perk_desc[] = "Gdy stoisz w miejscu nie widac cie";
new ma_perk[33];
public plugin_init()
{
register_plugin(perk_name, "1.0", AUTHOR);
cod_register_perk(perk_name, perk_desc);
}
public cod_perk_enabled(id)
{
client_print(id, print_chat, "Perk stworzony przez J River")
ma_perk[id] = true;
}
public cod_perk_disabled(id)
{
ma_perk[id] = false;
}
public client_PreThink ( id )
{
new button2 = get_user_button(id);
//USE Button actives forward\backward\left\right
if (ma_perk[id] && get_entity_flags(id) & FL_ONGROUND && (!(button2 & (IN_FORWARD+IN_BACK+IN_MOVELEFT+IN_MOVERIGHT)) && is_user_alive(id)))
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 9);
}
else set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
///////////////////////////////////////////////////
return PLUGIN_CONTINUE
}
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <fakemeta>
#include <engine>
#define AUTHOR "J River"
new const perk_name[] = "Lake Shit";
new const perk_desc[] = "Gdy stoisz w miejscu nie widac cie";
new ma_perk[33];
public plugin_init()
{
register_plugin(perk_name, "1.0", AUTHOR);
cod_register_perk(perk_name, perk_desc);
}
public cod_perk_enabled(id)
{
client_print(id, print_chat, "Perk stworzony przez J River")
ma_perk[id] = true;
}
public cod_perk_disabled(id)
{
ma_perk[id] = false;
}
public client_PreThink ( id )
{
new button2 = get_user_button(id);
//USE Button actives forward\backward\left\right
if (ma_perk[id] && get_entity_flags(id) & FL_ONGROUND && (!(button2 & (IN_FORWARD+IN_BACK+IN_MOVELEFT+IN_MOVERIGHT)) && is_user_alive(id)))
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 9);
}
else set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
///////////////////////////////////////////////////
return PLUGIN_CONTINUE
}
Spoiler
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
#include <engine>
new nazwa[] = "NanoSuit"
new opis[] = "Masz tylko 1 HP, ale jestes w 100 procentach niewidzialny"
new bool:ma_perk[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "QTM_Peyote");
register_event("ResetHUD", "ResetHUD", "abe");
cod_register_perk(nazwa, opis);
}
public cod_perk_enabled(id)
{
ma_perk[id] = true;
cod_set_user_bonus_health(id, -(cod_get_user_health(id, 1, 1, 0)+99));
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 1);
}
public cod_perk_disabled(id)
{
ma_perk[id] = false;
cod_set_user_bonus_health(id, 0);
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
}
public ResetHUD(id)
{
if(ma_perk[id])
{
cod_set_user_bonus_health(id, -(cod_get_user_health(id, 1, 1, 0)+99));
}
}
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
#include <engine>
new nazwa[] = "NanoSuit"
new opis[] = "Masz tylko 1 HP, ale jestes w 100 procentach niewidzialny"
new bool:ma_perk[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "QTM_Peyote");
register_event("ResetHUD", "ResetHUD", "abe");
cod_register_perk(nazwa, opis);
}
public cod_perk_enabled(id)
{
ma_perk[id] = true;
cod_set_user_bonus_health(id, -(cod_get_user_health(id, 1, 1, 0)+99));
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 1);
}
public cod_perk_disabled(id)
{
ma_perk[id] = false;
cod_set_user_bonus_health(id, 0);
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
}
public ResetHUD(id)
{
if(ma_perk[id])
{
cod_set_user_bonus_health(id, -(cod_get_user_health(id, 1, 1, 0)+99));
}
}
Spoiler
#include <amxmodx>
#include <hamsandwich>
#include <fun>
#include <codmod>
#define DMG_BULLET (1<<1)
#define DMG_AWP (1<<4)
new const perk_name[] = "Przyczajony Sniper";
new const perk_desc[] = "Jestes prawie niewidzialny i masz 1/4 na natychmiastowe zabicie z AWP";
new bool:ma_perk[33];
public plugin_init()
{
register_plugin(perk_name, "1.0", "Pas");
cod_register_perk(perk_name, perk_desc);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
register_event("ResetHUD", "ResetHUD", "abe");
}
public cod_perk_enabled(id)
{
cod_give_weapon(id, CSW_AWP);
ma_perk[id] = true;
}
public cod_perk_disabled(id)
{
set_user_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
cod_take_weapon(id, CSW_AWP);
ma_perk[id] = false;
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;
if(!ma_perk[idattacker])
return HAM_IGNORED;
if(damagebits & DMG_AWP && !random(4))
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
return HAM_IGNORED;
}
public ResetHUD(id)
{
if(ma_perk[id])
set_task(0.5, "UstawStalker", id)
}
public UstawStalker(id)
{
if(is_user_connected(id))
{
set_user_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 35);
}
}
#include <amxmodx>
#include <hamsandwich>
#include <fun>
#include <codmod>
#define DMG_BULLET (1<<1)
#define DMG_AWP (1<<4)
new const perk_name[] = "Przyczajony Sniper";
new const perk_desc[] = "Jestes prawie niewidzialny i masz 1/4 na natychmiastowe zabicie z AWP";
new bool:ma_perk[33];
public plugin_init()
{
register_plugin(perk_name, "1.0", "Pas");
cod_register_perk(perk_name, perk_desc);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
register_event("ResetHUD", "ResetHUD", "abe");
}
public cod_perk_enabled(id)
{
cod_give_weapon(id, CSW_AWP);
ma_perk[id] = true;
}
public cod_perk_disabled(id)
{
set_user_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
cod_take_weapon(id, CSW_AWP);
ma_perk[id] = false;
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;
if(!ma_perk[idattacker])
return HAM_IGNORED;
if(damagebits & DMG_AWP && !random(4))
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
return HAM_IGNORED;
}
public ResetHUD(id)
{
if(ma_perk[id])
set_task(0.5, "UstawStalker", id)
}
public UstawStalker(id)
{
if(is_user_connected(id))
{
set_user_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 35);
}
}
#469355 [ROZWIĄZANE] Na serwerze widać niewidzialnych graczy
Napisane przez bamber w 19.10.2012 16:20
Mam na serwerze cod mod zapis do nvault. Gdy wrzucę na serwer klasę która powinna być niewidzialna, np. 10% niewidzialności na nożu to widzę ją normalnie.
Myślałem że to jakiś błąd klasy jest no ale wrzuciłem 10 klas które powinny być niewidzialne i było je normalnie widać. Niewidzialność nie działa.
Moduły mam odblokowane i nie wiem jaki jest tego powód.
Proszę o pomoc.
Myślałem że to jakiś błąd klasy jest no ale wrzuciłem 10 klas które powinny być niewidzialne i było je normalnie widać. Niewidzialność nie działa.
Moduły mam odblokowane i nie wiem jaki jest tego powód.
Proszę o pomoc.
#417069 prośba o komplikacje
Napisane przez bamber w 02.06.2012 17:43
/* AMX Mod X * Descriptive 'Fire in the hole!' * * (c) Copyright 2006 by VEN * * This file is provided as is (no warranties) * * DESCRIPTION * Plugin provides additional colored text for "Fire in the hole!" radio chat message. * The color and the text is different for each grenade type and can be altered. * This will help teammates to get the throwed grenade type and act accordingly. * Search for "EDITABLE" mark in the plugin's source code to configure text and color. * * CREDITS * Damaged Soul - colored chat text method * p3tsin - team color override method */ #include #define PLUGIN_NAME "Descriptive 'Fire in the hole!'" #define PLUGIN_VERSION "0.1" #define PLUGIN_AUTHOR "VEN" enum grenade { GRENADE_HE, GRENADE_FLASH, GRENADE_SMOKE } // EDITABLE: grenade description new const g_grenade_description[_:grenade][] = { " [HE]", " [MLEKO]", " [SB]" } enum color { COLOR_NORMAL, COLOR_RED, COLOR_BLUE, COLOR_GRAY, COLOR_GREEN } // EDITABLE: grenade description text color new const g_grenade_desccolor[_:grenade] = { COLOR_RED, COLOR_GRAY, COLOR_GREEN } new const g_grenade_weaponid[_:grenade] = { CSW_HEGRENADE, CSW_FLASHBANG, CSW_SMOKEGRENADE } #define COLORCODE_NORMAL 0x01 #define COLORCODE_TEAM 0x03 #define COLORCODE_LOCATION 0x04 new const g_color_code[_:color] = { COLORCODE_NORMAL, COLORCODE_TEAM, COLORCODE_TEAM, COLORCODE_TEAM, COLORCODE_LOCATION } new const g_color_teamname[_:color][] = { "", "TERRORIST", "CT", "SPECTATOR", "" } #define RADIOTEXT_MSGARG_NUMBER 5 enum radiotext_msgarg { RADIOTEXT_MSGARG_PRINTDEST = 1, RADIOTEXT_MSGARG_CALLERID, RADIOTEXT_MSGARG_TEXTTYPE, RADIOTEXT_MSGARG_CALLERNAME, RADIOTEXT_MSGARG_RADIOTYPE, } new const g_required_radiotype[] = "#Fire_in_the_hole" new const g_radiotext_template[] = "%s (RADIO): Fire in the hole!" new g_msgid_saytext new g_msgid_teaminfo public plugin_init() { register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR) register_message(get_user_msgid("TextMsg"), "message_text") g_msgid_saytext = get_user_msgid("SayText") g_msgid_teaminfo = get_user_msgid("TeamInfo") } public message_text(msgid, dest, id) { if (get_msg_args() != RADIOTEXT_MSGARG_NUMBER || get_msg_argtype(RADIOTEXT_MSGARG_RADIOTYPE) != ARG_STRING) return PLUGIN_CONTINUE static arg[32] get_msg_arg_string(RADIOTEXT_MSGARG_RADIOTYPE, arg, sizeof arg - 1) if (!equal(arg, g_required_radiotype)) return PLUGIN_CONTINUE get_msg_arg_string(RADIOTEXT_MSGARG_CALLERID, arg, sizeof arg - 1) new caller = str_to_num(arg) if (!is_user_alive(caller)) return PLUGIN_CONTINUE new clip, ammo, weapon weapon = get_user_weapon(caller, clip, ammo) for (new i; i < sizeof g_grenade_weaponid; ++i) { if (g_grenade_weaponid[i] == weapon) { static text[192] new pos = 0 text[pos++] = g_color_code[COLOR_NORMAL] get_msg_arg_string(RADIOTEXT_MSGARG_CALLERNAME, arg, sizeof arg - 1) pos += formatex(text[pos], sizeof text - pos - 1, g_radiotext_template, arg) copy(text[++pos], sizeof text - pos - 1, g_grenade_description[i]) new desccolor = g_grenade_desccolor[i] if ((text[--pos] = g_color_code[desccolor]) == COLORCODE_TEAM) { static teamname[12] get_user_team(id, teamname, sizeof teamname - 1) if (!equal(teamname, g_color_teamname[desccolor])) { msg_teaminfo(id, g_color_teamname[desccolor]) msg_saytext(id, text) msg_teaminfo(id, teamname) return PLUGIN_HANDLED } } msg_saytext(id, text) return PLUGIN_HANDLED } } return PLUGIN_CONTINUE } msg_teaminfo(id, teamname[]) { message_begin(MSG_ONE, g_msgid_teaminfo, _, id) write_byte(id) write_string(teamname) message_end() } msg_saytext(id, text[]) { message_begin(MSG_ONE, g_msgid_saytext, _, id) write_byte(id) write_string(text) message_end() }
Proszę o komplikację , bo wyskakuje mi jakiś błąd a jak to robię przez amxx studio to plugin mi nie działa.
#416818 przerobienie pluginu ut_pl
Napisane przez bamber w 02.06.2012 08:14
Czy mógłby mi ktoś dodać ale urwał do pluginu ut_pl bo na necie nie mogę tego znaleźć , tak aby było przy strzale w głowę te co są w tym pluginie i dodatkowo "ale urwał"
http://amxx.pl/topic...mate-sounds-pl/ <--- ut_pl
http://www38.zippysh...51389/file.html <---- dźwięk ale urwał.
Dla tego kto mi pomoże stawiam plusa.
http://amxx.pl/topic...mate-sounds-pl/ <--- ut_pl
http://www38.zippysh...51389/file.html <---- dźwięk ale urwał.
Dla tego kto mi pomoże stawiam plusa.
#378071 Przerobienie pluginu VIP
Napisane przez bamber w 10.03.2012 12:08
- AMXX.pl: Support AMX Mod X i SourceMod
- → Przeglądanie profilu: Reputacja: bamber
- Regulamin