[BB Plugins,Mods][Added 2 new plugins from Tirant]

Тука е мястото за всякакви приказки, отнасящи се за модовете Amx и Amx X!
Post Reply
User avatar
cStrikeREAL
Потребител
Потребител
Posts: 110
Joined: 19 May 2011, 17:57
Favorite version: CS: 1.6
Steam Community ID: cStrikeKappa

Re: [BB Plugins,Mods] 2016: New mod rally cars +pack rally к

Post by cStrikeREAL »

@icoka_97 пробвай
Edit: Забравих да добавя един код , пробвай пак.

Code .sma:

Code: Select all

#include <amxmodx>
#include <engine>
#include <fakemeta>
#include <basebuilder>
#include <fun>
#include <hamsandwich>
#include <fakemeta_util>
#define is_user_frozen(%1)   bFrozen[%1]

#define PLUGIN "[BB] Zombie Class: Freezer"
#define VERSION "1.3"
#define AUTHOR "Argon"

new const zclass_name[] = { "Freezer" }
new const zclass_info[] = { "\r[Freez Human] \y[Mouse2]" }
new const zclass_model[] = { "bb_zombie_freezer" }
new const zclass_clawmodel[] = { "bb_basebulder/bb_v_freezer" }
const zclass_health = 1000
const zclass_speed = 240
const Float:zclass_gravity = 1.0
const Float:zclass_knockback = 0.25
const zclass_adminflags = ADMIN_LEVEL_D

new beamSpr, freezer_spr
new const freezer_sound[] = "basebulder/freezer.wav"
new const glass_sound_1[] = "basebulder/glass_1.wav"
new const glass_sound_2[] = "basebulder/glass_2.wav"

//Cvars
new pcvar_distance
new cvar_cooldown // Cooldown when dropped the weapon of human
new pcvar_freeze
new g_freezer

new g_maxplayers
new is_cooldown[33] = 0
new bool:hase_freez[33]
new cvar_nemesis
new Countdown[33] 
 
new bool:bFrozen[33]
new Float:iAngles[33][3]
const iVictim = 2

public plugin_precache()
{
    g_freezer = zp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback, zclass_adminflags)
    beamSpr = precache_model("sprites/lgtning.spr")
    freezer_spr = precache_model("sprites/freezer_exp.spr")
    precache_sound(freezer_sound)
    precache_sound(glass_sound_1)
    precache_sound(glass_sound_2)
}

public plugin_init() 
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    pcvar_distance = register_cvar ( "freezer_distance", "1000" )
    cvar_cooldown = register_cvar("freezer_shot_cooldown","20.0")
    pcvar_freeze = register_cvar( "freez_time", "5.0" )
    cvar_nemesis = register_cvar("freezer_nemesis", "1")
    g_maxplayers = get_maxplayers()
    register_logevent("roundStart", 2, "1=Round_Start")
    register_forward(FM_CmdStart, "fwd_cmd_start")
    RegisterHam(Ham_Spawn,"player","fw_PlayerSpawn_Post",1)
    RegisterHam(Ham_Spawn, "player", "ham_PlayerSpawn_Post", 1)
    register_event( "DeathMsg" , "eventDeathMsg" , "a" );    
    register_logevent( "eventRoundEnd" , 2 , "1=Round_End" );    
    
}

public fw_PlayerSpawn_Post(id)
{
    // Not alive...
    if(!is_user_alive(id))
        return HAM_IGNORED
    if(cvar_nemesis == 1)
    {
        if(bb_get_user_zombie_class(id) == g_freezer && bb_is_user_zombie(id))
        {
            hase_freez[id] = true
        }
        } else {
        if(bb_get_user_zombie_class(id) == g_freezer && bb_is_user_zombie(id))
        {
            hase_freez[id] = true
        }    
    }
    
    return HAM_IGNORED
}  

public fwd_cmd_start(id, uc_handle, seed) 
{
    if(cvar_nemesis == 1)
    {
        if (!is_user_alive(id) || !bb_is_user_zombie(id) || hase_freez[id] )
            return FMRES_IGNORED
        } else {
        if (!is_user_alive(id) || !bb_is_user_zombie(id) || hase_freez[id] )
            return FMRES_IGNORED
    }
    
    if (bb_get_user_zombie_class(id) != g_freezer)
        return FMRES_IGNORED
    
    static buttons
    buttons = get_uc(uc_handle, UC_Buttons)
    
    if(buttons & IN_ATTACK2) {
    emit_sound(id, CHAN_WEAPON, freezer_sound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
    cmd_freez(id)
    hase_freez[id] = true
    }
    
    buttons &= ~IN_ATTACK2
    set_uc(uc_handle, UC_Buttons, buttons)
    
    return FMRES_HANDLED
}

cmd_freez(id)
{
    new target, body
    static Float:start[3]
    static Float:aim[3]
    
    pev(id, pev_origin, start)
    fm_get_aim_origin(id, aim)
    
    start[2] += 16.0; // raise
    aim[2] += 16.0; // raise
    get_user_aiming ( id, target, body, pcvar_distance )
    
    if( is_user_alive( target ) && !bb_is_user_zombie( target ))
    {    
        new iOrigin[ 3 ];  
        get_user_origin( target, iOrigin, 0 );
    
        message_begin( MSG_BROADCAST, SVC_TEMPENTITY );
        write_byte( 15 );
        write_coord( iOrigin[ 0 ] );     // start position (X)
        write_coord( iOrigin[ 1 ] );     // start position (Y)
        write_coord( iOrigin[ 2 ] + 40 ); // start position (Z)
        write_coord( iOrigin[ 0 ] );     // end position (X)
        write_coord( iOrigin[ 1 ] );    // end position (Y)
        write_coord( iOrigin[ 2 ] );    // end position (Z)
        write_short( freezer_spr );    // sprite index
        write_byte( 50 );        // count
        write_byte( 20 );        // life in 0.1's
        write_byte( 2 );        // scale in 0.1's
        write_byte( 50 );        // velocity along vector in 10's
        write_byte( 10 );        // randomness of velocity in 10's
        message_end(  );

        message_begin(MSG_BROADCAST ,SVC_TEMPENTITY)
        write_byte(TE_EXPLOSION)
        engfunc(EngFunc_WriteCoord, aim[0])
        engfunc(EngFunc_WriteCoord, aim[1])
        engfunc(EngFunc_WriteCoord, aim[2])
        write_short(beamSpr)
        write_byte(10)
        write_byte(30)
        write_byte(4)
        message_end()

        Freeze(target)        
        set_task( get_pcvar_float( pcvar_freeze ), "UnFreeze", target )
        emit_sound(target, CHAN_WEAPON, glass_sound_1, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
    }    
    
    message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
    write_byte(0)
    engfunc(EngFunc_WriteCoord,start[0]);
    engfunc(EngFunc_WriteCoord,start[1]);
    engfunc(EngFunc_WriteCoord,start[2]);
    engfunc(EngFunc_WriteCoord,aim[0]);
    engfunc(EngFunc_WriteCoord,aim[1]);
    engfunc(EngFunc_WriteCoord,aim[2]);
    write_short(beamSpr); // sprite index
    write_byte(0); // start frame
    write_byte(10); // frame rate in 0.1's
    write_byte(10); // life in 0.1's
    write_byte(100); // line width in 0.1's
    write_byte(4); // noise amplititude in 0.01's
    write_byte(100); // red
    write_byte(149); // green
    write_byte(237); // blue
    write_byte(100); // brightness
    write_byte(50); // scroll speed in 0.1's
    message_end();    
    set_task( get_pcvar_float( cvar_cooldown ), "reset_cooldown", id );
    set_task( 1.0, "CountDown", id, _, _, "a",Countdown [ id ] );
    Countdown [ id ] = get_pcvar_num( cvar_cooldown )
}

public ham_PlayerSpawn_Post(id, infector)
{
    if (bb_get_user_zombie_class(id) == g_freezer)
    {
        is_cooldown[id] = 0
        hase_freez[id] = false
        new text[100]
        format(text,99,"^x04[BB]^x01 Your ability is^x04 Freez Human^x01. Cooldown:^x04 %d ^x01seconds. Press ^x04[MOUSE2]^x01 to use this.",get_pcvar_num( cvar_cooldown ))
        message_begin(MSG_ONE,get_user_msgid("SayText"),{0,0,0},id) 
        write_byte(id) 
        write_string(text) 
        message_end()
    }
}
public reset_cooldown(id)
{
        hase_freez[id] = false    
        new text[100]
        format(text,99,"^x04[BB]^x01 Now You Can Use Your ability. Press ^x04[MOUSE2]")
        message_begin(MSG_ONE,get_user_msgid("SayText"),{0,0,0},id) 
        write_byte(id) 
        write_string(text) 
        message_end()
}

public zp_user_humanized_post(id)
{
    remove_task(id)
    is_cooldown[id] = 0
}

public roundStart()
{
    for (new i = 1; i <= g_maxplayers; i++)
    {
        Countdown [ i ] = get_pcvar_num( cvar_cooldown )
        is_cooldown[i] = 0
        remove_task(i)
    }
}

stock Freeze(id)
{ 
    new iFlags = pev( id , pev_flags );
    
    if( ~iFlags & FL_FROZEN ) 
    { 
        set_pev( id , pev_flags , iFlags | FL_FROZEN );
        pev( id , pev_v_angle , iAngles[ id ] );
        
        set_user_rendering( id , kRenderFxGlowShell , 0 , 100 , 200 , kRenderNormal , 16 );        
    } 
    
    bFrozen[ id ] = true;    
    
}
public eventDeathMsg( )
{    
    UnFreeze( read_data( iVictim ) );
}

public eventRoundEnd( )
{
    new iPlayers[ 32 ] , iNum , i , id;
    get_players( iPlayers , iNum , "a" );
    
    for( i = 0; i < iNum; i++ )
    {
        id = iPlayers[ i ];
        
        if( is_user_frozen( id ) )
        {
            UnFreeze( id );
        }
    }
}
public UnFreeze(id)
{ 
    new frozenCount = 0;
    
    bFrozen[ id ] = false;
    
    new iFlags = pev( id , pev_flags ) ;
    
    if( iFlags & FL_FROZEN ) 
    { 
        set_pev( id , pev_flags , iFlags & ~FL_FROZEN ) ;
        set_user_rendering( id , kRenderFxNone , 0 , 0 , 0 , kRenderNormal , 0 );
        emit_sound(id, CHAN_WEAPON, glass_sound_2, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
        new iPlayers[ 32 ] , iNum , i , tid;
        get_players( iPlayers , iNum , "a" );
        
        for( i = 0; i < iNum; i++ )
        {
            tid = iPlayers[ i ];
            
            if( is_user_frozen( tid ) )
            {
                frozenCount++;
            }
        }                
    } 
}
public CountDown(id) { 
    

    if(is_valid_ent(id) && is_user_alive(id))
    {
        Countdown [ id ] = Countdown [ id ] - 1;
        set_hudmessage(0, 255, 0, 0.75, 0.92, 0, 1.0, 1.1, 0.0, 0.0, -1)
        show_hudmessage(id, "Freez Ability cooldown: %d",Countdown [ id ])
        
    }else{
        remove_task(id)
    }
}  
Attachments
bb_class_freezer.rar
BB Class Freezer with admin flag V2
(2.71 KiB) Downloaded 303 times
Last edited by cStrikeREAL on 01 Mar 2016, 14:51, edited 4 times in total.
User avatar
icoka_97
Потребител
Потребител
Posts: 46
Joined: 02 Sep 2010, 11:55
Skype: cs-killer.info
CS Nick: IcOkA.WeEe
Favorite version: CS: 1.6
Contact:

Re: [BB Plugins,Mods] 2016: New mod rally cars +pack rally к

Post by icoka_97 »

BB VIP Color Blocks (Tirant) не работи не сменя цветовете.
Last edited by kreedztanky on 05 Jan 2016, 15:07, edited 1 time in total.
Reason: т.5 - Безмислен коментар/спам
User avatar
cStrikeREAL
Потребител
Потребител
Posts: 110
Joined: 19 May 2011, 17:57
Favorite version: CS: 1.6
Steam Community ID: cStrikeKappa

Re: [BB Plugins,Mods] 2016: New mod Base Builder Banana модн

Post by cStrikeREAL »

Тези хора който има нужда да едит Base Builder VIP (vmenu плъгина) .sma файла/code
Code .sma:

Code: Select all

/*
*    -----------------
*     Coded in 2011,
*     by anti-talent or talents
*     -----------------
*
*    .:: Description ::.
*
*     BaseBuilder VIP Menu.
*
*    .:: Contacts ::.
*
*    Email: calinio_mnx_spartacus@yahoo.com
*
*    Steam: pijele
*
*/
#pragma semicolon 1

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <engine>
#include <fun>
#include <hamsandwich>
#include <fakemeta>
#include <vault>

#define ADMIN_BBVIP ADMIN_LEVEL_H

// Define the Plugin Version
new const VERSION[] = { "1.0" };

// PREFIX
new const PREFIX[] = { "!g[ BaseBuilder ]!n" };

new const g_szKnifeBModel[] = "models/chucky_knife.mdl";
new const g_szKnifeWModel[] = "models/v_claw.mdl";
new const g_szAk47Model[] = "models/v_golden_ak47.mdl";
new const g_szDeagleModel[] = "models/v_deagle.mdl";

new VipUsed[33];
new HasSpeed;

new bool:g_bHasKnifeB[33];
new bool:g_bHasKnifeW[33];
new bool:g_bHasAk47[33];
new bool:g_bHasDeagle[33];
new Float:fast_speed = 400.0;
new Float:normal_speed = 250.0;
//new g_pVisiblity;
new mpd,/* mkb,*/ mhb;
new maxplayers;

public plugin_init()
{
	register_plugin("BaseBuilder: VIP Menu", VERSION, "anti-talent");
	RegisterHam(Ham_Spawn, "player", "FwdHamSpawn_Post", 1);
	RegisterHam(Ham_Item_PreFrame, "player", "FwdPreFrame_Post", 1);
	RegisterHam(Ham_TakeDamage, "player", "FwdPlayerDamage");
	//RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1);
	
	register_event("CurWeapon","event_curweapon","be","1=1");
	
	register_clcmd("say vmenu", "cmdVmenu");
	register_clcmd("say /vmenu", "cmdVmenu");
	register_clcmd("say_team vmenu", "cmdVmenu");
	register_clcmd("say_team /vmenu", "cmdVmenu");
	register_clcmd("say /buyvip", "cmdBuyvip");
	register_clcmd("say buyvip", "cmdBuyvip");
	register_clcmd("say_team buyvip", "cmdBuyvip");
	register_clcmd("say_team /buyvip", "cmdBuyvip");
	register_clcmd("say /preturi", "cmdPreturi");
	register_clcmd("say_team /preturi", "cmdPreturi");
	//g_pVisiblity = register_cvar( "km_invis", "200" ); // 255 = clearly visible
	
	mpd = register_cvar("money_per_damage","3");
	//mkb = register_cvar("money_kill_bonus","200");
	mhb = register_cvar("money_hs_bonus","500");
	register_event("Damage","Damage","b");
	maxplayers = get_maxplayers();
	
	
	// Ham TakeDamage
	register_forward( FM_CmdStart, "fw_CmdStart" );
	//RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1);
}

public Damage(id)
{
	new weapon, hitpoint, attacker = get_user_attacker(id,weapon,hitpoint);
	if(attacker<=maxplayers && is_user_alive(attacker) && attacker!=id)
		if (get_user_flags(attacker) & ADMIN_LEVEL_H) 
	{
		new money = read_data(2) * get_pcvar_num(mpd);
		if(hitpoint==1) money += get_pcvar_num(mhb);
		cs_set_user_money(attacker,cs_get_user_money(attacker) + money);
	}
}     
public FwdPlayerDamage(victim, inflictor, attacker, Float:damage, damagebits)
{
	if(inflictor == attacker 
	&& attacker != victim 
	&& g_bHasKnifeB[ attacker ] 
	&& is_user_alive(attacker) 
	&& get_user_weapon(attacker) == CSW_KNIFE )
	{
		SetHamParamFloat(4, damage * 3.0);
	}
	if(inflictor == attacker 
	&& attacker != victim 
	&& g_bHasAk47[ attacker ]
	&& is_user_alive(attacker) 
	&& get_user_weapon(attacker) == CSW_AK47 )
	{
		SetHamParamFloat(4, damage * 2.0);
	}
       if(inflictor == attacker 
	&& attacker != victim 
	&& g_bHasDeagle[ attacker ]
	&& is_user_alive(attacker) 
	&& get_user_weapon(attacker) == CSW_DEAGLE )
	{
		SetHamParamFloat(4, damage * 4.0);
	}

	
}  
public plugin_precache()
{
	precache_model(g_szKnifeBModel);
	precache_model(g_szAk47Model);
	precache_model(g_szKnifeWModel);
       precache_model(g_szDeagleModel);
}

public event_curweapon(id)
{
	if(g_bHasKnifeB[id] && read_data(2) == CSW_KNIFE)
	{
		set_pev(id, pev_viewmodel2, g_szKnifeBModel);
		set_user_gravity(id, 0.5);
	}
	
	else
		set_user_gravity(id, 1.0);
	if(g_bHasAk47[id] && read_data(2) == CSW_AK47)
	{
		set_pev(id, pev_viewmodel2, g_szAk47Model);
		set_user_gravity(id, 1.0);
	}
	
	else
		set_user_gravity(id, 1.0);
       if(g_bHasDeagle[id] && read_data(2) == CSW_DEAGLE)
	{
		set_pev(id, pev_viewmodel2, g_szDeagleModel);
		set_user_gravity(id, 0.5);
	}
	
	else
		set_user_gravity(id, 1.0);
}


public FwdPreFrame_Post(id)
{
	if(!is_user_alive(id))
	{
		return PLUGIN_HANDLED;
	}
	
	if(!HasSpeed)
	{
		return PLUGIN_HANDLED;
	}
	
	else if(HasSpeed)
	{
		set_user_maxspeed(id, fast_speed);
	}
	
	return PLUGIN_HANDLED;
}


public FwdHamSpawn_Post(id)
{
	if (!is_user_alive(id))
		return PLUGIN_CONTINUE;
	
	HasSpeed = false;
	VipUsed[id] = false;
	g_bHasKnifeB[id] = false; 
	g_bHasKnifeW[id] = false; 
	g_bHasAk47[id] = false; 
	g_bHasDeagle[id] = false; 
	set_user_maxspeed(id, normal_speed);
	set_user_rendering( id, _, 0, 0, 0, _, 0 );
	return PLUGIN_CONTINUE;
}  

public cmdVmenu(id)
{
	if(!(get_user_flags(id) & ADMIN_BBVIP))
	{
		client_printc(id, "%s Only !gVIPs !tmay use the VIP Menu", PREFIX);
		
		return PLUGIN_HANDLED;
	}
	
	if(VipUsed[id])
	{
		client_printc(id, "%s You already used !gVIP Menu!n this round. Please wait till next round", PREFIX);
		
		return PLUGIN_HANDLED;
	}
	
	switch(cs_get_user_team(id))
	{
		case CS_TEAM_T:
			VipTMenu(id);
		
		case CS_TEAM_CT:
			VipCTMenu(id);
	}
	
	return PLUGIN_HANDLED;
}

public VipCTMenu(id)
{
	new menu = menu_create("\yBaseBuilder VIP Menu:^n\r", "VipCTMenu_handler");
	
	menu_additem(menu, "\w+150HP and +100Armor", "1", 0);
	menu_additem(menu, "\wSpeed", "2", 0);
	menu_additem(menu, "\wM249 and Deagle", "3", 0);
	menu_additem(menu, "\wRevive", "4", 0);
	menu_additem(menu, "\wSG550", "5", 0);
	menu_additem(menu, "\wG3SG1", "6", 0);
	menu_additem(menu, "\wGolden AK 47", "7", 0);
       menu_additem(menu, "\wGolden Deagle", "8", 0);
       menu_additem(menu, "\wAWP", "9", 0);
	menu_display(id, menu);
}

public VipCTMenu_handler(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], iName[64];
	new access, callback;
	menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
	
	new key = str_to_num(data);
	
	switch(key)
	{
		case 1:
		{
			set_user_health(id, get_user_health(id) + 150);
			set_user_armor(id, get_user_armor(id) + 100);
			VipUsed[id] = true;
			
			client_printc(id, "%s You have just recieved !g150HP!n and !g100Armor!n", PREFIX);
		}
		case 2:
		{
			VipUsed[id] = true;
			HasSpeed = true;
			
			set_user_maxspeed(id, fast_speed);
			
			client_printc(id, "%s You have just recieved !gSpeed", PREFIX);
		}
		
		case 3:
		{
			give_item(id, "weapon_m249");
			give_item(id, "weapon_deagle");
			cs_set_user_bpammo(id, CSW_M249, 200);
			cs_set_user_bpammo(id, CSW_DEAGLE, 100);
			
			VipUsed[id] = true;
			
			
			client_printc(id, "%s You have just recieved !gM249!n and !gDeagle!n", PREFIX);
		}
		
		case 4:
		{
			
			ExecuteHamB(Ham_CS_RoundRespawn, id);
			
			VipUsed[id] = true;
			
			client_printc(id, "%s You have just been !grevived", PREFIX);
		}
		case 5:
		{
			
			give_item(id, "weapon_sg550");
			cs_set_user_bpammo(id, CSW_SG550, 200);
			
			VipUsed[id] = true;
			
			client_printc(id, "%s You have just recieved !gSG550", PREFIX);
		}
		case 6:
		{
			
			give_item(id, "weapon_g3sg1");
			cs_set_user_bpammo(id, CSW_G3SG1, 200);
			
			VipUsed[id] = true;
			
			client_printc(id, "%s You have just recieved !gG3SG1", PREFIX);
		}
		case 7:
		{
			
			give_item(id, "weapon_ak47");
			cs_set_user_bpammo(id, CSW_AK47, 200);
			set_pev(id, pev_viewmodel2, "models/v_golden_ak47.mdl");
			g_bHasAk47[id] = true;
			VipUsed[id] = true;
			
			client_printc(id, "%s You have just recieved !gGolden AK 47", PREFIX);
		}
		case 8:
		{
			
			give_item(id, "weapon_deagle");
			cs_set_user_bpammo(id, CSW_DEAGLE, 200);
			set_pev(id, pev_viewmodel2, "models/v_deagle.mdl");
			g_bHasDeagle[id] = true;
			VipUsed[id] = true;
			
			client_printc(id, "%s You have just recieved !gGolden Deagle", PREFIX);
		}
              case 9:
		{
			
			give_item(id, "weapon_awp");
			cs_set_user_bpammo(id, CSW_AWP, 200);
			VipUsed[id] = true;
			
			client_printc(id, "%s You have just recieved !gAWP", PREFIX);
		}


	}
	
	menu_destroy(menu);
	return PLUGIN_HANDLED;
}

public VipTMenu(id)
{
	new menu = menu_create("\yBaseBuilder VIP Menu:^n\r", "VipTMenu_handler");
	
	menu_additem(menu, "\wSpeed", "1", 0);
	menu_additem(menu, "\w+5000Hp si +5000Armor", "2", 0);
	menu_additem(menu, "\wBloody Knife", "3", 0);
	menu_additem(menu, "\wWolveriNe Knife", "4", 0);
	menu_display(id, menu);
}

public VipTMenu_handler(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], iName[64];
	new access, callback;
	menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
	
	new key = str_to_num(data);
	
	switch(key)
	{
		
		case 1:
		{
			VipUsed[id] = true;
			HasSpeed = true;
			
			set_user_maxspeed(id, fast_speed);
			
			client_printc(id, "%s You have just recieved !gSpeed", PREFIX);
		}
		
		case 2:
		{
			set_user_health(id, get_user_health(id) + 5000);
			set_user_armor(id, get_user_armor(id) + 5000);
			VipUsed[id] = true;
			
			client_printc(id, "%s You have just recieved !g5000 HP!n and !g5000 Armor!n", PREFIX);
		}
		
		case 3:
		{
			set_user_health(id, get_user_health(id) + 2000);
			set_user_armor(id, get_user_armor(id) + 2000);
			set_user_maxspeed(id, fast_speed);
			HasSpeed = true;
			set_pev(id, pev_viewmodel2, "models/chucky_knife.mdl");
			g_bHasKnifeB[id] = true;
			
			VipUsed[id] = true;
			
			client_printc(id, "%s You have just recieved !gBloody Knife", PREFIX);
		}
		case 4:
		{
			set_user_health(id, get_user_health(id) + 2500);
			set_user_armor(id, get_user_armor(id) + 2500);
			set_user_maxspeed(id, fast_speed);
			HasSpeed = true;
			set_pev(id, pev_viewmodel2, "models/v_claw.mdl");
			g_bHasKnifeW[id] = true;
                     set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 125); 
			
			VipUsed[id] = true;
			
			client_printc(id, "%s You have just recieved !gWolveriNe Knife", PREFIX);
		}
		
		
	}
	
	menu_destroy(menu);
	return PLUGIN_HANDLED;
}



public cmdBuyvip(id)
{
	show_motd(id, "vip.txt", "VIP");
}  
public PrintText(id)
{
	client_print(id, print_chat, "!t[VIP] !gScrie !t/buyvip !gsi vei vedea !tBeneficiile VIP.");
}

public cmdPreturi(id)
{
	show_motd(id, "preturi.txt", "PRETURI");
	
	client_printc(id, "!t[PRETURI] !gScrie !t/preturi !gpentru a vedea preturile pentru !tadmin !gsi !tvip.");
}



// Colour Chat
stock client_printc(const id, const input[], any:...)
{
	new count = 1, players[32];
	static msg[191];
	vformat(msg, 190, input, 3);
	
	replace_all(msg, 190, "!g", "^x04"); // Green Color
	replace_all(msg, 190, "!n", "^x01"); // Default Color
	replace_all(msg, 190, "!t", "^x03"); // Team Color
	
	if (id) players[0] = id; else get_players(players, count, "ch");
	
	for (new i = 0; i < count; i++)
	{
		if (is_user_connected(players[i]))
		{
			message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
			write_byte(players[i]);
			write_string(msg);
			message_end();
		}
	}
}
Ето тук може да изтеглите .sma файла:
Attachments
Base_Builder_Vip.rar
(2.95 KiB) Downloaded 490 times
Last edited by cStrikeREAL on 01 Mar 2016, 14:45, edited 1 time in total.
User avatar
pesosz
Потребител
Потребител
Posts: 8
Joined: 12 Feb 2012, 16:59

Re: [BB Plugins,Mods] 2016: New mod Base Builder Banana модн

Post by pesosz »

http://prikachi.com/images.php?images/942/8597942f.png

VZBB мода не работи.. :/ или нещо не съм направил както трябва?
User avatar
cStrikeREAL
Потребител
Потребител
Posts: 110
Joined: 19 May 2011, 17:57
Favorite version: CS: 1.6
Steam Community ID: cStrikeKappa

Re: [BB Plugins,Mods] 2016: New mod Base Builder Banana модн

Post by cStrikeREAL »

Не си направил както трябва, при мен тествах и нямам никакви проблеми !
User avatar
pesosz
Потребител
Потребител
Posts: 8
Joined: 12 Feb 2012, 16:59

Re: [BB Plugins,Mods] 2016: New mod Base Builder Banana модн

Post by pesosz »

Брато... мъча се вече 20 часа с вип менюто което си качил и независимо какво правя... като си избереш в сървъра да ти даде бонус speed - не става... някаква идея защо? Просто нищо не се променя... а с гравитацията го няма този проблем
User avatar
cStrikeREAL
Потребител
Потребител
Posts: 110
Joined: 19 May 2011, 17:57
Favorite version: CS: 1.6
Steam Community ID: cStrikeKappa

Re: [BB Plugins,Mods] 2016: New mod Base Builder Banana модн

Post by cStrikeREAL »

pesosz wrote:Брато... мъча се вече 20 часа с вип менюто което си качил и независимо какво правя... като си избереш в сървъра да ти даде бонус speed - не става... някаква идея защо? Просто нищо не се променя... а с гравитацията го няма този проблем
Няма как да не става с speed ? С коя версия си? VeCo(VZBB) или Tirant(BB) ?
User avatar
pesosz
Потребител
Потребител
Posts: 8
Joined: 12 Feb 2012, 16:59

Re: [BB Plugins,Mods] 2016: New mod Base Builder Banana модн

Post by pesosz »

cStrikeREAL wrote:
pesosz wrote:Брато... мъча се вече 20 часа с вип менюто което си качил и независимо какво правя... като си избереш в сървъра да ти даде бонус speed - не става... някаква идея защо? Просто нищо не се променя... а с гравитацията го няма този проблем
Няма как да не става с speed ? С коя версия си? VeCo(VZBB) или Tirant(BB) ?
BASE BUILDER 6.6 //AmmoPacks,XP Shop,Money Shop,Guns LEVEL и още! (TIRANT)... гарантирам ти че пробвах всичко, което се сетих... променях плугини, промених max speed-a на сървъра.. играх си със стойностите във vip shop-a... и нищо не стана в крайна сметка :/
User avatar
cStrikeREAL
Потребител
Потребител
Posts: 110
Joined: 19 May 2011, 17:57
Favorite version: CS: 1.6
Steam Community ID: cStrikeKappa

Re: [BB Plugins,Mods] 2016: New mod Base Builder Banana модн

Post by cStrikeREAL »

Пробвах в моя сървъра наистина спийд нещо се бъгналo. Сигурен съм , че не е от него от някой плъгин е пречи за спийд(не знам кой по-точно) !

-- 27 Яну 2016 17:44 --

Вече има и Happy Hour Ammo (не е тестван)

__________________________________

Оправен е с VIP Random Color без AutoLock и AutoLock

За autolock:
Играчи вече се локва автоматично също и vip random color с развлични цветове когато държиш предмет!

За без autolock
Vip random color с развлични цветове когато държиш предмет!

Flag за vip random color: ADMIN_LEVEL_B (real flag: n)
Може да промениш флаг-а търсиш този код:

Code: Select all

