Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Ножи

Статус пользователя Machette
сообщение 29.7.2013, 16:52
Сообщение #1


Стаж: 14 лет

Сообщений: 546
Благодарностей: 419
Полезность: 947

Здраствуйте, нужно привязать к ножу "Hammer" флаг доступа "t"
и в чат сообщения "Доступно только вип игрокам" при выборе ножа.

Исходник
Код:
#include < amxmodx >
#include < amxmisc >
#include < hamsandwich >
#include < fakemeta >
#include < engine >
#include < xs >
#include < nvault >
#include < zombieplague >

#define PLUGIN "[ZP] Knifes"
#define VERSION "2.0"
#define AUTHOR "heka"

new iKnife[ 33 ]
new iAttack[ 33 ]

enum { AXE = 0 , STRONG , COMBAT , HAMMER }
new const Knife_View_Models[ ] [ ] = { "models/knife_aecs/v_axe.mdl" , "models/knife_aecs/v_strong.mdl" , "models/knife_aecs/v_combat.mdl" , "models/knife_aecs/v_hammer.mdl" }
new const Knife_Player_Models[ ] [ ] = { "models/knife_aecs/p_axe.mdl" , "models/knife_aecs/p_strong.mdl" , "models/knife_aecs/p_combat.mdl" , "models/knife_aecs/p_hammer.mdl" }
new const Knife_Sounds[ ] [ ] [ ] =
{
{ "knife_aecs/axe/draw.wav" , "knife_aecs/axe/hit_normal_1.wav" , "knife_aecs/axe/hit_normal_2.wav" , "knife_aecs/axe/hit_wall.wav" , "knife_aecs/axe/miss.wav" , "knife_aecs/axe/hit_stab.wav" },
{ "knife_aecs/strong/draw.wav" , "knife_aecs/strong/hit_normal_1.wav" , "knife_aecs/strong/hit_normal_2.wav" , "knife_aecs/strong/hit_wall.wav" , "knife_aecs/strong/miss.wav" , "knife_aecs/strong/hit_stab.wav" },
{ "knife_aecs/combat/draw.wav" , "knife_aecs/combat/hit_normal_1.wav" , "knife_aecs/combat/hit_normal_2.wav" , "knife_aecs/combat/hit_wall.wav" , "knife_aecs/combat/miss.wav" , "knife_aecs/combat/hit_stab.wav" },
{ "knife_aecs/hammer/draw.wav" , "knife_aecs/hammer/hit_normal_1.wav" , "knife_aecs/hammer/hit_normal_2.wav" , "knife_aecs/hammer/hit_wall.wav" , "knife_aecs/hammer/miss.wav" , "knife_aecs/hammer/hit_stab.wav" }
}
new const Knife_WeaponList[ ] [ ] = { "knife_axe_aecs" , "knife_strong_aecs" , "knife_combat_aecs" , "knife_hammer_aecs" }
new const Knife_WeaponListFiles[ ] [ ] = { "sprites/knife_axe_aecs.txt" , "sprites/knife_strong_aecs.txt" , "sprites/knife_combat_aecs.txt" , "sprites/knife_hammer_aecs.txt" }
new const Knife_Sprites[ ] [ ] = { "sprites/knife_aecs/640hud47.spr" , "sprites/knife_aecs/640hud25.spr" , "sprites/knife_aecs/640hud39.spr" , "sprites/knife_aecs/640hud21.spr" }

new cvar_jump[ 4 ]
new cvar_damage[ 4 ]
new cvar_knockback[ 4 ]
new cvar_attack1_distance[ 4 ]
new cvar_attack2_distance[ 4 ]
new cvar_attack2_delay[ 4 ]

