Raised This Month: $ Target: $400
 0% 

ZM Class Sneaky Creature


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Rainq
Member
Join Date: Sep 2015
Old 03-26-2021 , 12:09   ZM Class Sneaky Creature
Reply With Quote #1

I don t have error compiler and logs but my server shutdown because i have plugin
this plugin work but finish ability provoke shutdown

Code:
#include <amxmodx>
#include <fakemeta>
#include <fun>
#include <zombieplague>

new const zclass_name[] = "Sneaky Creature"
new const zclass_info[] = "[T]"
new const zclass_model[] = "zombie_invisible"
new const zclass_clawmodel[] = "claws_light.mdl"
new const zclass_clawmodel_invi[] = "models/zombie_ultimate/claws_light_invisible.mdl"
const zclass_health = 2600
const zclass_speed = 295
const Float:zclass_gravity = 0.7
const Float:zclass_knockback = 6.0

new const zombie_sound_invisible[] = "zombie_ultimate/zsneaky_ability.wav"

new idclass
const Float:invisible_time = 10.0
const Float:invisible_timewait = 10.0
const invisible_dmg = 200
const Float:invisible_speed = 215.0
const Float:invisible_gravity = 0.9

new g_invisible[33], g_invisible_wait[33]
new g_maxplayers
new g_roundend

enum (+= 100)
{
	TASK_INVISIBLE = 2000,
	TASK_WAIT_INVISIBLE,
	TASK_INVISIBLE_SOUND,
	TASK_BOT_USE_SKILL
}

#define ID_INVISIBLE (taskid - TASK_INVISIBLE)
#define ID_WAIT_INVISIBLE (taskid - TASK_WAIT_INVISIBLE)
#define ID_INVISIBLE_SOUND (taskid - TASK_INVISIBLE_SOUND)
#define ID_BOT_USE_SKILL (taskid - TASK_BOT_USE_SKILL)

public plugin_init()
{
	register_plugin("Sneaky Creature", "1.0", "ALBTeam, Rainq")
	
	register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
	register_event("DeathMsg", "Death", "a")
	register_event("CurWeapon", "EventCurWeapon", "be", "1=1")
	register_logevent("logevent_round_end", 2, "1=Round_End")
	
	register_clcmd("impulse 201", "cmd_invisible")
	g_maxplayers = get_maxplayers()
}

public plugin_precache()
{
	precache_model(zclass_clawmodel_invi)
	precache_sound(zombie_sound_invisible)
	
	idclass = zp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback)
}

public client_impulse(id, impulse) 
{ 
	if(impulse == 201)
	{
		if(is_user_alive(id) && zp_get_user_zombie(id) && !zp_get_user_nemesis(id) && zp_get_user_zombie_class(id) == idclass)
		{
			cmd_invisible(id);
			return PLUGIN_HANDLED;
		}
	}
	return PLUGIN_CONTINUE;
}

public client_putinserver(id)
{
	reset_value_player(id)
}

public client_disconnect(id)
{
	reset_value_player(id)
}

public event_round_start()
{
	g_roundend = 0
	
	for (new id=1; id<=g_maxplayers; id++)
	{	
		reset_value_player(id)
	}
}

public logevent_round_end()
{
	g_roundend = 1
}

public Death()
{
	new victim = read_data(2) 
	reset_value_player(victim)
}

public EventCurWeapon(id)
{	
	if(g_invisible[id]) set_user_maxspeed(id, invisible_speed);
	
	return PLUGIN_CONTINUE;
}

public zp_user_infected_post(id)
{
	reset_value_player(id)
	
	if(is_user_alive(id) && zp_get_user_zombie(id) && !zp_get_user_nemesis(id) && zp_get_user_zombie_class(id) == idclass)
	{
		if(is_user_bot(id))
		{
			set_task(random_float(5.0,15.0), "bot_use_skill", id+TASK_BOT_USE_SKILL)
			return
		}
		//client_print(id, print_center,"You can hide in the fog in %d seconds.", invisible_timewait)
	}
}

public zp_user_humanized_post(id)
{
	reset_value_player(id)
}

public cmd_invisible(id)
{	
	if(is_user_alive(id) && zp_get_user_zombie(id) && !zp_get_user_nemesis(id) && zp_get_user_zombie_class(id) == idclass)

	if (zp_get_user_zombie_class(id) == idclass && !g_invisible[id] && !g_invisible_wait[id])
	{
		g_invisible[id] = 1
		
		set_wpnmodel(id)
		set_user_rendering(id,kRenderFxGlowShell,0,0,0,kRenderTransAlpha)
		set_user_footsteps(id, 1)
		set_user_maxspeed(id, invisible_speed)
		set_user_gravity(id, invisible_gravity)
		PlayEmitSound(id, zombie_sound_invisible)
		
		set_task(invisible_time, "RemoveInvisible", id+TASK_INVISIBLE)
		set_task(2.0, "InvisibleSound", id+TASK_INVISIBLE_SOUND, _, _, "b")
		
		return PLUGIN_HANDLED
	}
	if (g_roundend) return PLUGIN_CONTINUE
	return PLUGIN_CONTINUE
}

public bot_use_skill(taskid)
{
	new id = ID_BOT_USE_SKILL

	cmd_invisible(id)
	
	set_task(random_float(5.0,15.0), "bot_use_skill", id+TASK_BOT_USE_SKILL)
}

public InvisibleSound(taskid)
{
	new id = ID_INVISIBLE_SOUND
	
	if (g_invisible[id]) PlayEmitSound(id, zombie_sound_invisible)
	else remove_task(taskid)
}

public RemoveInvisible(taskid)
{
	new id = ID_INVISIBLE
	
	g_invisible[id] = 0
	
	set_wpnmodel(id)
	set_user_rendering(id)
	set_user_footsteps(id, 0)
	set_user_maxspeed(id, float(zclass_speed))
	set_user_gravity(id, zclass_gravity)
	
	g_invisible_wait[id] = 1
	
	set_task(invisible_timewait, "RemoveWaitInvisible", id+TASK_WAIT_INVISIBLE)
}

public RemoveWaitInvisible(taskid)
{
	new id = ID_WAIT_INVISIBLE
	
	g_invisible_wait[id] = 0
}

set_wpnmodel(id)
{	
	if (get_user_weapon(id) == CSW_KNIFE)
	{
		if (g_invisible[id])
		{
			set_pev(id, pev_viewmodel2, zclass_clawmodel_invi)
		}
		else
		{
			static temp[100]
			format(temp, charsmax(temp), "models/zombie_plague/%s", zclass_clawmodel)
			set_pev(id, pev_viewmodel2, temp)
		}
	}	
}

PlayEmitSound(id, const sound[])
{
	emit_sound(id, CHAN_VOICE, sound, 1.0, ATTN_NORM, 0, PITCH_NORM)
}

reset_value_player(id)
{
	g_invisible[id] = 0
	g_invisible_wait[id] = 0
	
	remove_task(id+TASK_INVISIBLE)
	remove_task(id+TASK_WAIT_INVISIBLE)
	remove_task(id+TASK_BOT_USE_SKILL)
}
__________________

Leul şi tigru sunt mai puternici ca lupul,dar lupul la circ nu participă.
Rainq is offline
DJEarthQuake
Veteran Member
Join Date: Jan 2014
Location: Astral planes
Old 03-26-2021 , 22:40   Re: ZM Class Sneaky Creature
Reply With Quote #2

zclass_clawmodel should be precached. Upload the models and wav please. Would love this plugin.
__________________
DJEarthQuake is offline
OciXCrom
Veteran Member
Join Date: Oct 2013
Location: Macedonia
Old 03-26-2021 , 22:48   Re: ZM Class Sneaky Creature
Reply With Quote #3

Pretty sure precaching is done automatically by ZP itself.
__________________

Last edited by OciXCrom; 03-26-2021 at 22:48.
OciXCrom is offline
Send a message via Skype™ to OciXCrom
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 14:29.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode