Existing user? Sign in
Sign up
Games
Servers
Useful
User
Pass
2FA
[rezolvat]Problema zp class predator
Freakz Forum Index
->
Trash Bin
->
CS 2006-2019 (Archived)
->
Plugins - Help / Support
Author
Message
231
zp.Bodo
[Creep]
Status: Offline
(since 17-11-2019 13:51)
Joined: 15 Jun 2014
Posts: 663
,
Topics: 166
Location:
Romania
Reputation:
548.2
Votes
: 20
Posted: 20-01-2017, 20:49:19
| Translate post to:
... (
Click for more languages
)
»Nume*: Zp class predator
»Descriere problema*: cand pornesc abilitatea si sar, plutesc in aer. De la ce sa fie problema?
»Poze/Sma:
Spoiler:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <fakemeta>
#include <zombie_plague_special>
#include <hamsandwich>
#include <zombiexp>
#define PLUGIN "[ZP] Class Predator"
#define VERSION "1.0"
#define AUTHOR "TEo"
//Some vars
new g_zclass_Predator, g_maxplayers, g_status
new g_sndInv[] = "predator/predator.wav"
new cvar_ability_time, cvar_invamount, cvar_speed, cvar_infect_hp, cvar_cooldown, cvar_gravity, cvar_icon, cvar_dmg_multi
new Float:g_last[33]
new keys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3
new g_icon[33][16]
new bool: g_ability[33], bool: g_bind[33] = false, bool: g_use[33]
//Predator Atributes
new const zclass_name[] = { "Predator Zombie" }
new const zclass_info[] = { "Invisibilitate si viteza mare" }
new const zclass_model[] = { "Predator" }
new const zclass_clawmodel[] = { "v_Predator.mdl" }
const zclass_health = 9000
const zclass_speed = 370
const Float:zclass_gravity = 0.7
const Float:zclass_knockback = 0.1
const zclass_level = 13 // level required to use
public plugin_init()
{
cvar_dmg_multi = register_cvar("zp_predator_dmg_multi", "3")
cvar_ability_time = register_cvar("zp_Predator_ability_long", "60")
cvar_invamount = register_cvar("zp_Predator_visible_amount", "0")
cvar_speed = register_cvar("zp_Predator_max_speed", "900")
cvar_infect_hp = register_cvar("zp_Predator_infect_hp", "500")
cvar_cooldown = register_cvar("zp_Predator_cooldown", "30")
cvar_gravity = register_cvar("zp_Predator_gravity", "700")
cvar_icon = register_cvar("zp_Predator_icon", "1")
register_clcmd("ability","ability", ADMIN_ALL, "bind ^"key^" ^"ability^"")
register_forward(FM_PlayerPreThink, "fw_ppt")
register_event("HLTV", "newround", "a", "1=0", "2=0")
register_event("DeathMsg", "death", "a")
register_menucmd(register_menuid("Vrei bind pentru abilitate pe tasta P?"), keys, "bind_p")
RegisterHam( Ham_TakeDamage, "player", "fw_TakeDamage" )
g_status = get_user_msgid("StatusIcon")
}
public plugin_precache()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
g_zclass_Predator = zpxp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback, zclass_level)
precache_sound(g_sndInv)
}
public zp_user_infected_post(id, infector)
{
if (zp_get_user_zombie_class(infector) == g_zclass_Predator)
{
set_pev(infector, pev_health, float(pev(infector, pev_health) + get_pcvar_num(cvar_infect_hp)))
set_hudmessage(255, 0, 0, -1.0, 0.45, 0, 0.0, 3.0, 0.01, 0.01, -1)
show_hudmessage(infector, "+%i HP!", get_pcvar_num(cvar_infect_hp))
}
if (zp_get_user_zombie_class(id) == g_zclass_Predator)
{
g_ability[id] = false
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderNormal, 255)
set_user_maxspeed(id, float(zclass_speed))
set_user_gravity(id, zclass_gravity)
if (!g_bind[id])
{
new menu[192]
format(menu, 191, "Vrei bind pentru abilitate pe tasta P?^n^n1. Da^n2. Nu^n3. Abilitate on +USE")
show_menu(id, keys, menu)
}
}
}
public zp_user_humanized_post(id)
if(zp_get_user_zombie_class(id) == g_zclass_Predator)
ability_end(id)
public bind_p(id, keys)
{
g_bind[id] = true
switch(keys)
{
case 0:
client_cmd(id, "bind p ability")
case 1:
client_print(id, print_chat, "[ZP] Pentru a fi invizibil si pentru a-ti creste viteza srie in consola: bind ^'^'key^'^' ^'^'ability^'^'. Si pe urma apasa!")
case 2:
g_use[id] = true
default:
g_bind[id] = false
}
return PLUGIN_HANDLED
}
public ability(id)
{
if (zp_get_user_zombie(id) && (zp_get_user_zombie_class(id) == g_zclass_Predator))
{
if(g_ability[id])
{
client_print(id, print_chat, "[ZP] Esti deja invizibil si ai viteza maxima.")
return PLUGIN_HANDLED
}
if(!is_user_alive(id))
{
client_print(id, print_chat, "[ZP] Acum esti mort. Persoanele moarte nu pot folosi abilitatile.")
return PLUGIN_HANDLED
}
static Float: i
i = get_pcvar_float(cvar_cooldown)
if (get_gametime() - g_last[id] < i) {
client_print(id, print_chat, "[ZP] Asteapta %.f0 sec. pentru a putea folosi abilitatea!", get_pcvar_float(cvar_cooldown) - (get_gametime() - g_last[id]))
return PLUGIN_HANDLED
} else {
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(cvar_invamount))
set_user_maxspeed(id, get_pcvar_float(cvar_speed))
set_user_gravity(id, get_pcvar_float(cvar_gravity) / 800)
emit_sound(id, CHAN_BODY, g_sndInv, 1.0, ATTN_NORM, 0, PITCH_HIGH)
set_hudmessage(200, 100, 0, -1.0, 0.85, 0, 0.0, 3.0, 0.01, 0.01, -1)
show_hudmessage(id, "Eti invizibil, e timpul sa vanezi!")
set_task(get_pcvar_float(cvar_ability_time), "ability_end", id)
if(get_pcvar_num(cvar_icon) == 1)
set_icon(id)
g_ability[id] = true
}
}
return PLUGIN_CONTINUE
}
public ability_end(id)
{
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderNormal, 255)
set_user_maxspeed(id, float(zclass_speed))
set_user_gravity(id, zclass_gravity)
if (get_pcvar_num(cvar_cooldown) > 0)
client_print(id, print_chat, "[ZP] Asteapta %i sec pentru a refolosi abilitatea.", get_pcvar_num(cvar_cooldown))
if(get_pcvar_num(cvar_icon) == 1)
delete_icon(id)
g_last[id] = get_gametime()
g_ability[id] = false
}
public fw_ppt(id)
{
if (!is_user_alive(id) || !zp_get_user_zombie(id))
return FMRES_IGNORED
if (g_use[id])
{
static button, oldbutton
button = get_user_button(id)
oldbutton = get_user_oldbutton(id)
if (!(button & IN_USE) && (oldbutton & IN_USE))
ability(id)
}
if (g_ability[id] && (zp_get_user_zombie_class(id) == g_zclass_Predator) && zp_get_user_zombie(id))
{
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(cvar_invamount))
set_user_maxspeed(id, get_pcvar_float(cvar_speed))
set_pev(id, pev_flTimeStepSound, 999)
set_user_gravity(id, get_pcvar_float(cvar_gravity) / 800)
}
return PLUGIN_CONTINUE
}
public newround()
{
g_maxplayers = get_maxplayers()
for (new id = 1; id <= g_maxplayers; id++)
{
g_last[id] = get_gametime()
g_ability[id] = false
}
}
public fw_TakeDamage( victim, inflictor, attacker, Float:damage, damagebits )
{
if ( zp_get_user_zombie(attacker) && (zp_get_user_zombie_class(attacker) == g_zclass_Predator) && (get_user_weapon(attacker) == CSW_KNIFE))
{
SetHamParamFloat( 4, damage * get_pcvar_float(cvar_dmg_multi) )
}
}
public death()
{
new id = read_data(2)
ability_end(id)
return PLUGIN_HANDLED
}
public set_icon(id)
{
static color[3], sprite[16]
color = {250, 250, 250}
sprite = "dmg_gas"
g_icon[id] = sprite
message_begin(MSG_ONE, g_status, {0, 0, 0}, id)
write_byte(1)
write_string(g_icon[id])
write_byte(color[0])
write_byte(color[1])
write_byte(color[2])
message_end()
}
public delete_icon(id)
{
message_begin(MSG_ONE, g_status, {0, 0, 0}, id)
write_byte(0)
write_string(g_icon[id])
message_end()
}
stock get_user_button(id)
return pev(id, pev_button)
stock get_user_oldbutton(id)
return pev(id, pev_oldbuttons)
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1034\\ f0\\ fs16 \n\\ par }
*/
Contact Skype | zm.bodo
Grup Facebook |
CSRO 2k17+
0
0
Back to top
ZPLegendary
[Mentally Stable]
Status: Offline
(since 03-10-2019 20:59)
Joined: 13 Jan 2017
Posts: 142
,
Topics: 7
Location:
Polovragi, GJ
Reputation:
15.4
Votes
: 17
Posted: 21-01-2017, 00:02:16
| Translate post to:
... (
Click for more languages
)
Vezi acum, ti-am schimbat metoda de setare a gravitatiei.
In cvar-ul "zp_Predator_gravity" treci valori cu "0.".
Sugerez "0.5" pentru ca 0.7 are deja fara sa-si foloseasca abilitatea.
Code:
set_user_gravity(id, get_pcvar_float(cvar_gravity) / 800)
==>
set_pev(id, pev_gravity, get_pcvar_float(cvar_gravity))
Ar trebui sa mearga.
Spoiler:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <fakemeta>
#include <zombie_plague_special>
#include <hamsandwich>
#include <zombiexp>
#define PLUGIN "[ZP] Class Predator"
#define VERSION "1.0"
#define AUTHOR "TEo"
//Some vars
new g_zclass_Predator, g_maxplayers, g_status
new g_sndInv[] = "predator/predator.wav"
new cvar_ability_time, cvar_invamount, cvar_speed, cvar_infect_hp, cvar_cooldown, cvar_gravity, cvar_icon, cvar_dmg_multi
new Float:g_last[33]
new keys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3
new g_icon[33][16]
new bool: g_ability[33], bool: g_bind[33] = false, bool: g_use[33]
//Predator Atributes
new const zclass_name[] = { "Predator Zombie" }
new const zclass_info[] = { "Invisibilitate si viteza mare" }
new const zclass_model[] = { "Predator" }
new const zclass_clawmodel[] = { "v_Predator.mdl" }
const zclass_health = 9000
const zclass_speed = 370
const Float:zclass_gravity = 0.7
const Float:zclass_knockback = 0.1
const zclass_level = 13 // level required to use
public plugin_init()
{
cvar_dmg_multi = register_cvar("zp_predator_dmg_multi", "3")
cvar_ability_time = register_cvar("zp_Predator_ability_long", "60")
cvar_invamount = register_cvar("zp_Predator_visible_amount", "0")
cvar_speed = register_cvar("zp_Predator_max_speed", "900")
cvar_infect_hp = register_cvar("zp_Predator_infect_hp", "500")
cvar_cooldown = register_cvar("zp_Predator_cooldown", "30")
cvar_gravity = register_cvar("zp_Predator_gravity", "0.5")
cvar_icon = register_cvar("zp_Predator_icon", "1")
register_clcmd("ability","ability", ADMIN_ALL, "bind ^"key^" ^"ability^"")
register_forward(FM_PlayerPreThink, "fw_ppt")
register_event("HLTV", "newround", "a", "1=0", "2=0")
register_event("DeathMsg", "death", "a")
register_menucmd(register_menuid("Vrei bind pentru abilitate pe tasta P?"), keys, "bind_p")
RegisterHam( Ham_TakeDamage, "player", "fw_TakeDamage" )
g_status = get_user_msgid("StatusIcon")
}
public plugin_precache()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
g_zclass_Predator = zpxp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback, zclass_level)
precache_sound(g_sndInv)
}
public zp_user_infected_post(id, infector)
{
if (zp_get_user_zombie_class(infector) == g_zclass_Predator)
{
set_pev(infector, pev_health, float(pev(infector, pev_health) + get_pcvar_num(cvar_infect_hp)))
set_hudmessage(255, 0, 0, -1.0, 0.45, 0, 0.0, 3.0, 0.01, 0.01, -1)
show_hudmessage(infector, "+%i HP!", get_pcvar_num(cvar_infect_hp))
}
if (zp_get_user_zombie_class(id) == g_zclass_Predator)
{
g_ability[id] = false
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderNormal, 255)
set_user_maxspeed(id, float(zclass_speed))
set_pev(id, pev_gravity, zclass_gravity)
if (!g_bind[id])
{
new menu[192]
format(menu, 191, "Vrei bind pentru abilitate pe tasta P?^n^n1. Da^n2. Nu^n3. Abilitate on +USE")
show_menu(id, keys, menu)
}
}
}
public zp_user_humanized_post(id)
if(zp_get_user_zombie_class(id) == g_zclass_Predator)
ability_end(id)
public bind_p(id, keys)
{
g_bind[id] = true
switch(keys)
{
case 0:
client_cmd(id, "bind p ability")
case 1:
client_print(id, print_chat, "[ZP] Pentru a fi invizibil si pentru a-ti creste viteza srie in consola: bind ^'^'key^'^' ^'^'ability^'^'. Si pe urma apasa!")
case 2:
g_use[id] = true
default:
g_bind[id] = false
}
return PLUGIN_HANDLED
}
public ability(id)
{
if (zp_get_user_zombie(id) && (zp_get_user_zombie_class(id) == g_zclass_Predator))
{
if(g_ability[id])
{
client_print(id, print_chat, "[ZP] Esti deja invizibil si ai viteza maxima.")
return PLUGIN_HANDLED
}
if(!is_user_alive(id))
{
client_print(id, print_chat, "[ZP] Acum esti mort. Persoanele moarte nu pot folosi abilitatile.")
return PLUGIN_HANDLED
}
static Float: i
i = get_pcvar_float(cvar_cooldown)
if (get_gametime() - g_last[id] < i) {
client_print(id, print_chat, "[ZP] Asteapta %.f0 sec. pentru a putea folosi abilitatea!", get_pcvar_float(cvar_cooldown) - (get_gametime() - g_last[id]))
return PLUGIN_HANDLED
} else {
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(cvar_invamount))
set_user_maxspeed(id, get_pcvar_float(cvar_speed))
set_pev(id, pev_gravity, get_pcvar_float(cvar_gravity))
emit_sound(id, CHAN_BODY, g_sndInv, 1.0, ATTN_NORM, 0, PITCH_HIGH)
set_hudmessage(200, 100, 0, -1.0, 0.85, 0, 0.0, 3.0, 0.01, 0.01, -1)
show_hudmessage(id, "Eti invizibil, e timpul sa vanezi!")
set_task(get_pcvar_float(cvar_ability_time), "ability_end", id)
if(get_pcvar_num(cvar_icon) == 1)
set_icon(id)
g_ability[id] = true
}
}
return PLUGIN_CONTINUE
}
public ability_end(id)
{
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderNormal, 255)
set_user_maxspeed(id, float(zclass_speed))
pev_gravity(id, pev_gravity, zclass_gravity)
if (get_pcvar_num(cvar_cooldown) > 0)
client_print(id, print_chat, "[ZP] Asteapta %i sec pentru a refolosi abilitatea.", get_pcvar_num(cvar_cooldown))
if(get_pcvar_num(cvar_icon) == 1)
delete_icon(id)
g_last[id] = get_gametime()
g_ability[id] = false
}
public fw_ppt(id)
{
if (!is_user_alive(id) || !zp_get_user_zombie(id))
return FMRES_IGNORED
if (g_use[id])
{
static button, oldbutton
button = get_user_button(id)
oldbutton = get_user_oldbutton(id)
if (!(button & IN_USE) && (oldbutton & IN_USE))
ability(id)
}
if (g_ability[id] && (zp_get_user_zombie_class(id) == g_zclass_Predator) && zp_get_user_zombie(id))
{
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(cvar_invamount))
set_user_maxspeed(id, get_pcvar_float(cvar_speed))
set_pev(id, pev_flTimeStepSound, 999)
set_pev(id, pev_gravity, get_pcvar_float(cvar_gravity))
}
return PLUGIN_CONTINUE
}
public newround()
{
g_maxplayers = get_maxplayers()
for (new id = 1; id <= g_maxplayers; id++)
{
g_last[id] = get_gametime()
g_ability[id] = false
}
}
public fw_TakeDamage( victim, inflictor, attacker, Float:damage, damagebits )
{
if ( zp_get_user_zombie(attacker) && (zp_get_user_zombie_class(attacker) == g_zclass_Predator) && (get_user_weapon(attacker) == CSW_KNIFE))
{
SetHamParamFloat( 4, damage * get_pcvar_float(cvar_dmg_multi) )
}
}
public death()
{
new id = read_data(2)
ability_end(id)
return PLUGIN_HANDLED
}
public set_icon(id)
{
static color[3], sprite[16]
color = {250, 250, 250}
sprite = "dmg_gas"
g_icon[id] = sprite
message_begin(MSG_ONE, g_status, {0, 0, 0}, id)
write_byte(1)
write_string(g_icon[id])
write_byte(color[0])
write_byte(color[1])
write_byte(color[2])
message_end()
}
public delete_icon(id)
{
message_begin(MSG_ONE, g_status, {0, 0, 0}, id)
write_byte(0)
write_string(g_icon[id])
message_end()
}
stock get_user_button(id)
return pev(id, pev_button)
stock get_user_oldbutton(id)
return pev(id, pev_oldbuttons)
Be the one, not anyone.
Currently working on Zombie Legendary 8.1
0
0
Back to top
Topic locked
Topic is closed, you cannot post any messages in it anymore
Locked by
TwisTer
, 27 January 2017 17:09
Freakz Forum Index
->
Trash Bin
->
CS 2006-2019 (Archived)
->
Plugins - Help / Support
The time now is 22-08-2025, 22:38:11
Copyright info
Based on phpBB
ro
/
com
B
Login
I forgot my password
World of Warcraft
Login for more...
Download WoW 7.3.5
Misc
eSports
Achievements
Buy reputation with votes
Reputation trades
Forum rules
Ban list
Members list
User guide (FAQ)
World of Warcraft
View details