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
 

Zawartość użytkownika Gacekk

Odnotowano 16 pozycji dodanych przez Gacekk (Rezultat wyszukiwania ograniczony do daty: 20.06.2023 )


Sortuj według                Sortuj  

#687268 Przerobienie pluginu z HLDS 5787 na HLDS 6027+

Napisano przez Gacekk w 09.02.2015 19:55 w Problemy z pluginami

Ref.



#686237 Przerobienie pluginu z HLDS 5787 na HLDS 6027+

Napisano przez Gacekk w 03.02.2015 20:09 w Problemy z pluginami

ref.




#685255 Przerobienie pluginu z HLDS 5787 na HLDS 6027+

Napisano przez Gacekk w 28.01.2015 15:39 w Problemy z pluginami

Witam mam mały problem z jednym pluginem otóż działa na starym silniku HLDS 5787 (Metamod-P 1.21p37, Amx Mod X 1.8.1 (stary), Dproto 0.9.322)

Natomiast na nowszym HLDS 6027+ (Metamod 1.20-am, Amx Mod X 1.8.2 2013, Dproto 0.9.322) nie działa w ogóle proszę o pomoc w przerobieniu tego pluginu tak żeby działał na nowym silniku.

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <xs>
#include <cstrike>

#define PLUGIN	"sprite ESP"
#define AUTHOR	"DarkGL"
#define VERSION	"1.0"

const maxPlayers	=	32;

const Float: spriteDistance = 10.0;

new const spriteEnemy[]		=	"sprites/esp_enemy.spr";
new const spriteFriend[]	=	"sprites/esp_friend.spr";

new spriteEnemyIndex		=	0;
new spriteFriendIndex		=	0;

new const espClassName[]	=	"esp_info";

new temporarySprites[ maxPlayers + 1 ];

new bool:espON[ maxPlayers + 1 ];

public plugin_init(){
	
	register_plugin(PLUGIN, VERSION, AUTHOR);
	
	register_clcmd( "say /esp" , "espONOFF" );
	
	for( new iCurrent = 1 ; iCurrent <= maxPlayers ; iCurrent++ ){
		temporarySprites[ iCurrent ]	=	createSprite( iCurrent );
	}
	
	register_forward( FM_AddToFullPack , "addToFullPack" , 1 );
	
	register_forward( FM_CheckVisibility , "checkVisibility" );
}

public plugin_precache(){
	spriteEnemyIndex	=	precache_model( spriteEnemy );
	spriteFriendIndex	=	precache_model( spriteFriend );
}

public client_connect( id ){
	espON[ id ] = false;
}

public checkVisibility(id,pset){
	if( !pev_valid( id ) ){
		return FMRES_IGNORED;
	}
	
	new szClass[ 64 ];
	
	pev( id , pev_classname , szClass , charsmax( szClass ) );
	
	if( !equal( szClass , espClassName ) ){
		return FMRES_IGNORED;
	}
	
	forward_return(FMV_CELL,1)
	return FMRES_SUPERCEDE
}

public addToFullPack( es_state, e, ENT, HOST, hostflags, player, set){
	if( player || !is_user_alive( HOST ) ){
		return FMRES_IGNORED;
	}
	
	if( !pev_valid( ENT ) ){
		return FMRES_IGNORED;
	}
	
	new iOwner	=	pev( ENT , pev_owner );
	
	if( !is_user_alive( iOwner ) || !espON[ HOST ] || temporarySprites[ pev( ENT , pev_owner ) ] != ENT || iOwner == HOST ){
		return FMRES_IGNORED;
	}
	
	new Float: startPosition[ 3 ],
		Float: endPosition[ 3 ],
		Float: fEnd[ 3 ],
		Float: fVector[ 3 ],
		Float: fEndPosition[ 3 ],
		Float: endVector[ 3 ],
		Float: fLenNew,
		Float: fLenOld;
	
	calculateStartPosition( HOST , startPosition );
	calculateEndPosition( iOwner , endPosition );
	calculateVector( endPosition , startPosition , fVector );
	
	traceLine( startPosition , endPosition , fEnd , HOST );
	
	movePosition( fEnd , fVector , fEndPosition );
	
	calculateEndVector( startPosition , fEndPosition , endVector );
	
	fLenNew	=	xs_vec_len( endVector );
	fLenOld	=	xs_vec_len( fVector );
	
	set_es( es_state , ES_Origin , fEndPosition );
	set_es( es_state , ES_ModelIndex , isFriend( HOST , iOwner ) ? spriteFriendIndex : spriteEnemyIndex );
	set_es( es_state , ES_Scale ,  fLenNew / fLenOld );
	
	set_es( es_state, ES_RenderAmt , 255.0 );
	
	return FMRES_HANDLED;
}

public espONOFF( id ){
	if( !( get_user_flags( id ) & ADMIN_BAN ) ){
		return PLUGIN_HANDLED;
	}
	
	espON[ id ]	=	!espON[ id ];
	
	return PLUGIN_HANDLED;
}

createSprite( iOwner ){
	new iEnt	=	engfunc( EngFunc_CreateNamedEntity , engfunc( EngFunc_AllocString , "info_target" ) );
	
	if( !pev_valid( iEnt ) ){
		return 0;
	}
	
	set_pev( iEnt , pev_classname , espClassName );
	
	engfunc( EngFunc_SetSize , iEnt , Float:{ -1.0 , -1.0 , -1.0 } , Float:{ 1.0 , 1.0 , 1.0 } );
	engfunc( EngFunc_SetOrigin , iEnt , Float:{ 306.0 , 2434.0 , -91.0 } );
	
	engfunc( EngFunc_SetModel , iEnt , spriteEnemy );
	
	set_pev( iEnt, pev_renderfx, kRenderFxNone );
	set_pev( iEnt, pev_rendercolor, Float:{ 255.0 , 255.0 , 255.0 } );
	set_pev( iEnt, pev_rendermode, kRenderTransAlpha );
	set_pev( iEnt, pev_renderamt, 0.0 );
	
	set_pev( iEnt , pev_solid , SOLID_NOT );
	set_pev( iEnt , pev_movetype , MOVETYPE_NONE );
	
	set_pev( iEnt, pev_owner , iOwner );
	
	dllfunc(DLLFunc_Spawn, iEnt )
	
	return iEnt;
}

calculateStartPosition( id , Float: startPosition[ 3 ] ){
	new Float: fOrigin[ 3 ],
		Float: fView[ 3 ];
		
	pev( id , pev_origin , fOrigin );
	pev( id , pev_view_ofs , fView );
	
	xs_vec_add( fOrigin , fView , startPosition );
}

calculateEndPosition( id , Float: endPosition[ 3 ]  ){
	pev( id , pev_origin , endPosition );
}

traceLine( Float:startPosition[ 3 ] , Float:endPosition[ 3 ] , Float:fEnd[ 3 ] , idSkip ){
	new pTR	=	create_tr2();
	
	engfunc( EngFunc_TraceLine , startPosition , endPosition , IGNORE_MONSTERS , idSkip , pTR );
	
	get_tr2( pTR , TR_vecEndPos , fEnd );
	
	free_tr2( pTR );
}

calculateVector( Float:startPosition[ 3 ] , Float:endPosition[ 3 ] , Float:fVector[ 3 ] ){
	xs_vec_sub( endPosition , startPosition , fVector );
}

movePosition( Float: fPosition[ 3 ] , Float: fVector[ 3 ] , Float: fEndPosition[ 3 ] ){
	
	new Float: fVectorCopy[ 3 ];
	
	xs_vec_copy( fVector , fVectorCopy );
	
	xs_vec_normalize( fVectorCopy , fVectorCopy );
	
	xs_vec_mul_scalar( fVectorCopy , spriteDistance , fVectorCopy );
	
	xs_vec_add( fPosition , fVectorCopy , fEndPosition );
}

calculateEndVector( Float: startPosition[ 3 ] , Float: fEnd[ 3 ] , Float: fEndVector[ 3 ] ){
	xs_vec_sub( fEnd, startPosition , fEndVector );
}

bool: isFriend( idUser , idUser2 ){
	return cs_get_user_team( idUser ) == cs_get_user_team( idUser2 );
}

Załączone pliki




#674756 [ROZWIĄZANE] spawnprotection error set_user_godmode

Napisano przez Gacekk w 12.12.2014 16:16 w Problemy z pluginami

nie moge edytować więc proszę o połączenie postów

 

Droso leci + dla ciebie temat można zamknąć



#674438 [ROZWIĄZANE] spawnprotection error set_user_godmode

Napisano przez Gacekk w 09.12.2014 20:07 w Problemy z pluginami

Droso to co podałeś będzie działało bez errorów? czy to tylko jest z poprawą tej literówki?

 




#674426 [ROZWIĄZANE] spawnprotection error set_user_godmode

Napisano przez Gacekk w 09.12.2014 18:30 w Problemy z pluginami

Witam, prosił bym o pomoc z ciągłymi errorami sma pluginu:

 

Spoiler

 

 

 

errory :

L 12/09/2014 - 12:07:23: [AMXX] Displaying debug trace (plugin "spawn_protection_pl2.amxx")
L 12/09/2014 - 12:07:23: [AMXX] Run time error 10: native error (native "set_user_godmode")
L 12/09/2014 - 12:07:23: [AMXX]    [0] spawn_protection_pl2.sma::player_damage (line 202)
L 12/09/2014 - 12:07:37: [FUN] Player out of range (70)

Bardzo bym prosił o rade jak pozbyć się errorów

Załączone pliki




#640555 doładowywanie portfela w sklepie by ghost

Napisano przez Gacekk w 27.05.2014 21:17 w Pytania

jeśli sobie poradziłeś może udostępnisz na forum dla wszystkich?




#639827 doładowywanie portfela w sklepie by ghost

Napisano przez Gacekk w 22.05.2014 22:06 w Pytania

@up

 

Koledze chodziło o płatność dotpay przelewem a nie smsem.




#636368 [ROZWIĄZANE] Run time error 4: index out of bounds (jak naprawić)

Napisano przez Gacekk w 03.05.2014 16:19 w Problemy

Dziala wszystko ok mozna zamknac



#636218 [ROZWIĄZANE] Run time error 4: index out of bounds (jak naprawić)

Napisano przez Gacekk w 02.05.2014 23:44 w Problemy

ok zaraz sprawdze jak to sie spisuje




#636184 [ROZWIĄZANE] Run time error 4: index out of bounds (jak naprawić)

Napisano przez Gacekk w 02.05.2014 21:55 w Problemy

rozumiem że liczba 32 odpowiada za liczbe slotów na serwerze ?




#636175 [ROZWIĄZANE] Run time error 4: index out of bounds (jak naprawić)

Napisano przez Gacekk w 02.05.2014 21:36 w Problemy

ok super już sprawdzam




#635516 [ROZWIĄZANE] Run time error 4: index out of bounds (jak naprawić)

Napisano przez Gacekk w 29.04.2014 18:11 w Problemy

na tej klasie działa lecz nie wiem jak naprawić np. tą klase:

errory:

L 04/29/2014 - 15:07:24: [AMXX] Displaying debug trace (plugin "codawans_destroyer.amxx")
L 04/29/2014 - 15:07:24: [AMXX] Run time error 4: index out of bounds 
L 04/29/2014 - 15:07:24: [AMXX]    [0] codawans_destroyer.sma::Death (line 55)

SMA:

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <codmod>
#include <colorchat>
#include <engine>
#include <amxmisc>
#include <fakemeta>

#define DMG_BULLET (1<<1)

new bool:ma_klase[33];

new const nazwa[] = "Destroyer (100 lvl TNT)";
new const opis[] = "Wybuchasz po smierci zadajac zabijajac wrogow, 1/5 na oslepienie wroga, podwojny skok";
new const bronie = 1<<CSW_AUG | 1<<CSW_USP | 1<<CSW_HEGRENADE | 1<<CSW_FLASHBANG | 1<<CSW_SMOKEGRENADE;
new const zdrowie = 0;
new const kondycja = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new sprite_blast, sprite_white;
new g_msg_screenfade;
new bool:moze_skoczyc[33];

