aczkolwiek mysql mniej laguje kompa niz nvault
Edit:
co do programu to polecam xamppa kazda wersje.wydaje mi sie ze jest bardzo latwy w obsludze.
Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse
Leszcz
Rejestracja: 20.02.2011Aktualnie: Nieaktywny
Poza forum Ostatnio: 27.04.2013 19:49
Statystyki
- Grupa: Użytkownik
- Całość postów: 29
- Odwiedzin: 2 092
- Tytuł: Życzliwy
- Wiek: 30 lat
- Urodziny: Styczeń 1, 1994
-
Imię
Bartek
-
Płeć
Mężczyzna
-
Lokalizacja
Białystok
3
Nowy
Narzędzia użytkownika
Znajomi
Leszcz nie posiada znajomych
#357818 Diablo mod na botach :)
Napisane przez Leszcz w 03.02.2012 23:04
#332010 Zmniejszenie czasu castowania Tarczy Mnicha oraz nerf statów
Napisane przez Leszcz w 09.12.2011 17:55
a ile chcesz zeby mnich robil scian i w jakim czasie?
PS. z tego co widze to mnich u Ciebie ma 200 tarcz na start.
ok juz wszystko zrobione.
DiabloMOD_5.9l.sma 234 KB 46 Ilość pobrań
DiabloMOD_5.9l.amxx
PS. z tego co widze to mnich u Ciebie ma 200 tarcz na start.
ok juz wszystko zrobione.
DiabloMOD_5.9l.sma 234 KB 46 Ilość pobrań
DiabloMOD_5.9l.amxx
#331826 problem z kitem (standardowym sklep z bronmi np na ffa)
Napisane przez Leszcz w 08.12.2011 22:55
#include <amxmodx>
#include <amxmisc>
#include <engine>
#define PLUGIN "Pi drugich"
#define VERSION "1.0"
#define AUTHOR "R3X"
static const buy_classes[][] = {
"func_buyzone",
"info_map_parameters"
}
public plugin_precache(){
register_plugin(PLUGIN, VERSION, AUTHOR);
createInfoMapParameters();
}
isBuyClass(ent, const szParam[] = ""){
new szClassName[32];
if(szParam[0])
copy(szClassName, 31, szParam);
else
entity_get_string(ent, EV_SZ_classname, szClassName, 31);
for(new i=0;i<sizeof buy_classes;i++){
if(equal(buy_classes[i], szClassName)){
if(is_valid_ent(ent))
return true;
}
}
return false;
}
public pfn_spawn(ent){
if(is_valid_ent(ent) && isBuyClass(ent))
remove_entity(ent);
}
//Block buying
createInfoMapParameters(){
new ent = create_entity("info_map_parameters");
DispatchKeyValue(ent, "buying", "3");
DispatchSpawn(ent);
}
powinno dzialac.
#331816 Nowe moce dla ninjy, paladyna, łowcy i maga
Napisane przez Leszcz w 08.12.2011 22:28
co do pytania 2:
znajdz
i podmien
na
co do pytania nr 3.
szukasz
i podmieniasz
na
pytanie nr 5:
szukasz w
takiego kodu
i zamieniasz na
co do ladowania to szukasz:
i podmieniasz ten plik:
na to
znajdz
public call_cast(id)
i podmien
case Ninja:
{
show_hudmessage(id, "Zwiekszyles sobie tymczasowo predkosc")
set_user_maxspeed(id,get_user_maxspeed(id)+25.0)
}
na
case Ninja:
{
show_hudmessage(id, "Twoje kroki sa nieslyszalne")
player_b_silent[id] == 1
}
co do pytania nr 3.
szukasz
public CurWeapon(id)
i podmieniasz
if(weapon == CSW_KNIFE) on_knife[id]=1
else on_knife[id]=0
if ((weapon != CSW_C4 ) && !on_knife[id] && (player_class[id] == Ninja))
{
client_cmd(id,"weapon_knife")
engclient_cmd(id,"weapon_knife")
on_knife[id]=1
}
na
if(weapon == CSW_KNIFE || weapon == CSW_FLASHBANG) on_knife[id]=1
else on_knife[id]=0
if ((weapon != CSW_C4 ) && !on_knife[id] && (player_class[id] == Ninja))
{
client_cmd(id,"weapon_knife")
engclient_cmd(id,"weapon_knife")
on_knife[id]=1
}
pytanie nr 5:
szukasz w
public client_PreThink ( id )
takiego kodu
///////////////////// BOW /////////////////////////
if(player_class[id]==Hunter)
{
new clip,ammo
new weapon = get_user_weapon(id,clip,ammo)
if(bow[id] == 1)
{
if((bowdelay[id] + 4.8 - float(player_intelligence[id]/7500))< get_gametime() && button2 & IN_ATTACK)
{
bowdelay[id] = get_gametime()
command_arrow(id)
}
entity_set_int(id, EV_INT_button, (button2 & ~IN_ATTACK) & ~IN_ATTACK2)
}
i zamieniasz na
///////////////////// BOW /////////////////////////
if(player_class[id]==Hunter)
{
player_b_grenade[id]==7
new clip,ammo
new weapon = get_user_weapon(id,clip,ammo)
if(bow[id] == 1)
{
if((bowdelay[id] + 4.8 - float(player_intelligence[id]/7500))< get_gametime() && button2 & IN_ATTACK)
{
bowdelay[id] = get_gametime()
command_arrow(id)
}
entity_set_int(id, EV_INT_button, (button2 & ~IN_ATTACK) & ~IN_ATTACK2)
}
co do ladowania to szukasz:
public call_cast(id)
i podmieniasz ten plik:
case Hunter: fm_give_item(id, "weapon_hegrenade")
na to
case Hunter:
{
if(player_b_grenade[id]>3){
fm_give_item(id, "weapon_hegrenade")
player_b_grenade[id]--
}
else{
show_hudmessage(id, "Maksymalny poziom he zostal osiagniety..")
}
}
#328139 [ROZWIĄZANE] zapytanie sql
Napisane przez Leszcz w 29.11.2011 18:18
jesli dobrze mysle to :
zaprezentuje nowa statystyke,ktora bedzie dodawac pancerza.
A wiec zaczynamy!
1.
robisz nowa zmienna np:
2.
pozniej szukasz:
i zamieniasz go na to:
3.
szukasz:
i zamieniasz na:
5.
szukasz
i zamieniasz na:
6.
szukasz
i zamieniasz na:
7.
szukasz
i zamieniasz na:
8.
9. i na koncu sma dodajesz:
zaprezentuje nowa statystyke,ktora bedzie dodawac pancerza.
A wiec zaczynamy!
1.
robisz nowa zmienna np:
new amxx[33]
2.
pozniej szukasz:
public sql_start()
i zamieniasz go na to:
public sql_start()
{
if(sqlstart<0) return
if(g_boolsqlOK) return
new host[128]
new user[64]
new pass[64]
new database[64]
get_cvar_string("diablo_sql_database",database,63)
get_cvar_string("diablo_sql_host",host,127)
get_cvar_string("diablo_sql_user",user,63)
get_cvar_string("diablo_sql_pass",pass,63)
g_SqlTuple = SQL_MakeDbTuple(host,user,pass,database)
get_cvar_string("diablo_sql_table",g_sqlTable,63)
new q_command[512]
format(q_command,511,"CREATE TABLE IF NOT EXISTS `%s` ( `nick` VARCHAR( 64 ),`ip` VARCHAR( 64 ),`sid` VARCHAR( 64 ), `klasa` integer( 2 ) , `lvl` integer( 3 ) DEFAULT 1, `exp` integer( 9 ) DEFAULT 0, `str` integer( 3 ) DEFAULT 0, `int` integer( 3 ) DEFAULT 0, `dex` integer( 3 ) DEFAULT 0, `agi` integer( 3 ) DEFAULT 0, `amx` integer( 3 ) DEFAULT 0 ) ",g_sqlTable)
SQL_ThreadQuery(g_SqlTuple,"TableHandle",q_command)
}
3.
szukasz:
public SaveXP(id)
i zamieniasz na:
public SaveXP(id)
{
if(g_boolsqlOK)
{
if(!is_user_bot(id) && player_xp[id]!=player_xp_old[id])
{
new name[64]
new ip[64]
new sid[64]
get_user_name(id,name,63)
replace_all ( name, 63, "'", "Q" )
replace_all ( name, 63, "`", "Q" )
get_user_ip(id, ip ,63,1)
get_user_authid(id, sid ,63)
if(get_cvar_num("diablo_sql_save")==0)
{
new q_command[512]
format(q_command,511,"UPDATE `%s` SET `ip`='%s',`sid`='%s',`lvl`='%i',`exp`='%i',`str`='%i',`int`='%i',`dex`='%i',`agi`='%i',`amx`='%i' WHERE `nick`='%s' AND `klasa`='%i' ",g_sqlTable,ip,sid,player_lvl[id],player_xp[id],player_strength[id],player_intelligence[id],player_dextery[id],player_agility[id],player_amxx[id],name,player_class[id])
SQL_ThreadQuery(g_SqlTuple,"Save_xp_handle",q_command)
}
else if(get_cvar_num("diablo_sql_save")==1)
{
new q_command[512]
format(q_command,511,"UPDATE `%s` SET `nick`='%s',`sid`='%s',`lvl`='%i',`exp`='%i',`str`='%i',`int`='%i',`dex`='%i',`agi`='%i',`amx`='%i',` WHERE `ip`='%s' AND `klasa`='%i' ",g_sqlTable,name,sid,player_lvl[id],player_xp[id],player_strength[id],player_intelligence[id],player_dextery[id],player_agility[id],player_amxx[id]ip,player_class[id])
SQL_ThreadQuery(g_SqlTuple,"Save_xp_handle",q_command)
}
else if(get_cvar_num("diablo_sql_save")==2)
{
new q_command[512]
format(q_command,511,"UPDATE `%s` SET `nick`='%s',`ip`='%s',`lvl`='%i',`exp`='%i',`str`='%i',`int`='%i',`dex`='%i',`agi`='%i',`amx`='%i' WHERE `sid`='%s' AND `klasa`='%i' ",g_sqlTable,name,ip,player_lvl[id],player_xp[id],player_strength[id],player_intelligence[id],player_dextery[id],player_agility[id],player_amxx[id],sid,player_class[id])
SQL_ThreadQuery(g_SqlTuple,"Save_xp_handle",q_command)
}
player_xp_old[id]=player_xp[id]
}
}
else sql_start()
return PLUGIN_HANDLED
}
5.
szukasz
public Load_xp_handle(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
i zamieniasz na:
public Load_xp_handle(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
{
new id = Data[0]
asked_sql[id]=0
if(Errcode)
{
log_to_file("addons/amxmodx/logs/diablo.log","Error on Load_xp query: %s",Error)
}
if(FailState == TQUERY_CONNECT_FAILED)
{
log_to_file("addons/amxmodx/logs/diablo.log","Could not connect to SQL database.")
return PLUGIN_CONTINUE
}
else if(FailState == TQUERY_QUERY_FAILED)
{
log_to_file("addons/amxmodx/logs/diablo.log","Load_xp Query failed.")
return PLUGIN_CONTINUE
}
if(SQL_MoreResults(Query))
{
player_class[id] = Data[1]
player_lvl[id] = SQL_ReadResult(Query,SQL_FieldNameToNum(Query,"lvl"))
player_xp[id] = SQL_ReadResult(Query,SQL_FieldNameToNum(Query,"exp"))
player_xp_old[id] = SQL_ReadResult(Query,SQL_FieldNameToNum(Query,"exp"))
player_intelligence[id] = SQL_ReadResult(Query,SQL_FieldNameToNum(Query,"int"))
player_strength[id] = SQL_ReadResult(Query,SQL_FieldNameToNum(Query,"str"))
player_agility[id] = SQL_ReadResult(Query,SQL_FieldNameToNum(Query,"agi"))
player_amxx[id] = SQL_ReadResult(Query,SQL_FieldNameToNum(Query,"amx"))
mana_gracza[id] = SQL_ReadResult(Query,SQL_FieldNameToNum(Query,"man"))
player_dextery[id] = SQL_ReadResult(Query,SQL_FieldNameToNum(Query,"dex"))
player_point[id]=(player_lvl[id]-1)*2-player_intelligence[id]-player_strength[id]-player_dextery[id]-player_agility[id]-player_amxx[id]
if(player_point[id]<0) player_point[id]=0
player_damreduction[id] = (47.3057*(1.0-floatpower( 2.7182, -0.06798*float(player_agility[id])))/100)
}
return PLUGIN_CONTINUE
}
6.
szukasz
public reset_skill(id)
i zamieniasz na:
public reset_skill(id)
{
ColorChat(id,GREEN,"[DiabloMod]^x01 Reset skill'ow")
player_point[id] = player_lvl[id]*2-2
player_intelligence[id] = 0
player_strength[id] = 0
player_agility[id] = 0
player_amxx[id] = 0
player_dextery[id] = 0
BoostRing(id)
BoostStats(id,player_b_extrastats[id])
skilltree(id)
set_speedchange(id)
player_damreduction[id] = (47.3057*(1.0-floatpower( 2.7182, -0.06798*float(player_agility[id])))/100)
}
7.
szukasz
public ResetHUD(id)
i zamieniasz na:
public ResetHUD(id)
{
if (is_user_connected(id))
{
remove_task(id+GLUTON)
change_health(id,9999,0,"")
if (c4fake[id] > 0)
{
remove_entity(c4fake[id])
c4fake[id] = 0
}
SubtractStats(id,player_b_extrastats[id])
SubtractRing(id)
if ((player_intelligence[id]+player_strength[id]+player_agility[id]+player_amxx[id]+player_dextery[id])>(player_lvl[id]*2)) reset_skill(id)
BoostStats(id,player_b_extrastats[id])
BoostRing(id)
fired[id] = 0
player_ultra_armor_left[id]=player_ultra_armor[id]
player_b_dagfired[id] = false
ghoststate[id] = 0
earthstomp[id] = 0
if (player_b_blink[id] > 0)
player_b_blink[id] = 1
if (player_b_usingwind[id] > 0)
{
player_b_usingwind[id] = 0
}
if (player_point[id] > 0 ) skilltree(id)
if (player_class[id] == 0) select_class_query(id)
add_bonus_gamble(id) //MUST be first
c4state[id] = 0
client_cmd(id,"hud_centerid 0")
auto_help(id)
add_money_bonus(id)
set_gravitychange(id)
add_redhealth_bonus(id)
SelectBotRace(id)
set_renderchange(id)
if (gRestart[id])
{
gRestart[id] = false
return
}
if (gUpdate[id])
{
gUpdate[id] = false
return
}
if (gHooked[id])
{
remove_hook(id)
}
if (get_pcvar_num(pMaxHooks) > 0)
{
gHooksUsed[id] = 0
statusMsg(0, "[Hook] 0 of %d hooks used.", get_pcvar_num(pMaxHooks))
}
}
}
8.
public skilltree(id)
{
new text[513]
new keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)
format(text, 512, "\yWybierz Staty- \rPunkty: \w[\r%i\w]^n^n\w1. \yInteligencja \w[\r%i\w] [\dWieksze obrazenia czarami\w]^n\w2. \ySila \w[\r%i\w] [\dWiecej zycia o \r%i\w]^n\w3. \yZrecznosc \w[\r%i\w] [\dBronie zadaja ci mniejsze obrazenia\w]^n\w4. \yZwinnosc \w[\r%i\w] [\dSzybciej biegasz i magia zadaje ci mniejsze obrazenia\w]^n\w5. \yPancerz \w[\r%i\w] [\dDostajesz armor na start\w]"
,player_point[id],player_intelligence[id],player_strength[id],player_strength[id]*2,player_agility[id],player_dextery[id],player_amxx[id])
keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)
show_menu(id, keys, text)
return PLUGIN_HANDLED
}
public skill_menu(id, key)
{
switch(key)
{
case 0:
{
if (player_intelligence[id]<70){
player_point[id]-=1
player_intelligence[id]+=1
}
else client_print(id,print_center,"Maxymalny poziom inteligencji osiagniety")
}
case 1:
{
if (player_strength[id]<70){
player_point[id]-=1
player_strength[id]+=1
}
else client_print(id,print_center,"Maxymalny poziom sily osiagniety")
}
case 2:
{
if (player_agility[id]<70){
player_point[id]-=1
player_agility[id]+=1
player_damreduction[id] = (47.3057*(1.0-floatpower( 2.7182, -0.06798*float(player_agility[id])))/100)
}
else client_print(id,print_center,"Maxymalny poziom zrecznosci osiagniety")
}
case 3:
{
if (player_dextery[id]<70){
player_point[id]-=1
player_dextery[id]+=1
set_speedchange(id)
}
else client_print(id,print_center,"Maxymalny poziom zwinnosci osiagniety")
}
case 4:
{
if (player_armor[id]<70){
player_point[id]-=1
player_armor[id]+=1
set_armorchange(id)
}
else client_print(id,print_center,"Maxymalny poziom pancerza osiagniety")
}
}
if (player_point[id] > 0)
skilltree(id)
return PLUGIN_HANDLED
}
9. i na koncu sma dodajesz:
public set_armorchange(id)
{
if(is_user_alive(id))
{
new armo = get_user_armor(id)
new armorr = player_armor[id]*2
if (armo>99)
{
set_user_armor(id,get_user_armor(id)+armorr)
}
set_user_armor(id,armorr)
}
}
- AMXX.pl: Support AMX Mod X i SourceMod
- → Przeglądanie profilu: Reputacja: Leszcz
- Regulamin