if(get_user_flags(id) & ADMIN_LEVEL_B) {
Happy Hour Ammo code .sma:

Code: Select all

/*
Edit by cStrike for Ammo
*/

#include <amxmodx>
#include <basebuilder>
#include <ammopacks>
#include <fun>

new cvar_hch_start,cvar_hch_end, is_hch_start
public plugin_init() {
	register_plugin("BB: Happy Ammo Hour[Tirant]", "1.0", "VeCo")
	
	cvar_hch_start = register_cvar("hch_start","22")
	cvar_hch_end = register_cvar("hch_end","24")
	
	register_event("DeathMsg","hook_death","a")
}

public hook_death()
{
	static hour_str[3],get_hour, killer,victim, get_start,get_end
	
	get_time("%H",hour_str,2)
	
	get_hour = str_to_num(hour_str)
	
	get_start = get_pcvar_num(cvar_hch_start)
	get_end = get_pcvar_num(cvar_hch_end)
	if(get_start < get_end ? (get_start <= get_hour && get_hour < get_end) : (get_start <= get_hour || get_hour < get_end))
	{
		if(!is_hch_start)
		{
			is_hch_start = true
			
			client_print(0,print_chat,"[HCH] THE HAPPY AMMO HOUR HAS STARTED !!!")
			client_print(0,print_chat,"[HCH] THE HAPPY AMMO HOUR HAS STARTED !!!")
			client_print(0,print_chat,"[HCH] THE HAPPY AMMO HOUR HAS STARTED !!!")
		}
	} else {
		is_hch_start = false
	}
	
	if(!is_hch_start) return
	
	killer = read_data(1)
	victim = read_data(2)
	
	if(!is_user_connected(killer) || get_user_team(killer) == get_user_team(victim)) return
	
	BB_set_user_ap(killer,BB_get_user_ap(killer) + (bb_is_user_zombie(killer) ? 3 : 2)) // tuk 3 ili 2 moje da rediktirash kolko ammo shte ti dade pri kill
}
_________________________

Открих една малка грешка и го оправих! V4 (BB 6.5) / Благодарение на @IcOkA.WeEe™
Attachments
Base Builder s autolock FIXED HEALTH AND CLASS HUD.rar
S auto lock + Vip Random Color
(18.03 KiB) Downloaded 425 times
Base Builder bez autolock FIXED HEALTH AND CLASS HUD.rar
Bez auto lock + Vip Random Color
(18.02 KiB) Downloaded 309 times
bb_happy_hour_ap.rar
Tirant Happy Hour Ammo
(722 Bytes) Downloaded 307 times
Last edited by cStrikeREAL on 01 Mar 2016, 14:52, edited 1 time in total.
User avatar
KpAcTaBuCa
Богата краставица :D
Богата краставица :D
Posts: 32
Joined: 23 May 2011, 14:17
Favorite version: CS: 1.6
Contact:

Re: [BB Plugins,Mods][FIXED HUD and CLASS V4] Base Builder B

Post by KpAcTaBuCa »

Оценката ми е 8/10 главно заради мода BASE BUILDER 6.5 //FREE LOCK+SHOP+SKINS+HEAD RANK+VIP and Rules(FREE PSD)(TIRANT)
заради
- плъгините за игра не са добаввени в config/plugins-basebuilder
- sv_url то не работи
- не е добавен главния мод на игра в config/plugins
- също така не зарежда някой плъгини
- chatcolor.amxx си прече с чат ранковете
User avatar
cStrikeREAL
Потребител
Потребител
Posts: 110
Joined: 19 May 2011, 17:57
Favorite version: CS: 1.6
Steam Community ID: cStrikeKappa

Как се добави цветни предмети?

Post by cStrikeREAL »

Тези хора който иска да добави цветни предмети (само за VeCo) :

____________________________________________________________________
Търсиш тези кодове:

Code: Select all

enum
{
	BLOCKS_NORMAL = 0,
	BLOCKS_YELLOW,
	BLOCKS_BLACK,
	BLOCKS_BLUE,
	BLOCKS_RED,
	BLOCKS_GREEN,
	MAX_BLOCKTYPES
} 
Под BLOCKS_GREEN, добавяш BLOCKS_SKYBLUE,

Ето как изглежда:

Code: Select all

enum
{
	BLOCKS_NORMAL = 0,
	BLOCKS_YELLOW,
	BLOCKS_BLACK,
	BLOCKS_BLUE,
	BLOCKS_RED,
	BLOCKS_GREEN,
	BLOCKS_SKYBLUE,
	MAX_BLOCKTYPES
} 
___________________________________

Търсиш тези кодове:

Code: Select all

new const Float:fun_blocks_colors[][3] =
{
	{0.0,0.0,0.0},
	{255.0,255.0,0.0},
	{0.0,0.0,0.0},
	{0.0,0.0,255.0},
	{255.0,0.0,0.0},
	{0.0,255.0,0.0}
}
Под {0.0,255.0,0.0} добавяш {0.0,255.0,255.0} (задължително е да сложиш запетай пред {0.0,255.0,0.0} )

RGB -> {R.0,G.0,B.0}
Е тук може да видиш за цветове: Click

Ето как изглежда:

Code: Select all

new const Float:fun_blocks_colors[][3] =
{
	{0.0,0.0,0.0},
	{255.0,255.0,0.0},
	{0.0,0.0,0.0},
	{0.0,0.0,255.0},
	{255.0,0.0,0.0},
	{0.0,255.0,0.0},
	{0.0,255.0,255.0}
}
___________________________________

Търсиш тези кодове:

Code: Select all

new const fun_blocks_names[][] =
{
	"Normal Block",
	"Yellow Block",
	"Black Block",
	"Blue Block",
	"Red Block",
	"Green Block"
}
Под "Green Block" добавяш "SkyBlue Block" (задължително е да сложиш запетай пред "Green Block" )

Ето как изглежда:

Code: Select all

new const fun_blocks_names[][] =
{
	"Normal Block",
	"Yellow Block",
	"Black Block",
	"Blue Block",
	"Red Block",
	"Green Block",
	"SkyBlue Block"
}
___________________________________

Търсиш този код:

Code: Select all

cvar_fun_blocks_num[BLOCKS_GREEN] = register_cvar("vzbb_fun_blocks_green_num","1")
Под него добави:

Code: Select all

cvar_fun_blocks_num[BLOCKS_skyblue] = register_cvar("vzbb_fun_blocks_skyblue_num","1")
И си готов!
User avatar
cStrikeREAL
Потребител
Потребител
Posts: 110
Joined: 19 May 2011, 17:57
Favorite version: CS: 1.6
Steam Community ID: cStrikeKappa

Re: [BB Plugins,Mods][1 NEW]Base Builder Banan

Post by cStrikeREAL »

Admin Menu:
Noclip
GodMode
Invisible
AutoBH
Teleport
Команда: /admenu

Code: Select all

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

#define PLUGIN "[BB] Menu Admin"
#define VERSION "1.0"
#define AUTHOR "MuzziK"

new	bool:gb_HasBh[33];

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_clcmd("say /admenu","cmdMenu");
}
public cmdMenu(id){
	if(get_user_flags(id) & ADMIN_SLAY){
		
		new menu,formats[128];
		menu = menu_create("\yMenu Admin","handle_cmdMenu");
		formatex(formats,charsmax(formats),"Noclip %s",pev(id,pev_movetype) == MOVETYPE_NOCLIP ? "\rON" : "\yOFF");
		menu_additem(menu,formats);
		formatex(formats,charsmax(formats),"God Mod \r%s", pev(id,pev_takedamage) == 0.0 ? "\rON" : "\yOFF");
		menu_additem(menu,formats);
		formatex(formats,charsmax(formats),"Invisibility \r%s",pev(id,pev_renderamt) == 0.0 ? "\rON" : "\yOFF");
		menu_additem(menu,formats);
		formatex(formats,charsmax(formats),"Auto BunnyHop \r%s",gb_HasBh[id] ? "\rON" : "\yOFF");
		menu_additem(menu,formats);
		formatex(formats,charsmax(formats),"Teleport");
		menu_additem(menu,formats);
		menu_setprop(menu, MPROP_EXITNAME, "Exit");
		menu_setprop(menu, MPROP_BACKNAME, "Back");
		menu_setprop(menu, MPROP_NEXTNAME, "Next");
		menu_display(id,menu);
	}
	client_print(id,3,"[BaseBuilder] I'm sorry, but you're not admin.");
}
public handle_cmdMenu(id,menu,item){
	if(item == MENU_EXIT){
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	item++;
	switch(item){
		case 1:{
			if(pev(id,pev_movetype) == MOVETYPE_NOCLIP){
				set_pev(id,pev_movetype,MOVETYPE_NONE);
				}else{
				set_pev(id,pev_movetype,MOVETYPE_NOCLIP);
			}
			cmdMenu(id);
		}
		case 2:{
			if(pev(id,pev_takedamage) == 0.0){
				set_pev(id,pev_takedamage,2.0);
				}else{
				set_pev(id,pev_takedamage,0.0);
			}
			cmdMenu(id);
		}
		case 3:{
			if(pev(id,pev_renderamt) == 0.0){
				set_pev(id,pev_renderamt,255.0);
				}else{
				set_pev(id,pev_renderamt,0.0);
			}
			cmdMenu(id);
		}
		case 4:{
			if(gb_HasBh[id]){
				gb_HasBh[id] = false
				}else{
				gb_HasBh[id] = true
			}
			cmdMenu(id);
		}
		case 5: cmd_MenuTeleport(id);	
	}
	return PLUGIN_CONTINUE;
}
public cmd_MenuTeleport(id){
	new key[8], name[64];
	new menu = menu_create("Teleports","handle_cmdMenu_teleport");
	new iPlayers[32], iNum, szName[64];
	get_players(iPlayers, iNum)
	for(new i=0; i<iNum; i++)
	{	
		if(!is_user_alive(iPlayers[i])) continue;
		get_user_name(iPlayers[i],szName,charsmax(szName))
		format(name, 42, "\w%s", szName)
		format(key, 7, "%d", iPlayers[i]);
		menu_additem(menu, name, key);
	}
	menu_display(id,menu);
}	

public handle_cmdMenu_teleport(id,menu,item)
{
	new info[8], name[64], a, c;
	menu_item_getinfo(menu, item, a, info, 7, name, 63 , c);
	new tar = str_to_num(info);
	new Float:fOrigins[3];
	
	if(is_user_connected(tar))
	{
		pev(tar,pev_origin,fOrigins);
		fOrigins[0]+=50.0
		fOrigins[1]+=50.0
		fOrigins[2]+=50.0
		set_pev(id,pev_origin,fOrigins);
	}
	menu_destroy(menu);
	return PLUGIN_CONTINUE;
}
public client_PreThink(id){
	new buttons = 	pev(id,pev_button);
	if(gb_HasBh[id] && buttons&IN_JUMP && ( pev(id,pev_flags)&FL_ONGROUND || pev(id,pev_flags)&FL_PARTIALGROUND)){
		new Float:fVec[3];
		fVec[2] += 250.0;
		set_pev(id,pev_velocity,fVec);
	}
}
Този плъгин става за всички модове също и Tirant/VeCo
User avatar
cStrikeREAL
Потребител
Потребител
Posts: 110
Joined: 19 May 2011, 17:57
Favorite version: CS: 1.6
Steam Community ID: cStrikeKappa

Re: [BB Plugins,Mods][FREE .SMA BB 6.7 TIRANT]Base Builder B

Post by cStrikeREAL »

Base Builder Ammo Bank(Tirant) :

Code: Select all

/* Script generated by Pawn Studio */

#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <nvault_util>

#define PLUGIN	"Bank AmmoPacks"
#define AUTHOR	"DarkGL"
#define VERSION	"1.0"

native BB_get_user_ap( id );
native BB_set_user_ap( id , amount );

const maxPlayer = 33;

const MAX_LEN_STRUCT = 256;

enum structPlayer {
	accountCreated,
	accountName[ MAX_LEN_STRUCT ],
	accountPin[ MAX_LEN_STRUCT ],
	accountValue,
	accountLogged,
	accountTry,
	accountLimitValue,
	accountAuth,
	accountDebt
}

new vaultHandle;

new playersInformations[ maxPlayer ][ structPlayer ];

new iTransfer[ maxPlayer ];

public plugin_init(){
	
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	register_clcmd( "say /bank" , "bankMenu" );
	register_clcmd( "say_team /bank" , "bankMenu" );
	
	register_clcmd( "NumerPin" , "handlePinNumber" );
	register_clcmd( "PinNumberOld" , "handlePinNumberOld" );
	register_clcmd( "WplacMonety" , "handleWplacAmmo" );
	register_clcmd( "WyplacMonety" , "handleWyplacAmmo" );
	
	register_clcmd( "DebtGet" , "handleDebt" );
	
	vaultHandle = nvault_open( "BankDataBase" );
}

public plugin_end(){
	nvault_close( vaultHandle );
}

public client_connect( id ){
	clearUserInformations( id );
	
	new szName[ 256 ];
	
	get_user_name( id , szName , charsmax( szName ) );
	
	setAccountName( id , szName );
	
	loadUserInformations( id );
}

public client_disconnect( id ){
	saveUserInformations( id );
	
	clearUserInformations( id );
}

public bankMenu( id ){
	if( !getAccountCreated( id ) ){
		menuCreateAccount( id );
		
		return PLUGIN_HANDLED;
	}
	
	if( !getAccountLogged( id ) ){
	
		client_cmd( id , "messagemode NumerPin" );
	
		client_print( id , print_chat , "[BANK] Please enter pin number" );
	
		return PLUGIN_HANDLED;
	}
	
	mainMenu( id );
	
	return PLUGIN_HANDLED;
}

public menuCreateAccount( id ){
	new pMenu = menu_create( "Create an account" , "menuCreateHandle" );
	
	menu_additem( pMenu , "Do you want to create an account?" );
	
	menu_setprop( pMenu , MPROP_BACKNAME , "Quit" );
	
	menu_display( id , pMenu );
}

public menuCreateHandle( id , menu , item ){
	if( item == MENU_EXIT ){
		menu_destroy( menu );
		return PLUGIN_HANDLED;
	}
	
	if( item == 0 ){
		client_cmd( id , "messagemode NumerPin" );
		
		client_print( id , print_chat , "[BANK] Enter the pin code to your account" );
	}
	
	menu_destroy( menu );
	return PLUGIN_HANDLED;
}

public handlePinNumberOld( id ){
	new szData[ 128 ];
	
	read_argv( 1 , szData , charsmax( szData ) );
	
	trim( szData );
	
	if( strlen( szData ) == 0 ){
		return PLUGIN_HANDLED;
	}
	
	new szPin[ MAX_LEN_STRUCT ];
	
	getAccountPin( id , szPin , charsmax( szPin ) );
	
	if( strcmp( szPin , szData ) != 0 ){
		client_print( id , print_chat , "[BANK] Bad old pin" );
		
		setAccountAuth( id , false );
		
		return PLUGIN_HANDLED;
	}
	
	setAccountAuth( id , true );
	
	client_cmd( id , "messagemode NumerPin" );
	
	return PLUGIN_HANDLED;
}

public handlePinNumber( id ){
	new szData[ 128 ];
	
	read_argv( 1 , szData , charsmax( szData ) );
	
	trim( szData );
	
	if( strlen( szData ) == 0 ){
		return PLUGIN_HANDLED;
	}
	
	if( getAccountLogged( id ) ){
		if( getAccountAuth( id ) ){
			setAccountPin( id , szData );
			
			setAccountAuth( id , false );
		}
	}
	else if( getAccountCreated( id ) ){
		if( loginToAccount( id , szData ) ){
			client_print( id , print_chat , "[BANK] You are logged in" );
		}
		else{
			client_print( id , print_chat , "[BANK] Evil Code pin" );
			
			setAccountTry( id , getAccountTry( id ) + 1 );
			
			if( getAccountTry( id ) >= 3 ){
				new playerName[ 256 ];
				
				get_user_name( id , playerName , charsmax( playerName ) );
				
				server_cmd( "kick ^"%s^" ^"Too many times you typed a wrong PIN^"" , playerName );
			}
		}
	}
	else {
		if( createAccount( id , szData) ){
			client_print( id , print_chat , "The account has been set up and are logged in" );
		}
	}
	
	return PLUGIN_HANDLED;
}

public handleWplacAmmo( id ){
	if( !getAccountLogged( id ) ){
		return PLUGIN_HANDLED;
	}
	
	new szAmmount[ 16 ] ,
		iAmmount = 0,
		iDiffrenceAccount;
	
	read_argv( 1 , szAmmount , charsmax( szAmmount ) );
	
	trim( szAmmount );
	
	iAmmount = str_to_num( szAmmount );
	
	if( iAmmount <= 0 ){
		client_print( id , print_chat , "[BANK] Invalid number of coins" );
		
		return PLUGIN_HANDLED;
	}
	
	if( iAmmount > BB_get_user_ap( id ) ){
		iAmmount = BB_get_user_ap( id );
	}
	
	iDiffrenceAccount = getAccountLimit( id ) - getAccountValue( id );
	
	if( iDiffrenceAccount < iAmmount ){
		iAmmount = iDiffrenceAccount;
	}
	
	client_print( id , print_chat , "[BANK] On account was transferred %d coins. To limit your account has been %d many" , getAccountLimit( id ) - getAccountValue( id ) ); 
	
	BB_set_user_ap( id , BB_get_user_ap( id ) - iAmmount );
	
	if( getAccountDebt( id ) > 0 ){
		if( getAccountDebt( id ) < iAmmount ){
			iAmmount -= getAccountDebt( id );
			
			setAccountDebt( id , 0 );
		}
		else {
			setAccountDebt( id , getAccountDebt( id ) - iAmmount );
			
			iAmmount = 0;
		}
	}
	
	setAccountValue( id , getAccountValue( id ) + iAmmount );
	
	return PLUGIN_HANDLED;
}

public handleWyplacAmmo( id ){
	if( !getAccountLogged( id ) ){
		return PLUGIN_HANDLED;
	}
	
	new szAmmount[ 16 ] ,
		iAmmount = 0;
	
	read_argv( 1 , szAmmount , charsmax( szAmmount ) );
	
	trim( szAmmount );
	
	iAmmount = str_to_num( szAmmount );
	
	if( iAmmount <= 0 ){
		client_print( id , print_chat , "[BANK] Invalid number of coins" );
		
		return PLUGIN_HANDLED;
	}
	
	if( iAmmount > getAccountValue( id ) ){
		iAmmount = getAccountValue( id );
	}
	
	setAccountValue( id , getAccountValue( id ) - iAmmount );
	
	BB_set_user_ap( id , BB_get_user_ap( id ) + iAmmount );
	
	client_print( id , print_chat , "[BANK] Paid %d many" , iAmmount );
	
	return PLUGIN_HANDLED;
}

public handleDebt( id ){
	if( !getAccountLogged( id ) ){
		return PLUGIN_HANDLED;
	}
	
	new szAmmount[ 16 ] ,
		iAmmount = 0;
	
	read_argv( 1 , szAmmount , charsmax( szAmmount ) );
	
	trim( szAmmount );
	
	iAmmount = str_to_num( szAmmount );
	
	if( iAmmount <= 0 ){
		client_print( id , print_chat , "[BANK] Invalid number of coins" );
		
		return PLUGIN_HANDLED;
	}
	
	if( iAmmount > 40 || iAmmount + getAccountDebt( id ) > 40 ){
		client_print( id , print_chat , "[BANK] You can borrow up to 40 coins" );
		
		return PLUGIN_HANDLED;
	}
	
	BB_set_user_ap( id , BB_get_user_ap( id ) + iAmmount );
	
	client_print( id , print_chat , "[BANK] Borrowed %d many" , iAmmount );
	
	
	return PLUGIN_HANDLED;
}

public mainMenu( id ){
	
	new szDebt[ 128 ];
	
	formatex( szDebt , charsmax( szDebt ) , "/ Currently borrowed %d many" , getAccountDebt( id ) );
	
	new szTitle[ 256 ];
	
	formatex( szTitle , charsmax( szTitle ) , "Menu konta / LIMIT %d / number of coins %d %s" ,getAccountLimit( id ) , getAccountValue( id ) , getAccountDebt( id ) ? szDebt : "" );
	
	new pMenu = menu_create( szTitle , "mainMenuHandle" );
	
	menu_additem( pMenu , "Donate coins" );
	menu_additem( pMenu , "Withdraw coins" );
	menu_additem( pMenu , "Settings ( change pin )" );
	menu_additem( pMenu , "Improving Accounts ( Bank Limit Increase )" );
	menu_additem( pMenu , "The richest Players Server" );
	menu_additem( pMenu , "Loan" );
	
	menu_setprop( pMenu , MPROP_BACKNAME , "Back" );
	menu_setprop( pMenu , MPROP_NEXTNAME , "Further" );
	menu_setprop( pMenu , MPROP_EXITNAME , "Quit" );
	
	menu_display( id , pMenu );
}

public mainMenuHandle( id , menu , item ){
	if( item == MENU_EXIT ){
		menu_destroy( menu );
		
		return PLUGIN_HANDLED;
	}
	
	switch( item ){
		case 0 : {
			client_print( id , print_chat , "[BANK] How much you wish to deposit coins ?" );
			
			client_cmd( id , "messagemode WplacMonety" );
		}
		case 1 : {
			client_print( id , print_chat , "[BANK] How much you want to withdraw coins ?" );
			
			client_cmd( id , "messagemode WyplacMonety" );
		}
		case 2 : {
			setAccountAuth( id , false );
			
			client_print( id , print_chat , "[BANK] Enter old pin" );
			
			client_cmd( id , "messagemode PinNumberOld" );
		}
		case 3 : {
			if( BB_get_user_ap( id ) < 100 ){
				client_print( id , print_chat , "[BANK] You have too little coins need 100" );
			}
			else if( getAccountLimit( id ) >= 10000 ){
				client_print( id , print_chat , "[BANK] You can not upgrade your account" );
			}
			else {
				new iAddValue = 400;
				
				if( 10000 - getAccountLimit( id ) < 400 ){
					iAddValue = 10000 - getAccountLimit( id );
				}
				
				BB_set_user_ap( id , BB_get_user_ap( id ) - 100 );
				
				setAccountLimit( id , getAccountLimit( id ) + iAddValue );
				
				client_print( id , print_chat , "[BANK] Improved account for %d limit" , getAccountLimit( id ) );
			}
		}
		case 4 : {
			
			delete_file( "tmpAccount.html" );
			
			new handleUtil = nvault_util_open( "BankDataBase" );
			
			new iAmountTotal = nvault_util_count( handleUtil );
			
			new iRet , iPos;
			new szKey[ 256 ] , szData[ 256 ] , iTimeStamp;
			
			new szText[ 256 ];
			
			new accountInformation[ structPlayer ];
			
			new Array: arrayAccounts = ArrayCreate( 1 , sizeof accountInformation ); 
			
			new szPin[ 256 ] ,
				szValue[ 16 ] ,
				szLimit[ 16 ];
			
			for ( new iCurrent = 1 ; iCurrent <= iAmountTotal ; iCurrent++ ){
				new accountInformationSecond[ structPlayer ]; // Im really tired today sorry
				
				iPos = nvault_util_read( handleUtil , iPos , szKey , charsmax( szKey ) , szData , charsmax( szData ) , iTimeStamp );
					
				copy( accountInformationSecond[ accountName ] , MAX_LEN_STRUCT - 1 , szKey );
				
				replace_all( szData , charsmax( szData ) , "#" , " " );
	
				parse( szData , szPin , charsmax( szPin ) , szValue , charsmax( szValue ) , szLimit , charsmax( szLimit ) );
				
				accountInformationSecond[ accountValue ] = str_to_num( szValue );
				
				ArrayPushArray( arrayAccounts , accountInformationSecond );

			}
			
			new iBorder = min( 10 , ArraySize( arrayAccounts ) );
			
			for( new iCurrentElement = 0 ; iCurrentElement < iBorder ; iCurrentElement++ ){
				
				new iBiggestNow = 0 ,
					iID = -1;
				
				for( new iCurrentElement2 = 0 ; iCurrentElement2 < ArraySize( arrayAccounts ) ; iCurrentElement2++ ){
					ArrayGetArray( arrayAccounts , iCurrentElement2 , accountInformation );
					
					if( iBiggestNow < accountInformation[ accountValue ] ){
						iBiggestNow = accountInformation[ accountValue ];
						iID = iCurrentElement2;
					}
				}
				
				if( iID != -1 ){
					ArrayGetArray( arrayAccounts , iID , accountInformation );
					
					formatex( szText , charsmax( szText ) , "%d. %s - %d</br>" , iCurrentElement + 1 , accountInformation[ accountName ] , accountInformation[ accountValue ] );
				
					write_file( "tmpAccount.html" , szText ); 
					
					ArrayDeleteItem( arrayAccounts , iID );
				}
			}
			
			show_motd( id , "tmpAccount.html" , "10 Richest Players Server" );
			
			ArrayDestroy( arrayAccounts );
			
			nvault_util_close( handleUtil );
			
			#pragma unused iRet
		}
		case 5 : {
			client_print( id , print_chat , "[BANK] You can borrow up to 40 coins" );
			
			client_cmd( id , "messagemode DebtGet" );
		}
	}
	
	menu_destroy( menu );
	
	return PLUGIN_HANDLED;
}

public sortDescending( Array: array , itemFirst , itemSecond ){
	new accountInformationFirst[ structPlayer ] ,
		accountInformationSecond[ structPlayer ];
		
	ArrayGetArray( array , itemFirst , accountInformationFirst );
	ArrayGetArray( array , itemSecond , accountInformationSecond );
	
	if( accountInformationFirst[ accountValue ] > accountInformationSecond[ accountValue ] ){
		return 1;
	}
	else if( accountInformationFirst[ accountValue ] < accountInformationSecond[ accountValue ] ){
		return -1;
	}
	
	
	return 0;
}

public menuTransfer( id ){
	new szName[ 256 ] ,
		szID[ 16 ];
	
	new pMenu = menu_create( "Select a Player" , "menuTransferHandle" );
	
	for( new iPlayer = 1 ; iPlayer < maxPlayer ; iPlayer++ ){
		if( !is_user_connected( iPlayer ) || id == iPlayer || !getAccountLogged( iPlayer ) ){
			continue;
		}
		
		num_to_str( iPlayer , szID , charsmax( szID ) );
		
		get_user_name( iPlayer , szName , charsmax( szName ) );
		
		menu_additem( pMenu , szName , szID );
	}
	
	menu_display( id , pMenu );
}

public menuTransferHandle( id , menu , item ){
	if( item == MENU_EXIT ){
		menu_destroy( menu );
		return PLUGIN_HANDLED;
	}
	
	new access , szInfo[ 32 ], name[ 256 ] , callback;

	menu_item_getinfo( menu , item , access, szInfo , charsmax( szInfo ) , name , charsmax( name ) , callback );
	
	new idFound = str_to_num( szInfo );
	
	if( !is_user_connected( idFound ) || !getAccountLogged( idFound ) ){
		menu_destroy( menu );
		return PLUGIN_HANDLED;
	}
	
	client_print( id , print_chat , "[BANK] How much you want to convey ?" );
	
	iTransfer[ id ] = idFound;
	
	client_cmd( id , "messagemode TransferMonet" );
	
	menu_destroy( menu );
	return PLUGIN_HANDLED;
}

bool: loginToAccount( id , szData[] ){
	if( getAccountLogged( id ) ){
		return false;
	}
	
	new szPin[ MAX_LEN_STRUCT ];
	
	getAccountPin( id , szPin , charsmax( szPin ) );
	
	if( strcmp( szPin , szData ) != 0 ){
		
		return false;
	}
	
	setAccountLogged( id , true );
	setAccountTry( id , 0 );
	
	mainMenu( id );
	
	return true;
}

bool:createAccount( id , szPin[] ){
	if( getAccountCreated( id ) ){
		return false;
	}
	
	setAccountCreated( id , true );
	setAccountPin( id , szPin );
	setAccountLogged( id , true );
	setAccountLimit( id , 400 );
	setAccountDebt( id , 0 );
	
	return true;
}

loadUserInformations( id ){
	new szData[ 256 ],
		szKey[ MAX_LEN_STRUCT ];
		
	
	getAccountName( id , szKey , charsmax( szKey ) );
	
	nvault_get( vaultHandle , szKey , szData , charsmax( szData ) );
	
	if( strcmp( szData , "" ) == 0 ){
		setAccountCreated( id , false );
		
		return;
	}
	
	new szPin[ 256 ] ,
		szValue[ 16 ] ,
		szLimit[ 16 ] ,
		szDebt[ 16 ];
	
	replace_all( szData , charsmax( szData ) , "#" , " " );
	
	parse( szData , szPin , charsmax( szPin ) , szValue , charsmax( szValue ) , szLimit , charsmax( szLimit ) , szDebt , charsmax( szDebt ) );
	
	setAccountPin( id , szPin );
	setAccountValue( id , str_to_num( szValue ) );
	setAccountLimit( id , str_to_num( szLimit ) );
	setAccountDebt( id , str_to_num( szDebt ) );
	
	setAccountCreated( id , true );
	
}

saveUserInformations( id ){
	if( !getAccountLogged( id ) ){
		return ;
	}
	
	new szData[ 256 ],
		szKey[ MAX_LEN_STRUCT ];
	
	new pinNumber[ MAX_LEN_STRUCT ];
	
	getAccountName( id , szKey , charsmax( szKey ) );
	
	getAccountPin( id , pinNumber , charsmax( pinNumber ) );
	
	formatex( szData , charsmax( szData ) , "%s#%d#%d#%d" , pinNumber , getAccountValue( id ) , getAccountLimit( id ) , getAccountDebt( id ) );
	
	nvault_set( vaultHandle , szKey , szData );
}

setAccountName( id , szName[] ){
	copy( playersInformations[ id ][ accountName ] , MAX_LEN_STRUCT - 1 , szName );
}

getAccountName( id , szName[] , maxLen ){
	copy( szName , maxLen , playersInformations[ id ][ accountName ] );
}

setAccountCreated( id , bool:stateAccount ){
	playersInformations[ id ][ accountCreated ] = stateAccount;
}

bool:getAccountCreated( id ){
	return bool:playersInformations[ id ][ accountCreated ];
}

setAccountPin( id , szPin[] ){
	copy( playersInformations[ id ][ accountPin ] , MAX_LEN_STRUCT - 1 , szPin );
}

getAccountPin( id , szPin[] , maxLen ){
	copy( szPin , maxLen , playersInformations[ id ][ accountPin ] );
}

setAccountValue( id , value ){
	playersInformations[ id ][ accountValue ] = value;
}

getAccountValue( id ){
	return playersInformations[ id ][ accountValue ];
}

setAccountLogged( id , bool:stateAccount ){
	playersInformations[ id ][ accountLogged ] = stateAccount;
}

bool:getAccountLogged( id ){
	return bool:playersInformations[ id ][ accountLogged ];
}

setAccountTry( id , numberTry ){
	playersInformations[ id ][ accountTry ] = numberTry;
}

getAccountTry( id ){
	return playersInformations[ id ][ accountTry ];
}

setAccountLimit( id , numberLimit ){
	playersInformations[ id ][ accountLimitValue ] = numberLimit;
}

getAccountLimit( id ){
	return playersInformations[ id ][ accountLimitValue ];
}

setAccountAuth( id , bool:auth ){
	playersInformations[ id ][ accountAuth ] = auth;
}

bool: getAccountAuth( id ){
	return bool:playersInformations[ id ][ accountAuth ];
}

setAccountDebt( id , value ){
	playersInformations[ id ][ accountDebt ] = value;
}

getAccountDebt( id ){
	return playersInformations[ id ][ accountDebt ];
}

clearUserInformations( id ){
	setAccountCreated( id , false );
	setAccountName( id , "" );
	setAccountPin( id , "" );
	setAccountValue( id , 0 );
	setAccountLogged( id , false );
	setAccountTry( id , 0 );
	setAccountLimit( id , 0 );
	setAccountAuth( id , false );
	setAccountDebt( id , 0 );
}
Команда: /bank (има регистрация за запазване аммо)

______________________________________________________________________________

Base Builder Various HP
Описание:
Този плъгин е добър за версия 5.4 basebuilder. Колкото повече пъти зомби умира това е по-силен.
Например, обикновено има зомби 2500 HP когато убиваш вече ще имаш 2600, след като е убил 2700 и така нататък.
ТОЗИ ПЛЪГИН РАБОТИ САМО ПРИ BASE BUILDER 5.4 (TIRANT) НЕ РАБОТИ С ТАЗИ ВЕРСИЯ 6.5,6,7

Code: Select all

#include <amxmodx>
#include <hamsandwich>
#include <cstrike>
#include <fakemeta>

#define PLUGIN "Various HP"
#define VERSION "1.0"
#define AUTHOR "Zenek"
#pragma semicolon 1

#define TASK 88423

new numspawns[33];
new p_zombiehp, p_addedhp, p_numdies;
new Float:zombiehp, Float:addedhp, numdies;

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR);
	
	p_zombiehp = register_cvar("bbv_zombiehp", "3000");
	p_addedhp = register_cvar("bbv_added_health", "200");
	p_numdies = register_cvar("bbv_number_deaths", "1");
	RegisterHam(Ham_Spawn, "player", "hamspawn", 1);
}

public plugin_cfg()
{
	zombiehp = get_pcvar_float(p_zombiehp);
	addedhp = get_pcvar_float(p_addedhp);
	numdies = get_pcvar_num(p_numdies);
}

public client_connect(id)
	numspawns[id] = 0;

public hamspawn(id)
{
	if (get_user_team(id) == 1)
	{
		numspawns[id]++;
		set_task(1.5, "change_hp", TASK+id);
	}
	else
		numspawns[id] = 0;
}
		
public change_hp(id)
{
	id -= TASK;
	set_pev(id, pev_health, zombiehp+addedhp*float((numspawns[id]-1)/numdies));
}
User avatar
Cs-nFL.InFo
Потребител
Потребител
Posts: 17
Joined: 13 Aug 2015, 12:47
Skype: krasimir.panaiotov5
CS Nick: xXProHexXx
Favorite version: CS: 1.6
Location: Sofia

Re: [BB Plugins,Mods][FREE .SMA BB 6.7 TIRANT]Base Builder B

Post by Cs-nFL.InFo »

BASE BUILDER 6.5 //FREE LOCK+SHOP+SKINS+HEAD RANK+VIP and Rules(FREE PSD)(TIRANT)

Вклучвам го тръгва и спира? Моля за Помощ?!!!
User avatar
cStrikeREAL
Потребител
Потребител
Posts: 110
Joined: 19 May 2011, 17:57
Favorite version: CS: 1.6
Steam Community ID: cStrikeKappa

Re: [BB Plugins,Mods][FREE .SMA BB 6.7 TIRANT]Base Builder B

Post by cStrikeREAL »

CsnFLInFo wrote:BASE BUILDER 6.5 //FREE LOCK+SHOP+SKINS+HEAD RANK+VIP and Rules(FREE PSD)(TIRANT)

Вклучвам го тръгва и спира? Моля за Помощ?!!!
При мер този проблем няма , най-верятно е от теб ? http://prikachi.com/images/825/8672825w.png
Post Reply

Return to “AMX Mod (X)”