Skocz do zawartości

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.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
Modyfikacja

Przerobienie pluginu DeathRunVip.

modyfikacja

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
Brak odpowiedzi do tego tematu

#1 polimeryk

    Nowy

  • Nowy

Reputacja: 0
Nowy

  • Postów:2
  • Lokalizacja:Warszawa
Offline

Napisano 12.01.2013 16:37

Witam, chciałbym aby ktoś mi ten plugin przerobił tak, by nie było AutoBH.
Mam swojego Deathruna bez bh i Vip wszystko psuje bo ma AutoBh.

Jest ktoś w stanie??

plik .sma:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <hamsandwich>
#include <cstrike>
#include <fakemeta>
#include <xs>
#include <engine>
#define FLAG ADMIN_LEVEL_H
new const VIP[] = "DeathRunVip"
new const VIP_MODEL[] = "models/player/DeathRunVip/DeathRunVip.mdl"
new const MENU_POPUP[] = "misc/DeathRunVip/vip_menu_popup.wav"
new const MENU_OK[] = "misc/DeathRunVip/vip_menu_ok.wav"
new const VIP_CONNECT[] = "misc/DeathRunVip/vip_connect.wav"
#define TASKID_SHOWHUD 2931
#define TASKID_MODEL  3810
new player_model[33][32]
new Float: g_counter
new bool: g_model[33]
new g_hudsync
new cvar_gravity
new cvar_speed
new SayTxT
new gCylinderSprite;
public plugin_precache()
{
precache_model(VIP_MODEL)
	    precache_sound(VIP_CONNECT)
precache_sound(MENU_POPUP)
precache_sound(MENU_OK)
gCylinderSprite = precache_model( "sprites/shockwave.spr" );
}
public plugin_init()
{
register_plugin("Deathrun V.I.P", "1.0", "DoviuX")
cvar_gravity = register_cvar("dr_vip_gravity", "500")
cvar_speed = register_cvar("dr_vip_speed", "500")
RegisterHam(Ham_Spawn, "player", "bacon_spawn", 1)
register_forward(FM_SetClientKeyValue, "fw_SetClientKeyValue")
register_forward(FM_ClientUserInfoChanged, "fw_ClientUserInfoChanged")
g_hudsync = CreateHudSyncObj()
SayTxT = get_user_msgid("SayText");
}
public client_connect(client)
{
if(get_user_flags(client) & FLAG)
{
  client_cmd(client, "spk %s", VIP_CONNECT)
	  new name[32];
	  get_user_name(client, name, 31);
		 set_hudmessage( 0, 255, 0, -1.0, 0.29, 0, 6.0, 12.0 );
		 show_hudmessage( 0, "Vip %s is connecting to the server!.", name);
}
}
public bacon_spawn(id)
{
    if (!is_user_alive(id))
	    return
   
    static CsTeams: team ; team = cs_get_user_team(id)
   
    if (team == CS_TEAM_T && (get_user_flags(id) & FLAG))
    {  
set_task(2.0, "T_menu", id)
	 new iOrigin[ 3 ];
	 get_user_origin( id, iOrigin );
	 Create_BeamCylinder( iOrigin, 120, gCylinderSprite, 0, 0, 6, 16, 0, random( 0 ), random( 255 ), random( 0 ), 255, 0 );
	 Create_BeamCylinder( iOrigin, 120, gCylinderSprite, 0, 0, 6, 16, 0, random( 0 ), random( 255 ), random( 0 ), 255, 0 );
	 Create_BeamCylinder( iOrigin, 120, gCylinderSprite, 0, 0, 6, 16, 0, random( 0 ), random( 255 ), random( 0 ), 255, 0 );
copy(player_model[id], 31, VIP)
 
new currentmodel[32];
fm_get_user_model(id, currentmodel, sizeof currentmodel - 1);
 
if(!equal(currentmodel, player_model[id]))
{
  Task_Model(id + TASKID_MODEL)
  g_counter += 0.1;
}
if(!task_exists(TASKID_SHOWHUD + id))
    set_task(0.2, "Task_ShowHUD", TASKID_SHOWHUD + id)
set_user_rendering(id,kRenderFxGlowShell,255,0,0,kRenderNormal,25)
    }
    else if (team == CS_TEAM_CT && (get_user_flags(id) & FLAG))
    {
set_task(2.0, "CT_menu", id)
	 new iOrigin[ 3 ];
	 get_user_origin( id, iOrigin );
	 Create_BeamCylinder( iOrigin, 120, gCylinderSprite, 0, 0, 6, 16, 0, random( 0 ), random( 255 ), random( 0 ), 255, 0 );
	 Create_BeamCylinder( iOrigin, 120, gCylinderSprite, 0, 0, 6, 16, 0, random( 0 ), random( 255 ), random( 0 ), 255, 0 );
	 Create_BeamCylinder( iOrigin, 120, gCylinderSprite, 0, 0, 6, 16, 0, random( 0 ), random( 255 ), random( 0 ), 255, 0 );
copy(player_model[id], 31, VIP)
strip_user_weapons(id)
give_item(id, "weapon_knife")
 
new currentmodel[32];
fm_get_user_model(id, currentmodel, sizeof currentmodel - 1);
 
if(!equal(currentmodel, player_model[id]))
{
  Task_Model(id + TASKID_MODEL)
  g_counter += 0.1;
}
if(!task_exists(TASKID_SHOWHUD + id))
    set_task(0.2, "Task_ShowHUD", TASKID_SHOWHUD + id)
set_user_rendering(id,kRenderFxGlowShell,255,0,0,kRenderNormal,25)
    }
}
public T_menu(id)
{
if(!is_user_alive(id))
    return PLUGIN_HANDLED
client_cmd(id, "spk %s", MENU_POPUP)
 
	 new gmenu = menu_create("\y~Witaj w .:*V.I.P Menu*:. by SteeR`~" , "Vip_Handler");
	 menu_additem(gmenu ,"\w[Dodaje 255 HP]", "1" , 0);
	 menu_additem(gmenu ,"\w[Dodaje 255 Armoru]", "2" , 0);
	 menu_additem(gmenu ,"\w[Lepsza Gravitka]", "3" , 0);
	 menu_additem(gmenu ,"\w[Szybciej Biegasz]", "4" , 0);
	 menu_additem(gmenu ,"\w[Deagle+2 ammo]", "5" , 0);
	 menu_additem(gmenu ,"\w[Granat Wybuchowy]", "6" , 0);
	 menu_additem(gmenu ,"\w[Noktowizor] ", "7" , 0);

	 menu_setprop(gmenu , MPROP_EXIT , MEXIT_ALL);

	 menu_display(id , gmenu , 0);
return PLUGIN_CONTINUE
}
public CT_menu(id)
{
if(!is_user_alive(id))
    return PLUGIN_HANDLED
 
client_cmd(id, "spk %s", MENU_POPUP)
	    new gmenu = menu_create("\y~Witaj w .:*V.I.P Menu*:. by SteeR`~" , "Vip_Handler");
	 menu_additem(gmenu ,"\w[Dodaje 255 HP]", "1" , 0);
	 menu_additem(gmenu ,"\w[Dodaje 255 Armoru]", "2" , 0);
	 menu_additem(gmenu ,"\w[Lepsza Gravitka]", "3" , 0);
	 menu_additem(gmenu ,"\w[Szybciej Biegasz]", "4" , 0);
	 menu_additem(gmenu ,"\w[Deagle+2 ammo]", "5" , 0);
	 menu_additem(gmenu ,"\w[Granat Wybuchowy]", "6" , 0);
	 menu_additem(gmenu ,"\w[Noktowizor] ", "7" , 0);

	 menu_setprop(gmenu , MPROP_EXIT , MEXIT_ALL);

	 menu_display(id , gmenu , 0);
return PLUGIN_CONTINUE
}
public Vip_Handler(id, gmenu, item, player)
{
   if (item == MENU_EXIT)
   {
	  menu_destroy(gmenu)
	  return PLUGIN_HANDLED
   }
   new data[6], iName[64]
   new access, callback
   menu_item_getinfo(gmenu, item, access, data, 5, iName, 63, callback)
  
   new key = str_to_num(data)
  
   switch(key)
   {
	  case 1:
	  {
client_cmd(id, "spk %s", MENU_OK)
set_user_health(id, 255)
client_printcolor(player, "/g[V.I.P]/y: Dostales /w+255 /gHP!")
	  }
	  case 2:
	  {
client_cmd(id, "spk %s", MENU_OK)
set_user_armor(id, 255)
client_printcolor(player, "/g[V.I.P]/y: Dostales /w+255 /gPancerza!")
	  }
	  case 3:
	  {
client_cmd(id, "spk %s", MENU_OK)
new Float: gravity
gravity = get_pcvar_float(cvar_gravity) / 800
set_user_gravity(id, gravity)
client_printcolor(player, "/g[V.I.P]/y: Wybrales /gLepsza Gravitacje!")
	  }
	 
	  case 4:
	  {
new Float: speed
speed = get_pcvar_float(cvar_speed)
client_cmd(id, "spk %s", MENU_OK)
set_user_maxspeed(id, speed)
client_printcolor(player, "/g[V.I.P]/y: Wybrales /gLepszego Speeda!")
	  }
	 
	  case 5:
	  {
give_item(id, "weapon_deagle")
new weapon_id = find_ent_by_owner(-1, "weapon_deagle", id);
if(weapon_id)
{
  cs_set_weapon_ammo(weapon_id, 2);
}
client_cmd(id, "spk %s", MENU_OK)
client_printcolor(player, "/g[V.I.P]/y: Wybrales Deagla /gz 2 /ynabojami!")
	  }
	 
	  case 6:
	  {
give_item(id, "weapon_hegrenade")
client_cmd(id, "spk %s", MENU_OK)
client_printcolor(player, "/g[V.I.P]/y: Dostales /wWybuchowy /yGranat!")
	  }
	  case 7:
	  {
cs_set_user_nvg(id)
client_cmd(id, "spk %s", MENU_OK)
client_printcolor(player, "/g[V.I.P]/y: Wybrales Noktowizor!")
	  }
   }
   menu_destroy(gmenu)
   return PLUGIN_HANDLED;
}
public VipCt_Handler(id, gmenu, item, player)
{
   if (item == MENU_EXIT)
   {
	  menu_destroy(gmenu)
	  return PLUGIN_HANDLED
   }
   new data[6], iName[64]
   new access, callback
   menu_item_getinfo(gmenu, item, access, data, 5, iName, 63, callback)
  
   new key = str_to_num(data)
  
   switch(key)
   {
	  case 1:
	  {
client_cmd(id, "spk %s", MENU_OK)
set_user_health(id, 255)
client_printcolor(player, "/g[V.I.P]/y: Dostales /w+255 /gHP!")
	  }
	  case 2:
	  {
client_cmd(id, "spk %s", MENU_OK)
set_user_armor(id, 255)
client_printcolor(player, "/g[V.I.P]/y: Dostales /w+255 /gPancerza!")
	  }
	  case 3:
	  {
client_cmd(id, "spk %s", MENU_OK)
new Float: gravity
gravity = get_pcvar_float(cvar_gravity) / 800
set_user_gravity(id, gravity)
client_printcolor(player, "/g[V.I.P]/y: Wybrales /gLepsza Gravitacje!")
	  }
	 
	  case 4:
	  {
new Float: speed
speed = get_pcvar_float(cvar_speed)
client_cmd(id, "spk %s", MENU_OK)
set_user_maxspeed(id, speed)
client_printcolor(player, "/g[V.I.P]/y: Wybrales /gLepszego Speeda!")
	  }
	 
	  case 5:
	  {
give_item(id, "weapon_hegrenade")
client_cmd(id, "spk %s", MENU_OK)
client_printcolor(player, "/g[V.I.P]/y: Dostales /wWybuchowy /yGranat!")
	  }
	  case 6:
	  {
cs_set_user_nvg(id)
client_cmd(id, "spk %s", MENU_OK)
client_printcolor(player, "/g[V.I.P]/y: Wybrales Noktowizor!")
	  }
   }
   menu_destroy(gmenu)
   return PLUGIN_HANDLED;
}
public Task_ShowHUD(task)
{
new id = task - TASKID_SHOWHUD

if(!is_user_alive(id))
  return PLUGIN_HANDLED

static health, armour
health = get_user_health(id)
armour = get_user_armor(id)

set_hudmessage(150, 150, 150, 0.40, 0.92, 0, 0.0, 0.3, 0.0, 0.0)
ShowSyncHudMsg(id, g_hudsync , ".::*Health: %d -|V.I.P|- Armour: %d*::.", health, armour)

set_task(0.1, "Task_ShowHUD", TASKID_SHOWHUD + id) 

return PLUGIN_CONTINUE
}
public client_PreThink(id)
{
    if(is_user_alive(id))
    {
	    if(get_user_flags(id) & FLAG)
	    {
		   
		    new oldbuttons = get_user_oldbutton(id);
	   
		   
		    oldbuttons &= ~IN_JUMP;
		    entity_set_int(id, EV_INT_oldbuttons, oldbuttons);
	    }
    }
} 
public Task_Model(task)
{
new id = task - TASKID_MODEL

fm_set_user_model(id, player_model[id])
}
stock Create_BeamCylinder( origin[ 3 ], addrad, sprite, startfrate, framerate, life, width, amplitude, red, green, blue, brightness, speed )
{
message_begin( MSG_PVS, SVC_TEMPENTITY, origin );
write_byte( TE_BEAMCYLINDER );
write_coord( origin[ 0 ] );
write_coord( origin[ 1 ] );
write_coord( origin[ 2 ] );
write_coord( origin[ 0 ] );
write_coord( origin[ 1 ] );
write_coord( origin[ 2 ] + addrad );
write_short( sprite );
write_byte( startfrate );
write_byte( framerate );
write_byte(life );
write_byte( width );
write_byte( amplitude );
write_byte( red );
write_byte( green );
write_byte( blue );
write_byte( brightness );
write_byte( speed );
message_end();
}
stock te_sprite(id, Float:origin[3], sprite, scale, brightness)
{
message_begin(MSG_ONE, SVC_TEMPENTITY, _, id)
write_byte(TE_SPRITE)
write_coord(floatround(origin[0]))
write_coord(floatround(origin[1]))
write_coord(floatround(origin[2]))
write_short(sprite)
write_byte(scale)
write_byte(brightness)
message_end()
}
stock normalize(Float:fIn[3], Float:fOut[3], Float:fMul)
{
new Float:fLen = xs_vec_len(fIn)
xs_vec_copy(fIn, fOut)

fOut[0] /= fLen, fOut[1] /= fLen, fOut[2] /= fLen
fOut[0] *= fMul, fOut[1] *= fMul, fOut[2] *= fMul
}
public fw_SetClientKeyValue(id, infobuffer, key[], value[])
{  
if (g_model[id] && equal(key, "model"))
  return FMRES_SUPERCEDE

return FMRES_IGNORED
}
public fw_ClientUserInfoChanged(id, infobuffer)
{  
if (!g_model[id])
  return FMRES_IGNORED

new currentmodel[32];
fm_get_user_model(id, currentmodel, sizeof currentmodel - 1);

if(!equal(currentmodel, player_model[id]))
  fm_set_user_model(id, player_model[id])

return FMRES_IGNORED
}
stock fm_set_user_model(player, modelname[])
{  
engfunc(EngFunc_SetClientKeyValue, player, engfunc(EngFunc_GetInfoKeyBuffer, player), "model", modelname)

g_model[player] = true
}
stock fm_get_user_model(player, model[], len)
{  
engfunc(EngFunc_InfoKeyValue, engfunc(EngFunc_GetInfoKeyBuffer, player), "model", model, len)
}
stock fm_reset_user_model(player)
{		
g_model[player] = false

dllfunc(DLLFunc_ClientUserInfoChanged, player, engfunc(EngFunc_GetInfoKeyBuffer, player))
}
stock client_printcolor(const id, const input[], any:...)
{
new count = 1, players[32];
static msg[191];
vformat(msg,190,input,3);
replace_all(msg,190,"/g","^4");// green txt
replace_all(msg,190,"/y","^1");// orange txt
replace_all(msg,190,"/ctr","^3");// team txt
replace_all(msg,190,"/w","^0");// team txt
if (id) players[0] = id; else get_players(players,count,"ch");
for (new i = 0; i < count; i++)
  if (is_user_connected(players[i]))
  {
   message_begin(MSG_ONE_UNRELIABLE, SayTxT, _, players[i]);
   write_byte(players[i]);
   write_string(msg);
   message_end();
  }
}

Link do pluginu:
http://amxx.pl/topic...8-deathrun-vip/
  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: modyfikacja

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych