Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

[ROZWIĄZANE] Problem z Kompilacja Klasy DM


Najlepsza odpowiedź CsBoost , 14.01.2014 23:54

Znajdź:

diablo_create_explode(owner,fOrigin,55.0 + float(diablo_get_user_int(owner)),150.0,true);

zamień na:

diablo_create_explode(owner,fOrigin,55.0 + float(diablo_get_user_int(owner)),150.0,true, true);

Jeśli efekt będzie nie taki, jaki powinien być, to spróbujesz z tym:

diablo_create_explode(owner,fOrigin,55.0 + float(diablo_get_user_int(owner)),150.0,true, false);
Przejdź do postu


  • Zamknięty Temat jest zamknięty
2 odpowiedzi w tym temacie

#1 xWangan

    Zaawansowany

  • Użytkownik

Reputacja: 54
Pomocny

  • Postów:149
  • Lokalizacja:Polska
Offline

Napisano 14.01.2014 22:29

Witam, mój problem polega na tym, iż tylko gdy chcę skopmilować klasę diablomod core(Mag'a) wyskakuje mi błąd error 088: number of argument does not match. Występuje to zarówno przed, jak i po mojej edycji. Chciałbym was prosić abyście mi pomogli. Jeśli się nie mylę, błąd powoduje linijka 223
Tutaj daje wam sma*

/* Script generated by Pawn Studio */

#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fun>
#include <fakemeta>

#include <diablo_nowe.inc>

#define PLUGIN	"Diablo Mag"
#define AUTHOR	"DarkGL"
#define VERSION	"1.0"

#define MAX_FLASH 15

#define MAG_VIEW "models/diablomod/v_mag.mdl"

new flashlight[33]
new flashbattery[33]
new flashlight_r
new flashlight_g
new flashlight_b

new bool:bKlasa[33],bool:bFala[33];
new iFireball[33];

new pCvarCustom,pCvarDrain,pCvarCharge,pCvarRadius,pCvarDecay;

new msgFlashLight,msgFlashBat;

new sprite_beam,sprite_lgt;

new bool: speedOn[ 33 ];

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	diablo_register_class("Mag",95,"<br>Strzelajac z pistoletu zamrazasz wroga i zabierasz mu 5hp co 2 sek przez 15 sek.<br> Jezeli wlaczysz latarke i najedziesz na ninje robi sie widzialny <br><br>");
	
	pCvarCustom	=	register_cvar("flashlight_custom","1");
	pCvarDrain	=	register_cvar("flashlight_drain","1.0");
	pCvarCharge	=	register_cvar("flashlight_charge","0.5");
	pCvarRadius	=	register_cvar("flashlight_radius","8");
	pCvarDecay	=	register_cvar("flashlight_decay","90");
	
	msgFlashLight	=	get_user_msgid("Flashlight");
	msgFlashBat		=	get_user_msgid("FlashBat");
	
	
	register_event("Flashlight","eventFlashlight","b");
}

public plugin_precache(){
	precache_model(MAG_VIEW);
	sprite_beam 	=	precache_model("sprites/zbeam4.spr") 
	sprite_lgt	=	precache_model("sprites/lgtning.spr")
}

public diablo_damage_class_do( iVictim , iAttacker , &Float: fDamage , damageBits ){
	remove_task( iAttacker );
	set_user_maxspeed( iAttacker , 130.0 );
	speedOn[ iAttacker ]	=	false;
	set_task( 3.0 , "offSpeed" , iAttacker );
}

public offSpeed( id ){
	speedOn[ id ]	=	false;
	if( is_user_alive( id ) )	set_user_maxspeed( id , -1.0 );
}

public diablo_class_enabled(id){
	bKlasa[id] = true;
}

public diablo_class_disabled(id){
	bKlasa[id] = false;
}

public Float:diablo_cast_time(id,Float:standardTime){	
	return 4.0-(float(diablo_get_user_int(id))/30.0);
}

public diablo_cast_stop(id){
	if(is_user_alive(id) && get_user_weapon(id) == CSW_KNIFE && get_entity_flags(id) & FL_ONGROUND){
		return DIABLO_STOP;
	}
	return DIABLO_CONTINUE;
}

public diablo_cast_move(id){
	return DIABLO_CONTINUE;
}

