(04/01/2019, 11:26 AM)GoldenCosta escribió: el precache no es por arrays....
Código PHP:
for(i = 0; i < MAX_PRIMARIAS; i++) { precache_model(Armasp[i][PMODEL]) } for(i = 0; i < MAX_SECUNDARIAS; i++) { precache_model(Armass[i][PMODEL]) }
y el otro pasa la public entera del fw_takedamage
Código PHP:
public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type) { // Non-player damage or self damage if (victim == attacker || !is_user_valid_connected(attacker)) return HAM_IGNORED;
// New round starting or round ended if (g_newround || g_endround) return HAM_SUPERCEDE;
// Victim shouldn't take damage or victim is frozen if (g_nodamage[victim] || g_frozen[victim]) return HAM_SUPERCEDE;
// Prevent friendly fire if (g_zombie[attacker] == g_zombie[victim]) return HAM_SUPERCEDE; //a kDamage[attacker] += floatround(damage)
while(kDamage[attacker] >= DMG_NECESARIO) { // Mientras el daño infligido sea igual o mayor al daño necesario kDamage[attacker] -= DMG_NECESARIO // Le restamos el valor de la definición DMG_NECESARIO(1200) a kDamage setExp( attacker , WINEXP ); // Le damos la exp por dmg }
// Attacker is human... if (!g_zombie[attacker]) { if (!g_survivor[attacker]) { static plrWeapId if (is_user_connected(attacker) || is_user_bot(attacker)) plrWeapId = get_user_weapon(attacker)
static i for(i = 0; i < MAX_PRIMARIAS; i++) { if (g_primarias[attacker][i] && get_weaponid(Armasp[i][PITEMS]) == plrWeapId) { SetHamParamFloat(4, damage *= Armasp[i][PDAMAGE]) } } for(i = 0; i < MAX_SECUNDARIAS; i++) { if (g_secundarias[attacker][i] && get_weaponid(Armass[i][PITEMS]) == plrWeapId) { SetHamParamFloat(4, damage *= Armass[i][PDAMAGE]) } } }
damage *= ResetDamage(kReset[attacker])
//mg kDamage[attacker] += floatround(damage)
while(kDamage[attacker] >= DMG_NECESARIO) { // Mientras el daño infligido sea igual o mayor al daño necesario kDamage[attacker] -= DMG_NECESARIO // Le restamos el valor de la definición DMG_NECESARIO(1200) a kDamage setExp( attacker , WINEXP ); // Le damos la exp por dmg } // Armor multiplier for the final damage on normal zombies if (!g_nemesis[victim]) { damage *= get_pcvar_float(cvar_zombiearmor) SetHamParamFloat(4, damage) }
// Reward ammo packs to humans for damaging zombies? if ((get_pcvar_num(cvar_ammodamage_human) > 0) && (!g_survivor[attacker] || !get_pcvar_num(cvar_survignoreammo))) { // Store damage dealt g_damagedealt_human[attacker] += floatround(damage)
// Reward ammo packs for every [ammo damage] dealt while (g_damagedealt_human[attacker] > get_pcvar_num(cvar_ammodamage_human)) { g_ammopacks[attacker]++ g_damagedealt_human[attacker] -= get_pcvar_num(cvar_ammodamage_human) } }
return HAM_IGNORED; }
// Attacker is zombie...
// Prevent infection/damage by HE grenade (bugfix) if (damage_type & DMG_HEGRENADE) return HAM_SUPERCEDE;
// Nemesis? if (g_nemesis[attacker]) { // Ignore nemesis damage override if damage comes from a 3rd party entity // (to prevent this from affecting a sub-plugin's rockets e.g.) if (inflictor == attacker) { // Set nemesis damage SetHamParamFloat(4, get_pcvar_float(cvar_nemdamage)) }
return HAM_IGNORED; }
// Reward ammo packs to zombies for damaging humans? if (get_pcvar_num(cvar_ammodamage_zombie) > 0) { // Store damage dealt g_damagedealt_zombie[attacker] += floatround(damage)
// Reward ammo packs for every [ammo damage] dealt while (g_damagedealt_zombie[attacker] > get_pcvar_num(cvar_ammodamage_zombie)) { g_ammopacks[attacker]++ g_damagedealt_zombie[attacker] -= get_pcvar_num(cvar_ammodamage_zombie) } }
// Last human or not an infection round if (g_survround || g_nemround || g_swarmround || g_plagueround || fnGetHumans() == 1) return HAM_IGNORED; // human is killed
// Does human armor need to be reduced before infecting? if (get_pcvar_num(cvar_humanarmor)) { // Get victim armor static Float:armor pev(victim, pev_armorvalue, armor)
// If he has some, block the infection and reduce armor instead if (armor > 0.0) { emit_sound(victim, CHAN_BODY, sound_armorhit, 1.0, ATTN_NORM, 0, PITCH_NORM) if (armor - damage > 0.0) set_pev(victim, pev_armorvalue, armor - damage) else cs_set_user_armor(victim, 0, CS_ARMOR_NONE) return HAM_SUPERCEDE; } }
04/01/2019, 11:37 AM (Última modificación: 04/01/2019, 11:38 AM por GoldenCosta. Edited 1 time in total.)
Código PHP:
public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type) { // Non-player damage or self damage if (victim == attacker || !is_user_valid_connected(attacker)) return HAM_IGNORED;
// New round starting or round ended if (g_newround || g_endround) return HAM_SUPERCEDE;
// Victim shouldn't take damage or victim is frozen if (g_nodamage[victim] || g_frozen[victim]) return HAM_SUPERCEDE;
// Prevent friendly fire if (g_zombie[attacker] == g_zombie[victim]) return HAM_SUPERCEDE; //a kDamage[attacker] += floatround(damage)
while(kDamage[attacker] >= DMG_NECESARIO) { // Mientras el daño infligido sea igual o mayor al daño necesario kDamage[attacker] -= DMG_NECESARIO // Le restamos el valor de la definición DMG_NECESARIO(1200) a kDamage setExp( attacker , WINEXP ); // Le damos la exp por dmg }
// Attacker is human... if (!g_zombie[attacker]) { if (g_survivor[attacker]) { // mas daño para el survivor si se te antoja } else // si no es survivor sera humano { static plrWeapId if (is_user_connected(attacker) || is_user_bot(attacker)) plrWeapId = get_user_weapon(attacker)
static i for(i = 0; i < MAX_PRIMARIAS; i++) { if (g_primarias[attacker][i] && get_weaponid(Armasp[i][PITEMS]) == plrWeapId) { SetHamParamFloat(4, damage *= Armasp[i][PDAMAGE]) } } for(i = 0; i < MAX_SECUNDARIAS; i++) { if (g_secundarias[attacker][i] && get_weaponid(Armass[i][PITEMS]) == plrWeapId) { SetHamParamFloat(4, damage *= Armass[i][PDAMAGE]) } } }
damage *= ResetDamage(kReset[attacker])
//mg kDamage[attacker] += floatround(damage)
while(kDamage[attacker] >= DMG_NECESARIO) { // Mientras el daño infligido sea igual o mayor al daño necesario kDamage[attacker] -= DMG_NECESARIO // Le restamos el valor de la definición DMG_NECESARIO(1200) a kDamage setExp( attacker , WINEXP ); // Le damos la exp por dmg } // Armor multiplier for the final damage on normal zombies if (!g_nemesis[victim]) { damage *= get_pcvar_float(cvar_zombiearmor) SetHamParamFloat(4, damage) }
// Reward ammo packs to humans for damaging zombies? if ((get_pcvar_num(cvar_ammodamage_human) > 0) && (!g_survivor[attacker] || !get_pcvar_num(cvar_survignoreammo))) { // Store damage dealt g_damagedealt_human[attacker] += floatround(damage)
// Reward ammo packs for every [ammo damage] dealt while (g_damagedealt_human[attacker] > get_pcvar_num(cvar_ammodamage_human)) { g_ammopacks[attacker]++ g_damagedealt_human[attacker] -= get_pcvar_num(cvar_ammodamage_human) } }
return HAM_IGNORED; }
// Attacker is zombie...
// Prevent infection/damage by HE grenade (bugfix) if (damage_type & DMG_HEGRENADE) return HAM_SUPERCEDE;
// Nemesis? if (g_nemesis[attacker]) { // Ignore nemesis damage override if damage comes from a 3rd party entity // (to prevent this from affecting a sub-plugin's rockets e.g.) if (inflictor == attacker) { // Set nemesis damage SetHamParamFloat(4, get_pcvar_float(cvar_nemdamage)) }
return HAM_IGNORED; }
// Reward ammo packs to zombies for damaging humans? if (get_pcvar_num(cvar_ammodamage_zombie) > 0) { // Store damage dealt g_damagedealt_zombie[attacker] += floatround(damage)
// Reward ammo packs for every [ammo damage] dealt while (g_damagedealt_zombie[attacker] > get_pcvar_num(cvar_ammodamage_zombie)) { g_ammopacks[attacker]++ g_damagedealt_zombie[attacker] -= get_pcvar_num(cvar_ammodamage_zombie) } }
// Last human or not an infection round if (g_survround || g_nemround || g_swarmround || g_plagueround || fnGetHumans() == 1) return HAM_IGNORED; // human is killed
// Does human armor need to be reduced before infecting? if (get_pcvar_num(cvar_humanarmor)) { // Get victim armor static Float:armor pev(victim, pev_armorvalue, armor)
// If he has some, block the infection and reduce armor instead if (armor > 0.0) { emit_sound(victim, CHAN_BODY, sound_armorhit, 1.0, ATTN_NORM, 0, PITCH_NORM) if (armor - damage > 0.0) set_pev(victim, pev_armorvalue, armor - damage) else cs_set_user_armor(victim, 0, CS_ARMOR_NONE) return HAM_SUPERCEDE; } }
public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type) { // Non-player damage or self damage if (victim == attacker || !is_user_valid_connected(attacker)) return HAM_IGNORED;
// New round starting or round ended if (g_newround || g_endround) return HAM_SUPERCEDE;
// Victim shouldn't take damage or victim is frozen if (g_nodamage[victim] || g_frozen[victim]) return HAM_SUPERCEDE;
// Prevent friendly fire if (g_zombie[attacker] == g_zombie[victim]) return HAM_SUPERCEDE; //a kDamage[attacker] += floatround(damage)
while(kDamage[attacker] >= DMG_NECESARIO) { // Mientras el daño infligido sea igual o mayor al daño necesario kDamage[attacker] -= DMG_NECESARIO // Le restamos el valor de la definición DMG_NECESARIO(1200) a kDamage setExp( attacker , WINEXP ); // Le damos la exp por dmg }
// Attacker is human... if (!g_zombie[attacker]) { if (g_survivor[attacker]) { // mas daño para el survivor si se te antoja } else // si no es survivor sera humano { static plrWeapId if (is_user_connected(attacker) || is_user_bot(attacker)) plrWeapId = get_user_weapon(attacker)
static i for(i = 0; i < MAX_PRIMARIAS; i++) { if (g_primarias[attacker][i] && get_weaponid(Armasp[i][PITEMS]) == plrWeapId) { SetHamParamFloat(4, damage *= Armasp[i][PDAMAGE]) } } for(i = 0; i < MAX_SECUNDARIAS; i++) { if (g_secundarias[attacker][i] && get_weaponid(Armass[i][PITEMS]) == plrWeapId) { SetHamParamFloat(4, damage *= Armass[i][PDAMAGE]) } } }
damage *= ResetDamage(kReset[attacker])
//mg kDamage[attacker] += floatround(damage)
while(kDamage[attacker] >= DMG_NECESARIO) { // Mientras el daño infligido sea igual o mayor al daño necesario kDamage[attacker] -= DMG_NECESARIO // Le restamos el valor de la definición DMG_NECESARIO(1200) a kDamage setExp( attacker , WINEXP ); // Le damos la exp por dmg } // Armor multiplier for the final damage on normal zombies if (!g_nemesis[victim]) { damage *= get_pcvar_float(cvar_zombiearmor) SetHamParamFloat(4, damage) }
// Reward ammo packs to humans for damaging zombies? if ((get_pcvar_num(cvar_ammodamage_human) > 0) && (!g_survivor[attacker] || !get_pcvar_num(cvar_survignoreammo))) { // Store damage dealt g_damagedealt_human[attacker] += floatround(damage)
// Reward ammo packs for every [ammo damage] dealt while (g_damagedealt_human[attacker] > get_pcvar_num(cvar_ammodamage_human)) { g_ammopacks[attacker]++ g_damagedealt_human[attacker] -= get_pcvar_num(cvar_ammodamage_human) } }
return HAM_IGNORED; }
// Attacker is zombie...
// Prevent infection/damage by HE grenade (bugfix) if (damage_type & DMG_HEGRENADE) return HAM_SUPERCEDE;
// Nemesis? if (g_nemesis[attacker]) { // Ignore nemesis damage override if damage comes from a 3rd party entity // (to prevent this from affecting a sub-plugin's rockets e.g.) if (inflictor == attacker) { // Set nemesis damage SetHamParamFloat(4, get_pcvar_float(cvar_nemdamage)) }
return HAM_IGNORED; }
// Reward ammo packs to zombies for damaging humans? if (get_pcvar_num(cvar_ammodamage_zombie) > 0) { // Store damage dealt g_damagedealt_zombie[attacker] += floatround(damage)
// Reward ammo packs for every [ammo damage] dealt while (g_damagedealt_zombie[attacker] > get_pcvar_num(cvar_ammodamage_zombie)) { g_ammopacks[attacker]++ g_damagedealt_zombie[attacker] -= get_pcvar_num(cvar_ammodamage_zombie) } }
// Last human or not an infection round if (g_survround || g_nemround || g_swarmround || g_plagueround || fnGetHumans() == 1) return HAM_IGNORED; // human is killed
// Does human armor need to be reduced before infecting? if (get_pcvar_num(cvar_humanarmor)) { // Get victim armor static Float:armor pev(victim, pev_armorvalue, armor)
// If he has some, block the infection and reduce armor instead if (armor > 0.0) { emit_sound(victim, CHAN_BODY, sound_armorhit, 1.0, ATTN_NORM, 0, PITCH_NORM) if (armor - damage > 0.0) set_pev(victim, pev_armorvalue, armor - damage) else cs_set_user_armor(victim, 0, CS_ARMOR_NONE) return HAM_SUPERCEDE; } }
if (g_primarias[attacker][i] && get_weaponid(Armasp[i][PITEMS]) == plrWeapId)
(04/01/2019, 11:37 AM)GoldenCosta escribió:
Código PHP:
public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type) { // Non-player damage or self damage if (victim == attacker || !is_user_valid_connected(attacker)) return HAM_IGNORED;
// New round starting or round ended if (g_newround || g_endround) return HAM_SUPERCEDE;
// Victim shouldn't take damage or victim is frozen if (g_nodamage[victim] || g_frozen[victim]) return HAM_SUPERCEDE;
// Prevent friendly fire if (g_zombie[attacker] == g_zombie[victim]) return HAM_SUPERCEDE; //a kDamage[attacker] += floatround(damage)
while(kDamage[attacker] >= DMG_NECESARIO) { // Mientras el daño infligido sea igual o mayor al daño necesario kDamage[attacker] -= DMG_NECESARIO // Le restamos el valor de la definición DMG_NECESARIO(1200) a kDamage setExp( attacker , WINEXP ); // Le damos la exp por dmg }
// Attacker is human... if (!g_zombie[attacker]) { if (g_survivor[attacker]) { // mas daño para el survivor si se te antoja } else // si no es survivor sera humano { static plrWeapId if (is_user_connected(attacker) || is_user_bot(attacker)) plrWeapId = get_user_weapon(attacker)
static i for(i = 0; i < MAX_PRIMARIAS; i++) { if (g_primarias[attacker][i] && get_weaponid(Armasp[i][PITEMS]) == plrWeapId) { SetHamParamFloat(4, damage *= Armasp[i][PDAMAGE]) } } for(i = 0; i < MAX_SECUNDARIAS; i++) { if (g_secundarias[attacker][i] && get_weaponid(Armass[i][PITEMS]) == plrWeapId) { SetHamParamFloat(4, damage *= Armass[i][PDAMAGE]) } } }
damage *= ResetDamage(kReset[attacker])
//mg kDamage[attacker] += floatround(damage)
while(kDamage[attacker] >= DMG_NECESARIO) { // Mientras el daño infligido sea igual o mayor al daño necesario kDamage[attacker] -= DMG_NECESARIO // Le restamos el valor de la definición DMG_NECESARIO(1200) a kDamage setExp( attacker , WINEXP ); // Le damos la exp por dmg } // Armor multiplier for the final damage on normal zombies if (!g_nemesis[victim]) { damage *= get_pcvar_float(cvar_zombiearmor) SetHamParamFloat(4, damage) }
// Reward ammo packs to humans for damaging zombies? if ((get_pcvar_num(cvar_ammodamage_human) > 0) && (!g_survivor[attacker] || !get_pcvar_num(cvar_survignoreammo))) { // Store damage dealt g_damagedealt_human[attacker] += floatround(damage)
// Reward ammo packs for every [ammo damage] dealt while (g_damagedealt_human[attacker] > get_pcvar_num(cvar_ammodamage_human)) { g_ammopacks[attacker]++ g_damagedealt_human[attacker] -= get_pcvar_num(cvar_ammodamage_human) } }
return HAM_IGNORED; }
// Attacker is zombie...
// Prevent infection/damage by HE grenade (bugfix) if (damage_type & DMG_HEGRENADE) return HAM_SUPERCEDE;
// Nemesis? if (g_nemesis[attacker]) { // Ignore nemesis damage override if damage comes from a 3rd party entity // (to prevent this from affecting a sub-plugin's rockets e.g.) if (inflictor == attacker) { // Set nemesis damage SetHamParamFloat(4, get_pcvar_float(cvar_nemdamage)) }
return HAM_IGNORED; }
// Reward ammo packs to zombies for damaging humans? if (get_pcvar_num(cvar_ammodamage_zombie) > 0) { // Store damage dealt g_damagedealt_zombie[attacker] += floatround(damage)
// Reward ammo packs for every [ammo damage] dealt while (g_damagedealt_zombie[attacker] > get_pcvar_num(cvar_ammodamage_zombie)) { g_ammopacks[attacker]++ g_damagedealt_zombie[attacker] -= get_pcvar_num(cvar_ammodamage_zombie) } }
// Last human or not an infection round if (g_survround || g_nemround || g_swarmround || g_plagueround || fnGetHumans() == 1) return HAM_IGNORED; // human is killed
// Does human armor need to be reduced before infecting? if (get_pcvar_num(cvar_humanarmor)) { // Get victim armor static Float:armor pev(victim, pev_armorvalue, armor)
// If he has some, block the infection and reduce armor instead if (armor > 0.0) { emit_sound(victim, CHAN_BODY, sound_armorhit, 1.0, ATTN_NORM, 0, PITCH_NORM) if (armor - damage > 0.0) set_pev(victim, pev_armorvalue, armor - damage) else cs_set_user_armor(victim, 0, CS_ARMOR_NONE) return HAM_SUPERCEDE; } }
(04/01/2019, 12:34 PM)GoldenCosta escribió: Pasame el error del amx
Código PHP:
Error: Expected token: ")", but found "[" on line 2306 Error: Invalid expression, assumed zero on line 2306 Warning: Expression has no effect on line 2306 Error: Expected token: ";", but found "]" on line 2306 Error: Too many error messages on one line on line 2306
Código PHP:
//2306 if (g_primarias[attacker][i] && get_weaponid(Armasp[i][PITEMS]) == plrWeapId)
04/01/2019, 01:23 PM (Última modificación: 04/01/2019, 01:25 PM por [R]ak. Edited 1 time in total.)
(04/01/2019, 01:10 PM)reloaD escribió:
(04/01/2019, 12:54 PM)[R]ak escribió: te falta un ( al principio
El if iria encerrado entre parentesis?
Porque de otra manera no comprendo donde iria el "(" ya razone, mira y trate de comprender el lugar.
tengo que dormir mas; y a van 2 veces que me salteo un (; revise todo el codigo y no vi nada que te pueda dar ese error; lo revise varias veces..
vas a tener que dejar el .sma para poder encontrar el error
Hi Milashkasiya
Soy un #Panda.. Soy solo un tipo que parece #común pero soy todo lo contrario; alguien #atípico en esta sociedad actual
(04/01/2019, 12:54 PM)[R]ak escribió: te falta un ( al principio
El if iria encerrado entre parentesis?
Porque de otra manera no comprendo donde iria el "(" ya razone, mira y trate de comprender el lugar.
tengo que dormir mas; y a van 2 veces que me salteo un (; revise todo el codigo y no vi nada que te pueda dar ese error; lo revise varias veces..
vas a tener que dejar el .sma para poder encontrar el error
Si fue un acertijo, estoy mal para esos juegos.
Dejo el .sma de las armas con niveles y rr completo.
Hice prueba y error del paréntesis.
la verdad que no entiendo que estas haciendo... estas solo pegando dentro del code del zp las armas? sabes que tienes q modificar los menu y algunas nuevas variables?
(04/01/2019, 03:43 PM)GoldenCosta escribió: la verdad que no entiendo que estas haciendo... estas solo pegando dentro del code del zp las armas? sabes que tienes q modificar los menu y algunas nuevas variables?
Error: Expected token: ")", but found "[" on line 2306 Error: Invalid expression, assumed zero on line 2306 Warning: Expression has no effect on line 2306 Error: Expected token: ";", but found "]" on line 2306 Error: Too many error messages on one line on line 2306
Código PHP:
//2306 if (g_primarias[attacker][i] && get_weaponid(Armasp[i][PITEMS]) == plrWeapId)
Dice que tengo error de caracteres, rak dijo que faltaba un parentesis al principio, pero ya hice prueba y error..
Error: se esperaba el token: ")", pero se encontró "[" en la línea 2306
Error: Expresión inválida, asumida cero en la línea 2306
Advertencia: la expresión no tiene efecto en la línea 2306
Error: Token esperado: ";", pero encontrado "]" en la línea 2306
Error: demasiados mensajes de error en una línea en la línea 2306
hay una exprecion que esta mal y no es por un parentesis o cerradura
una pregunta.. de que color vez el get_weaponid
(04/01/2019, 04:32 PM)GoldenCosta escribió: Error: se esperaba el token: ")", pero se encontró "[" en la línea 2306
Error: Expresión inválida, asumida cero en la línea 2306
Advertencia: la expresión no tiene efecto en la línea 2306
Error: Token esperado: ";", pero encontrado "]" en la línea 2306
Error: demasiados mensajes de error en una línea en la línea 2306
hay una exprecion que esta mal y no es por un parentesis o cerradura
una pregunta.. de que color vez el get_weaponid
Lo veo en rojo, ya actualice el post, me habia confundido de .sma
// Survivor's custom weapon model static survweaponname[32] get_pcvar_string(cvar_survweapon, survweaponname, charsmax(survweaponname)) if (g_survivor[id] && weaponid == cs_weapon_name_to_id(survweaponname)) set_pev(id, pev_viewmodel2, model_vweapon_survivor)
// Update model on weaponmodel ent if (g_handle_models_on_separate_ent) fm_set_weaponmodel_ent(id) }
lo acomode pero no creo funcione los models clases zombies por que creo que le falta algo o borraste algo del 4.3 en el reemplace models lo mismo proba
04/01/2019, 04:49 PM (Última modificación: 04/01/2019, 04:49 PM por reloaD. Edited 1 time in total.)
(04/01/2019, 04:46 PM)GoldenCosta escribió: olvidaste modificar las variables
new g_primarias[33]
new g_secundarias[33]
----------------------------->
new g_primarias[33][MAX_PRIMARIAS+1]
new g_secundarias[33][MAX_SECUNDARIAS+1]
y me mando mas errores pero ya son correcciones de variables leveles por que no estan puestas con las tuyas
y pusistema mal el reemplazo de los models
Me compilo, comente la linea WEAPONNAMES y tube que eliminar cvar_randweapon.
Las restricciones funionan bien, olvide de agregarle a las variables para que al entrar puedan usar el arma, pero eso lo podria modificar para que el usuario ya entre con lvl 1.. dejo la .sma nueva, por si quieren confirmarme que esta bien..
(04/01/2019, 04:46 PM)GoldenCosta escribió: olvidaste modificar las variables
new g_primarias[33]
new g_secundarias[33]
----------------------------->
new g_primarias[33][MAX_PRIMARIAS+1]
new g_secundarias[33][MAX_SECUNDARIAS+1]
y me mando mas errores pero ya son correcciones de variables leveles por que no estan puestas con las tuyas
y pusistema mal el reemplazo de los models
Me compilo, comente la linea WEAPONNAMES y tube que eliminar cvar_randweapon.
Las restricciones funionan bien, olvide de agregarle a las variables para que al entrar puedan usar el arma, pero eso lo podria modificar para que el usuario ya entre con lvl 1.. dejo la .sma nueva, por si quieren confirmarme que esta bien..
Si queres confirmar que todo está bien, probalo vos mismo, si tenes algún error creas un tema y listo