Adaugare zombie class

Discutii legate de instalarea, configurarea si modificarea unui server de Counter-Strike.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Post Reply
maneamarian1
Membru, skill 0
Membru, skill 0
Posts: 11
Joined: 20 Oct 2022, 08:56
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Discord: #0128

20 Oct 2022, 11:25

Salut! As avea si eu o problema cu servarul meu de zm in care nu inteleg de ce nu merge sa instalez clasa smoker si nu numai , adica sa pun pe un server zm default alte clase incat cand apas /class sa pot alege acel zombie.
Imi puteti spune ca la prosti fiecare pas facut ? de exemplu : https://forums.alliedmods.net/showthrea ... 09?t=90309
RoyalServer
User avatar
kidd0x
Utilizator neserios (tepar)
Utilizator neserios (tepar)
Posts: 1054
Joined: 06 Oct 2018, 14:41
Detinator Steam: Da
SteamID: /id/kidd0x/
Reputatie: Utilizator neserios (tepar!)
Fond eXtream: 0
Location: Constangeles
Discord: kidd0x
Has thanked: 172 times
Been thanked: 81 times

20 Oct 2022, 11:28

Inlocuiesti nativele din clasa cu cele de la modul tau
maneamarian1
Membru, skill 0
Membru, skill 0
Posts: 11
Joined: 20 Oct 2022, 08:56
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Discord: #0128

22 Oct 2022, 15:14

Pur si simplu nu merge imi arata asta in consola:
[AMXX] Invalid Plugin (plugin "zp_zclass_smoker.amxx")
[AMXX] Invalid Plugin (plugin "zp_extra_drag_ability.amxx")

[ 26] unknown unknown unknown zp_zclass_smoke bad load
[ 27] unknown unknown unknown zp_extra_drag_a bad load

am si modificat la clase :

[Trage]
DESC=Trage
PMODEL=models/player/zombie_smoker/zombie_smoker.mdl Aici am modificat orice posibilitate
PMODEL=models/player/zombie_smoker/zombie_smokerT.mdl
WMODEL=models/barnacle/v_bgrap.mdl
WMODEL=models/barnacle/p_bgrap.mdl
HEALTH=170.0
SPEED=280.0
GRAVITY=1.0
ATTACK=2.0
DEFENCE=0.087
HEDEFENCE=1.0
HITSPEED=0.89
HITDELAY=0.28
REGENDLY=0.18
HITREGENDLY=2.0
KNOCKBAC
maneamarian1
Membru, skill 0
Membru, skill 0
Posts: 11
Joined: 20 Oct 2022, 08:56
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Discord: #0128

22 Oct 2022, 16:07

Creca fac eu ceva gresit ca nu numai la asta
User avatar
Rainq
Membru, skill +2
Membru, skill +2
Posts: 681
Joined: 21 Jul 2015, 19:50
Detinator Steam: Da
CS Status: Retras
Detinator server CS: zm.extreamcs.com
SteamID: mrainq
Reputatie: Fost super moderator
Fost detinator ZM.eXtreamCS.COM
Fost Membru Club eXtreamCS (trei luni)
Fond eXtream: 0
Location: Bucharest
Discord: manuraiders
Has thanked: 29 times
Been thanked: 51 times
Contact:

01 Nov 2022, 12:13

Folosești biohazard sau plague ?
Image
maneamarian1
Membru, skill 0
Membru, skill 0
Posts: 11
Joined: 20 Oct 2022, 08:56
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Discord: #0128

12 Nov 2022, 18:12

Foloseam biohazard , mi.a explicat Ionut
User avatar
levin
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 3844
Joined: 24 Aug 2011, 12:24
Detinator Steam: Da
CS Status:
Detinator server CS: ☯∴
SteamID: riseofevo
Reputatie: Scripter eXtreamCS
Nume anterior: Adryyy
Location: ҳ̸Ҳ̸ҳ
Discord: devilclass
Has thanked: 36 times
Been thanked: 594 times
Contact:

13 Nov 2022, 00:44

trebuie configurată pentru modul respectiv, adaugi include biohazard, scoți tot ce ține de alt mod de zm și vezi în bio inc cum înregistrezi clasa
uite un ex

Code: Select all

#include <amxmodx>
#include <fakemeta_util>
#include <biohazard>
#include <engine>
#include <fun>

#define D_ZOMBIE_NAME "\wBoomer\r(\yExplode\r)"
#define D_ZOMBIE_DESC "= Boomer = Explode after die"
#define D_PLAYER_MODEL "models/player/bio9_boomer/bio9_boomer.mdl"
#define D_CLAWS "models/bio9/v_claws_boomer.mdl"

#define PLUGIN  "Class: boomer"
#define AUTHOR  "MaHu"
#define VERSION "0.1"

new g_maxplayers,spr_smoke_steam1,cvar_max_damage,cvar_damage_radius,mdl_gib_legbone,
mdl_gib_flesh,mdl_gib_meat,mdl_gib_head,spr_blood_drop,spr_blood_spray
new bool:lamuerteexplosiva[33] = false
new g_sndExplode[] = "weapons/c4_explode1.wav"
new spr_zerogxplode
new gmsgDeathMsg,gmsgScoreInfo,mdl_gib_lung,mdl_gib_spine
new g_class_boomer
new victim
public plugin_init()
{
	register_event("DeathMsg", "boomer_death", "a")
	cvar_max_damage = register_cvar("bh_bomer_maxdmg","200")
	cvar_damage_radius = register_cvar("bh_bomer_raius","250")
	g_maxplayers = get_maxplayers() 
	gmsgDeathMsg = get_user_msgid("DeathMsg")
	gmsgScoreInfo = get_user_msgid("ScoreInfo")
        register_plugin(PLUGIN, VERSION, AUTHOR)
	register_event("ResetHUD", "newSpawn", "be")
        
     g_class_boomer = register_class(D_ZOMBIE_NAME, D_ZOMBIE_DESC)

	if(g_class_boomer != -1)
	{
		set_class_data(g_class_boomer, DATA_HEALTH, 350.0)
		set_class_data(g_class_boomer, DATA_SPEED, 260.0)
		set_class_data(g_class_boomer, DATA_GRAVITY, 0.5)
		set_class_data(g_class_boomer, DATA_REGENDLY, 999.0)
		set_class_data(g_class_boomer, DATA_DEFENCE, 0.5)
		set_class_pmodel(g_class_boomer, D_PLAYER_MODEL)
		set_class_wmodel(g_class_boomer, D_CLAWS)
	}
}
public plugin_precache() 
{   
	precache_model(D_PLAYER_MODEL)
	precache_model(D_CLAWS)
	mdl_gib_lung = precache_model("models/GIB_Lung.mdl")
	mdl_gib_meat = precache_model("models/GIB_B_Gib.mdl")
	mdl_gib_head = precache_model("models/GIB_Skull.mdl")
	mdl_gib_flesh = precache_model("models/Fleshgibs.mdl")
	mdl_gib_spine = precache_model("models/GIB_B_Bone.mdl")
	mdl_gib_legbone = precache_model("models/GIB_Legbone.mdl")
	precache_sound("weapons/mortarhit.wav")
	spr_blood_drop = precache_model("sprites/blood.spr")
	spr_blood_spray = precache_model("sprites/bloodspray.spr")
	spr_zerogxplode = precache_model("sprites/zerogxplode.spr")
	spr_smoke_steam1 = precache_model("sprites/steam1.spr")
	precache_sound(g_sndExplode) 
	spr_zerogxplode = precache_model("sprites/zerogxplode.spr")
	precache_model("models/w_egon.mdl")
} 
public event_infect(victim, attacker){
        if(get_user_class(victim) == g_class_boomer){
        lamuerteexplosiva[victim] = true
        client_print(victim, print_chat, "[Biohazard] Explode after die!") 
}
}
public newSpawn(id)
{
    if(get_user_class(victim) == g_class_boomer){
        lamuerteexplosiva[victim] = true
}
if (!is_user_zombie(id)){
    lamuerteexplosiva[id] = false
}
}
public boomer_death() { 
	new attacker = read_data(1)
	new victim = read_data(2)
	if(lamuerteexplosiva[victim]) { 
		static victim_name[33]
		static attacker_name[33]
		get_user_name(victim, victim_name, sizeof victim_name -1)
		get_user_name(attacker, attacker_name, sizeof attacker_name -1)
		new Float:origin[3], origin2[3]
		entity_get_vector(victim,EV_VEC_origin,origin)
		origin2[0] = floatround(origin[0])
		origin2[1] = floatround(origin[1])
		origin2[2] = floatround(origin[2]) 
		for (new id2; id2 <= g_maxplayers; id2++)
        {
            if(get_user_class(id2) == g_class_boomer)
            {  
				emit_sound(victim, CHAN_WEAPON, "weapons/mortarhit.wav", 1.0, 0.5, 0, PITCH_NORM)
				emit_sound(victim, CHAN_VOICE, "weapons/mortarhit.wav", 1.0, 0.5, 0, PITCH_NORM) 
				
				for (new e = 1; e < 8; e++) {
					// Random Explosion 8 Times
					message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
					write_byte(TE_SPRITE)
					write_coord(origin2[0] + random_num(-60,60))
					write_coord(origin2[1] + random_num(-60,60))
					write_coord(origin2[2] +128)
					write_short(spr_zerogxplode)
					write_byte(random_num(30,65))
					write_byte(255)
					message_end()
					
				}

				for (new e = 1; e < 3; e++) {
					// Random Smoke 3 Times
					message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
					write_byte(TE_SMOKE)
					write_coord(origin2[0])
					write_coord(origin2[1])
					write_coord(origin2[2] + 256)
					write_short(spr_smoke_steam1)
					write_byte(random_num(80,150))
					write_byte(random_num(5,10))
					message_end()
				}
				
				// Create the burn decal
				message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
				write_byte(TE_GUNSHOTDECAL)
				write_coord(origin2[0])
				write_coord(origin2[1])
				write_coord(origin2[2])
				write_short(0)			
				write_byte(random_num(46,48))  // decal
				message_end()

				new Max_Damage = get_pcvar_num(cvar_max_damage)
				new Damage_Radius = get_pcvar_num(cvar_damage_radius)  
				new PlayerPos[3], Distance, Damage
				for (new i = 1; i < 32; i++) {
					if (is_user_alive(i) == 1) {
						get_user_origin(i, PlayerPos)
						Distance = get_distance(PlayerPos, origin2)
						if (Distance <= Damage_Radius) {  // Screenshake Radius
							
							message_begin(MSG_ONE, get_user_msgid("ScreenShake"), {0,0,0}, i)  // Shake Screen
							write_short(1<<14)
							write_short(1<<14)
							write_short(1<<14)
							message_end()

							Damage = Max_Damage - floatround(floatmul(float(Max_Damage), floatdiv(float(Distance), float(Damage_Radius))))
							do_victim(i,victim,Damage,0)
						}
						
					}
					
				}
			}
		}
		lamuerteexplosiva[victim] = false
	}
}
public do_victim (victim,attacker,Damage,team_kill) {

	new namek[32],namev[32],authida[35],authidv[35],teama[32],teamv[32]

	get_user_name(victim,namev,31)
	get_user_name(attacker,namek,31)
	get_user_authid(victim,authidv,34)
	get_user_authid(attacker,authida,34)
	get_user_team(victim,teamv,31)
	get_user_team(attacker,teama,31)

	if(Damage >= get_user_health(victim)) {

		if(get_cvar_num("mp_logdetail") == 3) {
			
			log_message("^"%s<%d><%s><%s>^" attacked ^"%s<%d><%s><%s>^" with ^"bomber^" (hit ^"chest^") (Damage ^"%d^") (health ^"0^")",
			namek,get_user_userid(attacker),authida,teama,namev,get_user_userid(victim),authidv,teamv,Damage)
		
		}

		client_print(attacker,print_chat,"[Left4dead] You killed %s with that bomber",namev)
		client_print(victim,print_chat,"[Left4dead] You were killed by %s's bomber",namek)

		if(team_kill == 0) {
			
			set_user_frags(attacker,get_user_frags(attacker) + 1 )
		
		}
		
		set_msg_block(gmsgDeathMsg,BLOCK_ONCE)
		set_msg_block(gmsgScoreInfo,BLOCK_ONCE)

		user_kill(victim,1)

		replace_dm(attacker,victim,0)

		log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"bomber^"",
		namek,get_user_userid(attacker),authida,teama,namev,get_user_userid(victim),authidv,teamv)

		if (Damage > 100) {
									
			new iOrigin[3]
			get_user_origin(victim,iOrigin)
			set_user_rendering(victim,kRenderFxNone,0,0,0,kRenderTransAlpha,0)
			fx_gib_explode(iOrigin,3)
			fx_blood_large(iOrigin,5)
			fx_blood_small(iOrigin,15)
			iOrigin[2] = iOrigin[2] - 20
			set_user_origin(victim,iOrigin)

		}
		
	}

	else {
		set_user_health(victim,get_user_health(victim) - Damage )

		if(get_cvar_num("mp_logdetail") == 3) {
			
			log_message("^"%s<%d><%s><%s>^" attacked ^"%s<%d><%s><%s>^" with ^"bomber^" (hit ^"chest^") (Damage ^"%d^") (health ^"%d^")",
			namek,get_user_userid(attacker),authida,teama,namev,get_user_userid(victim),authidv,teamv,Damage,get_user_health(victim))
		
		}

		client_print(attacker,print_chat,"[Left4dead] You hurt %s with that bomber",namev)
		client_print(victim,print_chat,"[Left4dead] You were hurt by %s's bomber",namek)

	}
	
}

