Jump to content

[Modificare]Plugin


Rio*

Recommended Posts

» Nume : Furien Vip
» Modul & DNS-ul serverului : furien 
» Fişierul .sma (link fileshare/postare directă prin spoiler)

 

 #include <amxmodx>
#include <hamsandwich>
#include <cstrike>
#include <amxmisc>
#include <fun>
#include <engine>
 
 
// Modifica aici pentru a seta gradul vipului
//###############################
#define ACCES_LEVEL ADMIN_LEVEL_H
//###############################
 
#define PLUGIN "VIP Furien PLUGIN"
#define VERSION "1.0"
#define AUTHOR "Raul"
 
 
new gViata, gArmura, gHE, gGodModeTime, gTeleportTime;
new gHasGodMode[32], gUsed[32];
 
new checkCount[33]
new blinkSpot[33][3]
new origBlinkSpot[33][3]
new g_lastPosition[33][3]
 
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
gViata = register_cvar("vip_hp", "255");
gArmura = register_cvar("vip_armour", "255");
gHE = register_cvar("vip_he_nr", "3");
gGodModeTime = register_cvar("vip_god_time", "3.0");
gTeleportTime = register_cvar("vip_teleport_time", "1.0");
 
register_logevent("Inceput_runda", 2, "1=Round_Start");
RegisterHam( Ham_TraceAttack, "player", "fw_TraceAttack" );
register_clcmd("say /vipmenu", "Creare_meniu");
register_clcmd("say_team /vipmenu", "Creare_meniu");
return PLUGIN_CONTINUE
}
//----------------------------------------------------------------------------------------------
public Inceput_runda()
{
new players[32], num;
get_players(players, num, "z");
 
for(new i = 0; i < num; i++)  
{
gUsed = 0;
}
}
//----------------------------------------------------------------------------------------------
public Creare_meniu(id)
{
if( get_user_flags( id ) & ACCES_LEVEL)
{
if(gUsed[id] == 0)
{
new menu = menu_create("Alege o optiune:", "menu_handler");
menu_additem(menu, "255 HP si 255 Armour", "1", 0);
menu_additem(menu, "HE Grenades", "2", 0);
menu_additem(menu, "GodMode", "3", 0);
menu_additem(menu, "Teleport", "4", 0);
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
 
menu_display(id, menu, 0);
}
else
client_print(id, print_chat, "Poti folosi meniul o singura data pe runda!");
}
else
client_print(id, print_chat, "Doar cei cu grad de VIP pot folosi meniul!");
}
//----------------------------------------------------------------------------------------------
public menu_handler(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
 
new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
 
new key = str_to_num(data);
 
switch(key)
{
case 1:
{
client_print(id, print_chat, "Ai primit %d HP si %d Armour!", get_pcvar_num(gViata), get_pcvar_num(gArmura));
set_user_health(id, get_pcvar_num(gViata));
set_user_armor(id, get_pcvar_num(gArmura));
menu_destroy(menu);
return PLUGIN_HANDLED;
}
case 2:
{
client_print(id, print_chat, "Ai %d HE Grenades", get_pcvar_num(gHE));
cs_set_user_bpammo( id , CSW_HEGRENADE, get_pcvar_num(gHE));
menu_destroy(menu);
return PLUGIN_HANDLED;
}
case 3:
{
client_print(id, print_chat, "Ai GodMode pentru %f secunde", get_pcvar_float(gGodModeTime));
gHasGodMode[id] = 1;
set_task( get_pcvar_float(gGodModeTime), "End_God", id);
menu_destroy(menu);
return PLUGIN_HANDLED;
}
case 4:
{
client_print(id, print_chat, "Te vei teleporta în %f secunde.", get_pcvar_float(gTeleportTime));
set_task(get_pcvar_float(gTeleportTime), "Teleport_handler", id);
menu_destroy(menu);
return PLUGIN_HANDLED;
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
//----------------------------------------------------------------------------------------------
public fw_TraceAttack( victim, attacker, Float:damage, Float:direction[3], trace, damageBits )
{
if(gHasGodMode[victim])
return HAM_SUPERCEDE;
 
return HAM_IGNORED;
}
//----------------------------------------------------------------------------------------------
public End_God(id)
{
gHasGodMode[id] = 0;
}
//----------------------------------------------------------------------------------------------
public Teleport_handler(id)
{
get_user_origin(id,blinkSpot[id],3)
origBlinkSpot[id][0] = blinkSpot[id][0]
origBlinkSpot[id][1] = blinkSpot[id][1]
origBlinkSpot[id][2] = blinkSpot[id][2]
 
blinkSpot[id][2] += 45
set_user_origin(id,blinkSpot[id])
checkCount[id] = 1
positionChangeTimer(id)
return PLUGIN_CONTINUE
}
//----------------------------------------------------------------------------------------------
public positionChangeTimer(id)
{
if (!is_user_alive(id)) return
 
new Float:velocity[3]
get_user_origin(id, g_lastPosition[id])
 
entity_get_vector(id, EV_VEC_velocity, velocity)
if ( velocity[0] == 0.0 && velocity[1] == 0.0 && velocity[2] ) {
velocity[0] = 50.0
velocity[1] = 50.0
entity_set_vector(id, EV_VEC_velocity, velocity)
}
 
set_task(0.1,"positionChangeCheck",id)
}
//----------------------------------------------------------------------------------------------
public positionChangeCheck(id)
{
if (!is_user_alive(id)) return
 
new origin[3]
get_user_origin(id, origin)
 
if ( g_lastPosition[id][0] == origin[0] && g_lastPosition[id][1] == origin[1] && g_lastPosition[id][2] == origin[2]) {
switch(checkCount[id]) {
case 0 : blink_movecheck(id, 0, 0, 0) // Original
case 1 : blink_movecheck(id, 0, 0, 80) // Up
case 2 : blink_movecheck(id, 0, 0, -110) // Down
case 3 : blink_movecheck(id, 0, 30, 0) // Forward
case 4 : blink_movecheck(id, 0, -30, 0) // Back
case 5 : blink_movecheck(id, -30, 0, 0) // Left
case 6 : blink_movecheck(id, 30, 0, 0) // Right
case 7 : blink_movecheck(id, -30, 30, 0) // Forward-Left
case 8 : blink_movecheck(id, 30, 30, 0) // Forward-Right
case 9 : blink_movecheck(id, -30, -30, 0) // Back-Left
case 10: blink_movecheck(id, 30, -30, 0) // Back-Right
case 11: blink_movecheck(id, 0, 30, 60) // Up-Forward
case 12: blink_movecheck(id, 0, 30, -110) // Down-Forward
case 13: blink_movecheck(id, 0, -30, 60) // Up-Back
case 14: blink_movecheck(id, 0, -30, -110) // Down-Back
case 15: blink_movecheck(id, -30, 0, 60) // Up-Left
case 16: blink_movecheck(id, 30, 0, 60) // Up-Right
case 17: blink_movecheck(id, -30, 0, -110) // Down-Left
case 18: blink_movecheck(id, 30, 0, -110) // Down-Right
default: user_kill(id)
}
return
}
}
//----------------------------------------------------------------------------------------------
public blink_movecheck(id, mX, mY, mZ)
{
blinkSpot[id][0] = origBlinkSpot[id][0] + mX
blinkSpot[id][1] = origBlinkSpot[id][1] + mY
blinkSpot[id][2] = origBlinkSpot[id][2] + mZ
set_user_origin(id,blinkSpot[id])
checkCount[id]++
positionChangeTimer(id)
}
//-------------------------------------------------------------------------------------








» Ai întâmpinat erori la plugin ? Dacă da , care ? :Nu
» Ce doreşti să fie modificat ? :Asi dori sa fie adaugate:
 
-Cand scri /vips sati arate vipi online am acces pe flagul T
-Ca meniul sa poata vi actulizat decat de 3 ori pe runda,Sa nu mai faca abuz
» Descriere amănunţită a modificărilor :In rest sa fie la fel

Edited by Minnie
Reclama la alta comunitate .
Link to comment
Share on other sites

  • 2 weeks later...

Dupa ce ca esti nesimtit, mai si dovedesti acest lucru . Nu iti este putin rusine sa faci reclama la alta comunitate ?! Nu este nevoie sa-l mai ajutati, este la fel ca celalalt, plagiator . 

 

T/C . 

  • Like 2
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...