AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Why canīt the players move? (https://forums.alliedmods.net/showthread.php?t=112894)

nicolazo103 12-21-2009 23:01

Why canīt the players move?
 
Well iīm having troubles with this plugin. When i enter the game i canīt move, just jump.

PHP Code:

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta_util>
#include <fun>
#include <hamsandwich>

//const
const m_pPlayer             =    41
const m_flNextPrimaryAttack     =    46
const m_flNextSecondaryAttack     =    47
const m_flTimeWeaponIdle     =     48
const m_iClip             =     51

new g_flyEnergy[33]
new 
laserbeam


new key[33]
new 
g_firstround[33]
new 
g_points[33]
new 
g_level[33]
new 
g_explorer[33]
new 
g_soldier[33]
new 
g_heavy[33]
new 
g_sniper[33]
new 
g_comandante[33]

new 
CLASSNAMES [][] = { "Explorer""Soldier""Heavy""Sniper""Comandante" }
new 
cDescripcion [][] = 
{
    
"El mas Rapido, pero con menos vida"
    
"Equilibrado en velocidad, resistencia, y punteria",
    
"El mas Resistente, con armas mas poderosas, pero mas lento",
    
"Poca vida, con armas de gran potencia y precicion",
    
"Poca punteria, pero con una bazooka de gran poder y radio de dano"
}


// CVARS
new cvar_dmgcaida/* cvar_implosion, cvar_glow, cvar_light,*/ cvar_deathmatch,/* cvar_balas,*/
cvar_explorer[4], cvar_soldier[4], cvar_heavy[4], cvar_sniper[4], cvar_comandante[4] ,
cvar_energiacvar_fs

public plugin_precache()
{
    
laserbeam precache_model("sprites/laserbeam.spr")
}

public 
plugin_init() 
{
    
register_plugin("Adr""0.1""lllllllllllll bar code")
    
    
cvar_dmgcaida register_cvar("adr_falldamage""0")
    
//cvar_implosion = register_cvar("adr_particulas", "1")
    
cvar_deathmatch register_cvar("adr_deathmatch""1")
    
//cvar_glow = register_cvar("adr_glow", "1")
    //cvar_light = register_cvar("adr_light", "0")
    //cvar_balas = register_cvar("adr_balas_ilimitadas", "0")
    
cvar_energia register_cvar("ard_energia""200")
    
cvar_fs register_cvar("ard_forward_speed""300.0")
    
    
cvar_explorer[0] = register_cvar("adr_explorer_hp""55")
    
cvar_explorer[1] = register_cvar("adr_explorer_sp""280.0")
    
cvar_explorer[2] = register_cvar("adr_explorer_vl""32")
    
cvar_explorer[3] = register_cvar("adr_explorer_ac""120.0")
    
    
cvar_soldier[0] = register_cvar("adr_soldier_hp""100")
    
cvar_soldier[1] = register_cvar("adr_soldier_sp""240.0")
    
cvar_soldier[2] = register_cvar("adr_soldier_vl""30")
    
cvar_soldier[3] = register_cvar("adr_soldier_ac""100.0")
    
    
cvar_heavy[0] = register_cvar("adr_heavy_hp""205")
    
cvar_heavy[1] = register_cvar("adr_heavy_sp""230.0")
    
cvar_heavy[2] = register_cvar("adr_heavy_vl""25")
    
cvar_heavy[3] = register_cvar("adr_heavy_ac""70.0")
    
    
cvar_sniper[0] = register_cvar("adr_sniper_hp""55")
    
cvar_sniper[1] = register_cvar("adr_sniper_sp""280.0")
    
cvar_sniper[2] = register_cvar("adr_sniper_vl""40")
    
cvar_sniper[3] = register_cvar("adr_sniper_ac""60.0")
    
    
cvar_comandante[0] = register_cvar("adr_comandante_hp""85")
    
cvar_comandante[1] = register_cvar("adr_comandante_sp""220.0")
    
cvar_comandante[2] = register_cvar("adr_comandante_vl""20")
    
cvar_comandante[3] = register_cvar("adr_comandante_ac""80.0")
    
    
RegisterHam(Ham_Spawn"player""fw_Spawn")
    
RegisterHam(Ham_Killed"player""fw_PlayerKilled")
    
RegisterHam(Ham_TakeDamage"player""fw_TakeDamage")
    
    
RegisterHam(Ham_Touch"weaponbox""fw_TouchWeapon")
    
    
register_forward(FM_CmdStart"cmdfly")
    
    
register_clcmd("+menu""show_menu_principal")
}
public 
client_connect(id)
{
    
g_firstround[id] = true
    client_cmd
(id"bind v +menu")
    
g_flyEnergy[id] = get_pcvar_num(cvar_energia)    
}

public 
fw_Spawn(id)
{
    if(
g_firstround[id])
    {
        
show_menu_clases(id)
    }
    else {
        
show_menu_principal(id)
        
crear_trail(id)
        
setear_caracteristicas(id)
    }
    
g_flyEnergy[id] = get_pcvar_num(cvar_energia)
}
public 
crear_trail(id)
{
    if(!
is_user_alive(id))
        return
        
    if(
get_user_team(id) == 3)
        return
        
    if(
get_user_team(id) == 1)
    {
        
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
        
write_byte(TE_BEAMFOLLOW)// write_byte(TE_BEAMFOLLOW)
        
write_short(id)// write_short(entity:attachment to follow)
        
write_short(laserbeam)// write_short(sprite index)
        
write_byte(10)// write_byte(life in 0.1's) 
        
write_byte(5)// write_byte(line width in 0.1's) 
        
write_byte(200)// write_byte(red)
        
write_byte(0)// write_byte(green)
        
write_byte(0)// write_byte(blue)
        
write_byte(192)// write_byte(brightness)
        
message_end()
    }
    else if(
get_user_team(id) == 1)
    {
        
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
        
write_byte(TE_BEAMFOLLOW)
        
write_short(id)
        
write_short(laserbeam)
        
write_byte(10)
        
write_byte(5)
        
write_byte(0)
        
write_byte(0)
        
write_byte(200)
        
write_byte(192)
        
message_end()
    }
}
public 
setear_caracteristicas(id)
{
    switch(
key[id])
    {
        case 
1: {
            
g_explorer[id] = true
            
            set_user_health
(idget_pcvar_num(cvar_explorer[0]))
            
set_user_maxspeed(idget_pcvar_float(cvar_explorer[1]))
        }
        case 
2: {
            
g_soldier[id] = true
            
            set_user_health
(idget_pcvar_num(cvar_soldier[0]))
            
set_user_maxspeed(idget_pcvar_float(cvar_soldier[1]))
        }
        case 
3: {
            
g_heavy[id] = true
            
            set_user_health
(idget_pcvar_num(cvar_heavy[0]))
            
set_user_maxspeed(idget_pcvar_float(cvar_heavy[1]))
        }
        case 
4: {
            
g_sniper[id] = true
            
            set_user_health
(idget_pcvar_num(cvar_sniper[0]))
            
set_user_maxspeed(idget_pcvar_float(cvar_sniper[1]))
        }
        case 
5: {
            
g_comandante[id] = true
            
            set_user_health
(idget_pcvar_num(cvar_comandante[0]))
            
set_user_maxspeed(idget_pcvar_float(cvar_comandante[1]))
        }
    }
}
public 
show_menu_principal(id)
{
    static 
menuformato[512]
    
    
formatex(formatocharsmax(formato), "\yMenu Principal - \rExp: \y%d - \rNivel \y%d"g_points[id], g_level[id])
    
menu menu_create(formato"principal_handler")
    
    
menu_additem(menu"Elegir Personaje""1"0)
    
    
menu_additem(menu"Destrabar""2"0)
    
//menu_additem(menu, "Menu de Admin", "3", 0)
    
menu_setprop(menuMENU_EXIT"Salir")
    
    
menu_display(idmenu0)
}
public 
principal_handler(idmenuitem)
{
    new 
datos[4], nombre[32], accesscallback
    
    menu_item_getinfo
(menuitemaccessdatos3nombre31callback)
    
    new 
op str_to_num(datos)
    
    if(
op == MENU_EXIT)
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED
    
}
    
    switch(
op)
    {
        case 
1show_menu_clases(id)
        case 
2ExecuteHamB(Ham_CS_RoundRespawnid)
    
//    case 3: show_menu_admin(id)
    
}
    
    
menu_destroy(menu)
    return 
PLUGIN_HANDLED
}
    
public 
show_menu_clases(id)
{
    static 
menuszitem[900], szposicion[900]
    
menu menu_create("\yMenu de Personajes""clases_handler")
    
    for(new 
isizeof CLASSNAMESi++)
    {
        
num_to_str(iszposicioncharsmax(szposicion))
        
format(szitemcharsmax(szitem), "%s :\y %s"CLASSNAMES[i], cDescripcion[i])
        
menu_additem(menuszitemszposicion)
    }
    
menu_setprop(menuMENU_EXIT"Salir")
    
    
menu_display(idmenu0)
}
public 
clases_hanler(idmenuitem)
{
    if(
item == MENU_EXIT)
    {
        return 
PLUGIN_HANDLED
    
}
    
    new 
data[900], name[32], accesscallback
    
    menu_item_getinfo
(menuitemaccessdatacharsmax(data), namecharsmax(name), callback)
    
    
key[id] = str_to_num(data)
    
    if(
g_firstround[id])
    {
        
setear_caracteristicas(id)
        
g_firstround[id] = false
    
}
    
menu_destroy(menu)
    return 
PLUGIN_HANDLED
    
}
/*public show_menu_admin(id, level, cid)
{
    if (!cmd_access(id, level, cid, 2))
    {
        client_print(id, print_chat, "No tenes permiso de ver este menu")
        return PLUGIN_HANDLED
    }
    
    new menu = menu_create("Menu de Admin", "admin_handler")
    
    menu_additem(menu, "Revivir a todos", "1", 0)
    menu_additem(menu, "Slapear a todos", "2", 0)
    menu_additem(menu, "Matar a todos", "3", 0)
    menu_setprop(menu, MENU_EXIT, "Salir")
    
    menu_display(id, menu, 0)
    
    return PLUGIN_HANDLED
}
public admin_handler(id, menu, item)
{
    if(item == MENU_EXIT)
    {
        return PLUGIN_HANDLED
    }
    new datos[900], name[32], access, callback
    
    menu_item_getinfo(menu, item, access, datos, charsmax(datos), name, charsmax(name), callback)
    
    new a = str_to_num(datos)
    
    for( new i; i <= 32; i++)
    {
        if(a == 1)
        {    
            if(!is_user_alive(i) && get_user_team(i) != 3)
            {
                spawn(i)
                dllfunc(DLLFunc_Spawn, i)
            }
        }
        else if(a == 2)
        {
            if(is_user_alive(i) && get_user_team(i) !=3)
            {
                user_slap(i, 0)
            }
        }
        else
        {
            if(is_user_alive(i) && get_user_team(i) !=3)
            {
                user_silentkill(i)
            }
        }
    }
    return PLUGIN_HANDLED
}*/
public cmdfly(id)
{
    if(
pev(idpev_button) & IN_DUCK && pev(idpev_button) & IN_JUMP)
    {
        if(
g_flyEnergy[id] > 0)
        {
            static 
Float:JetpackData[3]
            
pev(id,pev_velocity,JetpackData)
                    
            new 
fOrigin[3],Float:Aim[3]
            
VelocityByAim(id10Aim)
            
            
get_user_origin(id,fOrigin)
            
fOrigin[0] -= floatround(Aim[0])
            
fOrigin[1] -= floatround(Aim[1])
            
fOrigin[2] -= floatround(Aim[2])
        
        
            if((
pev(id,pev_button)&IN_FORWARD) && !(pev(idpev_flags) & FL_ONGROUND))
            {
                
                static 
Float:Speed
                Speed
=floatsqroot(JetpackData[0]*JetpackData[0]+JetpackData[1]*JetpackData[1])
                
                if(
Speed!=0.0)
                {
                    
set_pev(id,pev_gaitsequence,0)
                    
set_pev(id,pev_sequence,111)
                }
                
                if(
Speed<get_pcvar_float(cvar_fs))
                {
                    if(
key[id] == 1)
                    {
                        
Speed+=get_pcvar_float(cvar_explorer[3])
                    }
                    else if(
key[id] == 2)
                    {
                        
Speed+=get_pcvar_float(cvar_soldier[3])
                    }
                    else if(
key[id] == 3)
                    {
                        
Speed+=get_pcvar_float(cvar_heavy[3])
                    }
                    else if(
key[id] == 4)
                    {
                         
Speed+=get_pcvar_float(cvar_sniper[3])
                    }
                    else if(
key[id] == 5)
                    {
                        
Speed+=get_pcvar_float(cvar_comandante[3])
                    }
                }
                
                static 
Float:JetpackData2[3]
                
pev(id,pev_angles,JetpackData2)
                
JetpackData2[2]=0.0//Remove the Z value/
                
                
angle_vector(JetpackData2,ANGLEVECTOR_FORWARD,JetpackData2)
                
JetpackData2[0]*=Speed
                JetpackData2
[1]*=Speed
                
                JetpackData
[0]=JetpackData2[0]
                
JetpackData[1]=JetpackData2[1]
            
                
set_pev(id,pev_velocity,JetpackData)
            }    
        }
    }
}
public 
fw_PlayerKilled(victimattackershouldgib)
{
    if(
get_pcvar_num(cvar_deathmatch))
    {
        
ExecuteHamB(Ham_CS_RoundRespawnvictim)
    }
}
public 
fw_TakeDamage(victiminflictorattackerFloat:damagedamage_type)
{
    if(!
is_user_connected(victim))
        return 
HAM_IGNORED
        
    
if(get_pcvar_num(cvar_dmgcaida) && damage_type DMG_FALL)
        return 
HAM_IGNORED
        
    g_points
[attacker]++
    
    while(
g_points[attacker] > 4)
    {
        
g_level[attacker]++
        
g_points[attacker] = 0
    
}
        
    return 
HAM_SUPERCEDE;


Another Thing: When i uncomment these parts
PHP Code:

//menu_additem(menu, "Menu de Admin", "3", 0) 

PHP Code:

//    case 3: show_menu_admin(id) 

PHP Code:

/*public show_menu_admin(id, level, cid)
{
    if (!cmd_access(id, level, cid, 2))
    {
        client_print(id, print_chat, "No tenes permiso de ver este menu")
        return PLUGIN_HANDLED
    }
    
    new menu = menu_create("Menu de Admin", "admin_handler")
    
    menu_additem(menu, "Revivir a todos", "1", 0)
    menu_additem(menu, "Slapear a todos", "2", 0)
    menu_additem(menu, "Matar a todos", "3", 0)
    menu_setprop(menu, MENU_EXIT, "Salir")
    
    menu_display(id, menu, 0)
    
    return PLUGIN_HANDLED
}
public admin_handler(id, menu, item)
{
    if(item == MENU_EXIT)
    {
        return PLUGIN_HANDLED
    }
    new datos[900], name[32], access, callback
    
    menu_item_getinfo(menu, item, access, datos, charsmax(datos), name, charsmax(name), callback)
    
    new a = str_to_num(datos)
    
    for( new i; i <= 32; i++)
    {
        if(a == 1)
        {    
            if(!is_user_alive(i) && get_user_team(i) != 3)
            {
                spawn(i)
                dllfunc(DLLFunc_Spawn, i)
            }
        }
        else if(a == 2)
        {
            if(is_user_alive(i) && get_user_team(i) !=3)
            {
                user_slap(i, 0)
            }
        }
        else
        {
            if(is_user_alive(i) && get_user_team(i) !=3)
            {
                user_silentkill(i)
            }
        }
    }
    return PLUGIN_HANDLED
}*/ 

I canīt compile
Code:

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

Error: Number of arguments does not match definition on line 228

1 Error.

Thank you very much

AntiBots 12-21-2009 23:43

Re: Why canīt the players move?
 
For set Maxspeed use Ham_Item_Deploy.

In Argument error. plis show the line.

nicolazo103 12-21-2009 23:51

Re: Why canīt the players move?
 
How i use Ham_Item_Deploy to ser MaxSpeed? what entity i need to use en RegisterHam?

The line i say is
Quote:

case 3: show_menu_admin(id)

AntiBots 12-21-2009 23:54

Re: Why canīt the players move?
 
show_menu_admin(id, ADMIN_KICK, id)

nicolazo103 12-23-2009 09:12

Re: Why canīt the players move?
 
I removed the maxpeed function from the plugin, but the players are still dead, or they cantīmove.
Also, when i use the kill command the game crashes, and when i try to see the scores the scoreboard doesnīt appear :(
please help :( :cry:

worldspawn 12-23-2009 09:18

Re: Why canīt the players move?
 
nvm i'm blind

worldspawn 12-23-2009 10:42

Re: Why canīt the players move?
 
i fixed some typos, removed unusable code, didnt add anything

PHP Code:

#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta_util>
#include <fun>
#include <hamsandwich>

//const
const m_pPlayer             =    41
const m_flNextPrimaryAttack     =    46
const m_flNextSecondaryAttack     =    47
const m_flTimeWeaponIdle     =     48
const m_iClip             =     51

new g_flyEnergy[33]
new 
laserbeam


new key[33]
new 
g_firstround[33]
new 
g_points[33]
new 
g_level[33]
new 
g_explorer[33]
new 
g_soldier[33]
new 
g_heavy[33]
new 
g_sniper[33]
new 
g_comandante[33]

new 
CLASSNAMES [][] = { "Explorer""Soldier""Heavy""Sniper""Comandante" }
new 
cDescripcion [][] = 
{
    
"El mas Rapido, pero con menos vida"
    
"Equilibrado en velocidad, resistencia, y punteria",
    
"El mas Resistente, con armas mas poderosas, pero mas lento",
    
"Poca vida, con armas de gran potencia y precicion",
    
"Poca punteria, pero con una bazooka de gran poder y radio de dano"
}


// CVARS
new cvar_dmgcaida/* cvar_implosion, cvar_glow, cvar_light,*/ cvar_deathmatch,/* cvar_balas,*/
cvar_explorer[4], cvar_soldier[4], cvar_heavy[4], cvar_sniper[4], cvar_comandante[4] ,
cvar_energiacvar_fs

public plugin_precache()
{
    
laserbeam precache_model("sprites/laserbeam.spr")
}

public 
plugin_init() 
{
    
register_plugin("Adr""0.1""lllllllllllll bar code")
    
    
cvar_dmgcaida register_cvar("adr_falldamage""0")
    
//cvar_implosion = register_cvar("adr_particulas", "1")
    
cvar_deathmatch register_cvar("adr_deathmatch""1")
    
//cvar_glow = register_cvar("adr_glow", "1")
    //cvar_light = register_cvar("adr_light", "0")
    //cvar_balas = register_cvar("adr_balas_ilimitadas", "0")
    
cvar_energia register_cvar("ard_energia""200")
    
cvar_fs register_cvar("ard_forward_speed""300.0")
    
    
cvar_explorer[0] = register_cvar("adr_explorer_hp""55")
    
cvar_explorer[1] = register_cvar("adr_explorer_sp""280.0")
    
cvar_explorer[2] = register_cvar("adr_explorer_vl""32")
    
cvar_explorer[3] = register_cvar("adr_explorer_ac""120.0")
    
    
cvar_soldier[0] = register_cvar("adr_soldier_hp""100")
    
cvar_soldier[1] = register_cvar("adr_soldier_sp""240.0")
    
cvar_soldier[2] = register_cvar("adr_soldier_vl""30")
    
cvar_soldier[3] = register_cvar("adr_soldier_ac""100.0")
    
    
cvar_heavy[0] = register_cvar("adr_heavy_hp""205")
    
cvar_heavy[1] = register_cvar("adr_heavy_sp""230.0")
    
cvar_heavy[2] = register_cvar("adr_heavy_vl""25")
    
cvar_heavy[3] = register_cvar("adr_heavy_ac""70.0")
    
    
cvar_sniper[0] = register_cvar("adr_sniper_hp""55")
    
cvar_sniper[1] = register_cvar("adr_sniper_sp""280.0")
    
cvar_sniper[2] = register_cvar("adr_sniper_vl""40")
    
cvar_sniper[3] = register_cvar("adr_sniper_ac""60.0")
    
    
cvar_comandante[0] = register_cvar("adr_comandante_hp""85")
    
cvar_comandante[1] = register_cvar("adr_comandante_sp""220.0")
    
cvar_comandante[2] = register_cvar("adr_comandante_vl""20")
    
cvar_comandante[3] = register_cvar("adr_comandante_ac""80.0")
    
    
RegisterHam(Ham_Spawn"player""fw_Spawn")
    
RegisterHam(Ham_Killed"player""fw_PlayerKilled")
    
RegisterHam(Ham_TakeDamage"player""fw_TakeDamage")
    
    
register_forward(FM_CmdStart"cmdfly")
    
    
register_clcmd("+menu""show_menu_principal")
}
public 
client_authorized(id)
{
    
g_firstround[id] = true
    g_flyEnergy
[id] = get_pcvar_num(cvar_energia)    
}

public 
fw_Spawn(id)
{
    if(
g_firstround[id])
    {
        
show_menu_clases(id)
    }
    else {
        
show_menu_principal(id)
        
crear_trail(id)
        
setear_caracteristicas(id)
    }
    
g_flyEnergy[id] = get_pcvar_num(cvar_energia)
}
public 
crear_trail(id)
{
    if(!
is_user_alive(id))
        return
        
    if(
get_user_team(id) == 3)
        return
        
    if(
get_user_team(id) == 1)
    {
        
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
        
write_byte(TE_BEAMFOLLOW)// write_byte(TE_BEAMFOLLOW)
        
write_short(id)// write_short(entity:attachment to follow)
        
write_short(laserbeam)// write_short(sprite index)
        
write_byte(10)// write_byte(life in 0.1's) 
        
write_byte(5)// write_byte(line width in 0.1's) 
        
write_byte(200)// write_byte(red)
        
write_byte(0)// write_byte(green)
        
write_byte(0)// write_byte(blue)
        
write_byte(192)// write_byte(brightness)
        
message_end()
    }
    else if(
get_user_team(id) == 1)
    {
        
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
        
write_byte(TE_BEAMFOLLOW)
        
write_short(id)
        
write_short(laserbeam)
        
write_byte(10)
        
write_byte(5)
        
write_byte(0)
        
write_byte(0)
        
write_byte(200)
        
write_byte(192)
        
message_end()
    }
}
public 
setear_caracteristicas(id)
{
    switch(
key[id])
    {
        case 
1: {
            
g_explorer[id] = true
            
            set_user_health
(idget_pcvar_num(cvar_explorer[0]))
            
set_user_maxspeed(idget_pcvar_float(cvar_explorer[1]))
        }
        case 
2: {
            
g_soldier[id] = true
            
            set_user_health
(idget_pcvar_num(cvar_soldier[0]))
            
set_user_maxspeed(idget_pcvar_float(cvar_soldier[1]))
        }
        case 
3: {
            
g_heavy[id] = true
            
            set_user_health
(idget_pcvar_num(cvar_heavy[0]))
            
set_user_maxspeed(idget_pcvar_float(cvar_heavy[1]))
        }
        case 
4: {
            
g_sniper[id] = true
            
            set_user_health
(idget_pcvar_num(cvar_sniper[0]))
            
set_user_maxspeed(idget_pcvar_float(cvar_sniper[1]))
        }
        case 
5: {
            
g_comandante[id] = true
            
            set_user_health
(idget_pcvar_num(cvar_comandante[0]))
            
set_user_maxspeed(idget_pcvar_float(cvar_comandante[1]))
        }
    }
}
public 
show_menu_principal(id)
{
    static 
menuformato[512]
    
    
formatex(formatocharsmax(formato), "\yMenu Principal - \rExp: \y%d - \rNivel \y%d"g_points[id], g_level[id])
    
menu menu_create(formato"principal_handler")
    
    
menu_additem(menu"Elegir Personaje""1"0)
    
    
menu_additem(menu"Destrabar""2"0)
    
//menu_additem(menu, "Menu de Admin", "3", 0)
    
menu_setprop(menuMPROP_EXITNAME"Salir")
    
    
menu_display(idmenu0)
}
public 
principal_handler(idmenuitem)
{
    new 
datos[4], nombre[32], accesscallback
    
    menu_item_getinfo
(menuitemaccessdatos3nombre31callback)
    
    new 
op str_to_num(datos)
    
    if(
op == MENU_EXIT)
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED
    
}
    
    switch(
op)
    {
        case 
1show_menu_clases(id)
        case 
2ExecuteHamB(Ham_CS_RoundRespawnid)
    
//    case 3: show_menu_admin(id)
    
}
    
    
menu_destroy(menu)
    return 
PLUGIN_HANDLED
}
    
public 
show_menu_clases(id)
{
    static 
menuszitem[900], szposicion[900]
    
menu menu_create("\yMenu de Personajes""clases_handler")
    
    for(new 
isizeof CLASSNAMESi++)
    {
        
num_to_str(iszposicioncharsmax(szposicion))
        
format(szitemcharsmax(szitem), "%s :\y %s"CLASSNAMES[i], cDescripcion[i])
        
menu_additem(menuszitemszposicion)
    }
    
    
menu_display(idmenu0)
}
public 
clases_handler(idmenuitem)
{
    if(
item == MENU_EXIT)
    {
        return 
PLUGIN_HANDLED
    
}
    
    new 
data[900], name[32], accesscallback
    
    menu_item_getinfo
(menuitemaccessdatacharsmax(data), namecharsmax(name), callback)
    
    
key[id] = str_to_num(data)
    
    if(
g_firstround[id])
    {
        
setear_caracteristicas(id)
        
g_firstround[id] = false
    
}
    
menu_destroy(menu)
    return 
PLUGIN_HANDLED
    
}
/*public show_menu_admin(id, level, cid)
{
    if (!cmd_access(id, level, cid, 2))
    {
        client_print(id, print_chat, "No tenes permiso de ver este menu")
        return PLUGIN_HANDLED
    }
    
    new menu = menu_create("Menu de Admin", "admin_handler")
    
    menu_additem(menu, "Revivir a todos", "1", 0)
    menu_additem(menu, "Slapear a todos", "2", 0)
    menu_additem(menu, "Matar a todos", "3", 0)
    menu_setprop(menu, MENU_EXIT, "Salir")
    
    menu_display(id, menu, 0)
    
    return PLUGIN_HANDLED
}
public admin_handler(id, menu, item)
{
    if(item == MENU_EXIT)
    {
        return PLUGIN_HANDLED
    }
    new datos[900], name[32], access, callback
    
    menu_item_getinfo(menu, item, access, datos, charsmax(datos), name, charsmax(name), callback)
    
    new a = str_to_num(datos)
    
    for( new i; i <= 32; i++)
    {
        if(a == 1)
        {    
            if(!is_user_alive(i) && get_user_team(i) != 3)
            {
                spawn(i)
                dllfunc(DLLFunc_Spawn, i)
            }
        }
        else if(a == 2)
        {
            if(is_user_alive(i) && get_user_team(i) !=3)
            {
                user_slap(i, 0)
            }
        }
        else
        {
            if(is_user_alive(i) && get_user_team(i) !=3)
            {
                user_silentkill(i)
            }
        }
    }
    return PLUGIN_HANDLED
}*/
public cmdfly(id)
{
    if(
pev(idpev_button) & IN_DUCK && pev(idpev_button) & IN_JUMP)
    {
        if(
g_flyEnergy[id] > 0)
        {
            static 
Float:JetpackData[3]
            
pev(id,pev_velocity,JetpackData)
                    
            new 
fOrigin[3],Float:Aim[3]
            
VelocityByAim(id10Aim)
            
            
get_user_origin(id,fOrigin)
            
fOrigin[0] -= floatround(Aim[0])
            
fOrigin[1] -= floatround(Aim[1])
            
fOrigin[2] -= floatround(Aim[2])
        
        
            if((
pev(id,pev_button)&IN_FORWARD) && !(pev(idpev_flags) & FL_ONGROUND))
            {
                
                static 
Float:Speed
                Speed
=floatsqroot(JetpackData[0]*JetpackData[0]+JetpackData[1]*JetpackData[1])
                
                if(
Speed!=0.0)
                {
                    
set_pev(id,pev_gaitsequence,0)
                    
set_pev(id,pev_sequence,111)
                }
                
                if(
Speed<get_pcvar_float(cvar_fs))
                {
                    if(
key[id] == 1)
                    {
                        
Speed+=get_pcvar_float(cvar_explorer[3])
                    }
                    else if(
key[id] == 2)
                    {
                        
Speed+=get_pcvar_float(cvar_soldier[3])
                    }
                    else if(
key[id] == 3)
                    {
                        
Speed+=get_pcvar_float(cvar_heavy[3])
                    }
                    else if(
key[id] == 4)
                    {
                         
Speed+=get_pcvar_float(cvar_sniper[3])
                    }
                    else if(
key[id] == 5)
                    {
                        
Speed+=get_pcvar_float(cvar_comandante[3])
                    }
                }
                
                static 
Float:JetpackData2[3]
                
pev(id,pev_angles,JetpackData2)
                
JetpackData2[2]=0.0//Remove the Z value/
                
                
angle_vector(JetpackData2,ANGLEVECTOR_FORWARD,JetpackData2)
                
JetpackData2[0]*=Speed
                JetpackData2
[1]*=Speed
                
                JetpackData
[0]=JetpackData2[0]
                
JetpackData[1]=JetpackData2[1]
            
                
set_pev(id,pev_velocity,JetpackData)
            }    
        }
    }
}
public 
fw_PlayerKilled(victimattackershouldgib)
{
    if(
get_pcvar_num(cvar_deathmatch))
    {
        
ExecuteHamB(Ham_CS_RoundRespawnvictim)
    }
}
public 
fw_TakeDamage(victiminflictorattackerFloat:damagedamage_type)
{
    if(!
is_user_connected(victim))
        return 
HAM_IGNORED
        
    
if(get_pcvar_num(cvar_dmgcaida) && damage_type DMG_FALL)
        return 
HAM_IGNORED
        
    g_points
[attacker]++
    
    while(
g_points[attacker] > 4)
    {
        
g_level[attacker]++
        
g_points[attacker] = 0
    
}
        
    return 
HAM_SUPERCEDE;


u may move now, but i don't know what plugin does, so i only know that trail works good:crab:
the main mistake is performing something on user(client_cmd right here) when he connects to server(client_putinserver, client_connected, client_authorized)
u won't be able to play if u do this
Quote:

Another Thing: When i uncomment these parts
now it compiles well

nicolazo103 12-23-2009 21:26

Re: Why canīt the players move?
 
Thanks. Now it works, but it doesnīt set features (health and speed)
And also, i took some code form a jetpack to make players fly, but the do longjumps, wha should i change?


All times are GMT -4. The time now is 04:13.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.