Cerere coduri

Tutoriale scripting, cod si portiuni de cod.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Post Reply
User avatar
Kam
Membru, skill +1
Membru, skill +1
Posts: 305
Joined: 07 Nov 2014, 22:13
Detinator Steam: Da
Detinator server CS: Da
Fond eXtream: 0
Has thanked: 1 time

08 Mar 2016, 15:18

Vreau si eu codurile pentru:
multi-jump
sa dea bani pe kill
sa apari ca vip in tab score.
Vreau sa le pun intr-un plugin VIP
RoyalServer
User avatar
Challenger.
Fost moderator
Fost moderator
Posts: 2530
Joined: 07 Dec 2014, 14:32
Detinator Steam: Da
Reputatie: Fost Super Moderator
Nume anterior: whisTle
Puncte: 1.7 / 3
Fond eXtream: 0
Contact:

08 Mar 2016, 15:43

Multi-Jump | Afiseaza codul
#include < amxmodx >
#include < amxmisc >
#include < engine >

#define FLAG_VIP "t"

new jumpnum[33] = 0
new bool:dojump[33] = false
new cvar_vip_jumps


public plugin_init()
{
	register_plugin("MultiJump", "1.0", "twistedeuphoria")
	cvar_vip_jumps = register_cvar("vip_max_jumps", "1")
}

public client_PreThink(id)
{
	if(!is_user_alive(id))
	{
		return PLUGIN_HANDLED;
	}

	new nbut = get_user_button(id)
	new obut = get_user_oldbutton(id)
	
	if((nbut & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(obut & IN_JUMP))
	{
		if(get_user_flags(id) & read_flags(FLAG_VIP))
		{
			if(jumpnum[id] < get_pcvar_num(cvar_vip_jumps))
			{
				dojump[id] = true
				jumpnum[id]++
				return PLUGIN_CONTINUE;
			}
		}
	}
	
	if((nbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
	{
		jumpnum[id] = 0
		return PLUGIN_CONTINUE;
	}
	
	return PLUGIN_CONTINUE;
}

public client_PostThink(id)
{
	if(!is_user_alive(id))
	{
		return PLUGIN_CONTINUE;
	}
	
	if(get_user_flags(id) & read_flags(FLAG_VIP))
	{
		if(dojump[id] == true)
		{
			new Float:velocity[3]
			entity_get_vector(id,EV_VEC_velocity, velocity)
			velocity[2] = random_float(265.0,285.0)
			entity_set_vector(id,EV_VEC_velocity, velocity)
			dojump[id] = false
			return PLUGIN_CONTINUE;
		}
	}
	
	return PLUGIN_CONTINUE;
}
Vip în tabscore | Afiseaza codul
#include < amxmodx >

#define PLUGIN_NAME ""
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "falseq"

const TASK_ID = 12323;

#define FLAG_VIP "t"

public plugin_init( )
{
	register_plugin( PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR );
	
	register_event( "ResetHUD", "ev_ResetHud", "be" );
}

public ev_ResetHud( id )
{
	set_task( 0.1, "addviptab", id + TASK_ID );
}

public addviptab( taskid )
{
	new i_Index = taskid - TASK_ID;
	
	if( get_user_flags( i_Index ) & read_flags(FLAG_VIP))
	{
		message_begin( MSG_ALL, get_user_msgid( "ScoreAttrib" ) );
		
		write_byte( i_Index );
		write_byte( 4 );
		
		message_end( );
	}
}
Money per Kill | Afiseaza codul
#include < amxmodx >
#include < cstrike >

#define PLUGIN "Money per Kill/HS"
#define VERSION "1.0"
#define AUTHOR "Mihai Creanga :troll"

#define FLAG_VIP "t"

new money_hs, money_kill;

public plugin_init ( ) {
	
	register_plugin ( PLUGIN, VERSION, AUTHOR );
	register_event( "DeathMsg", "event_DeathMsg", "a" );
	
	money_hs	= 	register_cvar("hs_money","600");
	money_kill	= 	register_cvar("kill_money","400");
}

public event_DeathMsg(  ) 
{
	new iAttacker = read_data( 1 );
	new iVictim = read_data( 2 );
	new iHeadshot = read_data( 3 );
	
	new MoneyOnHeadShot = get_pcvar_num( money_hs );
	new MoneyOnKill = get_pcvar_num( money_kill );
	
	if( iAttacker == iVictim )
		return 0;
	
	if( ( iAttacker ) && iAttacker != iVictim )
	{
		if(get_user_flags( iAttacker ) & read_flags("FLAG_VIP"))
		{
			if( iHeadshot ) 
			{
				cs_set_user_money( iAttacker, cs_get_user_money( iAttacker ) + MoneyOnHeadShot );
			}
			else
			{
				cs_set_user_money( iAttacker, cs_get_user_money( iAttacker ) + MoneyOnKill );
			}
		}
	}
	return 0;
}
NU sunt intermediar.

Dacă ai nevoie de ajutor pe forum dă-mi un PM şi rezolvăm.

REGULAMENT FORUM

RECLAMAȚII MODERATORI

RECLAMAȚII PM
Activitate scăzută
User avatar
Kam
Membru, skill +1
Membru, skill +1
Posts: 305
Joined: 07 Nov 2014, 22:13
Detinator Steam: Da
Detinator server CS: Da
Fond eXtream: 0
Has thanked: 1 time

08 Mar 2016, 16:09

Mersi bossule, o problema, toti playerii au VIP , as vrea sa aibe vip doar cei din vips.ini
Am adaugat stocku si publicu de verificare, dar nu merge.
Si daca ai putea sa fixezi problemele care mai sunt prin plugin.

Code: Select all

// ======================== VERSIUNE BETA ========================
// ======================== VERSIUNE BETA ========================

// Prima versiune: Aparitia plugin-ului
// A 2-a versiune: Adaugare multi-jump ** Bani pe Kill ** VIP in TAB Score.
// A 3-a versiune: A fost adaugata comanda /vips ** A fost adaugat mesaj conectare/deconectare VIP
// Fixed /vips

// CREDITE :
// zRefresh & Devil aKa. StefaN@CSX pentru cateva coduri
// HamletEagle, postare cod pentru adaugarea vipilor in vips.ini

// ======================== VERSIUNE BETA ========================
// ======================== VERSIUNE BETA ========================
#include < amxmodx >
#include < amxmisc >
#include < engine >
#include < cstrike >
#include <colorchat>

#define PLUGIN_NAME "VIP"
#define PLUGIN_VERSION "1.3a BETA"
#define PLUGIN_AUTHOR "Kam"

new const g_szFileName [ ] = "vips.ini"
new g_szFile[ 128 ] ;


new Trie: g_tVipList

new bool: g_bIsVip[ 33 ]
new bool:is_user_vip[33] = false;

new jumpnum[33] = 0
new bool:dojump[33] = false
new cvar_vip_jumps
new cvar_conectare
new cvar_tag
new cvar_vip_showC
new money_hs, money_kill;
new vips[256][32];
new iValidLines;

const TASK_ID = 12323;

public plugin_precache( )
{
   g_tVipList = TrieCreate( )
}

public plugin_init()
{
	register_plugin("MultiJump", "1.0", "twistedeuphoria")
	cvar_vip_jumps = register_cvar("vip_max_jumps", "1")
	register_plugin( PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR );
	register_event( "ResetHUD", "ev_ResetHud", "be" );
	register_event( "DeathMsg", "event_DeathMsg", "a" );
	
	register_clcmd("say", "handle_say");
	register_clcmd("say_team", "handle_say");
	
	cvar_conectare = register_cvar("amx_conectare", "1");
	cvar_tag = register_cvar("amx_vip_tag", "VIP");
	cvar_vip_showC = register_cvar("amx_vip_show_chat", "1");
	
	money_hs	= 	register_cvar("hs_money","1000");
	money_kill	= 	register_cvar("kill_money","500");
	
}

public client_disconnect( id )
{
	set_task(2.0, "out", id);

	jumpnum[id] = 0;
	dojump[id] = false;

	{
   new szName[ 32 ]; get_user_name( id, szName, charsmax( szName ) )
   if( TrieKeyExists( g_tVipList, szName ) )
   {
      g_bIsVip[ id ] = true
   }
   }
}

public client_connect(id)
{
	if (Check_Is_User_On_List(id))
	{
		is_user_vip[id] = true;
	
	}
	else
	{
		is_user_vip[id] = false;
	}

}
public client_PreThink(id)
{
	if(!is_user_alive(id))
	{
		return PLUGIN_HANDLED;
	}

	new nbut = get_user_button(id)
	new obut = get_user_oldbutton(id)
	
	if((nbut & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(obut & IN_JUMP))
	{
		{
			if(jumpnum[id] < get_pcvar_num(cvar_vip_jumps))
			{
				dojump[id] = true
				jumpnum[id]++
				return PLUGIN_CONTINUE;
			}
		}
	}
	
	if((nbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
	{
		jumpnum[id] = 0
		return PLUGIN_CONTINUE;
	}
	
	return PLUGIN_CONTINUE;
}

public client_PostThink(id)
{
	if(!is_user_alive(id))
	{
		return PLUGIN_CONTINUE;
	}
	
	{
		if(dojump[id] == true)
		{
			new Float:velocity[3]
			entity_get_vector(id,EV_VEC_velocity, velocity)
			velocity[2] = random_float(265.0,285.0)
			entity_set_vector(id,EV_VEC_velocity, velocity)
			dojump[id] = false
			return PLUGIN_CONTINUE;
		}
	}
	
	return PLUGIN_CONTINUE;
}

public ev_ResetHud( id )
{
	set_task( 0.1, "addviptab", id + TASK_ID );
}

public in(id) 	
{
	if(get_pcvar_num(cvar_conectare))
	{
		new tag[32], name[32];

		get_pcvar_string(cvar_tag, tag, charsmax(tag)); 
		get_user_name(id, name, charsmax(name)); 
 
		{ 
			ColorChat(0, GREEN, "^3[%s] ^1VIP: ^4%s ^1s-a conectat.", tag, name); 
		}
		return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
}

public out(id) 	
{	
	if(get_pcvar_num(cvar_conectare))
	{
		new tag[32], name[32];

		get_pcvar_string(cvar_tag, tag, charsmax(tag)); 
		get_user_name(id, name, charsmax(name)); 

		{ 
			ColorChat(0, GREEN, "^3[%s] ^1VIP: ^4%s ^1s-a deconectat.", tag, name); 
		}
		return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
}



public handle_say(id) 
{
	new said[192];
	read_args(said,192);
	if(contain(said, "/vips") != -1)
	set_task(0.1,"print_adminlist",id);
	return PLUGIN_CONTINUE;
}

public print_adminlist(user) 
{
	if(get_pcvar_num(cvar_vip_showC))
	{
		new tag[32];
		get_pcvar_string(cvar_tag, tag, charsmax(tag));
	
		new adminnames[33][32];
		new message[256];
		new id, count, x, len;

		for(id = 1 ; id <= get_maxplayers() ; id++)
			if(is_user_connected(id))
					get_user_name(id, adminnames[count++], charsmax(adminnames[ ]));
    
		len = format(message, 255, "^3[%s] ^1VIPS online:^4 " ,tag);
		if(count > 0) 
			{
			for(x = 0 ; x < count ; x++) 
				{
				len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"");
				if(len > 96) 
				{
					print_message(user, message);
					len = format(message, 255, " ");
				}
				}
			print_message(user, message);
			}
		else 
		{
			ColorChat(0, GREEN, "^3[%s] ^1Nu sunt ^4VIPI^1 online.", tag);
		} 
	}
	return PLUGIN_CONTINUE;  
}

print_message(id, msg[]) 
{
	message_begin(MSG_ONE, get_user_msgid("SayText"), {0,0,0}, id);
	write_byte(id);
	write_string(msg);
	message_end();
}


public addviptab( taskid )
{
	new i_Index = taskid - TASK_ID;
	
	{
		message_begin( MSG_ALL, get_user_msgid( "ScoreAttrib" ) );
		
		write_byte( i_Index );
		write_byte( 4 );
		
		message_end( );
	}
}
public event_DeathMsg(  ) 
{
	new iAttacker = read_data( 1 );
	new iVictim = read_data( 2 );
	new iHeadshot = read_data( 3 );
	
	new MoneyOnHeadShot = get_pcvar_num( money_hs );
	new MoneyOnKill = get_pcvar_num( money_kill );
	
	if( iAttacker == iVictim )
		return 0;
	
	if( ( iAttacker ) && iAttacker != iVictim )
	{
		if(get_user_flags( iAttacker ) & read_flags("FLAG_VIP"))
		{
			if( iHeadshot ) 
			{
				cs_set_user_money( iAttacker, cs_get_user_money( iAttacker ) + MoneyOnHeadShot );
			}
			else
			{
				cs_set_user_money( iAttacker, cs_get_user_money( iAttacker ) + MoneyOnKill );
			}
		}
	}
	return 0;
}
public plugin_cfg( )
{
   new szDir[ 128  ];
   get_configsdir( szDir, charsmax( szDir ) );
   
   formatex( g_szFile, charsmax( g_szFile ), "%s/%s", szDir, g_szFileName );
   
   if ( !file_exists( g_szFile ) ) 
   {
      new fp = fopen( g_szFile, "a+" );
      if( fp )
      {
         fputs( fp, "; Lista membrii VIP^n" );
         fputs( fp, "^b" );
      }
      
      fclose( fp );
   }
   
   ReadIniFile( )
}

public plugin_end( )
{
   TrieDestroy( g_tVipList )
}

ReadIniFile( )
{
   new fp = fopen( g_szFile , "rt" );
   if( !fp )
   {
      return 0;
   }
   
   new szData[ 256 ], i;
   
   while( !feof( fp ) )
   {
      fgets( fp, szData, charsmax( szData ) );
      trim( szData );
      
      if( !szData[ 0 ] || szData[ 0 ] == ';' || szData[ 0 ] == '#' || (szData[ 0 ] == '/' && szData[ 1 ] == '/'))
      {
         continue;
      }
      
      TrieSetCell( g_tVipList, szData, i )
      i ++
   }
   
   return 0
}

 stock Check_Is_User_On_List(id)
{
   new Name[32]
   get_user_name(id, Name, 31)
   
   for( new i; i < iValidLines; i++ )
   {
      if (!strcmp(Name,vips[i]))
         return 1
   }
   
   return 0
   
}
Last edited by Kam on 10 Mar 2016, 13:24, edited 1 time in total.
User avatar
Kam
Membru, skill +1
Membru, skill +1
Posts: 305
Joined: 07 Nov 2014, 22:13
Detinator Steam: Da
Detinator server CS: Da
Fond eXtream: 0
Has thanked: 1 time

15 Mar 2016, 15:39

Up...
Post Reply

Return to “Scripting”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 15 guests