public client_disconnect(id) 
{
    lamuerteexplosiva[id] = false
}  

public client_putinserver(id) 
{
    lamuerteexplosiva[id] = false
}  

public replace_dm (id,tid,tbody) {

	//Update killers scorboard with new info
	message_begin(MSG_ALL,gmsgScoreInfo)
	write_byte(id)
	write_short(get_user_frags(id))
	write_short(get_user_deaths(id))
	write_short(0)
	write_short(get_user_team(id))
	message_end()

	//Update victims scoreboard with correct info
	message_begin(MSG_ALL,gmsgScoreInfo)
	write_byte(tid)
	write_short(get_user_frags(tid))
	write_short(get_user_deaths(tid))
	write_short(0)
	write_short(get_user_team(tid))
	message_end()

	//Headshot Kill
	if (tbody == 1) {

		message_begin( MSG_ALL, gmsgDeathMsg,{0,0,0},0)
		write_byte(id)
		write_byte(tid)
		write_string(" missile")
		message_end()
		
	}

	//Normal Kill
	else {
		
		message_begin( MSG_ALL, gmsgDeathMsg,{0,0,0},0)
		write_byte(id)
		write_byte(tid)
		write_byte(0)
		write_string("missile")
		message_end()
		
	}

	return PLUGIN_CONTINUE
	
}
static fx_blood_small (origin[3],num) {
	
	// Small splash
	for (new j = 0; j < num; j++) {
		
		message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
		write_byte(TE_WORLDDECAL)
		write_coord(origin[0]+random_num(-100,100))
		write_coord(origin[1]+random_num(-100,100))
		write_coord(origin[2]-36)
		
		write_byte(random_num(190,197)) // Blood decals

		message_end()
		
	}
	
}

static fx_blood_large (origin[3],num) {
	
	// Large splash
	for (new i = 0; i < num; i++) {
		
		message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
		write_byte(TE_WORLDDECAL)
		write_coord(origin[0] + random_num(-50,50))
		write_coord(origin[1] + random_num(-50,50))
		write_coord(origin[2]-36)

		write_byte(random_num(204,205)) // Blood decals
		
		message_end()
		
	}
	
}

static fx_gib_explode (origin[3],num) {
	
	new flesh[3], x, y, z
	flesh[0] = mdl_gib_flesh
	flesh[1] = mdl_gib_meat
	flesh[2] = mdl_gib_legbone
	
	// Gib explosion
	// Head
	message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
	write_byte(TE_MODEL)
	write_coord(origin[0])
	write_coord(origin[1])
	write_coord(origin[2])
	write_coord(random_num(-100,100))
	write_coord(random_num(-100,100))
	write_coord(random_num(100,200))
	write_angle(random_num(0,360))
	write_short(mdl_gib_head)
	write_byte(0)
	write_byte(500)
	message_end()
	
	// Spine
	message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
	write_byte(TE_MODEL)
	write_coord(origin[0])
	write_coord(origin[1])
	write_coord(origin[2])
	write_coord(random_num(-100,100))
	write_coord(random_num(-100,100))
	write_coord(random_num(100,200))
	write_angle(random_num(0,360))
	write_short(mdl_gib_spine)
	write_byte(0)
	write_byte(500)
	message_end()
	
	// Lung
	for(new i = 0; i < random_num(1,2); i++) {
		
		message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
		write_byte(TE_MODEL)
		write_coord(origin[0])
		write_coord(origin[1])
		write_coord(origin[2])
		write_coord(random_num(-100,100))
		write_coord(random_num(-100,100))
		write_coord(random_num(100,200))
		write_angle(random_num(0,360))
		write_short(mdl_gib_lung)
		write_byte(0)
		write_byte(500)
		message_end()
		
	}
	
	// Parts, 5 times
	for(new i = 0; i < 5; i++) {
		
		message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
		write_byte(TE_MODEL)
		write_coord(origin[0])
		write_coord(origin[1])
		write_coord(origin[2])
		write_coord(random_num(-100,100))
		write_coord(random_num(-100,100))
		write_coord(random_num(100,200))
		write_angle(random_num(0,360))
		write_short(flesh[random_num(0,2)])
		write_byte(0)
		write_byte(500)
		message_end()
		
	}
	
	// Blood
	for(new i = 0; i < num; i++) {
		
		x = random_num(-100,100)
		y = random_num(-100,100)
		z = random_num(0,100)
		
		for(new j = 0; j < 5; j++) {
			
			message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
			write_byte(TE_BLOODSPRITE)
			write_coord(origin[0]+(x*j))
			write_coord(origin[1]+(y*j))
			write_coord(origin[2]+(z*j))
			write_short(spr_blood_spray)
			write_short(spr_blood_drop)
			write_byte(248)
			write_byte(15)
			message_end()
			
		}
		
	}
	
}
Pentru ajutor, faceți cerere bine detaliată, completând și respectând modelul corespunzător.
Nu-mi mai dați cereri doar pentru a mă avea în lista de prieteni.
Dacă te ajut, și mă ignori/etc > te adaug în „foe”.
Aveți grijă la cei ce încearcă să mă copieze sau să dea drept mine..Puteți lua legătura cu mine prin STEAM dacă aveți o problemă/nelămurire în acest caz! Cont de forum am doar aici.
În cazul în care utilizați ceva din ce am postat(ex: aici), e bine să fiți la curent cu modificările aduse și de aici, iar dacă sunt ceva probleme nu ezitați să luați legătura cu mine. Actualizarea unor coduri nu se vor afișa public, doar dacă se găsește ceva critic/urgent de remediat, unele fiind coduri vechi iar unele refăcute chiar recent dar private.
* Nume pe cs1.6: eVoLuTiOn \ Nume vechi: eVo
* Atelierul meu - post2819572.html#p2819572 (închis, click link ca să vedeți de ce)
maneamarian1
Membru, skill 0
Membru, skill 0
Posts: 11
Joined: 20 Oct 2022, 08:56
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Discord: #0128

13 Nov 2022, 05:46

Imi da erori mereu .... ma poti ajuta tu te rog la 1-2 clase de zombie?
User avatar
A k c 3 n 7
Super moderator
Super moderator
Posts: 5138
Joined: 25 Aug 2014, 21:31
Detinator Steam: Da
CS Status: who dares wins
SteamID: Jandarmeria
Reputatie: Super moderator
Moderatorul anului 2023
Fost Membru Club eXtreamCS ( o luna )
Fost eXtream Mod
Fost Intermediar
Nume anterior: Sorinel
Fond eXtream: 0
Location: Unknown
Discord: remusakcent
Has thanked: 4 times
Been thanked: 46 times

13 Nov 2022, 19:38

uitate in acest addon, ai si clasa smoker acolo topic329483.html?hilit=biohazard%203.2
Post Reply

Return to “Probleme la servere dedicate de Counter-Strike”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 102 guests