public plugin_init( )
{
register_plugin( PLUGIN , VERSION , AUTHOR )

register_event("CurWeapon","SetKnifeModel","be","1=1");
RegisterHam( Ham_Weapon_PrimaryAttack , "weapon_knife" , "CBaseWeapon_PrimaryAttack_Post" , .Post = true )
RegisterHam( Ham_TakeDamage , "player" , "CBasePlayer_TakeDamage_Post" , .Post = true )
RegisterHam( Ham_Weapon_SecondaryAttack , "weapon_knife" , "CBaseWeapon_SecAttack_Post" , .Post = true )

RegisterHam( Ham_TakeDamage , "player" , "CBasePlayer_TakeDamage" )
RegisterHam( Ham_Weapon_PrimaryAttack , "weapon_knife" , "CBaseWeapon_PrimaryAttack" )
RegisterHam( Ham_Weapon_SecondaryAttack , "weapon_knife" , "CBaseWeapon_SecondaryAttack" )

RegisterHam(Ham_Spawn, "player", "CBasePlayer_Spawn")

register_forward( FM_EmitSound , "Fw_EmitSound" )
register_forward( FM_PlayerPreThink , "Fw_PreThink" );
register_forward( FM_TraceLine , "Fw_TraceLine" )
register_forward( FM_TraceHull , "Fw_TraceHull" )

cvar_jump[ 0 ] = register_cvar( "zp_jump_axe" , "125.0" )
cvar_jump[ 1 ] = register_cvar( "zp_jump_strong" , "200.0" )
cvar_jump[ 2 ] = register_cvar( "zp_jump_combat" , "175.0" )
cvar_jump[ 3 ] = register_cvar( "zp_jump_hammer" , "200.0" )

cvar_damage[ 0 ] = register_cvar( "zp_damage_axe" , "4.0" )
cvar_damage[ 1 ] = register_cvar( "zp_damage_strong" , "3.0" )
cvar_damage[ 2 ] = register_cvar( "zp_damage_combat" , "3.5" )
cvar_damage[ 3 ] = register_cvar( "zp_damage_hammer" , "4.0.0" )

cvar_knockback[ 0 ] = register_cvar( "zp_knockback_axe" , "8.0" )
cvar_knockback[ 1 ] = register_cvar( "zp_knockback_strong" , "7.0" )
cvar_knockback[ 2 ] = register_cvar( "zp_knockback_combat" , "5.0" )
cvar_knockback[ 3 ] = register_cvar( "zp_knockback_hammer" , "8.0" )

cvar_attack1_distance[ 0 ] = register_cvar( "zp_attack2_distance_axe" , "48.0" )
cvar_attack1_distance[ 1 ] = register_cvar( "zp_attack2_distance_strong" , "48.0" )
cvar_attack1_distance[ 2 ] = register_cvar( "zp_attack2_distance_combat" , "48.0" )
cvar_attack1_distance[ 3 ] = register_cvar( "zp_attack2_distance_hammer" , "48.0" )

cvar_attack2_distance[ 0 ] = register_cvar( "zp_attack2_distance_axe" , "32.0" )
cvar_attack2_distance[ 1 ] = register_cvar( "zp_attack2_distance_strong" , "32.0" )
cvar_attack2_distance[ 2 ] = register_cvar( "zp_attack2_distance_combat" , "32.0" )
cvar_attack2_distance[ 3 ] = register_cvar( "zp_attack2_distance_hammer" , "32.0" )

cvar_attack2_delay[ 0 ] = register_cvar( "zp_attack2_delay_axe" , "1.0" )
cvar_attack2_delay[ 1 ] = register_cvar( "zp_attack2_delay_strong" , "1.0" )
cvar_attack2_delay[ 2 ] = register_cvar( "zp_attack2_delay_combat" , "1.0" )
cvar_attack2_delay[ 3 ] = register_cvar( "zp_attack2_delay_hammer" , "1.0" )

register_clcmd( "say /knifes" , "ClCmd_KnifeMenu" )

register_clcmd( "knife_axe_aecs" , "Hook_WeaponList" );
register_clcmd( "knife_strong_aecs" , "Hook_WeaponList" );
register_clcmd( "knife_combat_aecs" , "Hook_WeaponList" );
register_clcmd( "knife_hammer_aecs" , "Hook_WeaponList" );
}

public plugin_precache( )
{
new i;

for(i = 0; i < 4; i++) {
precache_model( Knife_Player_Models[ i ] )
precache_model( Knife_View_Models[ i ] )
}

for( i = 0; i < 4; i++ )
{
precache_sound( Knife_Sounds[ i ] [ 0 ] )
precache_sound( Knife_Sounds[ i ] [ 1 ] )
precache_sound( Knife_Sounds[ i ] [ 2 ] )
precache_sound( Knife_Sounds[ i ] [ 3 ] )
precache_sound( Knife_Sounds[ i ] [ 4 ] )
precache_sound( Knife_Sounds[ i ] [ 5 ] )
}

for( i = 0; i < sizeof Knife_Sprites; i++ )
{
precache_generic( Knife_Sprites[ i ] );
}

for(i = 0; i < 4; i++)
{
precache_generic( Knife_WeaponListFiles[ i ] )
precache_generic( Knife_WeaponListFiles[ i ] )
}
}

public Hook_WeaponList( iPlayer )
{
engclient_cmd( iPlayer, "weapon_knife" )
return PLUGIN_HANDLED
}

public client_putinserver( iPlayer )
{
iKnife [ iPlayer ] = AXE
}

public zp_user_humanized_post( iPlayer )
{
if( zp_get_user_survivor( iPlayer ) )
Set_Sprite( iPlayer, "knife_axe_aecs" )
}

public zp_user_infected_post( iPlayer )
{
Set_Sprite( iPlayer, "weapon_knife" )
}

public CBasePlayer_Spawn( iPlayer )
{
Set_Sprite( iPlayer, Knife_WeaponList[ iKnife[ iPlayer ] ] )
}

public ClCmd_KnifeMenu( iPlayer )
{
if( ! is_user_alive( iPlayer ) ) return
if( zp_get_user_zombie( iPlayer ) ) return
if( zp_has_round_started( ) ) return

static buffer[ 512 ]
new iKnife_Menu = menu_create( "\yChoose knife" , "ClCmd_KnifeMenu_Handler" )

formatex( buffer , charsmax( buffer ) , iKnife[ iPlayer ] == AXE ? "\rAxe" : "Axe" )
menu_additem( iKnife_Menu , buffer , "1" )
formatex( buffer , charsmax( buffer ) , iKnife[ iPlayer ] == STRONG ? "\rStrong" : "Strong" )
menu_additem( iKnife_Menu , buffer , "2" )
formatex( buffer , charsmax( buffer ) , iKnife[ iPlayer ] == COMBAT ? "\rCombat" : "Combat" )
menu_additem( iKnife_Menu , buffer , "3" )
formatex( buffer , charsmax( buffer ) , iKnife[ iPlayer ] == HAMMER ? "\rHammer \y[VIP]" : "Hammer \y[VIP]" , ADMIN_LEVEL_H )
menu_additem( iKnife_Menu , buffer , "4" )

menu_setprop( iKnife_Menu , MPROP_EXIT , MEXIT_ALL )
menu_display( iPlayer , iKnife_Menu , 0 )
}

public ClCmd_KnifeMenu_Handler( iPlayer , iMenu , iItem )
{
if( iItem == MENU_EXIT )
{
menu_destroy( iMenu )
return PLUGIN_HANDLED
}

if( zp_has_round_started( ) ) return PLUGIN_HANDLED

new iData[ 6 ] , iName[ 64 ]
new iAccess, iCallBack
menu_item_getinfo( iMenu , iItem , iAccess , iData , 5 , iName , 63 , iCallBack )
new iKey = str_to_num( iData )

switch( iKey )
{
case 1: iKnife[ iPlayer ] = AXE
case 2: iKnife[ iPlayer ] = STRONG
case 3: iKnife[ iPlayer ] = COMBAT
case 4: iKnife[ iPlayer ] = HAMMER
}

message_begin( MSG_ONE , get_user_msgid("WeapPickup") , _, iPlayer )
write_byte( CSW_KNIFE )
message_end( )

if( get_user_weapon ( iPlayer ) != CSW_KNIFE ) return PLUGIN_HANDLED;

ExecuteHamB( Ham_Item_Deploy , get_pdata_cbase( iPlayer , 373 ) )

SetKnifeModel( iPlayer )
Set_Sprite( iPlayer, Knife_WeaponList[ iKnife[ iPlayer ] ] )

return PLUGIN_HANDLED
}

public SetKnifeModel(id)
{
if(get_user_weapon(id) != CSW_KNIFE || zp_get_user_zombie(id))
return;

set_pev( id , pev_viewmodel2 , Knife_View_Models[ iKnife[ id ] ] );
set_pev( id , pev_weaponmodel2 , Knife_Player_Models[ iKnife[ id ] ] );

return;
}

public Fw_EmitSound( iPlayer , iChannel , iSample[] , Float:flVolume , Float:flAttn , iFlag , iPitch )
{
if( ! is_user_connected( iPlayer ) ) return FMRES_IGNORED;
if( zp_get_user_zombie( iPlayer ) ) return FMRES_IGNORED

if( iSample[ 8 ] == 'k' && iSample[ 9 ] == 'n' && iSample[ 10 ] == 'i' ) {
if( iSample[ 14 ] == 'd' )
{
emit_sound( iPlayer , iChannel , Knife_Sounds[ iKnife [ iPlayer ] ] [ 0 ] , flVolume , flAttn , iFlag , iPitch )
}
else if(iSample[ 14 ] == 'h')
{
if(iSample[ 17 ] == 'w')
{
emit_sound(iPlayer , iChannel , Knife_Sounds[ iKnife[ iPlayer ] ] [ 3 ] , flVolume , flAttn , iFlag , iPitch )
}
else
{
emit_sound(iPlayer , iChannel , Knife_Sounds[ iKnife[ iPlayer ] ] [ random_num( 1 , 2 ) ] , flVolume , flAttn , iFlag , iPitch )
}
}
else
{
if( iSample[ 15 ] == 'l' )
{
emit_sound( iPlayer , iChannel , Knife_Sounds[ iKnife[ iPlayer ] ] [ 4 ] , flVolume , flAttn , iFlag , iPitch )
}
else
{
emit_sound( iPlayer , iChannel , Knife_Sounds[ iKnife[ iPlayer ] ] [ 5 ] , flVolume , flAttn , iFlag , iPitch )
}
}

return FMRES_SUPERCEDE;
}

return FMRES_IGNORED;
}

public CBasePlayer_TakeDamage( iVictim , iInflector , iAttacker , Float:flDamage , bitsDamageType )
{
if(!is_user_connected(iAttacker) || iVictim == iAttacker)
return;

if(get_user_weapon(iAttacker) != CSW_KNIFE || ~bitsDamageType & (DMG_BULLET | DMG_NEVERGIB))
return;

if(zp_get_user_zombie(iAttacker))
return;

SetHamParamFloat( 4 , flDamage * get_pcvar_float( cvar_damage[ iKnife[ iAttacker ] ] ) )
}

public CBasePlayer_TakeDamage_Post( iVictim , iInflector, iAttacker , Float:flDamage , bitsDamageType , Float:velocity[ 3 ] )
{
if( ! is_user_connected( iAttacker ) || iVictim == iAttacker ) return
if( get_user_weapon( iAttacker ) != CSW_KNIFE ) return
if( zp_get_user_zombie( iAttacker ) ) return

new Float:newvelocity[ 3 ]
entity_get_vector( iVictim , EV_VEC_velocity , velocity )

new Float:victim_origin[ 3 ], Float:attacker_origin[ 3 ]
entity_get_vector( iVictim , EV_VEC_origin , victim_origin )
entity_get_vector( iAttacker , EV_VEC_origin , attacker_origin )

newvelocity[ 0 ] = victim_origin[ 0 ] - attacker_origin[ 0 ]
newvelocity[ 1 ] = victim_origin[ 1 ] - attacker_origin[ 1 ]

new Float:largestnum = 0.0

if ( 0 <= floatcmp( floatabs( newvelocity[ 0 ] ) , floatabs( newvelocity[ 1 ] ) ) <= 1 )
{
if ( floatabs( newvelocity[ 0 ] ) > 0 ) largestnum = floatabs( newvelocity[ 0 ] )
}
else
{
if ( floatabs( newvelocity[ 1 ]) > 0 ) largestnum = floatabs( newvelocity[ 1 ] )
}

newvelocity[ 0 ] /= largestnum
newvelocity[ 1 ] /= largestnum

velocity[ 0 ] = newvelocity[ 0 ] * get_pcvar_float( cvar_knockback[ iKnife[ iAttacker ] ] ) * 3000 / get_distance_f( victim_origin , attacker_origin )
velocity[ 1 ] = newvelocity[ 1 ] * get_pcvar_float( cvar_knockback[ iKnife[ iAttacker ] ] ) * 3000 / get_distance_f( victim_origin , attacker_origin )

if( newvelocity[ 0 ] <= 20.0 || newvelocity[ 1 ] <= 20.0 ) newvelocity[ 2 ] = random_float( 200.0 , 275.0 )

newvelocity[ 0 ] += velocity[ 0 ]
newvelocity[ 1 ] += velocity[ 1 ]
entity_set_vector( iVictim , EV_VEC_velocity , newvelocity )

set_pdata_float( iVictim , 108 , 1.0 )
}

