Recopilacion de Stock's
#1
Bueno gente junto con saludarles esta vez quise hacer este thread para compartir stocks, ya que vi que no hay un thread asi.
bueno publicare todos los que tengo si ustedes tienen alguno pasenme para actualzar.

Cantidad de Stocks: 11

=================================================================================================================

stock drop_weapons: bota el arma del cliente

Código PHP:
//Ejemplo: 
drop_weapons(id1bota el arma primaria del cliente
drop_weapons
(id2bota el arma secundaria del cliente
//--------

stock drop_weapons(iddropwhat)
{
    static 
weapons[32], numiweaponid
    num 
0
    get_user_weapons
(idweaponsnum)
    
    const 
PRIMARY_WEAPONS_BIT_SUM = (1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_MAC10)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_MAC10)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|
    (
1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90)
    
    for (
0numi++)
    {
        
weaponid weapons[i]
        
        if (
dropwhat == && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM))
        {
            static 
wname[32]
            
get_weaponname(weaponidwnamesizeof wname 1)
            
engclient_cmd(id"drop"wname)
        }
    }



stock count_characters: cuenta la cantidad de caracteres en un string

Código PHP:
stock count_characters(const szString[], const len sizeof(szString))
{
    new 
counti
    
    
for (leni++)
    {
        if (
isalnum(szString[i]))
            
count++
    }
    
    return 
count;



stock contain_special_characters: revisa si hay algun caracter especial para proceder a ejecutar una accion como restringir, otorgar, etc..

Código PHP:
stock contain_special_charactersid, const str[ ], const type[ ] )
{
    static 
iLen;
    
    
iLen strlenstr )
    
    for( new 
0iLeni++ )
    {
        if( !
isalphastr] ) && !isdigitstr] ) )
        {
            
client_printidprint_chat"%s Caracter especial invalido en %s: ^"%c^""TAGtypestr] );
            
console_printid"%s Caracter especial invalido en %s: ^"%c^""TAGtypestr] );
            
            return 
1;
        }
    }
    
    return 
0;



stock get_killer_weapon: obtiene el nombre del arma con la que mato por lo general se usa en eventos donde muere el player para checkear
con que arma mato y asi setear alguna condicion.

Código PHP:
//Ejemplo
static wpn[24]
get_killer_weapon(atacantepev(victimapev_dmg_inflictor), wpn23)

if(
equal(wpn"ak47")) // si el arma que mato es la ak47 en este caso no va el weapon_
//--------

