Raised This Month: $ Target: $400
 0% 

Help me FIX Some stuff


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
MiloSx7
Member
Join Date: Oct 2011
Location: Serbia, Nish
Old 11-03-2011 , 13:30   Help me FIX Some stuff
Reply With Quote #1

PHP Code:
/*
Item Shop: 60%
Hero Shop: 70%
Odabir Heroja: 100%
Imena Heroja: 100%
Talent Points & Talent System: 80%
Honor Points & Honor System: 70%
Leveling: 80%
Respawn: 0%
Ability Power: 100%
Misije: 100%
[|||||\\\\\]
*/

#include <amxmodx>
#include <cstrike>
#include <colorchat>
#include <fakemeta>
#include <fun>
#include <hamsandwich>
#include <nvault>

#define PLUGIN "Multi Hero Mod"
#define VERSION "0.5"
#define AUTHOR "MiloS -.-"

enum {
    
Nema 0,
    
hero_Garex,
    
hero_Zero_Beam,
    
hero_Moopet,
    
hero_OvidiuS,
    
hero_Nocturne
}

new const 
imena_heroja[][] = {
    
"Nema",
    
"Garex",
    
"Zero-Beam",
    
"Moopet",
    
"OvidiuS",
    
"Nocturne"
}

new const 
ability_heroja[][] = {
    
"Nema",
    
"Vanish",    //Garex
    
"No-Clip",    //Zero-Beam
    
"Speed",    //Moopet
    
"God Mode",    //OvidiuS
    
"Low Gravity"    //Nocturne
}

new const 
shop_imena_heroja[][] = {
    
"Nema",
    
"\yOvidiuS \r[\wCena: \d13645 \wHonor Poena\r]",
    
"\yNocturne \r[\wCena: \d17555 \wHonor Poena\r]"
}

new const 
iskustvo_levelu[] = {
    
520458012518024532040550060572084598011251280144516201805,
    
200022052420264528803125338036453920420545004805512054455780,
    
61256480684572207605800084058820924596801012510580110451152012005,
    
12500130051352014045145801512515680162451682017405180001860519220,
    
19845204802112521780224452312023805245002520525920266452738028125,
    
28880296453042031205320003280533620344453528036125369803784538720,
    
396054050041405423204324544180451254608047045480204900550000
}

new const 
personal_iskustvo_levelu[] = {
    
5204580125180245320405500605720845980112512801445162018052000
}

new 
ubistva_igraca[33]
new 
honor_poeni_igraca[33]
new 
talent_poeni_igraca[33]
new 
personal_level_igraca[33]
new 
personal_iskustvo_igraca[33]
new 
iskustvo_igraca[33]
new 
level_igraca[33]
new 
heroj_igraca[33]
new 
nov_heroj_igraca[33]

new 
talent_prosireni_um[33]
new 
talent_inteligentni_napad[33]
new 
talent_dobrodusni_duh[33]

new 
bool:OvidiuS[33] = false
new bool:Nocturne[33] = false

new bool:enable_hud[33]
new 
bool:iskoristio_ability[33] = false

new bool:ability_Moopet[33]

new 
g_Vault

new ID_igraca[33][35]

new 
p_KillXP
new p_KillHonor
new p_LevelHonor
new p_PersonalLevelXP

new g_CoolDown[33]
static 
Float:f_LastUse[33]

new 
SyncHud
new SyncHud1

public plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
g_Vault nvault_open("MultiHero")
    
    
register_message(get_user_msgid("StatusIcon"), "StatusIconRemoveBuyZone")
    
    
register_clcmd("say /hero""cmdChooseHero")
    
register_clcmd("say /shop""cmdShop")
    
register_clcmd("say /statistike""cmdStats")
    
register_clcmd("say /talent""cmdTalents")
    
register_clcmd("say /misije""cmdMisije")
    
register_clcmd("say /test""cmdTest")
    
    
register_forward(FM_EmitSound"EmitSound")
    
    
register_event("CurWeapon""CurWeapon""be""1=1")
    
    
RegisterHam(Ham_TakeDamage"player""TakeDamage")
    
RegisterHam(Ham_Killed"player""Death"1)
    
RegisterHam(Ham_Spawn"player""Spawn"1)
    
    
p_KillXP register_cvar("mh_killxp""35")
    
p_KillHonor register_cvar("mh_killhonor""35")
    
p_LevelHonor register_cvar("mh_levelhonor""50")
    
p_PersonalLevelXP register_cvar("mh_personal_levelxp""20")
    
    
SyncHud CreateHudSyncObj()
    
SyncHud1 CreateHudSyncObj()
}


public 
cmdTest(id)
{
    
talent_poeni_igraca[id] += 5
}

public 
client_putinserver(id)
{
    
set_task(0.1"ShowStats"id 100)
    
set_task(60.0"ShowUputstvo"id 101)
}


public 
client_authorized(id)
{
    
get_user_authid(idID_igraca[id], 34)
}


public 
client_disconnect(id)
{
    
remove_task(id 100)
    
remove_task(id 101)
    
SacuvajPodatke(id)
}


public 
StatusIconRemoveBuyZone(msgidmsgdestid)
{
    static 
szIcon[8]
    
get_msg_arg_string(2szIcon7)
    
    if(
equal(szIcon"buyzone") && get_msg_arg_int(1))
    {
        
set_pdata_int(id235get_pdata_int(id235) & ~(1<<0))
        return 
PLUGIN_HANDLED
    
}
    return 
PLUGIN_CONTINUE
}

public 
KoristiAbility(id)
{
    if(!
is_user_alive(id))
    {
        return 
PLUGIN_HANDLED
    
}
    
    new 
Float:szServerTime get_gametime()
    
    if(
f_LastUse[id] < szServerTime)
    {
        
g_CoolDown[id] = 90
        f_LastUse
[id] = szServerTime g_CoolDown[id]
        
set_task(1.0"TaskCoolDown"id__"a"g_CoolDown[id])
    }
    
    switch(
heroj_igraca[id])
    {
        case 
hero_Garex:
        {
            if(
iskoristio_ability[id])
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Ability Power Mozes Koristiti Svake 90. Sekunde!")
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
set_user_rendering(idkRenderFxGlowShell000kRenderTransAlpha0)
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Iskoristio si Ability Power!")
            }
        }
        
        case 
hero_Zero_Beam:
        {
            if(
iskoristio_ability[id])
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Ability Power Mozes Koristiti Svake 90. Sekunde!")
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
set_user_noclip(id1)
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Iskoristio si Ability Power!")
            }
        }
        
        case 
hero_Moopet:
        {
            if(
iskoristio_ability[id])
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Ability Power Mozes Koristiti Svake 90. Sekunde!")
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
set_user_maxspeed(id400.0)
                
ability_Moopet[id] = true
                ColorChat
(idGREEN"[^3Multi Hero^4] ^1Iskoristio si Ability Power!")
            }
        }
        
        case 
hero_OvidiuS:
        {
            if(
iskoristio_ability[id])
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Ability Power Mozes Koristiti Svake 90. Sekunde!")
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
set_user_godmode(id1)
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Iskoristio si Ability Power!")
            }
        }
        
        case 
hero_Nocturne:
        {
            if(
iskoristio_ability[id])
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Ability Power Mozes Koristiti Svake 180. Sekunde!")
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
set_user_gravity(idget_user_gravity(id) - 0.7)
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Iskoristio si Ability Power!")
            }
        }
    }
    
    
set_task(5.0"SkloniAbility"id)
    
iskoristio_ability[id] = true
    
    
return PLUGIN_CONTINUE
}

public 
TaskCoolDown(id)
{
    if(
g_CoolDown[id] == 1)
    {
        
set_hudmessage(0127255, -1.00.7906.01.0)
        
ShowSyncHudMsg(idSyncHud1"Sada mozes koristiti Ability Power")
        
iskoristio_ability[id] = false
    
}
    else
    {
        
set_hudmessage(0127255, -1.00.7906.01.0)
        
ShowSyncHudMsg(idSyncHud1"[Ability Power Cooldown: %d]"g_CoolDown[id])
    }
    
    
g_CoolDown[id]--
}

public 
SkloniAbility(id)
{
    switch(
heroj_igraca[id])
    {
        case 
hero_Garex:
        {
            
set_user_rendering(id)
            
ColorChat(idGREEN"[^3Multi Hero^4] ^1Tvoj Ability Power vise ne traje")
        }
        case 
hero_Zero_Beam:
        {
            
set_user_noclip(id0)
            
ColorChat(idGREEN"[^3Multi Hero^4] ^1Tvoj Ability Power vise ne traje")
        }
        case 
hero_Moopet:
        {
            
set_user_maxspeed(id250.0)
            
ability_Moopet[id] = false
            ColorChat
(idGREEN"[^3Multi Hero^4] ^1Tvoj Ability Power vise ne traje")
        }
        
        case 
hero_OvidiuS:
        {
            
set_user_godmode(id0)
            
ColorChat(idGREEN"[^3Multi Hero^4] ^1Tvoj Ability Power vise ne traje")
        }
        
        case 
hero_Nocturne:
        {
            
set_user_gravity(id1.0)
            
ColorChat(idGREEN"[^3Multi Hero^4] ^1Tvoj Ability Power vise ne traje")
        }
    }
}

public 
cmdChooseHero(id)
{
    new 
cb menu_makecallback("ChooseHero_CallBack")
    new 
menu menu_create("\rIzaberi Heroja""ChooseHero_Handle")
    
    new 
heroj[64]
    
    for(new 
1sizeof imena_herojai++)
    {
        
UcitajPodatke(idi)
        
format(herojcharsmax(heroj), "%s \r[\yLevel \d%i\r]"imena_heroja[i], level_igraca[id])
        
menu_additem(menuheroj__cb)
    }
    
    
menu_setprop(menuMPROP_EXITNAME"Izlaz")
    
menu_display(idmenu)
    
    
UcitajPodatke(idheroj_igraca[id])
}
public 
ChooseHero_CallBack(idmenuitem)
{
    if(!
OvidiuS[id] && item == || !Nocturne[id] && item == 4)
    {
        return 
ITEM_DISABLED
    
}
    else
    {
        return 
ITEM_ENABLED
    
}
    
    return 
PLUGIN_CONTINUE
}
public 
ChooseHero_Handle(idmenuitem)
{
    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED
    
}
    
    
item ++
    
    
    if(
heroj_igraca[id])
    {
        
nov_heroj_igraca[id] = item
        ColorChat
(idGREEN"[^3Multi Hero^4] ^1Heroj ce biti promenjen u sledecoj rundi")
    }
    else
    {
        
heroj_igraca[id] = item
        UcitajPodatke
(idheroj_igraca[id])
        
Spawn(id)
    }
    
    return 
PLUGIN_CONTINUE
}


public 
cmdShop(id)
{
    new 
ime_menija[128]
    
format(ime_menijacharsmax(ime_menija), "\rShop:^nImas %d Honor Poena"honor_poeni_igraca[id])
    
    new 
menu menu_create(ime_menija"Shop_Handle")
    
menu_additem(menu"Hero Shop")
    
menu_additem(menu"Item Shop")
    
menu_setprop(menuMPROP_EXITNAME"Izlaz")
    
menu_display(idmenu)
}
public 
Shop_Handle(idmenuitem)
{
    switch(
item)
    {
        case 
MENU_EXIT:
        {
            
menu_destroy(menu)
        }
        case 
0:
        {
            
OpenHeroShop(id)
        }
        case 
1:
        {
            
OpenItemShop(id)
        }
    }
}


public 
OpenHeroShop(id)
{
    new 
ime_menija[128]
    
format(ime_menijacharsmax(ime_menija), "\rHero Shop:^nImas %d Honor Poena"honor_poeni_igraca[id])
    
    new 
menu menu_create(ime_menija"HeroShop_Handle")
    
    for(new 
1sizeof shop_imena_herojai++)
    {
        
menu_additem(menushop_imena_heroja[i])
    }
    
    
menu_setprop(menuMPROP_EXITNAME"Nazad")
    
menu_display(idmenu)
}
public 
HeroShop_Handle(idmenuitem)
{
    switch(
item)
    {
        case 
MENU_EXIT:
        {
            
menu_destroy(menu)
            
cmdShop(id)
            return 
PLUGIN_HANDLED
        
}
        case 
0:
        {
            if(
honor_poeni_igraca[id] < 13645)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Nemas dovoljno Honor Poena da kupis ovog heroja")
                
OpenHeroShop(id)
                return 
PLUGIN_HANDLED
            
}
            if(
personal_level_igraca[id] < 3)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Tvoj Personal Level nije dovoljno veliki da bi kupio ovog Heroja")
                
OpenHeroShop(id)
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
OvidiuS[id] = true
                honor_poeni_igraca
[id] -= 13645
                SacuvajPodatke
(id)
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Kupio si Heroja: ^3OvidiuS!")
            }
        }
        case 
1:
        {
            if(
honor_poeni_igraca[id] < 17555)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Nemas dovoljno Honor Poena da kupis ovog heroja")
                
OpenHeroShop(id)
                return 
PLUGIN_HANDLED
            
}
            if(
personal_level_igraca[id] < 5)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Tvoj Personal Level nije dovoljno veliki da bi kupio ovog Heroja")
                
OpenHeroShop(id)
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
Nocturne[id] = true
                honor_poeni_igraca
[id] -= 17555
                SacuvajPodatke
(id)
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Kupio si Heroja: ^3Nocturne!")
            }
        }
    }
    
    
menu_display(idmenu)
    
    return 
PLUGIN_CONTINUE
}
public 
OpenItemShop(id)
{
    new 
ime_menija[128]
    
format(ime_menijacharsmax(ime_menija), "\rItem Shop:^nImas %d Honor Poena"honor_poeni_igraca[id])
    
    new 
menu menu_create(ime_menija"OpetItemShop_Handle")
    
menu_additem(menu"\yMini XP Boost \r[\d100 \wXP\r] \yCena: \d300 \wHonor Points")
    
menu_additem(menu"\yMedium XP Boost \r[\d150 \wXP\r] \yCena: \d500 \wHonor Points")
    
menu_additem(menu"\yMega XP Boost \r[\d200 \wXP\r] \yCena: \d700 \wHonor Points")
    
menu_setprop(menuMPROP_EXITNAME"Nazad")
    
menu_display(idmenu)
}
public 
OpetItemShop_Handle(idmenuitem)
{
    switch(
item)
    {
        case 
MENU_EXIT:
        {
            
menu_destroy(menu)
            
cmdShop(id)
            return 
PLUGIN_HANDLED
        
}
        case 
0:
        {
            if(
honor_poeni_igraca[id] < 300)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Nemas dovoljno Honor Poena")
                
OpenItemShop(id)
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
iskustvo_igraca[id] += 100
                honor_poeni_igraca
[id] -= 300
                ProveriIskustvo
(id)
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Kupio si: ^3Mini XP Boost")
            }
        }
        case 
1:
        {
            if(
honor_poeni_igraca[id] < 500)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Nemas dovoljno Honor Poena")
                
OpenItemShop(id)
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
iskustvo_igraca[id] += 150
                honor_poeni_igraca
[id] -= 500
                ProveriIskustvo
(id)
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Kupio si: ^3Medium XP Boost")
            }
        }
        case 
2:
        {
            if(
honor_poeni_igraca[id] < 700)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Nemas dovoljno Honor Poena")
                
OpenItemShop(id)
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
iskustvo_igraca[id] += 200
                honor_poeni_igraca
[id] -= 700
                ProveriIskustvo
(id)
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Kupio si: ^3Mega XP Boost")
            }
        }
    }
    
    
menu_display(idmenu)
    
    return 
PLUGIN_CONTINUE
}

public 
cmdStats(id)
{
    new 
menu menu_create("\rIzaberi:""Stats_Handle")
    
    if(
enable_hud[id])
    {
        
menu_additem(menu"\yHUD Poruka \r[\wIskljuceno\r]")
    }
    else
    {
        
menu_additem(menu"\yHUD Poruka \r[\wUkljuceno\r]")
    }
    
    
menu_additem(menu"\yMOTD Prozor")
    
menu_setprop(menuMPROP_EXITNAME"Izlaz")
    
menu_display(idmenu)
}
public 
Stats_Handle(idmenuitem)
{
    switch(
item)
    {
        case 
MENU_EXIT:
        {
            
menu_destroy(menu)
        }
        case 
0:
        {
            if(
enable_hud[id])
            {
                
set_task(0.1"ShowStats"id 100)
                
enable_hud[id] = false
                cmdStats
(id)
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
remove_task(id 100)
                
enable_hud[id] = true
                cmdStats
(id)
                return 
PLUGIN_HANDLED
            
}
        }
        case 
1:
        {
            new 
szTextAdd[1024]
            new 
Add sizeof(szTextAdd) - 1
            format
(szTextAddAdd"<font color='#00ffff' face='Comic Sans MS' size='4'><body bgcolor='#000000'>")
            
format(szTextAddAdd"%s Heroj: %s<br>Level: %d<br>"szTextAddimena_heroja[heroj_igraca[id]], level_igraca[id])
            
format(szTextAddAdd"%s Personal Level: %d<br>Personal Iskustvo: %d<br>"szTextAddpersonal_level_igraca[id], personal_iskustvo_igraca[id])
            
format(szTextAddAdd"%s Honor Points: %d<br>"szTextAddhonor_poeni_igraca[id])
            
format(szTextAddAdd"%s </font></body>"szTextAdd)
            
            
show_motd(idszTextAdd)
        }
    }
    
    
menu_display(idmenu)
    
    return 
PLUGIN_CONTINUE
}


public 
cmdTalents(id)
{
    new 
ime_menija[128], prosireni_um[128], inteligentni_napad[128], dobrodusni_duh[128]
    
format(ime_menijacharsmax(ime_menija), "\rNabudzi Heroja:^nImas %d Talent Poena"talent_poeni_igraca[id])
    
format(prosireni_umcharsmax(prosireni_um), "\yProsireni Um \r[\d+3 \wHP\r] [\d%d \w/ \d3\r]"talent_prosireni_um[id])
    
format(inteligentni_napadcharsmax(inteligentni_napad), "\yInteligentni Napad \r[\d+5 \wDamage\r] [\d%d \w/ \d3\r]"talent_inteligentni_napad[id])
    
format(dobrodusni_duhcharsmax(dobrodusni_duh), "\yDobrodusni Duh \r[\d-2 \wSec (DEATH RECALL)\r] [\d%d \w/ \d5\r]"talent_dobrodusni_duh[id])
    
    new 
menu menu_create(ime_menija"Talents_Handle")
    
menu_additem(menuprosireni_um)
    
menu_additem(menuinteligentni_napad)
    
menu_additem(menudobrodusni_duh)
    
menu_additem(menu"\yResetuj Talente")
    
menu_setprop(menuMPROP_EXITNAME"Izlaz")
    
menu_display(idmenu)
}
public 
Talents_Handle(idmenuitem)
{
    switch(
item)
    {
        case 
MENU_EXIT:
        {
            
menu_destroy(menu)
        }
        case 
0:
        {
            if(
talent_prosireni_um[id] >= 3)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Maximalni Level talenta Dostignut!")
                
cmdTalents(id)
                return 
PLUGIN_HANDLED
            
}
            if(
talent_poeni_igraca[id] < 1)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Nemas dovoljno Talent Poena da bi naucio ovo!")
                
cmdTalents(id)
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
talent_prosireni_um[id] ++
                
talent_poeni_igraca[id] --
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Talent Naucen")
                
cmdTalents(id)
                return 
PLUGIN_HANDLED
            
}
        }
        case 
1:
        {
            if(
talent_inteligentni_napad[id] >= 3)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Maximalni Level talenta Dostignut!")
                
cmdTalents(id)
                return 
PLUGIN_HANDLED
            
}
            if(
talent_poeni_igraca[id] < 1)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Nemas dovoljno Talent Poena da bi naucio ovo!")
                
cmdTalents(id)
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
talent_inteligentni_napad[id] ++
                
talent_poeni_igraca[id] --
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Talent Naucen")
                
cmdTalents(id)
                return 
PLUGIN_HANDLED
            
}
        }
        case 
2:
        {
            if(
talent_dobrodusni_duh[id] >= 5)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Maximalni Level talenta Dostignut!")
                
cmdTalents(id)
                return 
PLUGIN_HANDLED
            
}
            if(
talent_poeni_igraca[id] < 1)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Nemas dovoljno Talent Poena da bi naucio ovo!")
                
cmdTalents(id)
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
talent_dobrodusni_duh[id] ++
                
talent_poeni_igraca[id] --
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Talent Naucen")
                
cmdTalents(id)
                return 
PLUGIN_HANDLED
            
}
        }
        case 
3:
        {
            
talent_poeni_igraca[id] = talent_prosireni_um[id] + talent_inteligentni_napad[id] + talent_dobrodusni_duh[id]
            
talent_prosireni_um[id] = 0
            talent_inteligentni_napad
[id] = 0
            talent_dobrodusni_duh
[id] = 0
            ColorChat
(idGREEN"[^3Multi Hero^4] ^1Restartovao si Talente")
        }
    }
    
    
menu_display(idmenu)
    
    return 
PLUGIN_CONTINUE
}


public 
cmdMisije(id)
{
    new 
misija1[128]
    
format(misija1charsmax(misija1), "\yUbij 1000 Heroja \r[\d%d\w/\d1000\r] \yNagrada: \d500 \wHonor Poena"ubistva_igraca[id])
    
    new 
menu menu_create("Misije:""Misije_Handle")
    
menu_additem(menumisija1)
    
menu_setprop(menuMPROP_EXITNAME"Izlaz")
    
menu_display(idmenu)
}
public 
Misije_Handle(idmenuitem)
{
    switch(
item)
    {
        case 
MENU_EXIT:
        {
            
menu_destroy(menu)
        }
        case 
0:
        {
            if(
ubistva_igraca[id] < 1000)
            {
                
ColorChat(idGREEN"[^3Multi Hero^4] ^1Jos uvek nisi zavrsio ovu misiju da bi pokupio nagradu")
                
cmdMisije(id)
                return 
PLUGIN_HANDLED
            
}
            else
            {
                
ubistva_igraca[id] -= 1000
                honor_poeni_igraca
[id] += 500
                ColorChat
(idGREEN"[^3Multi Hero^4] ^1Misija uspesno izvrsena")
                
cmdMisije(id)
                return 
PLUGIN_HANDLED
            
}
        }
    }
    
    
menu_display(idmenu)
    
    return 
PLUGIN_CONTINUE
}
    
public 
ShowStats(id)
{
    
id -= 100
    
    
if(!is_user_alive(id))
    {
        new 
target pev(idpev_iuser2)
        
        
set_hudmessage(0127255, -1.00.8006.00.1)
        
ShowSyncHudMsg(idSyncHud"[Heroj: %s][Ability Power: %s]^n[Level Heroja: %d][Iskustvo Heroja: %d / %d]"imena_heroja[heroj_igraca[target]], ability_heroja[heroj_igraca[target]], level_igraca[target], iskustvo_igraca[target], iskustvo_levelu[level_igraca[target]])
    }
    
    
set_hudmessage(0127255, -1.00.8006.00.1)
    
ShowSyncHudMsg(idSyncHud"[Heroj: %s][Ability Power: %s]^n[Level Heroja: %d][Iskustvo Heroja: %d / %d]"imena_heroja[heroj_igraca[id]], ability_heroja[heroj_igraca[id]], level_igraca[id], iskustvo_igraca[id], iskustvo_levelu[level_igraca[id]])
    
    
set_task(0.1"ShowStats"id 100)
}


public 
ShowUputstvo(id)
{
    
id -= 101
    
    
switch(random(5))
    {
        case 
0:
        {
            
ColorChat(idGREEN"[^3Multi Hero^4] ^1Da promenis heroja, kucaj: ^3/hero")
        }
        case 
1:
        {
            
ColorChat(idGREEN"[^3Multi Hero^4] ^1Da pogledas statistike, kucaj: ^3/statistike")
        }
        case 
2:
        {
            
ColorChat(idGREEN"[^3Multi Hero^4] ^1Da nabudzis heroja, kucaj: ^3/talents")
        }
        case 
3:
        {
            
ColorChat(idGREEN"[^3Multi Hero^4] ^1Da kupujes nove heroje, iteme, kucaj: ^3/shop")
        }
        case 
4:
        {
            
ColorChat(idGREEN"[^3Multi Hero^4] ^1Da radis misije za razne nagrade, kucaj: ^3/shop")
        }
    }
    
    
set_task(60.0"ShowUputstvo"id 101)
}

public 
Death(zrtvanapadac)
{
    if(
zrtva != napadac)
    {
        
honor_poeni_igraca[napadac] += get_pcvar_num(p_KillHonor)
        
iskustvo_igraca[napadac] += get_pcvar_num(p_KillXP)
        
ProveriIskustvo(napadac)
        
        
ubistva_igraca[napadac] ++
    }
}


public 
Spawn(id)
{
    if(!
is_user_alive(id))
    {
        return 
PLUGIN_HANDLED
    
}
    
    if(!
heroj_igraca[id])
    {
        
cmdChooseHero(id)
    }
    
    if(
nov_heroj_igraca[id])
    {
        
heroj_igraca[id] = nov_heroj_igraca[id]
        
nov_heroj_igraca[id] = 0
        strip_user_weapons
(id)
        
give_item(id"weapon_knife")
        
        switch(
get_user_team(id))
        {
            case 
1:
            {
                
give_item(id"weapon_glock18")
            }
            case 
2:
            {
                
give_item(id"weapon_usp")
            }
        }
        
        
UcitajPodatke(idheroj_igraca[id])
    }
    
    switch(
heroj_igraca[id])
    {
        case 
hero_Garex:
        {
            
give_item(id"weapon_ak47")
            
cs_set_user_bpammo(idCSW_AK4790)
        }
        case 
hero_Zero_Beam:
        {
            
give_item(id"weapon_m4a1")
            
cs_set_user_bpammo(idCSW_M4A190)
        }
        case 
hero_Moopet:
        {
            
give_item(id"weapon_aug")
            
cs_set_user_bpammo(idCSW_AUG90)
        }
        case 
hero_OvidiuS:
        {
            
give_item(id"weapon_mp5navy")
            
cs_set_user_bpammo(idCSW_MP5NAVY120)
        }
        case 
hero_Nocturne:
        {
            
give_item(id"weapon_awp")
            
cs_set_user_bpammo(idCSW_AWP30)
        }
    }
    
    
set_user_health(idget_user_health(id) + talent_prosireni_um[id] * 3)
    
    return 
PLUGIN_CONTINUE
}


public 
EmitSound(idiChannelszSound[], Float:fVolFloat:fAttniFlagsiPitch
{
    if(
equal(szSound"common/wpn_denyselect.wav"))
    {
        
KoristiAbility(id)
        return 
FMRES_SUPERCEDE
    
}
    
    return 
FMRES_IGNORED
}


public 
CurWeapon(id)
{
    if(
ability_Moopet[id])
    {
        
set_user_maxspeed(id400.0)
    }
}


public 
TakeDamage(ididinflictorattackerFloat:damagedamagebits)
{
    if(!
is_user_alive(id) || !is_user_connected(id) ||  !is_user_connected(attacker) || get_user_team(id) == get_user_team(attacker) || !heroj_igraca[attacker])
    {
        return 
PLUGIN_HANDLED
    
}
    
    
damage += talent_inteligentni_napad[id] * 5
    
    
return PLUGIN_CONTINUE
}


public 
ProveriIskustvo(id)
{
    if(
level_igraca[id] <= 100)
    {
        while(
iskustvo_igraca[id] >= iskustvo_levelu[level_igraca[id]])
        {
            
level_igraca[id] ++
            
talent_poeni_igraca[id] ++
            
honor_poeni_igraca[id] += get_pcvar_num(p_LevelHonor)
            
personal_iskustvo_igraca[id] += get_pcvar_num(p_PersonalLevelXP)
            
            
ProveriPersonalIskustvo(id)
            
            
SacuvajPodatke(id)
            
            
ColorChat(idGREEN"[^3Multi Hero^4] ^1Dobrodosao na Level %d"level_igraca[id])
        }
    }
}
public 
ProveriPersonalIskustvo(id)
{
    if(
personal_level_igraca[id] <= 20)
    {
        while(
personal_iskustvo_igraca[id] >= personal_iskustvo_levelu[personal_level_igraca[id]])
        {
            
personal_level_igraca[id] ++
            
            
SacuvajPodatke(id)
            
            
ColorChat(idGREEN"[^3Multi Hero^4] ^1Dobrodosao na Personal Level %d"level_igraca[id])
        }
    }
}


public 
SacuvajPodatke(id)
{
    new 
vaultkey[64], vaultdata[1024]
    
    
format(vaultkey63"%s-%i-mh"ID_igraca[id], heroj_igraca[id])
    
format(vaultdata1023"%i#%i#%i#%i#%i#%i#%i#%i#%i"honor_poeni_igraca[id], talent_poeni_igraca[id], iskustvo_igraca[id], level_igraca[id], personal_level_igraca[id], personal_iskustvo_igraca[id], ubistva_igraca[id], OvidiuS[id], Nocturne[id])
    
nvault_set(g_Vaultvaultkeyvaultdata)
}
public 
UcitajPodatke(idheroj)
{
    new 
vaultkey[64], vaultdata[1024]
    
    
format(vaultkey63"%s-%i-mh"ID_igraca[id], heroj)
    
format(vaultdata1023"%i#%i#%i#%i#%i#%i#%i#%i#%i"honor_poeni_igraca[id], talent_poeni_igraca[id], iskustvo_igraca[id], level_igraca[id], personal_level_igraca[id], personal_iskustvo_igraca[id], ubistva_igraca[id], OvidiuS[id], Nocturne[id])
    
nvault_get(g_Vaultvaultkeyvaultdata255)
    
    
replace_all(vaultdata255"#"" ")
    
    new 
honorpoeniigraca[32], talentpoeniigraca[32], iskustvoigraca[32], leveligraca[32], personalleveligraca[32], personaliskustvoigraca[32], ubistvaigraca[32], ovidius[32], nocturne[32]
    
    
parse(vaultdatahonorpoeniigraca31talentpoeniigraca31iskustvoigraca31leveligraca31personalleveligraca31personaliskustvoigraca31ubistvaigraca31ovidius31nocturne31)
    
    
//Level, XP, Poeni
    
honor_poeni_igraca[id] =    str_to_num(honorpoeniigraca)
    
talent_poeni_igraca[id] =    str_to_num(talentpoeniigraca)
    
iskustvo_igraca[id] =        str_to_num(iskustvoigraca)
    
level_igraca[id] =        str_to_num(leveligraca)
    
personal_level_igraca[id] =    str_to_num(personalleveligraca)
    
personal_iskustvo_igraca[id] =    str_to_num(personaliskustvoigraca)
    
ubistva_igraca[id] =        str_to_num(ubistvaigraca)
    
    
//Heroji
    
OvidiuS[id] =            str_to_num(ovidius) ? false:true
    Nocturne
[id] =            str_to_num(nocturne) ? false:true
    
    
//Talenti
    
}

public 
plugin_end()
{
    
nvault_close(g_Vault)

This is my plugin (well thanks to my friends that helped me for the ideas for hero's names and other ideas)
I have few problems and few things that i would like to have in my plugin, but i don't know how to make that:

TO HELP ME TO DO:
  • How to make No round end ?

  • Auto Respawner after couple of seconds (seconds depends on hero level) [DONE]


BUGS:
  • I saved OvidiuS and Noctourne Bools to nVault... After player buys a hero, that bool becomes true, so he can choose that hero...
    The problem is, after i put bools in nVault, heroes are always available to play, without buying them... [FIXED, BUT BUGGED :S]


Please help me fix this it will mean a lot to me
__________________
MiloS

Last edited by MiloSx7; 11-04-2011 at 05:38.
MiloSx7 is offline
Send a message via MSN to MiloSx7
kiki33hun
Veteran Member
Join Date: Jul 2011
Location: Magyarország
Old 11-03-2011 , 13:37   Re: Help me FIX Some stuff
Reply With Quote #2

How to make No round end ?
tow bots, one terror one ct! Bots functions round end blocker ^^
__________________

Last edited by kiki33hun; 11-03-2011 at 13:37.
kiki33hun is offline
KillLikoe
BANNED
Join Date: Nov 2010
Location: Paraguay
Old 11-03-2011 , 13:40   Re: Help me FIX Some stuff
Reply With Quote #3

there is a plugin, made by i dont remember, that is for unlimited round
KillLikoe is offline
kiki33hun
Veteran Member
Join Date: Jul 2011
Location: Magyarország
Old 11-03-2011 , 13:42   Re: Help me FIX Some stuff
Reply With Quote #4

http://forums.alliedmods.net/showthread.php?p=413201
__________________
kiki33hun is offline
MiloSx7
Member
Join Date: Oct 2011
Location: Serbia, Nish
Old 11-03-2011 , 13:47   Re: Help me FIX Some stuff
Reply With Quote #5

Nooo, i want to block it without bots
__________________
MiloS
MiloSx7 is offline
Send a message via MSN to MiloSx7
joshknifer
Veteran Member
Join Date: Jun 2011
Location: Denver, CO
Old 11-03-2011 , 13:56   Re: Help me FIX Some stuff
Reply With Quote #6

Quote:
Originally Posted by KillLikoe View Post
there is a plugin, made by i dont remember, that is for unlimited round
Infinite Round
__________________
joshknifer is offline
Send a message via Skype™ to joshknifer
MiloSx7
Member
Join Date: Oct 2011
Location: Serbia, Nish
Old 11-03-2011 , 13:59   Re: Help me FIX Some stuff
Reply With Quote #7

Any way without Orpheu !?

@FIXED: Bools to nvault..
Help about respawn !!
__________________
MiloS

Last edited by MiloSx7; 11-03-2011 at 15:51.
MiloSx7 is offline
Send a message via MSN to MiloSx7
Backstabnoob
BANNED
Join Date: Feb 2009
Location: Iwotadai Dorm
Old 11-03-2011 , 15:10   Re: Help me FIX Some stuff
Reply With Quote #8

Only with a module or Orpheu.
Backstabnoob is offline
drekes
Veteran Member
Join Date: Jul 2009
Location: Vault 11
Old 11-03-2011 , 15:24   Re: Help me FIX Some stuff
Reply With Quote #9

There are ways using fake bots but then you lose 2 player slots IIRC.
Arkshine's plugin posted in #6 is the best solution.
__________________

Quote:
Originally Posted by nikhilgupta345 View Post
You're retarded.
drekes is offline
Send a message via MSN to drekes
MiloSx7
Member
Join Date: Oct 2011
Location: Serbia, Nish
Old 11-03-2011 , 16:19   Re: Help me FIX Some stuff
Reply With Quote #10

Ayay thanks then...
I made a litle respawner, but its bugged and when i get spawned im apearing in spec

PHP Code:
static Float:f_Respawn[33]
new 
g_RespawnMeter[33]
public 
Death(zrtvanapadac)
{
    if(
zrtva != napadac)
    {
        if(!
heroj_igraca[napadac])
        {
            return 
PLUGIN_HANDLED
        
}
        
        
honor_poeni_igraca[napadac] += get_pcvar_num(p_KillHonor)
        
iskustvo_igraca[napadac] += get_pcvar_num(p_KillXP)
        
ProveriIskustvo(napadac)
        
        
ubistva_igraca[napadac] ++
    }
    
    new 
Float:szServerTime get_gametime()
    
    
g_RespawnMeter[zrtva] = level_igraca[zrtva]
    
f_Respawn[zrtva] = szServerTime g_RespawnMeter[zrtva]
    
    
set_task(1.0"RespawnMeter"zrtva__"a"g_RespawnMeter[zrtva])
    
    return 
PLUGIN_CONTINUE
}
public 
RespawnMeter(id)
{
    if(
g_RespawnMeter[id] == 1)
    {
        
set_hudmessage(0127255, -1.00.7406.01.0)
        
ShowSyncHudMsg(idSyncHud1"Respawnoavn si !")
        
ExecuteHamB(Ham_CS_RoundRespawnid)
    }
    else
    {
        
set_hudmessage(0127255, -1.00.7406.01.0)
        
ShowSyncHudMsg(idSyncHud1"[Respawn za: %d]"g_RespawnMeter[id])
    }
    
    
g_RespawnMeter[id]--

Help :S

@EDIT WOrks, somehow xD
__________________
MiloS

Last edited by MiloSx7; 11-03-2011 at 16:34.
MiloSx7 is offline
Send a message via MSN to MiloSx7
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 14:17.


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