Junior Member
|
11-27-2005
, 12:01
|
#5
|
you are sure, because it's a plugin a new, but nothing like this plugin lol ^^ this is the original plugin
Quote:
/*
HS-LVL MOD by |PaRa-BoL
© 2004
http://amx.irc-france.com
Merci au differents plugins qui m'ont aide dans mon code
Les sons viennent de "The specialists" et de "Ricochet"
sv_hslvlmod 1/0 Active/Desactive le Plugin (Default: 1)
mp_hsgore 1/0 Active/Desactive le surplus de sang + sons HS (Default: 1)
mp_hsxpsave 1/0 Active/Desactive l'enregistrement de l'experience (hs, etc...) (Default: 1)
mp_hsonly 1/0 Active/Desactive le HS only (Hitbox seulement sur la tête) (Default: 0)
*/
#include <amxmod>
#include <amxmisc>
#include <Xtrafun_to_Vexd>
/////////////////////////////////// Configuration general //////////////////////////////////////////
new fconfig[] = "hslvlmod_db" // Dossier de la DataBase.
#define MIN_MISSION 3 // nombre de players minimum par equipe pour la mission 1.
#define ALLOW_RESPAWN 2 // Nombre de respawn authorise par round.
#define TEMPS_PUB 250.0 // Boucle de Pub (en secondes).
#define POURCENT_UP 40.0 // Pourcentage de HS a faire en + par lvl.
#define POURCENT_HE 3.0 // Pourcentage de vie en + par lvl.
#define FIRST_LEVEL 5.0 // Nombre de HS pour premier lvl.
#define CROSS_DOT 2 // Lvl a partir du quel le viseur special apparait (Desactive).
#define ARMOR_LVL 15 // Lvl a partir du quel le joueur a 200 d'armure.
#define CAN_UP 7 // Lvl a partir du quel le joueur peut se transformer.
#define GIVE_CREDIT 35 // Credits par lvl.
#define GIVE_BYHEAD 1 // Credit donne pour un HS
#define SPEEDBOOST 350.0 // Vitesse lors du Speed Boost (doit etre superieur a 320.0) (Desactive).
#define BLASTCIRCLES_RADIUS 250 // Taille des cercles de choques lors du lvl up.
new ADD_HOSTNAME[] = " - HS-LVL MoD" // A ajouter a la fin de l'hostname du server.
////////////////////////////////////////////////////////////////////////////////////////////////////
new gmsgStatusText
new gmsgShake
new gmsg_Money
//new gmsgDamage
new m_iSpriteTexture
new eclair
new tDamage[32]
new hDamage[32]
new lDamage[32]
new lPlayer[32]
new tPlayer[32]
new hPlayer[32]
new pCredit[32]
new pAmount[32]
new bool:aPlayer[32]
new bool:cPlayer[32]
new bool:firstload[32]
new bool:isregister[32]
new bool:SuperMoney[32]
new bool:BigJump[32]
new bool:Medit[32]
new bool:invi[32]
new incD[32]
new bool:SuperArmore[32]
new bool:Supercasque[32]
new bool:autoshoot[32]
new bool:unsurdeux[32]
new bool:sboost[32]
new bool:feet[32]
new bool:hsrapide[32]
new bool:canup[32]
new bool:HeHs[32]
new bool:HeDe[32]
new bool:isinup[32]
new bool:isup[32]
new dieOrigin[32][3]
new elprc[32]
new aLevel[32]
new fhslvlmod[64]
new bool:cstrike_running
new cible[32]
new nbresp[32]
new bool:bcheck[33]
new bool:ccheck[33]
new dMission
new tMission
new bool:sMission = false
new bool:zMission = false
new boolnlyhs = false
public plugin_precache()
{
precache_sound( "misc/hslevelup.wav")
precache_sound( "misc/hsrevie.wav")
precache_sound( "misc/hsrate.wav")
precache_sound( "misc/hsreussi.wav")
precache_sound( "misc/highjump1.wav")
precache_sound( "misc/highjump2.wav")
precache_sound( "misc/headgore.wav")
precache_sound( "misc/trans2.wav")
m_iSpriteTexture = precache_model( "sprites/shockwave.spr")
eclair = precache_model("sprites/lgtning.spr")
return PLUGIN_CONTINUE
}
public client_putinserver(id){
if (get_cvar_num("sv_hslvlmod")!=1) return PLUGIN_HANDLED
tDamage[id] = 0
hDamage[id] = 0
lDamage[id] = 0
lPlayer[id] = 0
tPlayer[id] = 0
pAmount[id] = 0
nbresp[id] = 0
firstload[id] = false
aPlayer[id] = false
cPlayer[id] = false
isregister[id] = false
SuperMoney[id] = false
dieOrigin[id] = ""
BigJump[id] = false
invi[id] = false
Supercasque[id] = false
SuperArmore[id] = false
unsurdeux[id] = false
HeHs[id] = false
canup[id] = false
feet[id] = false
Medit[id] = false
autoshoot[id] = false
sboost[id] = false
hsrapide[id] = false
HeDe[id] = false
isinup[id] = false
isup[id] = false
hPlayer[id] = 100
pCredit[id] = 0
elprc[id] = floatround(FIRST_LEVEL)
GetAmount(id,1)
new pWonId[33]
new sprintf[256]
get_user_authid(id,pWonId,32)
format(sprintf,255,"%s/%s",fhslvlmod,pWonId)
if (get_cvar_num("mp_hsxpsave")==1 && file_exists(sprintf)==1)
{
charge_acount(id)
}
return PLUGIN_HANDLED
}
public SpawneD(id){
if (get_cvar_num("sv_hslvlmod")!=1) return PLUGIN_HANDLED
statustext(id)
remove_task(id+69)
set_cvar_float("sv_maxspeed",SPEEDBOOST)
set_user_health(id,hPlayer[id])
if (aPlayer[id] == true)
{
give_item(id,"item_kevlar")
give_item(id,"item_assaultsuit")
set_user_armor(id,200)
}
/*if (cPlayer[id] == true)
{
new parame[1]
parame[0] = id
remove_task(id+1234)
set_task(4.0,"showdot",id+1234,parame,1,"b")
}*/
if (SuperMoney[id])
{
set_user_money(id,16000)
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Argent credite a 16000$")
}
if (Medit[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"La meditation commence !")
new parame[1]
parame[0] = id
remove_task(id+666)
set_task(3.0,"Recuplife",id+666,parame,1,"b")
}
if (BigJump[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Tu peut sauter plus haut !")
//set_user_gravity(id, 0.45)
}
if (Supercasque[id])
{
give_item(id,"item_assaultsuit")
}
if (SuperArmore[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Tu as 250 d'armure + casque")
give_item(id,"item_assaultsuit")
//give_item(id,"item_kevlar")
set_user_armor(id,250)
}
if (invi[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"HE infinies Active (une toutes les 8sec)")
new parame[1]
parame[0] = id
remove_task(id+2712)
set_task(8.0,"RecupHe",id+2712,parame,1,"b")
}
if (autoshoot[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Steroide Active !")
}
if (feet[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Aller cours on t'entend pas !")
}
if (sboost[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous sentez votre coeur battre tres vite !")
set_user_maxspeed(id,SPEEDBOOST)
}
set_user_money(id,get_user_money(id) + (get_user_money(id)/100 * tPlayer[id]))
message_begin(MSG_ONE, gmsg_Money , {0,0,0}, id)
write_long(get_user_money(id) + (get_user_money(id)/100 * tPlayer[id]))
write_byte(0)
message_end()
if (isup[id])
{
new parame[1]
parame[0] = id
set_task(5.0,"colord",id+3210,parame,1)
}
else
{
set_user_rendering(id)
}
if (get_cvar_num("mp_hsxpsave")==1)
{
if (isregister[id])
{
if (firstload[id]) return PLUGIN_CONTINUE
firstload[id] = true
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Salut !^nBienvenue sur HS-LVL MOD v0.4 by |PaRa-BoL^nTon compte a bien ete charge ! Tu as recupere tous tes HS.")
}
else
{
if (firstload[id]) return PLUGIN_CONTINUE
firstload[id] = true
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Salut !^nBienvenue sur HS-LVL MOD by |PaRa-BoL^nTon compte a ete creer dans la base de donnee^nTu garderas tes HS si tu depasse le lvl 1 quand tu reviendras !")
}
}
return PLUGIN_CONTINUE
}
public colord(Param[])
{
set_user_rendering(Param[0])
set_user_rendering(Param[0],kRenderFxGlowShell,255,255,0, kRenderNormal, 16)
}
public Deglow(Params[]){
set_user_rendering(Params[0])
return PLUGIN_CONTINUE
}
public lvlup(id){
new named[32]
get_user_name(id,named,31)
emit_sound(id,CHAN_STATIC, "misc/hslevelup.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
lPlayer[id]++
new Params[10]
pAmount[id] = 0
GetAmount(id,lPlayer[id]+1)
Params[0] = id
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(0,"%s est maintenant level %d",named,lPlayer[id])
hPlayer[id] = floatround(hPlayer[id]+((hPlayer[id]/100.0)*POURCENT_HE))
pCredit[id] = pCredit[id] + GIVE_CREDIT
if (lPlayer[id] == ARMOR_LVL) aPlayer[id] = true
//if (lPlayer[id] == CROSS_DOT) cPlayer[id] = true
set_user_rendering(id,kRenderFxGlowShell,100, 100,255, kRenderNormal, 16)
set_task(2.0,"Deglow",0,Params,1)
if (lPlayer[id]==CAN_UP)
{
canup[id] = true
set_hudmessage(255,255,0,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Tu peut te transformer en tapant : hsup")
pCredit[id] = pCredit[id]+10
hsup(id)
}
message_begin(MSG_ONE,gmsgShake,{0,0,0},id)
write_short(1<<14)// amplitude
write_short(1<<13)// duration
write_short(1<<14)// frequency
message_end()
Blasted(Params)
return PLUGIN_CONTINUE
}
public showdot(parame[])
{
if (get_cvar_num("sv_hslvlmod")==1)
{
new targete, body
new id = parame[0]
if (cPlayer[id] == false)
{
remove_task(id+1234)
}
else
{
get_user_aiming(id,targete,body)
if (body != 1)
{
set_hudmessage(0,0,0,0.0,0.0,0, 0.0, 0.01, 0.0, 0.0, 4)
show_hudmessage(id,"")
set_hudmessage(0, 255, 0, -1.0, -1.0, 0, 6.0, 4.0, 0.1, 0.1, 4)
}
else
{
set_hudmessage(0,0,0,0.0,0.0,0, 0.0, 0.01, 0.0, 0.0, 4)
show_hudmessage(id,"")
set_hudmessage(255, 0, 0, -1.0, -1.0, 0, 6.0, 4.0, 0.1, 0.1, 4)
}
show_hudmessage(id, ".")
}
}
}
public Recuplife(parame[])
{
new id = parame[0]
if (!Medit[id])
{
remove_task(id+666)
}
else
{
if ((get_user_health(id)+5) > hPlayer[id]) set_user_health(id,hPlayer[id])
else set_user_health(id,get_user_health(id)+5)
}
}
public RecupHe(parame[])
{
new id = parame[0]
if (!invi[id])
{
remove_task(id+2712)
}
else
{
give_item(id,"weapon_hegrenade")
}
}
public Blasted(Params[])
{
new id = Params[0]
new origin[3]
get_user_origin(id,origin)
// blast circles
message_begin( MSG_PAS, SVC_TEMPENTITY, origin )
write_byte(21)
write_coord( origin[0])
write_coord( origin[1])
write_coord( origin[2] - 16)
write_coord( origin[0])
write_coord( origin[1])
write_coord( origin[2] - 16 + BLASTCIRCLES_RADIUS)
write_short( m_iSpriteTexture )
write_byte( 0 ) // startframe
write_byte( 0 ) // framerate
write_byte( 6 ) // life
write_byte( 16 ) // width
write_byte( 0 ) // noise
write_byte( 188 )
write_byte( 220 )
write_byte( 255 )
write_byte( 255 ) //brightness
write_byte( 0 ) // speed
message_end()
message_begin( MSG_PAS, SVC_TEMPENTITY, origin )
write_byte(21)
write_coord( origin[0])
write_coord( origin[1])
write_coord( origin[2] - 16)
write_coord( origin[0])
write_coord( origin[1])
write_coord( origin[2] - 16 + ( BLASTCIRCLES_RADIUS / 2 ))
write_short( m_iSpriteTexture )
write_byte( 0 ) // startframe
write_byte( 0 ) // framerate
write_byte( 6 ) // life
write_byte( 16 ) // width
write_byte( 0 ) // noise
write_byte( 188 )
write_byte( 220 )
write_byte( 255 )
write_byte( 255 ) //brightness
write_byte( 0 ) // speed
message_end()
return PLUGIN_CONTINUE
}
public event_domagesse(id)
{
if (get_cvar_num("sv_hslvlmod")!=1) return PLUGIN_HANDLED
new weapon, bodypart
new iDamage = read_data(2)
new iEnemi = get_user_attacker(id,weapon,bodypart)
new iHealth = get_user_health(id)
if (id == iEnemi && BigJump[id])
{
set_user_health(id,iHealth+iDamage)
}
if (id == iEnemi || get_user_team(id) == get_user_team(iEnemi)) return PLUGIN_HANDLED
if (bodypart == 1)
{
new para[2]
para[0] = id
para[1] = iEnemi
if (get_cvar_num("mp_hsgore")==1) set_task(3.0,"giclure",id+69,para,2,"b")
//set_task(1.0,"trace",id,para,2,"b")
if (Supercasque[id])
{
give_item(id,"item_assaultsuit")
}
if (iHealth < 1) {
hDamage[iEnemi]++
pAmount[iEnemi]++
}
}
tDamage[iEnemi] = tDamage[iEnemi] + iDamage
lDamage[iEnemi] = iDamage
if (bodypart == 1 && iHealth < 1)
{
pCredit[iEnemi] = pCredit[iEnemi] + GIVE_BYHEAD
new Params[1]
Params[0] = id
if (hsrapide[id])
{
pCredit[iEnemi] = pCredit[iEnemi]+3
client_print(iEnemi,print_notify,"Bonus rapidite (-4sec) +3 credits")
}
hsrapide[id] = true
set_task(4.0,"Despeed",0,Params,1)
new iOrigin[3]
new eOrigin[3]
get_user_origin(id,iOrigin)
get_user_origin(iEnemi,eOrigin)
new pDist = get_distance(iOrigin,eOrigin)
new Float:rDist = float(pDist)*0.0254
if (rDist>=30.0 && rDist<50.0)
{
pCredit[iEnemi] = pCredit[iEnemi]+2
client_print(iEnemi,print_notify,"Bonus distance (%.2fm) +3 credits",rDist)
}
else if (rDist>=50.0)
{
pCredit[iEnemi] = pCredit[iEnemi]+8
client_print(iEnemi,print_notify,"Bonus distance (%.2fm) +8 credits",rDist)
}
if (get_cvar_num("mp_hsgore")==1)
{
emit_sound(id,CHAN_STATIC, "misc/headgore.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
fx_headshot(iOrigin)
}
GetAmount(iEnemi,lPlayer[iEnemi]+1)
if (aLevel[iEnemi] == pAmount[iEnemi]) lvlup(iEnemi)
if (dMission == iEnemi && tMission == id && sMission)
{
pCredit[iEnemi] = pCredit[iEnemi] + 20
emit_sound(iEnemi,CHAN_STATIC, "misc/hsreussi.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
sMission = false
remove_task(dMission+1286)
}
if (zMission)
{
new nameds[33]
get_user_name(iEnemi,nameds,32)
zMission = false
pCredit[iEnemi] = pCredit[iEnemi] + 10
emit_sound(iEnemi,CHAN_STATIC, "misc/hsreussi.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 5)
show_hudmessage(0,"%s a gagne 10 credit !",nameds)
}
}
statustext(iEnemi)
if (iHealth < 1)
{
remove_task(id+69)
set_hudmessage(100,100,255,-1.0,0.5,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Dites hsmenu pour le Super-Menu [Credits: %d]",pCredit[id])
if (cPlayer[id])
{
remove_task(id+1234)
}
if (Medit[id])
{
Medit[id] = false
remove_task(id+666)
}
Supercasque[id] = false
SuperArmore[id] = false
BigJump[id] = false
SuperMoney[id] = false
feet[id] = false
sboost[id] = false
isup[id] = false
HeHs[id] = false
HeDe[id] = false
remove_task(id+69)
if (autoshoot[id])
{
autoshoot[id] = false
remove_task(id+1337)
}
if (invi[id])
{
invi[id] = false
remove_task(id+2712)
}
if (tMission == id && dMission == iEnemi && bodypart != 1 && sMission)
{
remove_task(dMission+1286)
emit_sound(dMission,CHAN_STATIC, "misc/hsrate.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
sMission = false
}
else if (tMission == id && dMission != iEnemi && sMission)
{
remove_task(dMission+1286)
emit_sound(dMission,CHAN_STATIC, "misc/hsrate.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
sMission = false
}
else if (dMission == id && sMission)
{
remove_task(dMission+1286)
emit_sound(dMission,CHAN_STATIC, "misc/hsrate.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
sMission = false
}
}
return PLUGIN_CONTINUE
}
public Despeed(Params[])
{
hsrapide[Params[0]] = false
}
public GetAmount(id,lvl){
aLevel[id] = floatround(FIRST_LEVEL)
if (lvl == 1) aLevel[id] = floatround(FIRST_LEVEL)
else
{
for (new i = 2;i<=lvl;i++)
{
aLevel[id] = floatround(aLevel[id] + ((aLevel[id]/100.0) * POURCENT_UP))
}
}
}
public statustext(id){
new tString[256]
new rest[32]
rest[id] = aLevel[id] - pAmount[id]
format(tString,255,"HS: %d Need: %d Credits: %d lvl: %d",hDamage[id],rest[id],pCredit[id],lPlayer[id])
if (is_user_alive(id)){
message_begin(MSG_ONE, gmsgStatusText, {0,0,0}, id)
write_byte(0)
write_string(tString)
message_end()
}
}
public event_died()
{
if (get_cvar_num("sv_hslvlmod")!=1) return PLUGIN_HANDLED
new iVictim = read_data(2)
get_user_origin(iVictim,dieOrigin[iVictim])
dieOrigin[iVictim][2] = dieOrigin[iVictim][2]+20
set_hudmessage(100,100,255,-1.0,0.5,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(iVictim,"Dites hsmenu pour le Super-Menu [Credits: %d]",pCredit[iVictim])
if (cPlayer[iVictim]) remove_task(iVictim+1234)
if (Medit[iVictim])
{
Medit[iVictim] = false
remove_task(iVictim+666)
}
Supercasque[iVictim] = false
BigJump[iVictim] = false
SuperMoney[iVictim] = false
HeHs[iVictim] = false
HeDe[iVictim] = false
isup[iVictim] = false
if (invi[iVictim])
{
invi[iVictim] = false
remove_task(iVictim+2712)
}
SuperArmore[iVictim] = false
feet[iVictim] = false
sboost[iVictim] = false
if (autoshoot[iVictim])
{
autoshoot[iVictim] = false
remove_task(iVictim+1337)
}
remove_task(iVictim+69)
return PLUGIN_CONTINUE
}
public respawned(id)
{
if (is_user_alive(id) || get_user_team(id)==3) return PLUGIN_CONTINUE
if (pCredit[id] < 5)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
return PLUGIN_CONTINUE
}
else if (pCredit[id] > 4)
{
nbresp[id]++
new lid[1]
lid[0] = id
new lenom[32]
get_user_name(id,lenom,31)
pCredit[id] = pCredit[id]-5
user_spawn(id)
set_task(0.1,"rerespawn",0,lid,1)
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public Revivre(id)
{
if (is_user_alive(id) || get_user_team(id)==3) return PLUGIN_CONTINUE
if (pCredit[id] < 5)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
return PLUGIN_CONTINUE
}
else if (pCredit[id] > 4)
{
nbresp[id]++
new lid[1]
lid[0] = id
new lenom[32]
get_user_name(id,lenom,31)
pCredit[id] = pCredit[id]-5
user_spawn(id)
set_task(0.1,"rerevivre",0,lid,1)
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public superthune(id)
{
if (pCredit[id] < 3)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
return PLUGIN_CONTINUE
}
else
{
pCredit[id] = pCredit[id]-3
SuperMoney[id] = true
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public rerespawn(lid[])
{
new id = lid[0]
new lenom[32]
get_user_name(id,lenom,31)
user_spawn(id)
if (get_user_team(id)==1)
{
give_item(id,"weapon_knife")
give_item(id,"weapon_glock18")
give_item(id,"ammo_9mm")
give_item(id,"ammo_9mm")
}
else
{
give_item(id,"weapon_knife")
give_item(id,"weapon_usp")
give_item(id,"ammo_45acp")
give_item(id,"ammo_45acp")
}
set_user_money(id,get_user_money(id)+3500,1)
if (get_user_money(id) > 16000) set_user_money(id,16000)
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(0,"%s est ressuscite !",lenom)
emit_sound(id,CHAN_STATIC, "misc/hsrevie.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
}
public rerevivre(lid[])
{
new id = lid[0]
new lenom[32]
get_user_name(id,lenom,31)
user_spawn(id)
if (get_user_team(id)==1)
{
give_item(id,"weapon_knife")
give_item(id,"weapon_glock18")
give_item(id,"ammo_9mm")
give_item(id,"ammo_9mm")
give_item(id,"weapon_ak47")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
}
else
{
give_item(id,"weapon_knife")
give_item(id,"weapon_usp")
give_item(id,"ammo_45acp")
give_item(id,"ammo_45acp")
give_item(id,"weapon_m4a1")
give_item(id,"ammo_556nato")
give_item(id,"ammo_556nato")
give_item(id,"ammo_556nato")
give_item(id,"ammo_556nato")
give_item(id,"ammo_556nato")
give_item(id,"ammo_556nato")
give_item(id,"ammo_556nato")
}
set_user_origin(id,dieOrigin[id])
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(0,"%s est ressuscite !",lenom)
emit_sound(id,CHAN_STATIC, "misc/hsrevie.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
}
public pubation()
{
if (get_cvar_num("sv_hslvlmod")==1)
{
set_hudmessage(100,100,255,-1.0,0.3,0, 5.0, 10.0, 1.0, 2.0, 1)
show_hudmessage(0,"Ce server utilise^nHS-LVL MOD by |PaRa-BoL^nMerci de joindre #hslvlmod @ Qnet")
}
}
public already_acount(id)
{
new szLine[64]
new l = 0, pos = 0
new itsgood = 0
new checkwon[32]
new pWonId[33]
get_user_authid(id,pWonId,32)
while(read_file(fhslvlmod, pos++, szLine, 63, l))
{
if( szLine[0] == ';' || !l ) continue
parse(szLine, checkwon, 31)
if (equal(checkwon,pWonId)) itsgood = 1
}
return itsgood
}
public creat_acount(id)
{
if (get_cvar_num("mp_hsxpsave")!=1) return PLUGIN_CONTINUE
new pWonId[33]
new sprintf[256]
get_user_authid(id,pWonId,32)
format(sprintf,255,"^"%s^" ^"0^" ^"0^" ^"0^" ^"0^" ^"100^"",pWonId)
write_file(fhslvlmod,sprintf,-1)
return PLUGIN_CONTINUE
}
public charge_acount(id)
{
if (get_cvar_num("mp_hsxpsave")!=1) return PLUGIN_CONTINUE
new pWonId[33]
new sprintf[256]
get_user_authid(id,pWonId,32)
format(sprintf,255,"%s/%s",fhslvlmod,pWonId)
if (file_exists(sprintf))
{
new szLine[64]
new l = 0
new checkwon[32], checklvl[32], checkcredit[32], checkamount[32], checkhs[32], checklife[32]
read_file(sprintf, 0, szLine, 63, l)
parse(szLine, checkwon, 31, checklvl[id], 31, checkcredit[id], 31, checkamount[id], 31, checkhs[id], 31, checklife[id], 31)
lPlayer[id] = str_to_num(checklvl[id])
pCredit[id] = str_to_num(checkcredit[id])
pAmount[id] = str_to_num(checkamount[id])
hDamage[id] = str_to_num(checkhs[id])
hPlayer[id] = str_to_num(checklife[id])
if (lPlayer[id] >= ARMOR_LVL) aPlayer[id] = true
if (lPlayer[id] >= CAN_UP) canup[id] = true
//if (lPlayer[id] >= CROSS_DOT) cPlayer[id] = true
GetAmount(id,lPlayer[id]+1)
isregister[id] = true
}
return PLUGIN_CONTINUE
}
public client_disconnect(id){
remove_task(id+1234)
remove_task(id+666)
remove_task(id+2712)
remove_task(id+1286)
remove_task(id+69)
remove_task(id+1337)
remove_task(id+2013)
remove_task(id+2999)
remove_task(id+3210)
remove_task(id+4000)
remove_task(id+9000)
if (get_cvar_num("sv_hslvlmod")!=1 || get_cvar_num("mp_hsxpsave")!=1) return PLUGIN_HANDLED
record_acount(id)
return PLUGIN_CONTINUE
}
public record_acount(id)
{
if (get_cvar_num("mp_hsxpsave")!=1) return PLUGIN_CONTINUE
new texted[256]
new pWonId[33]
new sprintf[256]
get_user_authid(id,pWonId,32)
format(texted,255,"^"%s^" ^"%d^" ^"%d^" ^"%d^" ^"%d^" ^"%d^"",pWonId,lPlayer[id],pCredit[id],pAmount[id],hDamage[id],hPlayer[id])
format(sprintf,255,"%s/%s",fhslvlmod,pWonId)
if (file_exists(sprintf)) delete_file(sprintf)
write_file(sprintf,texted,0)
return PLUGIN_CONTINUE
}
public actionMenu(id,key)
{
if (is_user_alive(id))
{
switch(key){
case 0:{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Tu es deja vivant !")
}
case 1:{
superthune(id)
if (SuperMoney[id])
{
set_user_money(id,16000)
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Argent credite a 16000$")
statustext(id)
}
}
case 2:{
Meditation(id)
if (Medit[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"La meditation commence !")
new parame[1]
parame[0] = id
remove_task(id+666)
set_task(3.0,"Recuplife",id+666,parame,1,"b")
statustext(id)
}
}
case 3:{
HightJump(id)
if (BigJump[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Tu peux sauter plus haut !")
statustext(id)
}
}
case 4:{
GiveInvi(id)
if (invi[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"He infinies active (une toute les 8sec) !")
new parame[1]
parame[0] = id
remove_task(id+2712)
set_task(8.0,"RecupHe",id+2712,parame,1,"b")
statustext(id)
}
}
case 5:{
SuperHemlet(id)
if (Supercasque[id])
{
give_item(id,"item_assaultsuit")
statustext(id)
}
}
case 6:{
SuperArmor(id)
if (SuperArmore[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Tu as 250 d'armure + casque")
give_item(id,"item_assaultsuit")
give_item(id,"item_kevlar")
set_user_armor(id,250)
statustext(id)
}
}
case 7:{
SuperFeet(id)
if (feet[id])
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Allez cours on t'entend pas !")
set_user_footsteps(id,1)
statustext(id)
}
}
case 8:{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Tu es deja vivant !")
}
}
}
else
{
switch(key){
case 0:{
if (nbresp[id] == ALLOW_RESPAWN)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Tu ne peux respawn que %dx !",ALLOW_RESPAWN)
}
else
{
respawned(id)
}
}
case 1:{
superthune(id)
}
case 2:{
Meditation(id)
}
case 3:{
HightJump(id)
}
case 4:{
GiveInvi(id)
}
case 5:{
SuperHemlet(id)
}
case 6:{
SuperArmor(id)
}
case 7:{
SuperFeet(id)
}
case 8:{
if (nbresp[id] == ALLOW_RESPAWN)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Tu ne peux respawn que %dx !",ALLOW_RESPAWN)
}
else
{
if (!(dieOrigin[id][0]))
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Tu n'es jamais mort !")
}
else
{
Revivre(id)
}
}
}
}
}
return PLUGIN_HANDLED
}
public GiveInvi(id)
{
if (pCredit[id] < 5)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
return PLUGIN_CONTINUE
}
else
{
pCredit[id] = pCredit[id]-5
invi[id] = true
/*HeHs[id] = true
HeDe[id] = false*/
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public SuperFeet(id)
{
if (pCredit[id] < 2)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
return PLUGIN_CONTINUE
}
else
{
pCredit[id] = pCredit[id]-2
feet[id] = true
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public SuperBoost(id)
{
if (pCredit[id] < 6)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
return PLUGIN_CONTINUE
}
else
{
pCredit[id] = pCredit[id]-6
sboost[id] = true
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public Meditation(id)
{
if (pCredit[id] < 2)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
return PLUGIN_CONTINUE
}
else
{
pCredit[id] = pCredit[id]-2
Medit[id] = true
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public autotire(id)
{
if (pCredit[id] < 2)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
return PLUGIN_CONTINUE
}
else
{
pCredit[id] = pCredit[id]-2
autoshoot[id] = true
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public HightJump(id)
{
if (pCredit[id] < 3)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
return PLUGIN_CONTINUE
}
else
{
pCredit[id] = pCredit[id]-3
BigJump[id] = true
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public SuperHemlet(id)
{
if (pCredit[id] < 1)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
return PLUGIN_CONTINUE
}
else
{
pCredit[id] = pCredit[id]-1
Supercasque[id] = true
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public SuperArmor(id)
{
if (pCredit[id] < 2)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
return PLUGIN_CONTINUE
}
else
{
pCredit[id] = pCredit[id]-2
SuperArmore[id] = true
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public showMenu(id)
{
/*if (is_user_alive(id))
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"hsmenu quand tu es mort seulement !")
return PLUGIN_CONTINUE
}*/
new menuBody[512]
new daformat[256]
format(daformat,255,"\yHS Mod Menu \w\R\r(%d credit)^n^n\w",pCredit[id])
new len = format(menuBody,511,cstrike_running ? daformat : "HS Mod Menu^n^n")
len += format(menuBody[len],511-len,"1. Renaitre\y\R5 Credits^n\w2. Argent\y\R3 Credits^n\w3. Meditation\y\R2 Credits^n\w4. High Jump\y\R3 Credits^n\w5. HE Infinies\y\R5 Credits^n\w6. Super Helmet\y\R1 Credits^n\w7. Super Armure\y\R2 Credits^n\w8. Pas furtif\y\R2 Credits^n\w9. Revivre \y\R5 Credits^n^n0. Exit")
show_menu(id,((1<<0)|(1<<1)|(1<<2)|(1<<3)|(1< <4)|(1<<5)|(1<<6)|(1<<7)|(1<<|(1<<9)),menuB ody)
return PLUGIN_CONTINUE
}
public status_changed(id)
{
if (get_cvar_num("sv_hslvlmod")==1)
{
new datarg = read_data(2)
new targete, body
get_user_aiming(id,targete,body)
new named[33]
get_user_name(datarg,named,32)
new parame[1]
parame[0] = id
new dastring[256]
format(dastring,255,"%s - lvl: %d",named,lPlayer[datarg])
if (id == dMission && datarg == tMission && sMission) format(dastring,255,"CIBLE A TUER")
set_hudmessage(255,50,0,-1.0,0.60,1, 0.01, 3.0, 0.01, 0.01, 9)
show_hudmessage(id,dastring)
if (is_user_alive(id) && body == 1 && cPlayer[id] == true && body != cible[id])
{
remove_task(id+1234)
set_task(4.0,"showdot",id+1234,parame,1,"b")
set_hudmessage(255, 0, 0, -1.0, -1.0, 0, 6.0, 4.0, 0.1, 0.1, 4)
show_hudmessage(id, ".")
cible[id] = body
}
else if (is_user_alive(id) && body != 1 && cPlayer[id] == true && body != cible[id])
{
remove_task(id+1234)
set_task(4.0,"showdot",id+1234,parame,1,"b")
set_hudmessage(0, 255, 0, -1.0, -1.0, 0, 6.0, 4.0, 0.1, 0.1, 4)
show_hudmessage(id, ".")
cible[id] = body
}
}
}
public desata(parame[])
{
client_cmd(parame[0],"-attack")
}
public status_vide(id)
{
if (get_cvar_num("sv_hslvlmod")==1)
{
set_hudmessage(0,0,0,0.0,0.0,0, 0.0, 0.01, 0.0, 0.0, 9)
show_hudmessage(id,"")
if (cPlayer[id] == true)
{
new parame[1]
parame[0] = id
remove_task(id+1234)
set_task(4.0,"showdot",id+1234,parame,1,"b")
set_hudmessage(0, 255, 0, -1.0, -1.0, 0, 6.0, 4.0, 0.1, 0.1, 4)
show_hudmessage(id, ".")
cible[id] = -5
}
}
}
public start_mission(id)
{
if (sMission || zMission) return PLUGIN_CONTINUE
remove_task(dMission+1286)
new named[32]
new rdm
new vict
new ctort = random_num(1,2)
new CTplayers[32],CTnum,Tplayers[32],Tnum
get_players(CTplayers,CTnum,"ae","CT")
get_players(Tplayers,Tnum,"ae","TERRORIST")
if (CTnum<MIN_MISSION || Tnum<MIN_MISSION) return PLUGIN_CONTINUE
while (rdm==0 || vict==0)
{
if (ctort == 1)
{
rdm = Tplayers[random_num(0,Tnum)]
vict = CTplayers[random_num(0,CTnum)]
}
else
{
rdm = CTplayers[random_num(0,CTnum)]
vict = Tplayers[random_num(0,Tnum)]
}
}
get_user_name(rdm,named,31)
new parame[2]
parame[0] = rdm
parame[1] = vict
dMission = rdm
tMission = vict
set_task(3.0,"designed",0,parame,2)
set_task(0.5,"messag",dMission+1286,parame,2, "b")
sMission = true
return PLUGIN_CONTINUE
}
public start_mission2(id)
{
if (zMission || sMission) return PLUGIN_CONTINUE
remove_task(dMission+1286)
sMission = false
set_task(3.0,"mission2")
zMission = true
return PLUGIN_CONTINUE
}
public mission2()
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 5)
show_hudmessage(0,"Le premier qui fait un HS gagne 10 de credit.")
}
public designed(parame[])
{
new named[32]
new named2[32]
get_user_name(parame[0],named,31)
get_user_name(parame[1],named2,31)
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 5)
show_hudmessage(0,"%s doit HS %s pour 20 credits !",named,named2)
return PLUGIN_CONTINUE
}
public messag(parame[])
{
new named[32]
new named2[32]
get_user_name(parame[0],named,31)
get_user_name(parame[1],named2,31)
if (unsurdeux[parame[0]] == false)
{
unsurdeux[parame[0]] = true
set_hudmessage(250,10,10,0.7,0.7,0, 5.0, 0.5, 0.1, 0.1, 6)
show_hudmessage(parame[0],"TUER en HS %s",named2)
}
else
{
unsurdeux[parame[0]] = false
set_hudmessage(0,0,0,0.0,0.0,0, 0.0, 0.01, 0.0, 0.0, 6)
show_hudmessage(parame[0],"")
}
return PLUGIN_CONTINUE
}
public partie_start(id)
{
if (get_cvar_num("sv_hslvlmod")!=1) return PLUGIN_HANDLED
set_cvar_float("sv_maxspeed", 350.0)
new mType = random_num(1,211)
mType %= 2
new ftime = get_cvar_num("mp_freezetime")
new rtime = read_data(1)
if (ftime == rtime)
{
nbresp[id] = 0
if (sMission || zMission) return PLUGIN_CONTINUE
start_mission(id)
}
return PLUGIN_CONTINUE
}
public partie_finie(id)
{
sMission = false
zMission = false
}
public fx_headshot(origin[3])
{
for (new i = 0; i < 5; i++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(101)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+30)
write_coord(random_num(-20,20)) // x
write_coord(random_num(-20,20)) // y
write_coord(random_num(50,300)) // z
write_byte(70) // color
write_byte(random_num(100,200)) // speed
message_end()
}
}
public giclure(para[])
{
new id = para[0]
new iOrigine[3]
get_user_origin(id,iOrigine)
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(101)
write_coord(iOrigine[0])
write_coord(iOrigine[1])
write_coord(iOrigine[2]+30)
write_coord(random_num(-10,10)) // x
write_coord(random_num(-10,10)) // y
write_coord(random_num(5,15)) // z
write_byte(70) // color
write_byte(random_num(100,200)) // speed
message_end()
}
public trace(para[])
{
new id = para[0]
new iOrigine[3]
new iOrigine2[3]
new id2 = para[1]
get_user_origin(id,iOrigine)
get_user_origin(id2,iOrigine2)
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(6)
write_coord(iOrigine[0])
write_coord(iOrigine[1])
write_coord(iOrigine[2]+30)
write_coord(iOrigine2[0]) // x
write_coord(iOrigine2[1]) // y
write_coord(iOrigine2[2]+30) // z
message_end()
}
public addhostname()
{
if (get_cvar_num("sv_hslvlmod")==1)
{
new hostname[33]
new addhost[33]
get_cvar_string("hostname", hostname, 32)
format(addhost,32,"%s%s",hostname,ADD_HOSTNAM E)
set_cvar_string("hostname",addhost)
}
}
public server_frame()
{
if (get_cvar_num("mp_hsonly")==1)
{
if (!onlyhs)
{
set_hudmessage(255,50,0,-1.0,0.3,1, 0.01, 6.0, 0.01, 0.01, 9)
show_hudmessage(0,"Hs only active !!!!")
set_user_hitzones(0,0,2)
onlyhs = true
}
set_user_hitzones(0,0,2)
}
else if (get_cvar_num("mp_hsonly")==0)
{
if (onlyhs)
{
set_hudmessage(255,50,0,-1.0,0.3,1, 0.01, 6.0, 0.01, 0.01, 9)
show_hudmessage(0,"Hs only desactive !!!!")
set_user_hitzones(0,0,255)
onlyhs = false
}
set_user_hitzones(0,0,255)
}
if (get_cvar_num("sv_hslvlmod")!=1) return PLUGIN_HANDLED
for(new i = 1; i <= get_maxplayers(); ++i)
{
if (is_user_alive(i) && (BigJump[i] || isup[i]))
{
new velocity[3]
get_user_velocity(i, velocity)
if ((get_user_button(i)&IN_JUMP))
{
if (!bcheck[i])
{
new Params[1]
Params[0] = i
if (!isup[i])
{
emit_sound(i,CHAN_STATIC, "misc/highjump1.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
velocity[0] = floatround(velocity[0] * 1.4)
velocity[1] = floatround(velocity[1] * 1.4)
velocity[2] += 290
}
else
{
velocity[0] = floatround(velocity[0] * 1.7)
velocity[1] = floatround(velocity[1] * 1.7)
velocity[2] += 75
}
set_user_velocity(i, velocity)
bcheck[i] = true
ccheck[i] = true
}
}
else if (velocity[2] == 0 && bcheck[i])
{
new origin[3]
get_user_origin(i,origin)
new Params[1]
Params[0] = i
if (!isup[i])
{
emit_sound(i,CHAN_STATIC, "misc/highjump2.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
message_begin(MSG_ONE,gmsgShake,{0,0,0},i)
write_short(1<<14)// amplitude
write_short(1<<13)// duration
write_short(1<<14)// frequency
message_end()
message_begin( MSG_PAS, SVC_TEMPENTITY, origin )
write_byte(21)
write_coord( origin[0])
write_coord( origin[1])
write_coord( origin[2] - 16)
write_coord( origin[0])
write_coord( origin[1])
write_coord( origin[2] - 16 + 200)
write_short( m_iSpriteTexture )
write_byte( 0 ) // startframe
write_byte( 0 ) // framerate
write_byte(6) // life
write_byte( 16 ) // width
write_byte( 0 ) // noise
write_byte( 238 )
write_byte( 186 )
write_byte( 186 )
write_byte( 255 ) //brightness
write_byte(0) // speed
message_end()
}
set_task(0.5,"Dehit",0,Params,1)
bcheck[i] = false
}
}
}
return PLUGIN_CONTINUE
}
public Dehit(Params[])
{
ccheck[Params[0]] = false
}
public curweapon(id)
{
if (isinup[id]) set_user_maxspeed(id,1.0)
if (isup[id]) set_user_maxspeed(id,SPEEDBOOST)
return PLUGIN_CONTINUE
}
public give_credit(id)
{
if (!(get_user_flags(id)&ADMIN_RCON))
{
console_print(id,"Tu n'as pas acces a cette commande !")
}
else if (read_argc()<3)
{
console_print(id,"hs_credit <Pseudo - authid - #userid> <credits>")
}
else
{
new pname[33]
new named[32]
new named2[32]
new gcred[32]
new pperc
read_argv(1,pname,32)
read_argv(2,gcred,32)
pperc = find_player("al",pname)
if (!pperc) pperc = find_player("bl",pname)
if (!pperc) pperc = find_player("k",pname)
if (!pperc) pperc = find_player("c",pname)
if (!pperc)
{
console_print(id,"player non trouve")
return PLUGIN_HANDLED
}
get_user_name(pperc,named,31)
get_user_name(id,named2,31)
gcred[0] = str_to_num(gcred[0])
pCredit[pperc] = pCredit[pperc]+gcred[0]
if (pCredit[pperc] < 0) pCredit[pperc] = 0
console_print(id,"Tu as donne %d credits a %s",gcred[0],named)
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(pperc,"%s t'a donne %d credits !",named2,gcred[0])
statustext(pperc)
}
return PLUGIN_HANDLED
}
public give_hs(id)
{
if (!(get_user_flags(id)&ADMIN_RCON))
{
console_print(id,"Tu n'as pas acces a cette commande !")
}
else if (read_argc()<3)
{
console_print(id,"hs_credit <Pseudo - authid - #userid> <hs>")
}
else
{
new pname[33]
new named[32]
new named2[32]
new gcred[32]
new pperc
read_argv(1,pname,32)
read_argv(2,gcred,32)
pperc = find_player("al",pname)
if (!pperc) pperc = find_player("bl",pname)
if (!pperc) pperc = find_player("k",pname)
if (!pperc) pperc = find_player("c",pname)
if (!pperc)
{
console_print(id,"Joueur non trouve")
return PLUGIN_HANDLED
}
get_user_name(pperc,named,31)
get_user_name(id,named2,31)
gcred[0] = str_to_num(gcred[0])
for(new c=1;c<=gcred[0];c++)
{
hDamage[pperc]++
pAmount[pperc]++
GetAmount(pperc,lPlayer[pperc]+1)
if (aLevel[pperc] == pAmount[pperc]) lvlup(pperc)
}
console_print(id,"Tu as donne %d hs a %s",gcred[0],named)
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(pperc,"%s t'a donne %d hs !",named2,gcred[0])
statustext(pperc)
}
return PLUGIN_HANDLED
}
public infohs(id)
{
new lesinfos[4000]
new named[32]
new len = format(lesinfos,3999,"Hslvl MoD by |PaRa-BoL^n^n^n")
new i = 0
new anum, all[32]
get_players(all,anum)
while (i<=anum)
{
i++
if (hPlayer[all[i]] != 0)
{
get_user_name(all[i],named,32)
len += format(lesinfos[len],3999-len,"%s level: %d Credits: %d Hs Total: %d Vie: %d^n",named,lPlayer[all[i]],pCredit[all[i]],hDamage[all[i]],hPlayer[all[i]])
}
}
show_motd(id,lesinfos,"HS lvl Mod Info")
}
public rulehs(id)
{
new lesregles[4000]
new len = format(lesregles,3999,"Hslvl MoD by |PaRa-BoL^n^n^n")
len += format(lesregles[len],3999-len,"Gagner des credits:^n^n")
len += format(lesregles[len],3999-len,"Vous gagnez %d credits par level:^n",GIVE_CREDIT)
len += format(lesregles[len],3999-len,"Vous gagnez %d credits par HS:^n^n",GIVE_BYHEAD)
len += format(lesregles[len],3999-len,"La barre de status:^n^n")
len += format(lesregles[len],3999-len,"HS: Votre nombre de HS total.^n")
len += format(lesregles[len],3999-len,"Need: Le nombre de HS a faire avant de gagner un level.^n")
len += format(lesregles[len],3999-len,"Credits: Votre nombre de credits.^n")
len += format(lesregles[len],3999-len,"lvl: Votre level (niveau).^n^n")
len += format(lesregles[len],3999-len,"Plusieur bonus vous seront donnes au cours de votre avancement (vie en +, etc..).^n^n")
len += format(lesregles[len],3999-len,"Taper hsmenu en say ou dans la console pour afficher le menu d'options speciales.^n")
len += format(lesregles[len],3999-len,"Taper hsinfo en say ou dans la console pour afficher la grille des levels.^n")
show_motd(id,lesregles,"HS lvl Mod - Aide")
}
public hsup(id)
{
if (canup[id])
{
if (pCredit[id] < 10)
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Vous n'avez pas assez de credits !")
}
else
{
if (!isinup[id] && !isup[id] && is_user_alive(id))
{
message_begin(MSG_ONE,gmsgShake,{0,0,0},id)
write_short(1<<14)// amplitude
write_short(1<<13)// duration
write_short(1<<14)// frequency
message_end()
pCredit[id] = pCredit[id] - 10
statustext(id)
new named[32]
get_user_name(id,named,31)
emit_sound(id,CHAN_STATIC, "misc/trans2.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
set_hudmessage(255,50,0,-1.0,0.3,1, 0.01, 6.0, 0.01, 0.01, 9)
show_hudmessage(0,"%s se transforme en Super HSeur !!!",named)
isinup[id] = true
set_user_maxspeed(id,1.0)
set_user_godmode(id,1)
new parame[1]
parame[0] = id
remove_task(id+2013)
remove_task(id+2999)
set_task(0.1,"aniup",id+2999,parame,1,"b")
set_task(10.0,"endup",id+2013,parame,1)
}
}
}
else
{
set_hudmessage(100,100,255,-1.0,0.2,0, 5.0, 5.0, 1.0, 2.0, 1)
show_hudmessage(id,"Tu n'es pas LEVEL %d !!!",CAN_UP)
}
}
public endup(Params[])
{
new id = Params[0]
new origin[3]
get_user_origin(id,origin)
remove_task(id+2999)
isinup[id] = false
set_user_maxspeed(id,SPEEDBOOST)
set_user_godmode(id,0)
message_begin( MSG_PAS, SVC_TEMPENTITY, origin )
write_byte(21)
write_coord( origin[0])
write_coord( origin[1])
write_coord( origin[2] - 16)
write_coord( origin[0])
write_coord( origin[1])
write_coord( origin[2] - 16 + 200)
write_short( m_iSpriteTexture )
write_byte( 0 ) // startframe
write_byte( 0 ) // framerate
write_byte(6) // life
write_byte( 16 ) // width
write_byte( 0 ) // noise
write_byte(255)
write_byte(255)
write_byte(0)
write_byte( 255 ) //brightness
write_byte(0) // speed
message_end()
message_begin(MSG_ONE,gmsgShake,{0,0,0},id)
write_short(1<<14)// amplitude
write_short(1<<13)// duration
write_short(1<<14)// frequency
message_end()
set_user_rendering(id,kRenderFxGlowShell,255, 255,0, kRenderNormal, 16)
isup[id] = true
set_user_footsteps(id,1)
feet[id] = true
new parame[1]
parame[0] = id
set_task(0.1,"stup",id+4000,parame,1,"b")
set_task(1.0,"disup",id+9000,parame,1,"b")
}
public stup(Params[])
{
new id = Params[0]
if (!isup[id]) remove_task(id+4000)
else
{
new origin[3]
get_user_origin(id,origin)
message_begin( MSG_PAS, SVC_TEMPENTITY, origin )
write_byte(7)
write_coord(origin[0]+random_num(-40,40))
write_coord(origin[1]+random_num(-40,40))
write_coord(origin[2]+random_num(-15,40))
write_coord(origin[0]+random_num(0,40))
write_coord(origin[1]+random_num(0,40))
write_coord(origin[2]+random_num(-15,40))
write_byte(1)
write_byte(30)
write_byte(70)
write_short(eclair)
message_end()
message_begin( MSG_PAS, SVC_TEMPENTITY, origin )
write_byte(7)
write_coord(origin[0]+random_num(-40,40))
write_coord(origin[1]+random_num(-40,40))
write_coord(origin[2]+random_num(-15,40))
write_coord(origin[0]+random_num(0,40))
write_coord(origin[1]+random_num(0,40))
write_coord(origin[2]+random_num(-15,40))
write_byte(1)
write_byte(30)
write_byte(70)
write_short(eclair)
message_end()
}
}
public aniup(Params[])
{
new id = Params[0]
new origin[3]
get_user_origin(id,origin)
message_begin( MSG_PAS, SVC_TEMPENTITY,origin)
write_byte(21)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2] - 16)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2] - 16 + 50)
write_short(m_iSpriteTexture )
write_byte(0) // startframe
write_byte(0) // framerate
write_byte(6) // life
write_byte(100) // width
write_byte(0) // noise
write_byte(255)
write_byte(255)
write_byte(0)
write_byte(255) //brightness
write_byte(0) // speed
message_end()
message_begin( MSG_PAS, SVC_TEMPENTITY, origin )
write_byte(7)
write_coord(origin[0]+random_num(-500,500))
write_coord(origin[1]+random_num(-500,500))
write_coord(origin[2]+random_num(0,1000))
write_coord(origin[0]+random_num(0,40))
write_coord(origin[1]+random_num(0,40))
write_coord(origin[2]+random_num(0,40))
write_byte(1)
write_byte(30)
write_byte(70)
write_short(eclair)
message_end()
message_begin( MSG_PAS, SVC_TEMPENTITY, origin )
write_byte(7)
write_coord(origin[0]+random_num(-500,500))
write_coord(origin[1]+random_num(-500,500))
write_coord(origin[2]+random_num(0,40))
write_coord(origin[0]+random_num(0,40))
write_coord(origin[1]+random_num(0,40))
write_coord(origin[2]+random_num(0,40))
write_byte(1)
write_byte(30)
write_byte(70)
write_short(eclair)
message_end()
}
public disup(Params[])
{
new id = Params[0]
if (!isup[id])
{
set_hudmessage(255,255,0,0.7,0.7,0, 0.01, 0.01, 0.0, 0.0, 7)
show_hudmessage(id,"",incD[id])
remove_task(id+9000)
}
new origin[3]
new eorigin[3]
get_user_origin(id,origin)
incD[id] = 0
for(new i = 1; i <= get_maxplayers(); ++i)
{
get_user_origin(i,eorigin)
new pDist = get_distance(origin,eorigin)
new Float:rDist = float(pDist)*0.0254
if (rDist<=20.0 && get_user_team(id)!=get_user_team(i) && is_user_alive(i))
{
incD[id]++
}
set_hudmessage(255,255,0,0.7,0.7,0, 0.01, 30.0, 0.0, 0.0, 7)
show_hudmessage(id,"Il y a %d ennemi%s^na moins de 20 metres",incD[id], (incD[id]>1)?"s":"")
}
}
public client_prethink(id)
{
if(feet[id])
{
entity_set_int(id, EV_INT_flTimeStepSound, 999)
}
}
public plugin_init(){
new modName[32]
get_modname(modName,31)
cstrike_running = equal(modName,"cstrike") ? true : false
register_plugin("HSlvl MoD","0.4","|PaRa-BoL")
register_cvar("HS_lvl_MoD", "v0.4 by |PaRa-BoL",FCVAR_SERVER)
register_event("Damage","event_domagesse","b" , "2!0")
register_event("ResetHUD","SpawneD","be","1=1 ")
register_event("DeathMsg","event_died","a")
register_cvar("sv_hslvlmod","1")
register_cvar("mp_hsxpsave","1")
register_cvar("mp_hsgore","1")
register_cvar("mp_hsonly","0")
register_menucmd(register_menuid("HS Mod Menu"),1023,"actionMenu")
register_clcmd("say hsmenu","showMenu",0,"HS lvl Mod Menu")
register_clcmd("hsmenu","showMenu",0,"HS lvl Mod Menu")
register_clcmd("say hsinfo","infohs",0,"HS lvl Mod Menu")
register_clcmd("hsinfo","infohs",0,"HS lvl Mod Menu")
register_clcmd("say hsrules","rulehs",0,"HS lvl Mod Menu")
register_clcmd("hsrules","rulehs",0,"HS lvl Mod Menu")
register_clcmd("say hsaide","rulehs",0,"HS lvl Mod Menu")
register_clcmd("hsaide","rulehs",0,"HS lvl Mod Menu")
register_clcmd("say hsup","hsup",0,"HS lvl Mod Menu")
register_clcmd("hsup","hsup",0,"HS lvl Mod Menu")
gmsgStatusText = get_user_msgid("StatusText")
register_event("StatusValue","status_changed" ,"be","1=2","2!0")
register_event("StatusValue","status_vide","b e","1=1","2=0")
register_event("RoundTime", "partie_start", "be")
register_logevent("partie_finie",2,"0=World triggered","1=Round_End")
register_logevent("partie_start",2,"0=World triggered","1=Round_Start")
register_event("SendAudio", "partie_finie", "a", "2=%!MRAD_terwin", "2=%!MRAD_ctwin", "2=%!MRAD_rounddraw")
register_event("TextMsg","partie_finie","a"," 2&#Game_will_restart_in")
register_event("CurWeapon","curweapon","be"," 1=1")
register_clcmd("hs_credit","give_credit",ADMI N_RCON,"<authid, nick or #userid>: Donnez des credits")
register_clcmd("hs_hs","give_hs",ADMIN_RCON," <authid, nick or #userid>: Donnez des hs")
gmsgShake = get_user_msgid("ScreenShake")
gmsg_Money = get_user_msgid("Money")
set_task(TEMPS_PUB,"pubation",321,"",0,"b")
set_task(10.0,"addhostname")
new basedir[32]
get_basedir( basedir , 31 )
format(fhslvlmod, 63, "%s/%s" , basedir , fconfig)
}
|
__________________
|
|