View Single Post
d33nis
New Member
Join Date: Apr 2012
Location: Iasi
Old 02-14-2013 , 11:32   Re: Biohazard v2.00 Beta 3b (Zombie Mod)
Reply With Quote #3927

Who can help me please?
Code:
#include <amxmodx>
#include <biohazard>
#include <bh_classes>
#include <fakemeta>
#include <hamsandwich>
#include <cstrike>

#define MSG_CANTJOIN "Trebuie sa fii un zombie mort!"
#define MSG_GAMENOTSTARTED "Jocul nu a inceput inca."
#define MSG_NOPLACE "Sunt prea multi zombie vii."
#define MSG_ABUSE "Tu nu poti fi spawnat acum."
#define MSG_ANNONCE "Scrie in chat /zspawn pentru a reinvia ca zombie!"
#define MSG_CHOOSETEAM "Tu trebuie sa iti alegi echipa inainte de spawnare."
#define MSG_WAIT "Mai ai de asteptat %d secunde pentru /zspawn !"
#define MSG_SPAWN "Ai fost spawnat ca zombie."
#define OFFSET_TEAM 		114
#define TASK_ID 9914

new SayText, cvar_zspawn, cvar_cooldown
new g_firstime[33]
new Float:g_nextzspawn[33]



new  cvar_zspawnmode

public plugin_init() {         
	register_plugin("bio_zspawn","1.2","bipbip")
	is_biomod_active() ? plugin_init2() : pause("ad")
}

public plugin_init2() {
	cvar_zspawn = register_cvar("bh_zspawn", "1")
	cvar_cooldown = register_cvar("bh_spawn_cooldown", "0.0")
	cvar_zspawnmode = register_cvar("bh_zspawnmode","1")
	SayText = get_user_msgid("SayText");
	register_clcmd("say /zspawn","myspawn")
	register_clcmd("say_team /zspawn", "myspawn")
	register_clcmd("say zspawn","myspawn")
	register_clcmd("say_team zspawn", "myspawn")
	register_clcmd("say /spawn", "myspawn")
	register_clcmd("say spawn", "myspawn")
	register_clcmd("say_team /spawn","myspawn")
	register_clcmd("say_team spawn", "myspawn")

	RegisterHam(Ham_Killed, "player", "cheese_killed",1)
	RegisterHam(Ham_Spawn,"player", "cheese_spawn_post", 1)
}


public client_connect(id) {
	g_firstime[id] = 1;

}
public client_disconnect(id) {
	g_firstime[id] = 1;

}

public client_putinserver(id) {
	set_task(1.0,"task_putinserver",id)
	
}
public cheese_killed(id) {

	if (!is_user_zombie(id))
		return HAM_IGNORED
	
	if (get_pcvar_num(cvar_zspawnmode) == 1 && g_firstime[id]==0) {
		if (task_exists(id+TASK_ID)) remove_task(id+TASK_ID)
		set_task(5.0,"task_annonce",id+TASK_ID)
		g_firstime[id] = 1
	}
	
	if (get_pcvar_float(cvar_cooldown) > 0.0) {
		g_nextzspawn[id] = get_gametime() + get_pcvar_float(cvar_cooldown)
	}
	
	return HAM_IGNORED
}
public task_putinserver(id) {
	
	if (is_user_connected(id)) {
		g_firstime[id] = 1
		set_task(5.0,"task_annonce",id+TASK_ID)
	}
}
public cheese_spawn_post(id) {

	if (!is_user_zombie(id))
		return HAM_IGNORED
	
	g_firstime[id] = 0
	
	return HAM_IGNORED
}
public task_annonce(tid) if (get_pcvar_num(cvar_zspawn)) {
	new id = tid - TASK_ID
	if (g_firstime[id] == 1 && !is_user_bot(id) && is_user_connected(id)) {
		static CsTeams: team
		team = cs_get_user_team(id)
		if (team != CS_TEAM_SPECTATOR && team != CS_TEAM_UNASSIGNED) 
			if (is_game_started() && !is_user_alive(id) && get_gametime() > g_nextzspawn[id]) 
				green_print(id, MSG_ANNONCE)
		set_task(10.0,"task_annonce",id+TASK_ID)
	}
}

public myspawn(id) if (get_pcvar_num(cvar_zspawn)) {
	if (canjoin(id)) {
		ExecuteHam(Ham_CS_RoundRespawn, id)
		infect_user_force(id)
		green_print(id, MSG_SPAWN)
		set_task(1.0,"task_infect",id)
	}
}
public task_infect(id) {
	static CsTeams: team
	team = cs_get_user_team(id)
	if (team != CS_TEAM_T)
		cs_set_user_team2(id,CS_TEAM_T,1)
	if (!is_bioclasses_active()) client_cmd(id,"slot10")
}

bool: canjoin(id) {
	if (is_user_alive(id)) 	{
		green_print(id, MSG_CANTJOIN)
		return false
	}
	static CsTeams: team
	team = cs_get_user_team(id)
	
	if (team == CS_TEAM_SPECTATOR || team == CS_TEAM_UNASSIGNED) {
		green_print(id, MSG_CHOOSETEAM)
		return false
	}
	
	if (!is_game_started())	{
		green_print(id, MSG_GAMENOTSTARTED)
		return false
	}
	if (g_firstime[id]==0) {
		green_print(id, MSG_ABUSE)
		return false
	}
	if (get_pcvar_num(cvar_zspawnmode) == 1 && get_gametime() < g_nextzspawn[id]) {
		new msg[128], Float:time_remain = (g_nextzspawn[id] - get_gametime()) 
		formatex(msg, 127, MSG_WAIT, floatround(time_remain))
		green_print(id, msg)
		return false
	}
	return true;
}
stock cs_set_user_team2(index, {CsTeams,_}:team, update = 1)
{
	set_pdata_int(index, OFFSET_TEAM, _:team)
	set_pev(index, pev_team, _:team)

	if(update)
	{
		static _msg_teaminfo; if(!_msg_teaminfo) _msg_teaminfo = get_user_msgid("TeamInfo")
		static teaminfo[][] = { "UNASSIGNED", "TERRORIST", "CT", "SPECTATOR" }
		
		message_begin(MSG_ALL, _msg_teaminfo)
		write_byte(index)
		write_string(teaminfo[_:team])
		message_end()
	}
	return 1
}
stock green_print(index, const message[])
{
	new finalmsg[192];
	formatex(finalmsg, 191, "^x04[Zm.GamesZone.Ro] ^x01%s", message);
	message_begin(MSG_ONE, SayText, _, index);
	write_byte(index);
	write_string(finalmsg);
	message_end();
}
But .... see the attachment.
Solutions?
Attached Thumbnails
Click image for larger version

Name:	error.JPG
Views:	314
Size:	73.5 KB
ID:	115937  
d33nis is offline