public Fw_PreThink( iPlayer )
{
if( ! is_user_alive( iPlayer ) ) return PLUGIN_CONTINUE
if( zp_get_user_zombie( iPlayer ) ) return PLUGIN_CONTINUE

new temp[ 2 ], weapon = get_user_weapon( iPlayer , temp[ 0 ] , temp[ 1 ] )

if( weapon == CSW_KNIFE )
{
if ( ( pev( iPlayer , pev_button ) & IN_JUMP ) && ! ( pev( iPlayer , pev_oldbuttons) & IN_JUMP ) )
{
new flags = pev( iPlayer , pev_flags )
new waterlvl = pev( iPlayer , pev_waterlevel )

if ( ! ( flags & FL_ONGROUND ) ) return PLUGIN_CONTINUE;
if ( flags & FL_WATERJUMP ) return PLUGIN_CONTINUE;
if ( waterlvl > 1 ) return PLUGIN_CONTINUE;

new Float:fVelocity[ 3 ]
pev( iPlayer , pev_velocity , fVelocity )

fVelocity[ 2 ] += get_pcvar_float( cvar_jump[ iKnife[ iPlayer ] ] )

set_pev( iPlayer , pev_velocity , fVelocity )
set_pev( iPlayer , pev_gaitsequence , 6 )
}
}
return PLUGIN_CONTINUE
}

public CBaseWeapon_PrimaryAttack( iEntity )
{
if ( ! pev_valid( iEntity ) ) return;

// Get owner
static iOwner
iOwner = pev( iEntity , pev_owner)

if ( ! is_user_connected( iOwner ) ) return;
if( zp_get_user_zombie( iOwner ) ) return ;

iAttack[ iOwner ] = 1
}

public CBaseWeapon_SecondaryAttack( iEntity )
{
if ( ! pev_valid( iEntity ) ) return;

// Get owner
static iOwner
iOwner = pev( iEntity , pev_owner)

if ( ! is_user_connected( iOwner ) ) return;
if( zp_get_user_zombie( iOwner ) ) return ;

iAttack[ iOwner ] = 1
}

public CBaseWeapon_PrimaryAttack_Post( iEntity )
{
if ( ! pev_valid( iEntity ) ) return;

// Get owner
static iOwner
iOwner = pev( iEntity , pev_owner)

if ( ! is_user_connected( iOwner ) ) return;
if( zp_get_user_zombie( iOwner ) ) return ;

iAttack[ iOwner ] = 0
}

public CBaseWeapon_SecAttack_Post( iEntity )
{
if ( ! pev_valid( iEntity ) ) return;

// Get owner
static iOwner
iOwner = pev( iEntity , pev_owner)

if ( ! is_user_connected( iOwner ) ) return;
if( zp_get_user_zombie( iOwner ) ) return ;

iAttack[ iOwner ] = 0

new Float:fDelay

fDelay = get_pcvar_float(cvar_attack2_delay[ iKnife[ iOwner ] ] )

set_pdata_float( iEntity , 46 , fDelay , 4)
set_pdata_float( iEntity , 47 , fDelay , 4)
set_pdata_float( iEntity , 48 , fDelay , 4)
}

public Fw_TraceLine( Float:vector_start[3] , Float:vector_end[3] , ignored_monster , iPlayer , handle )
{
if ( ! is_user_connected ( iPlayer ) ) return FMRES_IGNORED;
if ( ! is_user_alive( iPlayer ) ) return FMRES_IGNORED;
if ( get_user_weapon( iPlayer ) != CSW_KNIFE) return FMRES_IGNORED;
if ( !iAttack[ iPlayer ] ) return FMRES_IGNORED;
if( zp_get_user_zombie( iPlayer ) ) return FMRES_IGNORED;

pev( iPlayer , pev_v_angle , vector_end )
angle_vector( vector_end , ANGLEVECTOR_FORWARD , vector_end )

if ( iAttack[ iPlayer ] == 1 )
xs_vec_mul_scalar( vector_end , get_pcvar_float( cvar_attack1_distance[ iKnife[ iPlayer ] ] ), vector_end )
else
xs_vec_mul_scalar( vector_end , get_pcvar_float( cvar_attack2_distance[ iKnife[ iPlayer ] ] ) , vector_end )

xs_vec_add( vector_start , vector_end , vector_end )
engfunc( EngFunc_TraceLine , vector_start , vector_end , ignored_monster , iPlayer , handle )

return FMRES_SUPERCEDE;
}

public Fw_TraceHull( Float:vector_start[3] , Float:vector_end[3] , ignored_monster , iPlayer , handle )
{
if ( ! is_user_connected ( iPlayer ) ) return FMRES_IGNORED;
if ( ! is_user_alive( iPlayer ) ) return FMRES_IGNORED;
if ( get_user_weapon( iPlayer ) != CSW_KNIFE) return FMRES_IGNORED;
if ( !iAttack[ iPlayer ] ) return FMRES_IGNORED;
if( zp_get_user_zombie( iPlayer ) ) return FMRES_IGNORED;

pev( iPlayer , pev_v_angle , vector_end )
angle_vector( vector_end , ANGLEVECTOR_FORWARD , vector_end )

if ( iAttack[ iPlayer ] == 1 )
xs_vec_mul_scalar( vector_end , get_pcvar_float( cvar_attack1_distance[ iKnife[ iPlayer ] ] ), vector_end )
else
xs_vec_mul_scalar( vector_end , get_pcvar_float( cvar_attack2_distance[ iKnife[ iPlayer ] ] ) , vector_end )

xs_vec_add( vector_start , vector_end , vector_end )
engfunc( EngFunc_TraceHull , vector_start , vector_end , ignored_monster , iPlayer , handle )

return FMRES_SUPERCEDE;
}

Set_Sprite( iPlayer, const Weapon[ ] )
{
if( ! pev_valid( iPlayer ) )
return;

message_begin( MSG_ONE , get_user_msgid( "WeaponList" ) , _, iPlayer )
write_string( Weapon )
write_byte( -1 )
write_byte( -1)
write_byte( -1 )
write_byte( -1 )
write_byte( 2 )
write_byte( 1 )
write_byte( 29 )
write_byte( 0 )
message_end( )
}


Отредактировал: Machette, - 29.7.2013, 16:57
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Maxopka
сообщение 29.7.2013, 16:59
Сообщение #2


Стаж: 13 лет

Сообщений: 572
Благодарностей: 163
Полезность: 175

Код:
   formatex( buffer , charsmax( buffer ) , iKnife[ iPlayer ] == HAMMER ? "\rHammer \y[VIP]" : "Hammer \y[VIP]" , ADMIN_LEVEL_H )

Он и так под флагом T.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Machette
сообщение 29.7.2013, 17:01
Сообщение #3


Стаж: 14 лет

Сообщений: 546
Благодарностей: 419
Полезность: 947

Maxopka,
Нет, ставил на сервер может выбрать любой игрок..
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Machette
сообщение 29.7.2013, 17:19
Сообщение #4


Стаж: 14 лет

Сообщений: 546
Благодарностей: 419
Полезность: 947

Автор плагина сам писал что там нет привяски на флаг.
Скрытый текст
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Mistrick
сообщение 29.7.2013, 18:50
Сообщение #5


Стаж: 13 лет

Сообщений: 543
Благодарностей: 426
Полезность: 1034

Код:
menu_additem( iKnife_Menu , buffer , "4", ADMIN_LEVEL_H)

вроде так, все лень разобрать работу callback dntknw.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Surf
сообщение 31.7.2013, 18:21
Сообщение #6


Стаж: 14 лет

Сообщений: 1089
Благодарностей: 501
Полезность: 583

Код:
switch( iKey )
{
case 1: iKnife[ iPlayer ] = AXE
case 2: iKnife[ iPlayer ] = STRONG
case 3: iKnife[ iPlayer ] = COMBAT
case 4: iKnife[ iPlayer ] = HAMMER
}


в кейсе где хаммер - проверки на флаги и прочую лабуду
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: