Mam problem z poniższym pluginem edytowanym przeze mnie wyskakuje jailbreak_jbpack123.sma <327> : :error 010 invalid function or declaration
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.
|
bład przy kompilacjibład przy kompilacji
- Nie możesz napisać tematu
- Zaloguj się, aby dodać odpowiedź
#3 RaS_
Napisano 27.09.2016 20:16
/* Plugin generated by AMXX-Studio */
#define PLUGIN "JBPacki"
#define VERSION "1.0"
#define AUTHOR "Zero"
#define prefix "Sklep"
#define FL_WATERJUMP (1<<11)
#define FL_ONGROUND (1<<9)
#define autobhopkeys (1<<0)|(1<<1)
new pPcvarDBHost;
new pPcvarDBUser;
new pPcvarDBPassword;
new pPcvarDBBase;
new Handle:g_SqlTuple;
new g_Cache[512];
new bool:SQLenabled;
new bool:gIntermission;
new gTablesLoaded[33];
new gSaveKey[33][32];
new ilosc_jbpack[33];
new bool:bhop_enabled[33];
new bool:blokada
new jb_packi_nv
new msgtext;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
//--//--//--//--//--//--//--//--//--//--//--//--//--//--//
pPcvarDBHost = register_cvar("db_host", "xx"); //ip bazy danych
pPcvarDBUser = register_cvar("db_user", "zz"); //nazwa uzytkownika
pPcvarDBPassword = register_cvar("db_pass", "cc"); //haslo do bazy danych
pPcvarDBBase = register_cvar("db_database", "vv"); //nazwa bazy danych
//--//--//--//--//--//--//--//--//--//--//--//--//--//--//
register_clcmd("say /sklep", "jb_sklep")
register_clcmd("say_team /sklep", "jb_sklep")
register_cvar("jb_maxjp", "41" );
register_cvar("jb_tt", "1" );
register_cvar("jb_ct", "2" );
register_cvar("jb_hs", "1" );
register_cvar("jb_czas", "120");
register_cvar("jb_zapis", "1"); //1 - nvault, 2 - sql
register_cvar("jb_hud", "2"); //0 - off, 1 - status, 2 - hud
if(get_cvar_num("jb_zapis") == 2) {
jb_packi_nv = nvault_open("jb_packi")
if(jb_packi_nv == INVALID_HANDLE)
set_fail_state("Nie moge otworzyc pliku");
}
register_event("DeathMsg", "DeathMsg", "a")
register_logevent("Koniec_Rundy", 2, "1=Round_End")
register_logevent("Poczatek_Rundy", 2, "1=Round_Start")
register_event("ResetHUD","HUD", "b");
register_concmd("jb_packgive", "cmd_give", ADMIN_IMMUNITY, "");
register_clcmd("typ_zapisu", "typ");
msgtext = get_user_msgid("StatusText");
register_forward(FM_PlayerPreThink, "forward_FM_PlayerPreThink", 0)
set_task(0.8, "HUD",0,"",0,"b");
}
public HUD(id) {
for (new id=0; id < 32; id++) {
if (!is_user_connected(id))
continue
if(is_user_alive(id)){
new HUD[128];
format(HUD, 127,"Jointy: %i",ilosc_jbpack[id]);
if(get_cvar_num("jb_hud") == 1){
message_begin(MSG_ONE, msgtext, {0,0,0}, id);
write_byte(0);
write_string(HUD);
message_end();
return PLUGIN_CONTINUE;
}
else if(get_cvar_num("jb_hud") == 2)
{
set_hudmessage(0, 255, 0, 0.02, 0.63, 0, 0.01, 0.8, _, _, 3)
show_hudmessage(id, "%s",HUD)
}
}
}
return PLUGIN_CONTINUE;
}
/*public client_PreThink(id){
if(!is_user_alive(id)){
return PLUGIN_CONTINUE;
}
if(is_user_alive(id) && !is_user_bot(id) && get_cvar_num("jb_hud") > 0){
HUD(id);
}
return PLUGIN_HANDLED;
}*/
public DeathMsg()
{
new weaponname[20]
new kid = read_data(1)
new vid = read_data(2)
new headshot = read_data(3)
read_data(4,weaponname,31)
if(kid == vid)
{
return PLUGIN_HANDLED
}
if(get_user_team(kid) == 1)
{
new maxjp = get_cvar_num("jb_maxjp")
if(ilosc_jbpack[kid] {
if(get_user_team(vid) == 2)
{
new pack_ct = get_cvar_num("jb_ct")
ilosc_jbpack[kid] += pack_ct
ColorChat(kid, GREEN, "[%s] ^x01 Dostales ^x04+%i ^x01Jointy/ów", prefix, pack_ct);
}
else
{
new pack_tt = get_cvar_num("jb_tt")
ilosc_jbpack[kid] += pack_tt
ColorChat(kid, GREEN, "[%s] ^x01 Dostales ^x04+%i ^x01Jointy/ów", prefix, pack_tt);
}
if(headshot)
{
new pack_hs = get_cvar_num("jb_hs")
ilosc_jbpack[kid] += pack_hs
ColorChat(kid, GREEN, "[%s] ^x01 Dostales bonus za headshot ^x04+%i ^x01Jointy/ów", prefix, pack_hs);
}
}
else
{
ColorChat(kid, GREEN, "[%s] ^x01 Ilosc maksymalna Jointów osiagnieta!", prefix);
return PLUGIN_CONTINUE
}
ColorChat(kid, GREEN, "[%s] ^x01 Twoja ilosc Jointów to: ^x04%i/%i", prefix, ilosc_jbpack[kid], maxjp);
if(get_cvar_num("jb_zapis") == 1) {
sql_save(kid)
}
else
{
zapisz_jbpack(kid)
}
}
return PLUGIN_CONTINUE
}
////----//////
public jb_sklep(id)
{
if(blokada == true){
new czynny_sklep = get_cvar_num("jb_czas")
ColorChat(id, GREEN, "[%s] Sklep jest czynny tylko %d sekund po rozpoczeciu rundy", prefix, czynny_sklep);
return PLUGIN_HANDLED
}
new menu,formats[64];
formatex(formats,charsmax(formats),"\wSklep JB^n\wIlosc Jointów: \r%i",ilosc_jbpack[id])
menu = menu_create(formats,"handle_jb_sklep");
if(get_user_team(id) == 1)
{
menu_additem(menu,"\wButy Nike \r[\w10 Jointów\r]","0")
menu_additem(menu,"\wButy Skoczka \r[\w10 Jointów\r]","1")
menu_additem(menu,"\wGranat dymny \r[\w2 Jointy\r]","2")
menu_additem(menu,"\wGranat oslepiajacy \r[\w7 Jointów\r]","3")
menu_additem(menu,"\wGranat wybuchajacy \r[\w10 Jointów\r]","4")
menu_additem(menu,"\wKamizelka \r[\w8 Jointów\r]","5")
menu_additem(menu,"\wGlock z 3 nabojami \r[\w21 Jointów\r]","6")
menu_additem(menu,"\wMiekkie Kapcie \r[\w15 Jointów\r]","7")
menu_additem(menu,"\w+20 HP \r[\w3 Jointy\r]","8")
menu_additem(menu,"\wCiche Chodzenie na jedna runde \r[\w10 Jointów\r]","9")
menu_additem(menu,"\wScout z 1 nabojem \r[\w26 Jointów\r]","10")
menu_additem(menu,"\wDeagle z 1 nabojem \r[\w28 Jointów\r]","11")
menu_additem(menu,"\wPrzenikanie przez sciany na 3 sekundy \r17 Jointów\r]","12")
}
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
menu_setprop(menu,MPROP_EXITNAME,"Wyjscie")
menu_setprop(menu,MPROP_NEXTNAME,"Dalej")
menu_setprop(menu,MPROP_BACKNAME,"Wroc")
menu_display(id,menu,0)
return PLUGIN_HANDLED
}
public handle_jb_sklep(id, menu, item)
{
switch(item)
{
case 0 :
{
if(!sprawdz(id,2)) return PLUGIN_HANDLED;
get_user_name(id, prefix, 31)
set_user_maxspeed(id, 500.0)
ColorChat(id, GREEN, "[%s] Kupiono Buty Nike, Dzięki ktorym mozesz szybciej biegac.", prefix);
}
case 1 :
{
if(!sprawdz(id,2)) return PLUGIN_HANDLED;
get_user_name(id, prefix, 31)
set_user_gravity(id, 0.5)
ColorChat(id, GREEN, "[%s] Kupiono Buty Skoczka, Dzięki ktorym mozesz wyzej skakac.", prefix) ;
}
case 2:
{
if(!sprawdz(id,2)) return PLUGIN_HANDLED;
give_item(id, "weapon_smokegrenade");
ColorChat(id, GREEN, "[%s] Kupiles granat dymny", prefix);
}
case 3:
{
if(!sprawdz(id,7)) return PLUGIN_HANDLED;
give_item(id, "weapon_flashbang");
ColorChat(id, GREEN, "[%s] Kupiles granat oslepiajacy", prefix);
}
case 4:
{
if(!sprawdz(id,10)) return PLUGIN_HANDLED;
give_item(id, "weapon_hegrenade");
ColorChat(id, GREEN, "[%s] Kupiles granat wybuchowy", prefix);
}
case 5:
{
if(!sprawdz(id,8)) return PLUGIN_HANDLED;
give_item(id, "item_kevlar")
give_item(id, "item_assaultsuit")
ColorChat(id, GREEN, "[%s] Kupiles kamizelke", prefix);
}
case 6:
{
if(!sprawdz(id,10)) return PLUGIN_HANDLED;
give_item(id, "weapon_glock18")
new weapon_id = find_ent_by_owner(-1, "weapon_glock18", id);
if(weapon_id)
{
cs_set_weapon_ammo(weapon_id, 3);
}
ColorChat(id, GREEN, "[%s] Kupiles glocka z 3 nabojami", prefix);
}
case 7:
{
if(!sprawdz(id,15)) return PLUGIN_HANDLED;
bhop_enabled[id] = true
ColorChat(id, GREEN, "[%s] Kupiles AutoBH na jedna runde", prefix);
}
case 8:
{
if(!sprawdz(id,3)) return PLUGIN_HANDLED;
set_user_health(id, get_user_health(id) + 20)
ColorChat(id, GREEN, "[%s] Kupiles +20hp", prefix);
}
case 9:
{
if(!sprawdz(id,10)) return PLUGIN_HANDLED;
set_user_footsteps(id, 1)
ColorChat(id, GREEN, "[%s] Kupiles ciche chodzenie na jedna runde", prefix);
}
case 10:
{
if(!sprawdz(id,10)) return PLUGIN_HANDLED;
give_item(id, "weapon_scout")
new weapon_id = find_ent_by_owner(-1, "weapon_scout", id);
if(weapon_id)
{
cs_set_weapon_ammo(weapon_id, 1);
}
ColorChat(id, GREEN, "[%s] Kupiles scouta z 1 nabojem", prefix);
}
case 11:
{
if(!sprawdz(id,10)) return PLUGIN_HANDLED;
give_item(id, "weapon_deagle")
new weapon_id = find_ent_by_owner(-1, "weapon_deagle", id);
if(weapon_id)
{
cs_set_weapon_ammo(weapon_id, 1);
}
ColorChat(id, GREEN, "[%s] Kupiles deagle z 1 nabojem", prefix);
}
case 12:
{
if(!sprawdz(id,10)) return PLUGIN_HANDLED;
get_user_name(id, prefix, 31)
set_user_noclip(id, 1)
ColorChat(id, GREEN, "[%s] Kupiono przenikanie przez sciany na 3 sekundy", prefix);
set_user_noclip(id);
}
}
return PLUGIN_CONTINUE;
}
public clipoff(id)
{
if(!is_user_alive(id))
return;
set_user_noclip(id, 0)
}
public sprawdz(id,jbpack){
if (ilosc_jbpack[id] >= jbpack){
ilosc_jbpack[id] -= jbpack
return true;
}
if(!is_user_alive(id)){
ColorChat(id, GREEN, "[%s] Padles trupy nie kupuja", prefix);
return false;
}
if(ilosc_jbpack[id] < jbpack)
{
ColorChat(id, GREEN, "[%s] Stary nie stac cie, aby to kupic", prefix);
return false;
}
return PLUGIN_CONTINUE;
}
public Poczatek_Rundy() {
blokada = false
new czynny_skle = get_cvar_float("jb_czas")
set_task(czynny_skle, "Blokuj")
}
public Koniec_Rundy(){
for(new i =1;i<33;i++){
if(is_user_connected(i))
{
bhop_enabled[i] = false
set_user_footsteps(i, 0)
}
}
}
public Blokuj(){
blokada = true
}
public forward_FM_PlayerPreThink(id)
{
if(bhop_enabled[id] == true)
{
entity_set_float(id, EV_FL_fuser2, 0.0)
if (entity_get_int(id, EV_INT_button) & 2)
{
new flags = entity_get_int(id, EV_INT_flags)
if (flags & FL_WATERJUMP)
return PLUGIN_CONTINUE
if ( entity_get_int(id, EV_INT_waterlevel) >= 2 )
return PLUGIN_CONTINUE
if ( !(flags & FL_ONGROUND) )
return PLUGIN_CONTINUE
new Float:velocity[3]
entity_get_vector(id, EV_VEC_velocity, velocity)
velocity[2] += 250.0
entity_set_vector(id, EV_VEC_velocity, velocity)
entity_set_int(id, EV_INT_gaitsequence, 6)
}
}
return PLUGIN_CONTINUE
}
public cmd_give(id, level, cid)
{
if(!cmd_access(id, level, cid, 3))
return PLUGIN_CONTINUE;
new arg[33];
read_argv(1, arg, 32);
new target = cmd_target(id, arg, CMDTARGET_ALLOW_SELF);
if(!is_user_connected(target))
return PLUGIN_CONTINUE;
read_argv(2, arg, 32);
new ilejb = str_to_num(arg);
ilosc_jbpack[target] = ilosc_jbpack[target] + ilejb;
return PLUGIN_CONTINUE;
}
public plugin_natives()
{
register_native("get_user_jbpack","return_jbpack", 1)
register_native("set_user_jbpack","set_jbpack", 1)
}
public return_jbpack(id)
{
return ilosc_jbpack[id];
}
public set_jbpack(id, amount)
{
ilosc_jbpack[id] = amount
}
//////////////
public typ(id) {
if(get_cvar_num("jb_zapis") == 1) {
client_print(id, print_console, "Uzywasz obecnie zapisu SQL")
}
else
{
client_print(id, print_console, "Uzywasz obecnie zapisu nVault")
}
}
public zaladuj_jbpack(id)
{
new name[48]
get_user_name(id,name,47)
new vaultkey[64],vaultdata[128]
formatex(vaultkey,63,"%s-jbpack",name)
if(nvault_get(jb_packi_nv,vaultkey,vaultdata,127)) {
new jb_packii[16];
parse(vaultdata, jb_packii, 15)
ilosc_jbpack[id]=str_to_num(jb_packii)
}
return PLUGIN_CONTINUE
}
public zapisz_jbpack(id) {
new name[48]
get_user_name(id,name,47)
new vaultkey[64],vaultdata[128]
formatex(vaultkey,63,"%s-jbpack",name)
formatex(vaultdata,127,"%d", ilosc_jbpack[id])
nvault_set(jb_packi_nv,vaultkey,vaultdata)
return PLUGIN_CONTINUE
}
public plugin_cfg(){
SQLenabled = false;
sql_init();
}
public plugin_end()
{
if ( SQLenabled )
{
SQL_FreeHandle(g_SqlTuple);
}
}
public Message_Intermission()
{
gIntermission = true;
}
public client_putinserver(id){
gTablesLoaded[id] = 0;
if(get_cvar_num("jb_zapis") == 1) {
get_save_key(id);
}
else
{
zaladuj_jbpack(id);
}
}
public client_disconnect(id)
{
if(get_cvar_num("jb_zapis") == 1) {
sql_save(id)
}
else
{
zapisz_jbpack(id)
}
}
public sql_init()
{
new szHost[32], szUser[32], szPass[32], szDB[32];
get_pcvar_string(pPcvarDBHost, szHost, 31);
get_pcvar_string(pPcvarDBUser, szUser, 31);
get_pcvar_string(pPcvarDBPassword, szPass, 31);
get_pcvar_string(pPcvarDBBase, szDB, 31);
g_SqlTuple = SQL_MakeDbTuple(szHost, szUser, szPass, szDB);
SQL_ThreadQuery(g_SqlTuple, "TableHandle", "CREATE TABLE IF NOT EXISTS jbpacki (nazwa_gracza VARCHAR(35), ilosc_jbpack INT(11), PRIMARY KEY (nazwa_gracza))");
}
public get_save_key(id)
{
get_user_name(id, gSaveKey[id], charsmax(gSaveKey[]));
sql_load(id);
}
public sql_load(id)
{
new index[1];
index[0] = id;
new tempSaveKey[63];
copy(tempSaveKey, charsmax(tempSaveKey), gSaveKey[id]);
replace_all(tempSaveKey, charsmax(tempSaveKey), "'", "\'" );
formatex(g_Cache, charsmax(g_Cache), "SELECT ilosc_jbpack FROM jbpacki WHERE nazwa_gracza='%s'", tempSaveKey);
SQL_ThreadQuery(g_SqlTuple, "SelectHandle", g_Cache, index, 1);
}
public TableHandle(FailState, Handle:Query, Error[], Errcode, Data[], DataSize)
{
if ( FailState )
{
if ( FailState == TQUERY_CONNECT_FAILED )
{
log_amx("Table - Could not connect to SQL database. [%d] %s", Errcode, Error);
}
else if ( FailState == TQUERY_QUERY_FAILED )
{
log_amx("Table Query failed. [%d] %s", Errcode, Error);
}
SQLenabled = false;
return;
}
SQLenabled = true;
}
public QueryHandle(FailState, Handle:Query, Error[], Errcode,Data[], DataSize)
{
if ( FailState )
{
if ( FailState == TQUERY_CONNECT_FAILED )
{
log_amx("Save - Could not connect to SQL database. [%d] %s", Errcode, Error);
}
else if ( FailState == TQUERY_QUERY_FAILED )
{
log_amx("Save Query failed. [%d] %s", Errcode, Error);
}
return;
}
}
public SelectHandle(FailState, Handle:Query, Error[], Errcode, Data[], DataSize)
{
if ( FailState )
{
if ( FailState == TQUERY_CONNECT_FAILED )
{
log_amx("Load - Could not connect to SQL database. [%d] %s", Errcode, Error);
}
else if ( FailState == TQUERY_QUERY_FAILED )
{
log_amx("Load Query failed. [%d] %s", Errcode, Error);
}
return;
}
new id = Data[0];
if ( !SQL_NumResults(Query) )
{
new tempSaveKey[63];
copy(tempSaveKey, charsmax(tempSaveKey), gSaveKey[id]);
replace_all(tempSaveKey, charsmax(tempSaveKey), "'", "\'" );
formatex(g_Cache, charsmax(g_Cache), "INSERT INTO jbpacki VALUES('%s', '0')", tempSaveKey);
SQL_ThreadQuery(g_SqlTuple, "QueryHandle", g_Cache);
}
else
{
ilosc_jbpack[id] = SQL_ReadResult(Query,SQL_FieldNameToNum(Query,"ilosc_jbpack"));
}
gTablesLoaded[id]++;
}
public sql_save(id)
{
if ( gTablesLoaded[id] == 1 )
{
if ( gIntermission )
{
sql_save_nonthreaded(id);
return;
}
new tempSaveKey[63];
copy(tempSaveKey, charsmax(tempSaveKey), gSaveKey[id]);
replace_all(tempSaveKey, charsmax(tempSaveKey), "'", "\'" );
formatex(g_Cache, charsmax(g_Cache), "UPDATE jbpacki SET ilosc_jbpack=%i WHERE nazwa_gracza=^"%s^"", ilosc_jbpack[id], tempSaveKey);
SQL_ThreadQuery(g_SqlTuple, "QueryHandle", g_Cache);
}
}
sql_save_nonthreaded(id)
{
new Errcode, Error[128], Handle:SqlConnection;
SqlConnection = SQL_Connect(g_SqlTuple, Errcode, Error, charsmax(Error));
if ( !SqlConnection )
{
log_amx("Save - Could not connect to SQL database. [%d] %s", Errcode, Error);
SQL_FreeHandle(SqlConnection);
return;
}
new tempSaveKey[63];
copy(tempSaveKey, charsmax(tempSaveKey), gSaveKey[id]);
replace_all(tempSaveKey, charsmax(tempSaveKey), "'", "\'" );
new Handle:Query;
Query = SQL_PrepareQuery(SqlConnection, "UPDATE jbpacki SET ilosc_jbpack=%i WHERE nazwa_gracza=^"%s^"", ilosc_jbpack[id], tempSaveKey);
if ( !SQL_Execute(Query) )
{
Errcode = SQL_QueryError(Query, Error, charsmax(Error));
log_amx("Save Query failed. [%d] %s", Errcode, Error);
SQL_FreeHandle(Query);
SQL_FreeHandle(SqlConnection);
return;
}
SQL_FreeHandle(Query);
SQL_FreeHandle(SqlConnection);
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/
Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych