DiabloMod 5.9l
GaCeK
03.10.2009
Witam, mam dwa pytania przedstawię je w punktach:
1# Czy da się zrobić tak aby Klasa: MAG miała latarkę którą naświetla ninje/stalkera?
2# Czy da się zrobić tak aby automatycznie wszystkim klasom nie ładowały się moce gdy mają nóż tylko pod bind czy coś podobnego?
Dziękuję za odpowiedź i pomoc, pozdrawiam GaCeK
1# Czy da się zrobić tak aby Klasa: MAG miała latarkę którą naświetla ninje/stalkera?
2# Czy da się zrobić tak aby automatycznie wszystkim klasom nie ładowały się moce gdy mają nóż tylko pod bind czy coś podobnego?
Dziękuję za odpowiedź i pomoc, pozdrawiam GaCeK
Miczu
03.10.2009
1. domyslne, pewnie nie masz cvara serwerowego od latarek wlaczonego
2. Da sie, rejestrujesz w sma swoja komende i przenosisz kod odpowiedzialny za skille do tej funkcji.
2. Da sie, rejestrujesz w sma swoja komende i przenosisz kod odpowiedzialny za skille do tej funkcji.
Miczu
03.10.2009
Robiles cos kiedys z .sma plugow? Bo nie wiem czy masz na mysli pomoc czy moze "zrob"
GaCeK
03.10.2009
raczej tylko edytowałem jakieś plugin'y do własnych potrzeb, no i potrafię wykombinować coś w stylu roundsound
i jeszcze dwa dodatkowe pytania:
1# czy można dodawać własne klasy, jeżeli się da to jak?
2# jak zrobić dodawanie exp graczom? [mam na myśli komendę amx_givexp]
i jeszcze dwa dodatkowe pytania:
1# czy można dodawać własne klasy, jeżeli się da to jak?
2# jak zrobić dodawanie exp graczom? [mam na myśli komendę amx_givexp]
Sztabson
03.10.2009
dodajesz w bazie danych sql na www poprzez edycje wpisu gracza z odpowiedniej klasy2# jak zrobić dodawanie exp graczom?
GaCeK
03.10.2009
Sztabson, lepiej żebyś zaczął czytać, pytałem jak zrobić dodawanie exp'a graczom a nie jak dodać a resztę pytań pozostawiam dla Micza
Vertricus
03.10.2009
GaCeK:
Do plugin_init:
Public gdzieś wrzuć
np. po funkcji roundstart
Jest to przeróbka kodu na dawanie itemów R3X 2 rzeczy dokładniej zmienione
Użycie:
amx_exp Vertricus 666
Działa przy 2 lub więcej graczach
Do plugin_init:
register_clcmd("amx_exp","give_xp",ADMIN_KICK,"<Nick Gracza> <Ilosc Expa>");Public gdzieś wrzuć
public give_<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />(id,level, cid)
{
if(!cmd_access(id,level, cid, 3))
return PLUGIN_HANDLED;
new szName[32];
read_argv(1, szName, 31);
new iTarget=cmd_target(id,szName,0);
if(iTarget){
get_user_name(iTarget, szName, 31);
new szItem[10], iItem;
read_argv(2, szItem, 9);
iItem=str_to_num(szItem);
client_print(id, print_console, "Do %s wyslano exp: %d",szName, iItem);
Give_<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />(iTarget, iItem);
}
return PLUGIN_HANDLED
}Jest to przeróbka kodu na dawanie itemów R3X 2 rzeczy dokładniej zmienione
Użycie:
amx_exp Vertricus 666
Działa przy 2 lub więcej graczach
Miczu
03.10.2009
Ok, to robisz wlasne register_clcmd tam dajesz nazwe funkcji co ma sie uruchomic. Szukasz miejsca w ktorym jest (ukryty) kod odpowiedzialny za uruchamiania ladowania czaru i go przenosisz. Jesli mam zgadywac (za dlugo sie uruchamia amxstudio) to pewnie to jest albo w evencie od zmiany broni lub prethinku (stawiam na to drugie).
Vertricus
03.10.2009
O ile się nie mylę to to wycinasz z public client_PreThink ( id ) robisz nowy public i rejstrujesz komede 
O ile to jest to o czym myśli Miczu
O ile to jest to o czym myśli Miczu
//USE Button actives USEMAGIC
if (get_entity_flags(id) & FL_ONGROUND && (!(button2 & (IN_FORWARD+IN_BACK+IN_MOVELEFT+IN_MOVERIGHT)) || (player_class[id] == Mag && player_b_fireball[id]==0)) && is_user_alive(id) && !bow[id] && (on_knife[id] || (player_class[id] == Mag && player_b_fireball[id])) && player_class[id]!=NONE && player_class[id]!=Nekromanta && invisible_cast[id]==0)
{
if(casting[id]==1 && halflife_time()>cast_end[id])
{
message_begin( MSG_ONE, gmsgBartimer, {0,0,0}, id )
write_byte( 0 )
write_byte( 0 )
message_end()
casting[id]=0
call_cast(id)
}
else if(casting[id]==0)
{
new Float: time_delay = 5.0-(player_intelligence[id]/25.0)
if(player_class[id] == Ninja) time_delay*=2.0
else if(player_class[id] == Mag)
{
time_delay=time_delay = 4.0-(player_intelligence[id]/25.0)
if(player_b_fireball[id]>0) time_delay=random_float(0.5,4.0-(player_intelligence[id]/25.0))
}
else if(player_class[id] == Zabojca) time_delay*=2.0
else if(player_class[id] == Paladyn) time_delay*=1.4
cast_end[id]=halflife_time()+time_delay
new bar_delay = floatround(time_delay,floatround_ceil)
casting[id]=1
message_begin( MSG_ONE, gmsgBartimer, {0,0,0}, id )
write_byte( bar_delay )
write_byte( 0 )
message_end()
}
}
else
{
if(casting[id]==1)
{
message_begin( MSG_ONE, gmsgBartimer, {0,0,0}, id )
write_byte( 0 )
write_byte( 0 )
message_end()
}
casting[id]=0
}
GaCeK
04.10.2009
Vertricus, nie rozumiem tego co napisałeś możesz napisać dokładną instrukcję do tego?
[ Dodano: 08-10-2009, 15:24 ]
ktoś może pomóc?
[ Dodano: 08-10-2009, 15:24 ]
ktoś może pomóc?