public diablo_class_skill_used(id){
	if (bFala[id])
	{
		diablo_show_hudmsg( id, 2.0 , "Tego czaru mozesz uzyc raz na runde") 
		
		return PLUGIN_HANDLED
	}
	
	//Target nearest non-friendly player
	new target = UTIL_FindNearestOpponent(id,600+diablo_get_user_int(id))
	
	if (target == -1) return PLUGIN_HANDLED
	
	new FalaDamage = 100 + diablo_get_user_int(id)*2
	
	
	//Dagon damage done is reduced by the targets dextery
	FalaDamage -= diablo_get_user_dex(target);
	
	if (FalaDamage < 0)
		FalaDamage = 0
	
	new Hit[3]
	get_user_origin(target,Hit)

	//Create Lightning
	message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
	write_byte(1) // TE_BEAMENTPOINT
	write_short(id)
	write_coord(Hit[0])
	write_coord(Hit[1])
	write_coord(Hit[2])
	write_short(sprite_lgt)
	write_byte(0)
	write_byte(1)
	write_byte(3)
	write_byte(100) //WITD
	write_byte(60)
	write_byte(0)
	write_byte(0)
	write_byte(175)
	write_byte(200) //BRIGT
	write_byte(0)
	message_end() 
	
	bFala[id]	=	true;
	
	//Apply damage
	
	if( FalaDamage != 0 ){
		diablo_damage(target,id,float(FalaDamage),diabloDamageGrenade);
	}
	
	diablo_display_fade( target,2600,2600,0,255,0,0,15 )
	
	set_hudmessage ( 255, 0, 0, -1.0, 0.4 , 0, 1.0, 2.0, 0.1, 0.2, -1 ) 	
	show_hudmessage(id, "Zadales wrogowi %i", FalaDamage)
	
	return PLUGIN_HANDLED
}

public diablo_call_cast(id){
	set_hudmessage(60, 200, 25, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.2, 2)
	
	if(iFireball[id]>49)
	{
		show_hudmessage(id, "Wyczarowales juz %i fire ballow. Nie mozesz wiecej w tej rundzie",iFireball[id])
	}
	else
	{
		show_hudmessage(id, "Wyczarowales fireboll'a") 
		
		iFireball[id]++
		
		new Float:vOrigin[3]
		new fEntity
		entity_get_vector(id,EV_VEC_origin, vOrigin)
		fEntity = create_entity("info_target")
		entity_set_model(fEntity, "models/rpgrocket.mdl")
		entity_set_origin(fEntity, vOrigin)
		entity_set_int(fEntity,EV_INT_effects,64)
		entity_set_string(fEntity,EV_SZ_classname,"fireball")
		entity_set_int(fEntity, EV_INT_solid, SOLID_BBOX)
		entity_set_int(fEntity,EV_INT_movetype,5)
		entity_set_edict(fEntity,EV_ENT_owner,id)
		
		
		
		//Send forward
		new Float:fl_iNewVelocity[3]
		VelocityByAim(id, 500, fl_iNewVelocity)
		entity_set_vector(fEntity, EV_VEC_velocity, fl_iNewVelocity)
		
		
		message_begin(MSG_BROADCAST, SVC_TEMPENTITY) 
		write_byte(22) 
		write_short(fEntity) 
		write_short(sprite_beam) 
		write_byte(45) 
		write_byte(4) 
		write_byte(255) 
		write_byte(0) 
		write_byte(0) 
		write_byte(25)
		message_end() 
	}
}

public pfn_touch ( ptr, ptd )
{	
	if (ptd == 0)	return PLUGIN_CONTINUE
	
	new szClassName[64]
	
	if(pev_valid(ptd))	entity_get_string(ptd, EV_SZ_classname, szClassName, charsmax( szClassName) )
	else return PLUGIN_HANDLED;
	
	if(equal(szClassName, "fireball"))
	{
		new owner = pev(ptd,pev_owner)
		
		entity_get_string(ptr, EV_SZ_classname, szClassName, charsmax( szClassName) )
		
		if(equal(szClassName,"worldspawn") || is_user_alive(ptr) || (pev_valid(ptr) && pev(ptr,pev_solid) != SOLID_NOT && pev(ptr,pev_solid) != SOLID_TRIGGER)){
			new Float:fOrigin[3]
			pev(ptd,pev_origin,fOrigin)
			
			diablo_create_explode(owner,fOrigin,55.0 + float(diablo_get_user_int(owner)),150.0,true);
			
			remove_entity(ptd)
		}
	}
	
	return PLUGIN_CONTINUE
}

public diablo_weapon_deploy(id,wpnID,weaponEnt){
	if(bKlasa[id] && wpnID == CSW_KNIFE){
		entity_set_string(id, EV_SZ_viewmodel, MAG_VIEW) 
	}
}

public diablo_clean_data(id){
	iFireball[id]		=	0;
	flashbattery[id] 	=	MAX_FLASH;
	flashlight[id] 		=	0;
	bFala[id]		=	false;
	
	message_begin(MSG_ONE,msgFlashBat,{0,0,0},id);
	write_byte(flashbattery[id]);
	message_end();
	
	message_begin(MSG_ONE,msgFlashLight,{0,0,0},id);
	write_byte(flashlight[id]);
	write_byte(flashbattery[id]);
	message_end();
	
	remove_task(id);
}

public diablo_set_data(id){
	iFireball[id]		=	0;
	flashbattery[id] 	=	MAX_FLASH;
	flashlight[id] 		=	0;
	bFala[id]		=	false;
	
	message_begin(MSG_ONE,msgFlashBat,{0,0,0},id);
	write_byte(flashbattery[id]);
	message_end();
	
	message_begin(MSG_ONE,msgFlashLight,{0,0,0},id);
	write_byte(flashlight[id]);
	write_byte(flashbattery[id]);
	message_end();
	
	remove_task(id);
}

public diablo_class_spawned(id){
	iFireball[id]		=	0;
	flashbattery[id] 	=	MAX_FLASH;
	flashlight[id] 		=	0;
	bFala[id]		=	false;
	
	message_begin(MSG_ONE,msgFlashBat,{0,0,0},id);
	write_byte(flashbattery[id]);
	message_end();
	
	message_begin(MSG_ONE,msgFlashLight,{0,0,0},id);
	write_byte(flashlight[id]);
	write_byte(flashbattery[id]);
	message_end();
	
	remove_task(id);
}

public diablo_class_killed(id){
	iFireball[id]		=	0;
	flashbattery[id] 	=	MAX_FLASH;
	flashlight[id] 		=	0;
	
	message_begin(MSG_ONE,msgFlashBat,{0,0,0},id);
	write_byte(flashbattery[id]);
	message_end();
	
	message_begin(MSG_ONE,msgFlashLight,{0,0,0},id);
	write_byte(flashlight[id]);
	write_byte(flashbattery[id]);
	message_end();
	
	remove_task(id);
}

public eventFlashlight(id) {
	if(!get_pcvar_num(pCvarCustom) || !is_user_alive(id)) {
		return;
	}
	
	if(flashlight[id]) {
		flashlight[id] = 0;
	}
	else if(flashbattery[id] > 0){
		flashlight[id] = 1;
	}
	
	if(!task_exists(id)) {
		set_task((flashlight[id]) ? get_pcvar_float(pCvarDrain) : get_pcvar_float(pCvarCharge),"charge",id,.flags = "b");
	}
	
	message_begin(MSG_ONE,msgFlashLight,{0,0,0},id);
	write_byte(flashlight[id]);
	write_byte(flashbattery[id]);
	message_end();
	
	entity_set_int(id,EV_INT_effects,entity_get_int(id,EV_INT_effects) & ~EF_DIMLIGHT);
}

public charge(id){
	if(!get_pcvar_num(pCvarCustom) || !is_user_alive(id)) {
		remove_task(id);
		
		return;
	}
	
	if(flashlight[id]) {
		flashbattery[id] -= 1;
	}
	else {
		flashbattery[id] += 1;
	}
	
	message_begin(MSG_ONE,msgFlashBat,{0,0,0},id);
	write_byte(flashbattery[id]);
	message_end();
	
	if(flashbattery[id] <= 0) {
		remove_task(id);
		
		flashbattery[id] = 0;
		flashlight[id] = 0;
		
		message_begin(MSG_ONE,msgFlashLight,{0,0,0},id);
		write_byte(flashlight[id]);
		write_byte(flashbattery[id]);
		message_end();
	}
	else if(flashbattery[id] >= MAX_FLASH) {
		
		flashbattery[id] = MAX_FLASH
		
		remove_task(id);
	}
}

public diablo_preThink(id){
	if(!is_user_alive(id))	return PLUGIN_CONTINUE;
	
	if( speedOn[ id ] ) set_user_maxspeed( id , 130.0 );
	
	if (flashlight[id] && flashbattery[id] && get_pcvar_num(pCvarCustom)) {
		new num1, num2, num3
		num1=random_num(0,2)
		num2=random_num(-1,1)
		num3=random_num(-1,1)
		flashlight_r+=1+num1
		if (flashlight_r>250) flashlight_r-=245
		flashlight_g+=1+num2
		if (flashlight_g>250) flashlight_g-=245
		flashlight_b+=-1+num3
		if (flashlight_b<5) flashlight_b+=240		
		new origin[3];
		get_user_origin(id,origin,3);
		
		message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
		write_byte(27); // TE_DLIGHT
		write_coord(origin[0]); // X
		write_coord(origin[1]); // Y
		write_coord(origin[2]); // Z
		write_byte(get_pcvar_num(pCvarRadius)); // radius
		write_byte(flashlight_r); // R
		write_byte(flashlight_g); // G
		write_byte(flashlight_b); // B
		write_byte(1); // life
		write_byte(get_pcvar_num(pCvarDecay)); // decay rate
		message_end();
		
		new index1, bodypart1
		get_user_aiming(id,index1,bodypart1) 
		
		if (is_user_alive(index1) && get_user_team(id)!=get_user_team(index1) )
		{
			diablo_set_user_render(index1,kRenderFxGlowShell,flashlight_r,flashlight_g,flashlight_b,kRenderNormal,4,7.5);
			
			if(diablo_is_this_class(index1,"Ninja")){
				diablo_display_icon( index1 , 2 , "dmg_bio" , 255 , 0 , 0 )
				
				remove_task( index1 + 666 )
				
				set_task( 7.5 , "offIcon" , index1 + 666 )
			}
		}
	}
	
	return PLUGIN_CONTINUE;
}

public offIcon( id ){
	id	-=	666;
	
	if( is_user_connected( id ) ){
		diablo_display_icon( id , 0 , "dmg_bio" , 255 , 0 , 0 )
	}
}

public UTIL_FindNearestOpponent(id,maxdist)
{
	new best = 99999
	new entfound = -1
	new MyOrigin[3]
	get_user_origin(id,MyOrigin)
	
	for (new i=1; i < 33; i++)
	{
		if (i == id || !is_user_connected(i) || !is_user_alive(i) || get_user_team(id) == get_user_team(i) || fm_trace_line( id , id , i ) == i)
			continue
		
		new TempOrigin[3],Float:fTempOrigin[3]
		get_user_origin(i,TempOrigin)
		IVecFVec(TempOrigin,fTempOrigin)		
		
		new dist = get_distance ( MyOrigin,TempOrigin ) 
		
		if ( dist <= maxdist && dist < best)
		{
			best = dist
			entfound = i
		}		
	}
	
	return entfound
}

stock fm_trace_line(ignoreent, iStart, iEnd ){
	new Float: start[ 3 ] , Float: end[ 3 ];
	
	pev( iStart , pev_origin , start );
	pev( iEnd , pev_origin , end );
	
	engfunc(EngFunc_TraceLine, start, end, ignoreent == -1 ? 1 : 0, ignoreent, 0);

	new ent = get_tr2(0, TR_pHit);

	return pev_valid(ent) ? ent : 0;
}


  • +
  • -
  • 0

#2 CsBoost

    Życzliwy

  • Zbanowany

Reputacja: 9
Nowy

  • Postów:34
  • Lokalizacja:Polska
Offline

Napisano 14.01.2014 23:54   Najlepsza odpowiedź

Znajdź:

diablo_create_explode(owner,fOrigin,55.0 + float(diablo_get_user_int(owner)),150.0,true);

zamień na:

diablo_create_explode(owner,fOrigin,55.0 + float(diablo_get_user_int(owner)),150.0,true, true);

Jeśli efekt będzie nie taki, jaki powinien być, to spróbujesz z tym:

diablo_create_explode(owner,fOrigin,55.0 + float(diablo_get_user_int(owner)),150.0,true, false);


#3 k4x4z5

    Wszechwidzący

  • Użytkownik

Reputacja: 84
Zaawansowany

  • Postów:257
  • Imię:Marcin
  • Lokalizacja:zDaleka
Offline

Napisano 15.01.2014 16:20

http://amxx.pl/kompilator/

mi normalnie dziala kompilacja


  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych