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 menu_druzyn


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

#1 Wujek Cioteczny

    Początkujący

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:12
  • Imię:Mateusz
  • Lokalizacja:Poland
Offline

Napisano 21.09.2022 17:32

Hej mam problem z pluginem menu_druzyn mam tam ustawione 10800 3h gry by wejśc do CT przy próbie zmiany na 3600 i wgraniu na serwer niestety plugin wogóle nie działa 

 

#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <naxe_jailbreak>


#pragma semicolon 1


#define SetCtBan(%1)      (Banned |= (1<<(%1&31)))
#define ClearCtBan(%1)    (Banned &= ~(1 <<(%1&31)))
#define CheckCtBan(%1)    (Banned & (1<<(%1&31))) 


const IleTT = 5; // ile TT przepada na 1 CT
const TimeCT = 10800; // czas do CT w sekundach


new Trie: BannedNames, Banned, SelectedPlayer[33], szFile[64];
new sid[33][35], nick[33][32];
new g_msgid[33], czas;


public plugin_init() {
register_plugin("Menu Druzyn + Ban CT", "2.6", "naXe");


register_clcmd("jail_banct", "MenuBanCT");


register_clcmd("jointeam", "ShowMenu");
register_clcmd("chooseteam", "ShowMenu");


register_clcmd("Powod_bana_ct", "CmdEnterReason");


register_menucmd(register_menuid("mainmenu"), (1<<0)|(1<<1)|(1<<5)|(1<<9), "HandleMenu");
register_message(96, "MessageShowMenu");
register_message(114, "MessageVGUIMenu");


callfunc_begin("AddMenu", "menufront.amxx");
callfunc_push_str("Ban na CT");
callfunc_push_str("jail_banct");
callfunc_push_int((1<<3));
callfunc_push_str("Menu Druzyn + Ban CT");
callfunc_end();


BannedNames = TrieCreate();


formatex(szFile[get_localinfo("amxx_datadir", szFile, 63)], 63, "/banyct.ini");


new iFile = fopen(szFile, "rt"), szNick[32];
if(iFile) {
new szData[35];
while(!feof(iFile)) {
fgets(iFile, szData, 34);
trim(szData);


if(!szData[0] || szData[0] == ';' || (szData[0] == '/' && szData[1] == '/')) continue;


parse(szData, szNick, 31);
TrieSetCell(BannedNames, szNick, 1);
}
fclose(iFile);
}
}


public plugin_natives() register_native("jail_get_banct", "PobierzBan", 1);
public PobierzBan(id) return CheckCtBan(id);


public OnRoundStartPre() {
czas = false;
if(task_exists(112)) remove_task(112);
}


public OnRoundStartPost() set_task(530.0, "koniec_czasu", 112);
public OnRemoveData() czas = false;
public koniec_czasu() czas = true;


public OnPlayerConnected(id) {
get_user_name(id, nick[id], 31);
get_user_authid(id, sid[id], 34);


if(TrieKeyExists(BannedNames, nick[id])) {
client_print(0, 3, "* %s dolaczyl do gry i jest zbanowany na CT!", nick[id]);
SetCtBan(id);
}
else ClearCtBan(id);
}


public client_infochanged(id) {
if(!is_user_connected(id)) return;


new name[128]; get_user_info(id, "name", name, 31);
if(equal(name, nick[id])) return;


formatex(nick[id], 31, name);
}


public MessageShowMenu(msgid, dest, id) {
switch(get_msg_arg_int(1)) {
case 19, 51: {
g_msgid[id] = msgid;
ShowMenu(id);
return 1;
}
case 31, 531, 563: return 1;
}
return 0;


/*static arg[32]; get_msg_arg_string(4, arg, 31);
if(!equal(arg, "#Team_Select", 30)) return 0;


g_msgid[id] = msgid;
//set_pdata_int(id, 205, 0);
ShowMenu(id);
return 1;*/
}


public MessageVGUIMenu(msgid, dest, id) {
switch(get_msg_arg_int(1)) {
case 2: {
g_msgid[id] = msgid;
ShowMenu(id);
return 1;
}
case 26, 27: return 1;
}
return 0;


/*if(get_msg_arg_int(1) != 2) return 0;


g_msgid[id] = msgid;
//set_pdata_int(id, 205, 0);
ShowMenu(id);
return 1;*/
}


public ShowMenu(id) {
new menu[512], keys = (1<<9), len = formatex(menu, 511, "\wBilans: \y1 \wstraznik na \y%i \wwiezniow^n4 powody dlaczego druzyna CT jest niedostepna:^n1. Mozesz miec bana^n2. Nie masz przegranych %i godz.^n3. Admin zabral ci glos^n4. Druzyna jest pelna^n^n\yWybierz druzyne:^n^n", IleTT, TimeCT / 3600);


if(userTeam(id) == 1) len += formatex(menu[len], 511 - len, "\d[1] Wiezniowie [%i]^n", jail_get_tt(false));
else {
len += formatex(menu[len], 511 - len, "\y[1] \wWiezniowie \r[\d%i\r]^n", jail_get_tt(false));
keys |= (1<<0);
}
if(userTeam(id) == 2 || CheckCtBan(id) || playerGetTime(id) < TimeCT || jail_get_amute(id) || (jail_get_ct(false) && jail_get_ct(false) * IleTT >= jail_get_tt(false))) len += formatex(menu[len], 511 - len, "\d[2] Straznicy [%i]^n^n", jail_get_ct(false));
else {
len += formatex(menu[len], 511 - len, "\y[2] \wStraznicy \r[\d%i\r]^n^n", jail_get_ct(false));
keys |= (1<<1);
}
if(userTeam(id) == 3 || is_user_alive(id)) len += formatex(menu[len], 511 - len, "\d[6] Widzowie^n^n^n");
else {
len += formatex(menu[len], 511 - len, "\y[6] \wWidzowie^n^n^n");
keys |= (1<<5);
}
formatex(menu[len], 511 - len, "\y[0] \wWyjdz");
return show_menu(id, keys, menu, -1, "mainmenu");
}


public HandleMenu(id, key) {
new team = key + 1;


set_pdata_int(id, 125, get_pdata_int(id, 125) & ~(1<<8));
if(team == 6) {
engclient_cmd(id, "jointeam", "6");
return;
}
if(czas && jail_get_day() && !userTeam(id) && ((team == 1 && jail_get_tt(false)) || (team == 2 && jail_get_ct(false)))) {
ColorChat(id, 0, "^4[JailBreak]^1 Mozesz dolaczyc dopiero jak sie skonczy runda!");
return;
}
/*if(team == 2) {
if(jail_get_ct(false) && jail_get_ct(false) * IleTT >= jail_get_tt(false)) {
ColorChat(id, 0, "^4[JailBreak]^1 Druzyna CT pelna!");
return;
}
if(CheckCtBan(id)) {
ColorChat(id, 0, "^4[JailBreak]^1 Masz bana na dolaczanie do CT!");
return;
}
if(playerGetTime(id) < TimeCT) {
ColorChat(id, 0, "^4[JailBreak]^1 Musisz miec przegrane^3 %i^1 godz. aby moc dolaczyc do CT", TimeCT / 3600);
return;
}
if(jail_get_amute(id)) {
ColorChat(id, 0, "^4[JailBreak]^1 Masz bana na uzywanie mikrofonu do konca mapy!");
return;
}
}*/
new msg_blocke = get_msg_block(g_msgid[id]);
set_msg_block(g_msgid[id], 2);
new iTeam[3]; num_to_str(team, iTeam, 2);
engclient_cmd(id, "jointeam", iTeam);
engclient_cmd(id, "joinclass", "1");
set_msg_block(g_msgid[id], msg_blocke);
}


public CmdEnterReason(id) {
new i = SelectedPlayer[id];
if(!i) return 1;


new Reason[64]; read_argv(1, Reason, 63);


if(!strlen(Reason)) {
ColorChat(id, 0, "^3* Musisz podac powod bana!");
client_cmd(id, "messagemode Powod_bana_ct");
} else {
if(get_user_team(i) == 2) {
if(is_user_alive(i)) user_kill(i);


cs_set_user_team(i, CS_TEAM_T);
}
new szBuffer[128];


formatex(szBuffer, 127, "%s %s ^"%s^"", nick[i], sid[i], Reason);
write_file(szFile, szBuffer);


TrieSetCell(BannedNames, nick[i], 1);
SelectedPlayer[id] = 0;
SetCtBan(i);


static hudMsg, msg[191]; if(!hudMsg) hudMsg = CreateHudSyncObj();
set_hudmessage(0, 255, 0, 0.05, 0.30, 0, 6.0, 10.0, 0.5, 0.15);
for(new ii = 1; ii <= MaxClients; ii++) {
if(!is_user_connected(ii) || is_user_hltv(ii) || is_user_bot(ii)) continue;


if(userFlags(ii, "d")) format(msg, 190, "'%s' dostal bana na CT^n Powod: '%s'^n Admin: %s", nick[i], Reason, nick[id]);
else format(msg, 190, "'%s' dostal bana na CT^n Powod: '%s'", nick[i], Reason);


ShowSyncHudMsg(ii, hudMsg, msg);
ColorChat(ii, 0, "^4[JailBreak]^1 %s", msg);
}
//showActivityKey("ADMIN zbanowal %s na CT", "ADMIN %s zbanowal %s na CT", nick[id], nick[i]);
log_to_file("banyct.log", "%s <%s> zbanowal %s <%s> na CT.", nick[id], sid[id], nick[i], sid[i]);
}
return 1;
}


public MenuBanCT(id) {
if(!userFlags(id, "d")) return;


new i, int[3], szText[128], menu;
menu = menu_create("Wybierz gracza", "HandleBanCT");
for(i= 1; i <= MaxClients; i++) {
if(!is_user_connected(i) || is_user_hltv(i) || is_user_bot(i) || userFlags(i, "a") || i == id) continue;


if(TrieKeyExists(BannedNames, nick[i])) formatex(szText, 127, "%s \r[Odbanuj]", nick[i]);
else szText = nick[i];


num_to_str(i, int, 2);
menu_additem(menu, szText, int);
}
menu_setprop(menu, 2, "Poprzednia strona");
menu_setprop(menu, 3, "Nastepna strona");
menu_setprop(menu, 4, "Wyjdz");
menu_display(id, menu);
}


public HandleBanCT(id, menu, item) {
if(item == -3) return;


static data[3], acces, cb, i;
menu_item_getinfo(menu, item, acces, data, 2, _, _, cb);
i = str_to_num(data);
if(!i || !is_user_connected(i)) return;


if(!TrieKeyExists(BannedNames, nick[i])) {
SelectedPlayer[id] = i;
client_cmd(id, "messagemode Powod_bana_ct");
} else {
new szData[128], Line;
new iFile = fopen(szFile, "rt");


if(!iFile) return;


new szTempNick[32];


while(!feof(iFile)) {
fgets(iFile, szData, 127);
trim(szData);


Line++;


if(!szData[0] || szData[0] == ';' || (szData[0] == '/' && szData[1] == '/')) continue;


parse(szData, szTempNick, 31);


if(equali(nick[i], szTempNick)) { 
format(szData, 127, "; %s", szData);
write_file(szFile, szData, Line - 1);
break;
}
}
TrieDeleteKey(BannedNames, nick[i]);
ClearCtBan(id);


showActivity(nick[id], "odbanowal^3 %s^1 na CT.", nick[i]);
log_to_file("banyct.log", "%s <%s> odbanowal %s <%s> na CT", nick[id], sid[id], nick[i], sid[i]);
}
menu_destroy(menu);
}

 


  • +
  • -
  • 0

#2 Aquamarina

    Początkujący

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:11
Offline

Napisano 21.09.2022 20:00

Napisz po Polsku o co chodzi, czytam 4 raz i nie rozumiem do tej pory :)

 


  • +
  • -
  • 0

#3 N1K1Cz

    Zaawansowany

  • Użytkownik

Reputacja: 44
Pomocny

  • Postów:138
  • GG:
  • Steam:steam
  • Imię:/\^-^/\
Offline

Napisano 21.09.2022 20:09

Mogę pomóc z tym. Zapraszam na Pv.


  • +
  • -
  • 0

Potrzebujesz pomocy z serwerem/paczką? Napisz do mnie! Chętnie pomogę  ^D^ 

- Discord: N1K1Cz#0751

- GG: 70679564

- Steam: https://steamcommunity.com/id/N1K1Cz/

 


#4 Wujek Cioteczny

    Początkujący

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:12
  • Imię:Mateusz
  • Lokalizacja:Poland
Offline

Napisano 22.09.2022 08:17

Napisz po Polsku o co chodzi, czytam 4 raz i nie rozumiem do tej pory :)

 chodzi mi o to.że teraz masz tam podane w sekundach 3 godziny jak chce to zmienić na 60 minut w sekundach czyli 3600 to pluginu wogóle nie czyta na serwerze czyta go tylko jak jest ta wartość 10800 czyli 3h 


  • +
  • -
  • 0

#5 PANDA_2zl

    Guru

  • Power User

Reputacja: 176
Profesjonalista

  • Postów:722
  • Imię:Michał
  • Lokalizacja:Kraków
Offline

Napisano 22.09.2022 08:25

Podrzuć jeszcze include jailbreak
Nieważne

Użytkownik SezonowyGracz edytował ten post 22.09.2022 08:29

  • +
  • -
  • 0

#6 N1K1Cz

    Zaawansowany

  • Użytkownik

Reputacja: 44
Pomocny

  • Postów:138
  • GG:
  • Steam:steam
  • Imię:/\^-^/\
Offline

Napisano 25.09.2022 15:05

 

Napisz po Polsku o co chodzi, czytam 4 raz i nie rozumiem do tej pory :)

 chodzi mi o to.że teraz masz tam podane w sekundach 3 godziny jak chce to zmienić na 60 minut w sekundach czyli 3600 to pluginu w ogóle nie czyta na serwerze czyta go tylko jak jest ta wartość 10800 czyli 3h 

 

Zacznę może od głupiego pytania, aczkolwiek jest to częsty błąd (czasami nawet ja tego nie zauważę). Czy kompilujesz lokalnie czy na stronie? Jeżeli lokalnie to kompilujesz ten jeden plugin czy całą paczkę na raz, bo możliwe, że plugin ci się nie skompilował. Podrzuć include ewentualnie, może tam coś jest dopisane, bo raczej w to wątpię, że przy kompilacji lokalnej i po wrzuceniu na serwer pluginu nie chce pokazywać innej wartości niż 3h


  • +
  • -
  • 0

Potrzebujesz pomocy z serwerem/paczką? Napisz do mnie! Chętnie pomogę  ^D^ 

- Discord: N1K1Cz#0751

- GG: 70679564

- Steam: https://steamcommunity.com/id/N1K1Cz/

 


#7 Aquamarina

    Początkujący

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:11
Offline

Napisano 27.09.2022 19:28

 

Napisz po Polsku o co chodzi, czytam 4 raz i nie rozumiem do tej pory :)

 chodzi mi o to.że teraz masz tam podane w sekundach 3 godziny jak chce to zmienić na 60 minut w sekundach czyli 3600 to pluginu w ogóle nie czyta na serwerze czyta go tylko jak jest ta wartość 10800 czyli 3h 

 

Podaj tutaj pliki z include od jailbreak oraz config i sma


  • +
  • -
  • 0




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

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