CCI Problem

New Member
Joined
Dec 16, 2009
Messages
1
Best answers
0
How do I add a custom attack to model made the CCI?
Sorry for my bad english, but I polish
 
Former Forcepit Member :(
✔️ HL Verified
💻 Oldtimer
Joined
Aug 21, 2006
Messages
1,717
Best answers
0
Location
korriban
this is what your mod.weapon should look like using ravens gohans mod weapon as example
Code:
#define MOD_WEAPON_DBG 0

// >> ARG_BYTE		int
// >> ARG_CHAR		int
// >> ARG_SHORT		int
// >> ARG_LONG		int
// >> ARG_ANGLE		float
// >> ARG_COORD		float
// >> ARG_STRING	string
// >> ARG_ENTITY	int



stock SPR_SHINE;		// Shine

stock SPR_YELLOW_S;		// Yellow Beam Head
stock SPR_YELLOW_T;		// Yellow Beam Trail

stock SPR_BLUE_S;		// Blue Beam Head
stock SPR_BLUE_T;		// Blue Beam Head

stock SPR_KAME_S;		// Kamehameha Beam Head
stock SPR_KAME_E;		// Kamehameha Beam End
stock SPR_KAME_T;		// Kamehameha Beam Trail


stock MOD_Weapon_PreCache ()
{
	SPR_SHINE = precache_model( "sprites/ecx.shine.spr" );

	SPR_YELLOW_S = precache_model( "sprites/w_gb_y_s.spr" );
	SPR_YELLOW_T = precache_model( "sprites/w_gb_y_t.spr" );

	SPR_BLUE_S = precache_model( "sprites/w_gb_b_s.spr" );
	SPR_BLUE_T = precache_model( "sprites/w_gb_b_t.spr" );

	SPR_KAME_S = precache_model( "sprites/w_kamehameha_s.spr" );
	SPR_KAME_E = precache_model( "sprites/w_kamehameha_e.spr" );
	SPR_KAME_T = precache_model( "sprites/w_kamehameha_t.spr" );


}


public @BaseWeaponCreation ( Client, BaseWeapon, const Name[] )
{


	if ( equal( Name, "weapon_finalflash" ) )
	{
		setBeamChargeTime( BaseWeapon, 40 );
		setBeamChargeKi( BaseWeapon, 20 );
		//setBeamSpeed( BaseWeapon, 3000 );
	}
}


public @WeaponAdjust ( Client, Weapon, const Class[] )
{
	/**
	 0 - Blue
	 1 - Green
	 2 - Orange
	 3 - Purple
	 4 - Yellow
	 5 - Red
	 6 - White
	 7 - None
	**/

	if ( equal( Class, "greenattack" ) && getClientLEVEL(Client) >= 1 )
		setWeaponXPC( 4 );

	else if ( equal( Class, "greenattack" ) )
		setWeaponXPC( 0 );

	else if ( equal( Class, "finalflash" ) )
	{
		setWeaponXPC( 0 );
		// Super Kamehameha
		setWeaponDMG( 20.0, 240.0, 0.04 );
	}



}

public @WeaponBeam ( Client, Weapon, const Class[], Size )
{
	/**
	 1 -  LONG - Client ???				- do not edit
	 2 -  LONG - Weapon					- do not edit
	 3 -  BYTE - Client ???				- do not edit
	 4 - SHORT - Head Start A
	 5 - SHORT - Head Start B
	 6 - SHORT - Head End A
	 7 - SHORT - Head End B
	 8 - SHORT - Trail
	 9 -  BYTE - Size
	10 -  BYTE - Segement Length ???
	11 - COORD - X						- do not edit
	12 - COORD - Y						- do not edit
	13 - COORD - Z						- do not edit
	**/

	if ( equal( Class, "greenattack" ) && getClientLEVEL(Client) >= 1 )
	{
		set_msg_arg_int( 4, ARG_SHORT, SPR_SHINE );
		set_msg_arg_int( 5, ARG_SHORT, SPR_YELLOW_S );
		set_msg_arg_int( 6, ARG_SHORT, SPR_YELLOW_S );
		set_msg_arg_int( 7, ARG_SHORT, SPR_YELLOW_S );
		set_msg_arg_int( 8, ARG_SHORT, SPR_YELLOW_T );

		//set_msg_arg_int( 9, ARG_BYTE, 12 );
	}

	else if ( equal( Class, "greenattack" ) )
	{
		set_msg_arg_int( 4, ARG_SHORT, SPR_SHINE );
		set_msg_arg_int( 5, ARG_SHORT, SPR_BLUE_S );
		set_msg_arg_int( 6, ARG_SHORT, SPR_BLUE_S );
		set_msg_arg_int( 7, ARG_SHORT, SPR_BLUE_S );
		set_msg_arg_int( 8, ARG_SHORT, SPR_BLUE_T );

		//set_msg_arg_int( 9, ARG_BYTE, 12 );
	}

	else if ( equal( Class, "kamehameha" ) )
	{
		set_msg_arg_int( 4, ARG_SHORT, SPR_SHINE );
		set_msg_arg_int( 5, ARG_SHORT, SPR_KAME_S );
		set_msg_arg_int( 6, ARG_SHORT, SPR_KAME_E );
		set_msg_arg_int( 7, ARG_SHORT, SPR_KAME_E );
		set_msg_arg_int( 8, ARG_SHORT, SPR_KAME_T );

		//set_msg_arg_int( 9, ARG_BYTE, 15 );
	}

	else if ( equal( Class, "powerbeam" ) )
	{
		set_msg_arg_int( 4, ARG_SHORT, SPR_SHINE );
		set_msg_arg_int( 5, ARG_SHORT, SPR_YELLOW_S );
		set_msg_arg_int( 6, ARG_SHORT, SPR_YELLOW_S );
		set_msg_arg_int( 7, ARG_SHORT, SPR_YELLOW_S );
		set_msg_arg_int( 8, ARG_SHORT, SPR_YELLOW_T );

		//set_msg_arg_int( 9, ARG_BYTE, 15 );
	}

}

public @WeaponBlast ( Client, Weapon, const Class[], Size )
{
	/**
	 1 -  LONG - Entity  - do not edit
	 2 - SHORT - Head A
	 3 - SHORT - Head B
	 4 - SHORT - Size
	 5 - SHORT - Trail A
	 6 - SHORT - Trail B
	 7 - COORD - X		- do not edit
	 8 - COORD - Y		- do not edit
	 9 - COORD - Z		- do not edit
	**/

	if ( equal( Class, "greenattack" ) && getClientLEVEL( Client ) > 0 )
	{
		set_msg_arg_int( 2, ARG_SHORT, SPR_YELLOW_S );
		set_msg_arg_int( 3, ARG_SHORT, SPR_YELLOW_S );
		set_msg_arg_int( 5, ARG_SHORT, SPR_YELLOW_T );
		set_msg_arg_int( 6, ARG_SHORT, SPR_YELLOW_T );
	}

	else if ( equal( Class, "greenattack" ))
	{
		set_msg_arg_int( 2, ARG_SHORT, SPR_BLUE_S );
		set_msg_arg_int( 3, ARG_SHORT, SPR_BLUE_S );
		set_msg_arg_int( 5, ARG_SHORT, SPR_BLUE_T );
		set_msg_arg_int( 6, ARG_SHORT, SPR_BLUE_T );
	}
}

public @WeaponDeath ( Client, Killer, const Weapon[] )
{
	/**
	 1 -   BYTE - Killer - do not edit
	 2 -   BYTE - Client - do not edit
	 3 - STRING - Weapon
	**/

	if ( equal( Weapon, "greenattack" ) && getClientLEVEL( Killer ) == 0 )
		set_msg_arg_string( 3, "blueattack" );
	else if ( equal( Weapon, "greenattack" ) )
		set_msg_arg_string( 3, "yellowattack" );

}
 

Users who are viewing this thread

Top Bottom