public plugin_init() 
{
	register_plugin(nazwa, "1.0", "QTM_Peyote");
	
	cod_register_advance(cod_get_classid("TNT (50 lvl Demolitions)"), 100, nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
	register_event("DeathMsg", "Death", "ade");
	register_event("Damage", "Damage", "b", "2!=0");
	register_forward(FM_CmdStart, "CmdStart");
	g_msg_screenfade = get_user_msgid("ScreenFade");
}

public plugin_precache()
{
	sprite_white = precache_model("sprites/white.spr") ;
	sprite_blast = precache_model("sprites/dexplo.spr");
}

public cod_class_enabled(id)
{
	ColorChat(id, GREEN, "");
	ma_klase[id] = true;
	return COD_CONTINUE;
}
	
public cod_class_disabled(id)
	ma_klase[id] = false;

public Death()
{ 
	new id = read_data(2);
	if(ma_klase[id])
		Eksploduj(id);
}

public Eksploduj(id)
{
	new Float:fOrigin[3], iOrigin[3];
	entity_get_vector( id, EV_VEC_origin, fOrigin);
	iOrigin[0] = floatround(fOrigin[0]);
	iOrigin[1] = floatround(fOrigin[1]);
	iOrigin[2] = floatround(fOrigin[2]);
	
	message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
	write_byte(TE_EXPLOSION);
	write_coord(iOrigin[0]);
	write_coord(iOrigin[1]);
	write_coord(iOrigin[2]);
	write_short(sprite_blast);
	write_byte(32);
	write_byte(20);
	write_byte(0);
	message_end();
	
	message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
	write_byte( TE_BEAMCYLINDER );
	write_coord( iOrigin[0] );
	write_coord( iOrigin[1] );
	write_coord( iOrigin[2] );
	write_coord( iOrigin[0] );
	write_coord( iOrigin[1] + 300 );
	write_coord( iOrigin[2] + 300 );
	write_short( sprite_white );
	write_byte( 0 ); // startframe
	write_byte( 0 ); // framerate
	write_byte( 10 ); // life
	write_byte( 10 ); // width
	write_byte( 255 ); // noise
	write_byte( 255 ); // r, g, b
	write_byte( 100 );// r, g, b
	write_byte( 100 ); // r, g, b
	write_byte( 128 ); // brightness
	write_byte( 8 ); // speed
	message_end();
	
	new entlist[33];
	new numfound = find_sphere_class(id, "player", 300.0 , entlist, 32);
	
	for (new i=0; i < numfound; i++)
	{		
		new pid = entlist[i];
		
		if (!is_user_alive(pid) || get_user_team(id) == get_user_team(pid))
			continue;
		cod_inflict_damage(id, pid, 90.0, 0.7);
	}
	return PLUGIN_CONTINUE;
}

public Damage(id)

{

    new attacker = get_user_attacker(id);

    

    if(!is_user_alive(attacker) || !is_user_connected(attacker) || id == attacker)

        return PLUGIN_CONTINUE;

    

    if(ma_klase[attacker] && random(5) == 1)

        Display_Fade(id,1<<14,1<<14 ,1<<16,255,155,50,230);

    

    return PLUGIN_CONTINUE;

}

stock Display_Fade(id,duration,holdtime,fadetype,red,green,blue,alpha)

{

    message_begin( MSG_ONE, g_msg_screenfade,{0,0,0},id );

    write_short( duration );    // Duration of fadeout

    write_short( holdtime );    // Hold time of color

    write_short( fadetype );    // Fade type

    write_byte ( red );        // Red

    write_byte ( green );        // Green

    write_byte ( blue );        // Blue

    write_byte ( alpha );    // Alpha

    message_end();

}

public CmdStart(id, uc_handle)

{

if(!ma_klase[id])

return FMRES_IGNORED;

 

new button = get_uc(uc_handle, UC_Buttons);

new oldbutton = pev(id, pev_oldbuttons);

new flags = pev(id, pev_flags);

if((button & IN_JUMP) && !(flags & FL_ONGROUND) && !(oldbutton & IN_JUMP) && moze_skoczyc[id])

{

moze_skoczyc[id] = false;

new Float:velocity[3];

pev(id, pev_velocity, velocity);

velocity[2] = random_float(265.0,285.0);

set_pev(id, pev_velocity, velocity);

}

else if(flags & FL_ONGROUND)

moze_skoczyc[id] = true;

 

return FMRES_IGNORED;

}




#635425 [ROZWIĄZANE] Run time error 4: index out of bounds (jak naprawić)

Napisano przez Gacekk w 28.04.2014 21:52 w Problemy

czyli żeby nie było tego błedu powiedzmy na tej klasie musze naprawić DeathMsg w każdej klasie? dobrze rozumiem ?

 

Czy jak zmienie to tylko w tej klasie to poprostu error przestanie sie pojawiać w tej klasie.

 

Edit.

 

Jutro dam znać czy pomogło bo errory nie wyskakują cały czas.




#635417 [ROZWIĄZANE] Run time error 4: index out of bounds (jak naprawić)

Napisano przez Gacekk w 28.04.2014 20:53 w Problemy

ok zaraz sprawdze czy pomoże

 

Edit.

 

Zastanawia mnie tylko że te errory występują nie grając tą klasa




#635406 [ROZWIĄZANE] Run time error 4: index out of bounds (jak naprawić)

Napisano przez Gacekk w 28.04.2014 20:05 w Problemy

Witam w wielu klasach wywala mi errory :

L 04/28/2014 - 17:42:43: [AMXX] Displaying debug trace (plugin "codclass_gacek.amxx")
L 04/28/2014 - 17:42:43: [AMXX] Run time error 4: index out of bounds 
L 04/28/2014 - 17:42:43: [AMXX]    [0] codclass_gacek.sma::DeathMsg (line 89)

Nie potrafie tego naprawić sma jednej z wielu klas z tym errorem:

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <codmod>
#include <fakemeta>
#include <hamsandwich>

new const nazwa[] = "Gacek (Klasa Premium)";
new const opis[] = "20 hp oraz pelen magazynak za kazde zabojstwo, Posiada eliminator rozrzutu";
new const bronie = 1<<CSW_M4A1 | 1<<CSW_AK47;
new const zdrowie = 30;
new const kondycja = 38;
new const inteligencja = 10;
new const wytrzymalosc = 20;

new bool:ma_klase[33];

new bool:moze_skoczyc[33];

new const maxClip[31] = { -1, 13, -1, 10,  1,  7,  1,  30, 30,  1,  30,  20,  25, 30, 35, 25,  12,  20, 
10,  30, 100,  8, 30,  30, 20,  2,  7, 30, 30, -1,  50 };

public plugin_init() {
	register_plugin(nazwa, "1.0", "QTM_Peyote");
	
	cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
	
	register_forward(FM_PlayerPreThink, "PreThink");
	register_forward(FM_UpdateClientData, "UpdateClientData", 1)
	register_forward(FM_CmdStart, "CmdStart");
	register_event("DeathMsg", "DeathMsg", "ade");
}

public cod_class_enabled(id)
{
	if(!(get_user_flags(id) & ADMIN_LEVEL_F))
	{
		client_print(id, print_chat, "[Gacek] Nie masz uprawnien, aby uzywac tej klasy.")
		return COD_STOP;
	}
	ma_klase[id] = true;
	return COD_CONTINUE;
}

public PreThink(id)
{
	if(ma_klase[id])
		set_pev(id, pev_punchangle, {0.0,0.0,0.0})
}
public UpdateClientData(id, sw, cd_handle)
{
	if(ma_klase[id])
		set_cd(cd_handle, CD_PunchAngle, {0.0,0.0,0.0})   
}

public cod_class_disabled(id)
	ma_klase[id] = false;

public CmdStart(id, uc_handle)
{
	if(!ma_klase[id])
		return FMRES_IGNORED;
	
	new button = get_uc(uc_handle, UC_Buttons);
	new oldbutton = pev(id, pev_oldbuttons);
	new flags = pev(id, pev_flags);
	if((button & IN_JUMP) && !(flags & FL_ONGROUND) && !(oldbutton & IN_JUMP) && moze_skoczyc[id])
	{
		moze_skoczyc[id] = false;
		new Float:velocity[3];
		pev(id, pev_velocity, velocity);
		velocity[2] = random_float(265.0,285.0);
		set_pev(id, pev_velocity, velocity);
	}
	else if(flags & FL_ONGROUND)	
		moze_skoczyc[id] = true;
		
	return FMRES_IGNORED;
}

public DeathMsg()
{
	new killer = read_data(1);
	new victim = read_data(2);
	
	if(!is_user_connected(killer))
		return PLUGIN_CONTINUE;
	
	if(ma_klase[victim] && !ma_klase[killer])
		cod_set_user_xp(killer, cod_get_user_xp(killer)+10);
	
	if(ma_klase[killer])
	{
		new cur_health = pev(killer, pev_health);
		new Float:max_health = 100.0+cod_get_user_health(killer);
		new Float:new_health = cur_health+20.0<max_health? cur_health+20.0: max_health;
		set_pev(killer, pev_health, new_health);
		
		new weapon = get_user_weapon(killer);
		if(maxClip[weapon] != -1)
			set_user_clip(killer, maxClip[weapon]);
	}
	
	
	return PLUGIN_CONTINUE;
}

stock set_user_clip(id, ammo)
{
	new weaponname[32], weaponid = -1, weapon = get_user_weapon(id, _, _);
	get_weaponname(weapon, weaponname, 31);
	while ((weaponid = engfunc(EngFunc_FindEntityByString, weaponid, "classname", weaponname)) != 0)
		if (pev(weaponid, pev_owner) == id) {
		set_pdata_int(weaponid, 51, ammo, 4);
		return weaponid;
	}
	return 0;
}

Kto powie jak naprawić ten problem w klasach.