stock get_killer_weapon(killerinflictorretVar[], retLen)
{
    static 
killer_weapon_name[32];
    
killer_weapon_name "world";
    
    if (
pev_valid(killer) && (pev(killerpev_flags) & FL_CLIENT))
    {
        if (
pev_valid(inflictor))
        {
            if (
inflictor == killer)
            {
                new 
weapon get_user_weapon(killer);
                
get_weaponname(weaponkiller_weapon_name31);
            }
            else 
pev(inflictorpev_classnamekiller_weapon_name31);
        }
    }
    else
    {
        if (
pev_valid(killer)) pev(inflictorpev_classnamekiller_weapon_name31);
        else if (
killer == 0killer_weapon_name "worldspawn";
        }
    
    
// Strip the monster_* or weapon_* from the inflictor's classname
    
if (equal(killer_weapon_name"weapon_"7))
        
format(killer_weapon_name31"%s"killer_weapon_name[7]);
    else if (
equal(killer_weapon_name"monster_"8))
        
format(killer_weapon_name31"%s"killer_weapon_name[8]);
    else if (
equal(killer_weapon_name"func_"5))
        
format(killer_weapon_name31"%s"killer_weapon_name[5]);
    
    
formatex(retVarretLen"%s"killer_weapon_name);
}  


stock addpointsbueno este stock en lo personal me gusta mucho ya que su funcion es agregar un punto al valor con 4 o mas digitos
(1000 -> 1.000)

[
php]

//Ejemplo:
addpoints(variable[id]) // si la variable es mas de 999 se mostraria asi 1.000 | 10.000 | 100.000 | 1.000.000, etc...
//-------

stock addpoints(number)
{
    new 
str[15], strpointed[15], len
    num_to_str
(numberstr14)
    
lenstrlen(str)
    new 
c
    
for (new i=0;i<len;i++)
    {
        if (
i!=&& ((len-i)%3==0))
        {
            
add(strpointed14"."1)
            
c++
            
add(strpointed[i+c], 1str[i], 1)
        }
        else 
add(strpointed[i+c], 1str[i], 1)
    }
    return 
strpointed



stock print_color: muestra mensajes de color tanto al cliente como a todos los clientes.

Código PHP:
//Ejemplo

print_color(id"!gMensaje de color verde para que solo el jugador lo vea")
print_color(0"!gMensaje de color verde para que todos los jugadores lo vean")

print_color(id"!yMensaje de color amarillo para que solo el jugador lo vea")
print_color(0"!yMensaje de color amarillo para que todos los jugadores lo vean")

print_color(id"!tMensaje del color del team que corresponda ct = azul | tt = rojo")
//------

stock print_color(const id, const input[], any:...) 

    static 
msg[191
    
vformat(msg190input3
    
    
replace_all(msg190"!g""^4"
    
replace_all(msg190"!y""^1"
    
replace_all(msg190"!t""^3"
    
    
message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText"), _id
    
write_byte(id
    
write_string(msg
    
message_end() 


stock fm_get_speed: obtiene la velocidad de una entidad

Código PHP:
stock fm_get_speed(entity)
{
    static 
Float:velocity[3]
    
pev(entitypev_velocityvelocity)

    return 
floatround(vector_length(velocity));



stock fm_find_ent_by_owner: Encuentra la entidad del propietario muy util cuando quieres darle cierta cantidad de disparos a
un arma

Código PHP:
//ejemplo:
cs_set_weapon_ammo(fm_find_ent_by_owner(-1"weapon_p228"id), 5); // seteamos a la entidad del arma p228 5 disparos 
//--------

stock fm_find_ent_by_owner(entity, const classname[], owner)
{
    while ((
entity engfunc(EngFunc_FindEntityByStringentity"classname"classname)) && pev(entitypev_owner) != owner) { }
    return 
entity;



stock is_player_stuck: checkea si un player esta trabado o "bugeado"

Código PHP:
stock is_player_stuck(id)
{
    static 
Float:originF[3]
    
pev(idpev_originoriginF)
                
    
engfunc(EngFunc_TraceHulloriginForiginF0, (pev(idpev_flags) & FL_DUCKING) ? HULL_HEAD HULL_HUMANid0)
                
    if (
get_tr2(0TR_StartSolid) || get_tr2(0TR_AllSolid) || !get_tr2(0TR_InOpen))
    return 
true;
                
    return 
false;



stock ham_give_weapon: da un arma al cliente

Código PHP:
//Ejemplo
ham_give_weapon(id"weapon_elite"// le da el arma elite al cliente
//-------

stock ham_give_weapon(id,weapon[])
{
    if(!
equal(weapon,"weapon_",7)) return 0;

    new 
wEnt engfunc(EngFunc_CreateNamedEntity,engfunc(EngFunc_AllocString,weapon));
    if(!
pev_valid(wEnt)) return 0;

    
set_pev(wEnt,pev_spawnflags,SF_NORESPAWN);
    
dllfunc(DLLFunc_Spawn,wEnt);
    
    if(!
ExecuteHamB(Ham_AddPlayerItem,id,wEnt))
    {
        if(
pev_valid(wEnt)) set_pev(wEnt,pev_flags,pev(wEnt,pev_flags) | FL_KILLME);
        return 
0;
    }

    
ExecuteHamB(Ham_Item_AttachToPlayer,wEnt,id)
    return 
1;



stock ham_strip_weapon: // le quita el arma al cliente

Código PHP:
//Ejemplo:
if(user_has_weapon(idCSW_ELITE)) ham_strip_weapon(id"weapon_elite"// si el usuario tiene el arma elite se la quita
//--------

stock ham_strip_weapon(id,weapon[])
{
    if(!
equal(weapon,"weapon_",7)) return 0;

    new 
wId get_weaponid(weapon);
    if(!
wId) return 0;

    new 
wEnt;
    while((
wEnt engfunc(EngFunc_FindEntityByString,wEnt,"classname",weapon)) && pev(wEnt,pev_owner) != id) {}
    if(!
wEnt) return 0;

    if(
get_user_weapon(id) == wIdExecuteHamB(Ham_Weapon_RetireWeapon,wEnt);

    if(!
ExecuteHamB(Ham_RemovePlayerItem,id,wEnt)) return 0;
    
ExecuteHamB(Ham_Item_Kill,wEnt);

    
set_pev(id,pev_weapons,pev(id,pev_weapons) & ~(1<<wId));

    
// Esta parte es para la Granada/C4
    /*if(wId == CSW_C4)
    {
        cs_set_user_plant(id,0,0);
        cs_set_user_bpammo(id,CSW_C4,0);
    }
    else if(wId == CSW_SMOKEGRENADE || wId == CSW_FLASHBANG || wId == CSW_HEGRENADE)
        cs_set_user_bpammo(id,wId,0);*/

    
return 1;



stock mdlsize: detecta el tamaño de un model

Código PHP:
stock mdlsize(filename[],Float:vec[3]){ 
    new 
file fopen(filename,"rb"
    
fseek(file,160,SEEK_SET
    new 
bboff 
    fread
(file,bboff,BLOCK_INT
    
fseek(file,bboff+8,SEEK_SET
    new 
Float:size[6
    
fread_blocks(file,_:size,6,BLOCK_INT
    
fclose(file
    
vec[0]=size[3]-size[0
    
vec[1]=size[4]-size[1
    
vec[2]=size[5]-size[2



stock set_screenfade: setea un efecto luz de pantalla

Código PHP:
stock set_screenfadeidiDuracioniAlpha )
{
    
message_beginid MSG_ONE_UNRELIABLE MSG_BROADCASTget_user_msgid"ScreenFade" ), _id );
    
write_shortiDuracion 4096 );
    
write_shortiDuracion 4096 );
    
write_short0x0000 );
    
write_byterandom_num0255 ) ); // Color 1
    
write_byterandom_num0255 ) ); // Color 2
    
write_byterandom_num0255 ) ); // Color 3
    
write_byteiAlpha );
    
message_end( );
    


PD: Cualquier stock que tengan si quieren dejenlo y lo agrego para la recopilacion... saludos!
PD2: No se si estoy en la seccion correcta :c
Responder


Mensajes en este tema
Recopilacion de Stock's - por 3mcy daimon't - 23/03/2014, 04:47 AM
RE: Recopilacion de Stock's - por K.-' - 23/03/2014, 06:54 AM
RE: Recopilacion de Stock's - por LNATIC - 23/03/2014, 11:52 AM
RE: Recopilacion de Stock's - por RauliTop - 23/03/2014, 12:19 PM
RE: Recopilacion de Stock's - por 3mcy daimon't - 23/03/2014, 10:31 PM
RE: Recopilacion de Stock's - por RauliTop - 24/03/2014, 11:29 AM
RE: Recopilacion de Stock's - por roccoxx - 23/03/2014, 12:47 PM
RE: Recopilacion de Stock's - por cLAANS - 23/03/2014, 01:18 PM
RE: Recopilacion de Stock's - por roccoxx - 23/03/2014, 10:45 PM
RE: Recopilacion de Stock's - por 3mcy daimon't - 23/03/2014, 10:53 PM
RE: Recopilacion de Stock's - por roccoxx - 24/03/2014, 12:12 AM
RE: Recopilacion de Stock's - por Metrikcz - 25/03/2014, 02:44 AM
RE: Recopilacion de Stock's - por roccoxx - 02/06/2014, 05:46 PM
RE: Recopilacion de Stock's - por LA BANDA - 03/06/2014, 01:32 AM
RE: Recopilacion de Stock's - por Kane - 03/06/2014, 06:49 PM
RE: Recopilacion de Stock's - por Ipolito - 02/08/2014, 09:19 AM
RE: Recopilacion de Stock's - por FloresMagon - 11/03/2015, 04:26 PM
RE: Recopilacion de Stock's - por Destro - 04/05/2015, 05:53 PM
RE: Recopilacion de Stock's - por Federicomb - 14/06/2015, 11:45 PM
RE: Recopilacion de Stock's - por Ipolito - 14/06/2018, 06:38 PM
RE: Recopilacion de Stock's - por LuKks - 11/08/2018, 08:06 AM
RE: Recopilacion de Stock's - por Niper.-. - 11/08/2018, 10:42 PM
RE: Recopilacion de Stock's - por LuKks - 12/08/2018, 01:55 AM
RE: Recopilacion de Stock's - por Sugisaki - 11/08/2018, 10:49 PM

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)