Skocz do zawartości

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.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Problem z pluginem system szlugów


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
1 odpowiedź w tym temacie

#1 Vanilla

    Zaawansowany

  • Girl

Reputacja: 1
Nowy

  • Postów:90
Offline

Napisano 18.02.2021 15:28

Witam, mam problem z pluginem dotyczący systemem szlugów, pojawiają sie 4 błędy podczas kompilacji:

// C:\Users\User\Desktop\compiler\szlugi_acnologia.sma(190) : error 017: undefined symbol "MenuInformacje"
// C:\Users\User\Desktop\compiler\szlugi_acnologia.sma(191) : error 017: undefined symbol "WyslijSzlugi"
// C:\Users\User\Desktop\compiler\szlugi_acnologia.sma(192) : error 017: undefined symbol "PostawSzlugi"
// C:\Users\User\Desktop\compiler\szlugi_acnologia.sma(193) : error 017: undefined symbol "KupSzlugi"

Oto całe sma:

 
#include <amxmodx>
#include <amxmisc>
#include <sqlx>
#include <colorchat>
#include <nvault>
//#include <jailbreak>
#include < hamsandwich >
#include <engine>
#include <cstrike>
#define PLUGIN "[SZLUGI] System"
#define VERSION "1.1"
#define AUTHOR "Eryk172"
 
new const prefix[]   = "Szlugi"
 
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 jb_packi_nv
new msgtext;
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
 
	//--//--//--//--//--//--//--//--//--//--//--//--//--//--//
	pPcvarDBHost = register_cvar("db_host", "cenzura"); //ip bazy danych
	pPcvarDBUser = register_cvar("db_user", "cenzura"); //nazwa uzytkownika
	pPcvarDBPassword = register_cvar("db_pass", "cenzura"); //haslo do bazy danych
	pPcvarDBBase = register_cvar("db_database", "szlugi_jb"); //nazwa bazy danych
	//--//--//--//--//--//--//--//--//--//--//--//--//--//--//
 
	register_cvar("jb_ct", "5" ); // Ilosc przyznawanych Szlugow za zabicie.
	register_cvar("jb_tt", "1" ); // Ilosc przyznawanych Szlugow za zabicie Wieznia.
	register_cvar("jb_tt_hs", "10" ); // Ilosc przyznawanych Szlugow za zabicie Wieznia HS.
	register_cvar("jb_ct_vip", "10" ); // Ilosc przyznawanych Szlugow za zabicie. ( VIP )
	register_cvar("jb_hs", "10" ); // Ilosc dodatkowych szlugow za headShota.
	register_cvar("jb_hs_vip", "15" ); // Ilosc dodatkowych szlugow za headShot. ( VIP )
	register_cvar("jb_zapis", "1"); //1  - SQL, 2 - nVault
	register_cvar("jb_hud", "1"); //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_event("ResetHUD","HUD", "b"); 
 
	register_clcmd("say /szlugi", "MenuSzlugi")
	register_clcmd("say_team /szlugi", "MenuSzlugi")
 
	register_concmd("jb_packgive", "cmd_give", ADMIN_IMMUNITY, "<nazwa> <ilosc>");
	register_concmd("szlugi_give", "cmd_give", ADMIN_IMMUNITY, "<nazwa> <ilosc>");
 
	msgtext = get_user_msgid("StatusText");
 
	set_task(6.0, "HUD",0,"",0,"b");
 
}
 
public HUD(id)  { 
	for (new id=0; id < 32; id++) {
 
		if (!is_user_connected(id))
			continue
 
		if (get_user_team(id) == 2)
			continue
 
		if(is_user_alive(id)){
			new HUD[128];
 
			format(HUD, 127,"SZLUGI: %i",ilosc_jbpack[id]);
			if(get_cvar_num("jb_hud") == 1){
				message_begin(MSG_ONE_UNRELIABLE, 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 Killer	= read_data( 1 );
new Victim	= read_data( 2 );
new headshot = read_data(3);
new flagi = get_user_flags( Killer ) & ADMIN_LEVEL_H || ADMIN_LEVEL_G;
if(Killer == Victim)
{
	return PLUGIN_HANDLED	
}
if ( cs_get_user_team( Killer ) == CS_TEAM_T && cs_get_user_team( Victim ) == CS_TEAM_CT && flagi )
{
	ColorChat(Killer, GREEN, "[%s] ^x01Za zabicie straznika otrzymujesz ^x04+%i Szlugow (VIP)",prefix,   get_cvar_num("jb_ct_vip"));
	ilosc_jbpack[Killer] +=  get_cvar_num("jb_ct_vip")
}
if ( cs_get_user_team( Killer ) == CS_TEAM_T && cs_get_user_team( Victim ) == CS_TEAM_CT && flagi && headshot )
{	
	ColorChat(Killer, GREEN, "[%s] ^x01Za zabicie HeadShotem otrzymujesz dodatkowo ^x04+%i Szlugow (VIP)",prefix,  get_cvar_num("jb_hs_vip"));
	ilosc_jbpack[Killer] += get_cvar_num("jb_hs_vip")
}
if ( cs_get_user_team( Killer ) == CS_TEAM_T && cs_get_user_team( Victim ) == CS_TEAM_CT && !is_user_admin( Killer ) && headshot)
{
	ColorChat( Killer, GREEN, "[%s] ^x01Otrzymales dodatkowo ^x04%d Szlugi ^x01za zabicie headshotem.",prefix,  get_cvar_num("jb_hs") );
	ilosc_jbpack[Killer] += get_cvar_num("jb_hs")
}
if ( cs_get_user_team( Killer ) == CS_TEAM_T && cs_get_user_team( Victim ) == CS_TEAM_CT && !is_user_admin( Killer ))
{
	ColorChat( Killer, GREEN, "[%s] ^x01Otrzymales ^x04%d Szlugi ^x01za zabicie straznika.",prefix,  get_cvar_num("jb_ct") );
	ilosc_jbpack[Killer] += get_cvar_num("jb_ct")	
}
if ( cs_get_user_team( Killer ) == CS_TEAM_T && cs_get_user_team( Victim ) == CS_TEAM_T )
{
	ColorChat( Killer, GREEN, "[%s] ^x01Otrzymales ^x04%d Szlugi ^x01za zabicie Wieznia",prefix, get_cvar_num("jb_tt")  );
 
	ilosc_jbpack[Killer] += get_cvar_num("jb_tt")
}
if ( cs_get_user_team( Killer ) == CS_TEAM_T && cs_get_user_team( Victim ) == CS_TEAM_T && headshot)
{
	ColorChat( Killer, GREEN, "[%s] ^x01Otrzymales dodatkowe ^x04%d Szlugow ^x01za zabicie Wieznia HeadShotem!",prefix, get_cvar_num("jb_tt_hs")  );
 
	ilosc_jbpack[Killer] += get_cvar_num("jb_tt_hs")
}
if(get_cvar_num("jb_zapis") == 1) { 
	sql_save(Killer)
}
else
{
	zapisz_jbpack(Killer)
}
return PLUGIN_HANDLED;
}
 
 
// MENU
 
public MenuSzlugi(id)
{
	new menu,formats[64];
	formatex(formats,charsmax(formats),"\wMenu Szlugow^n\wIlosc Szlugow: \y%i",ilosc_jbpack[id])
	menu = menu_create(formats,"handle_szlugi");
 
	menu_additem(menu,"Szlugi - Informacje","0")
	menu_additem(menu,"Wyslij Szlugi","1")
	menu_additem(menu,"Postaw Szlugi \r(hazard)","2")
	menu_additem(menu,"Kup Szlugi za Dolary","3")
	menu_additem(menu,"Quiz - \yOdpowiedz i Wygraj","4")
 
	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_szlugi(id, menu, item)
{
	switch(item)
	{
		case 0: MenuInformacje(id);
		case 1: WyslijSzlugi(id);
		case 2: PostawSzlugi(id);
		case 3: KupSzlugi(id);
		case 4: client_cmd(id, "say /quiz");
	}
	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 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 szlugi (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 szlugi 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 szlugi 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 szlugi 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 szlugi 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);
}

 


  • +
  • -
  • 0

#2 Zuzza

    Pomocny

  • Girl

Reputacja: 48
Pomocny

  • Postów:44
  • Imię:Zuzza
  • Lokalizacja:Sosowiec
Offline

Napisano 18.02.2021 20:11

Próbujesz się odwołać do funkcji które nie istnieją.

W "Menu szlugów" są przyciski które mają przypisane nieistniejące funkcje. Albo pozbądź się tego menu, albo dodaj brakujące funkcje

Żadne z tych funkcji nie istnieją MenuInformacje(id), WyslijSzlugi(id), PostawSzlugi(id), KupSzlugi(id). Czegoś ewidentnie brakuje w tym kodzie lub podejrzewam że ten include Jailbreak zawierał właśnie te funkcje. Który w twoim kodzie jest zakomentowany.

//#include <jailbreak>
public handle_szlugi(id, menu, item)
{
	switch(item)
	{
		case 0: MenuInformacje(id);
		case 1: WyslijSzlugi(id);
		case 2: PostawSzlugi(id);
		case 3: KupSzlugi(id);
		case 4: client_cmd(id, "say /quiz");
	}
	return PLUGIN_CONTINUE;
}
 

W includach widze 

#include <nvault>

:facepalm:  :facepalm:  :facepalm:


  • +
  • -
  • 1

Parę moich rzeczy możesz zobaczyć na mojej stronie Zuzzart, oraz moim kanale youtube

 





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych