Skocz do zawartości

Dejw

Użytkownik
  • Liczba zawartości

    19
  • Rejestracja

  • Ostatnia wizyta

Reputacja

3 Nowy

Ostatnie wizyty

Blok z ostatnimi odwiedzającymi dany profil jest wyłączony i nie jest wyświetlany użytkownikom.

  1. Witam. Proszę o pomoc w przerobieniu doświadczenia na procenty trochę już walczę ale sypie mi za każdym razem masa błędów. Daję czysty kod. const int HUD_STACK_BLOCKSIZE = 90; static ConVar cvarHudInterval; static ConVar cvarTimeElementsInHud; static ArrayStack clientHudStack[MAXPLAYERS + 1]; static char clientHudElements[MAXPLAYERS + 1][4][HUD_STACK_BLOCKSIZE + 1]; static int clientHudElementsCount[MAXPLAYERS + 1]; static Handle clientHudElementsTimer[MAXPLAYERS + 1]; static Handle clientHudTimer[MAXPLAYERS + 1]; static char clientRankName[MAXPLAYERS + 1][MAX_RANK_NAME_LENGTH + 1]; void Hud_init() { cvarHudInterval = CreateConVar("bfmod_hud_interval", "1.0", ""); cvarTimeElementsInHud = CreateConVar("bfmod_time_hud_elements", "5.0", ""); } void Hud_onClientPutInServer(int client) { Hud_create(client); } void Hud_onClientDisconnect(int client) { Hud_remove(client); } void Hud_eventOnPlayerSpawn(int client) { Rank_getName(ClientRank_getLvl(client), clientRankName[client], sizeof(clientRankName[])); } static void Hud_create(int client) { clientHudStack[client] = new ArrayStack(HUD_STACK_BLOCKSIZE); clientHudTimer[client] = CreateTimer(cvarHudInterval.FloatValue, Hud_showTimer, client, TIMER_REPEAT); } static void Hud_remove(int client) { CloseHandle(clientHudStack[client]); KillTimer(clientHudTimer[client]); if (clientHudElementsTimer[client] != INVALID_HANDLE) { KillTimer(clientHudElementsTimer[client]); clientHudElementsTimer[client] = INVALID_HANDLE; } Hud_removeElements(INVALID_HANDLE, client); } static void Hud_incAllElements(int client) { strcopy(clientHudElements[client][3], sizeof(clientHudElements[][]), clientHudElements[client][2]); strcopy(clientHudElements[client][2], sizeof(clientHudElements[][]), clientHudElements[client][1]); strcopy(clientHudElements[client][1], sizeof(clientHudElements[][]), clientHudElements[client][0]); if (clientHudElementsCount[client] > 3) { --clientHudElementsCount[client]; } } static void Hud_addElement(int client, char[] content) { Hud_incAllElements(client); strcopy(clientHudElements[client][0], sizeof(clientHudElements[][]), content); ++clientHudElementsCount[client]; } static void Hud_createElementsTimer(int client) { if (clientHudElementsTimer[client] != INVALID_HANDLE) { KillTimer(clientHudElementsTimer[client]); clientHudElementsTimer[client] = INVALID_HANDLE; } clientHudElementsTimer[client] = CreateTimer(cvarTimeElementsInHud.FloatValue, Hud_removeElements, client); } public Action Hud_removeElements(Handle timer, any client) { clientHudElementsTimer[client] = INVALID_HANDLE; clientHudElementsCount[client] = 0; for (int i = 0; i < sizeof(clientHudElements[]); ++i) { strcopy(clientHudElements[client][i], sizeof(clientHudElements[][]), ""); } } void Hud_print(int client, const char[] msg, any ...) { int len = strlen(msg) + 255; char[] formattedMSG = new char[len]; VFormat(formattedMSG, len, msg, 3); if (clientHudElementsCount[client] > 3) { clientHudStack[client].PushString(formattedMSG); } else { Hud_addElement(client, formattedMSG); } Hud_createElementsTimer(client); } static void Hud_checkElementsStack(int client) { if (clientHudStack[client].Empty) { return; } char buffer[HUD_STACK_BLOCKSIZE + 1]; clientHudStack[client].PopString(buffer, sizeof(buffer)); Hud_addElement(client, buffer); Hud_createElementsTimer(client); } public Action Hud_showTimer(Handle timer, any client) { if (!IsClientInGame(client) || !IsPlayerAlive(client)) return; if (clientHudElementsCount[client]) { Hud_checkElementsStack(client); PrintHintText(client, "<font size='15'>%s\n%s\n%s\n%s</font>", clientHudElements[client][0], clientHudElements[client][1], clientHudElements[client][2], clientHudElements[client][3]) } else { PrintHintText(client, "%t", "bfmod_hud", ClientRank_getLvl(client), clientRankName[client], ClientRank_getExp(client), Rank_getExp(ClientRank_getLvl(client)), perkName[clientPerk[client]], ClientCash_get(client)); } } wycinek z pliku tłumaczeń "bfmod_hud" { "#format" "{1:d},{2:s},{3:d},{4:d},{5:s},{6:d}" // {1:rank_number},{2:rank_name},{3:exp},{4:nextlvl_exp},{5:perk_name},{6:cash} "en" "<font size='15'><font color='#FE330A'>[ProBanie.pl | BFMod]</font>\n<font color='#08B24D'>[Lvl: {1}]</font>\n<font color='#0066ff'>[Exp: {3} / {4}]</font>\n<font color='#A81385'>[Skill: {5}]</font><font color='#BC070A'>[Rubiny: {6}]</font></font>" }
  2. okej z tym kodem wykrywa mi czy jest nóż czy broń dodaje mi pancerz nie ładuje tylko samego noża nie ma animacji ładowania no i w efekcie końcowym przyznania punktu. Wszystkie inne mechanizmy chodzą tylko nie timer który ma odpowiadać za przyznanie punktów? Ktoś pomoże to poprawić żeby smigało?
  3. wszystko się zgadza if testowy już również podaje obie odpowiedzi! 😄 Tak działanie pluginu tak wygląda ale plugin sam w sobie po prostu nie działa Jest klasa ma tyle życia ile powinna mieć kondycję itd.. ale samo łądowanie na nożu nie działa. Zrobiłem testową komentę która dawała po wpisaniu na czacie jeden magiczny pancerz i sprawdziłem hudem czy go przyznało.. i tak przyznało go ale na nożu nie da się naładować hud zwiazany z ładowaniem po prostu się nie odpala nie łąduje na tym nożu
  4. Witam. Problem polega na tym, że chciałem dodać ładowanie umiejętności na nożu. Zrobiłem test. Hud się wyświetla ale po wykonaniu ifa który sprawdza czy funkcja rozpoznaje kiedy mam w ręku nóż a kiedy nie dała odpowiedz: przy nożu w ręku na czacie wypisała "tak natomiast przy trzymaniu broni nie wypisała nic prawdopodobnie tam leży problem. Jeżeli ktoś zna odpowiedź to proszę o szybką pomoc.
  5. Witam. Ostatnio zastanawiałem się czy istnieje możliwość zmiany koloru menu w cs:go. Domyślnie jest pomarańczowe. Chciałbym móc dowolnie je kolorować coś jak multicolors dla czatu. Jeżeli podstawowe menu nie daje takich możliwości to może jakiś hud zamieniony w menu?
  6. Działa do zamknięcia <3! Dziękuję wszystkim za pomoc!
  7. jest. aleee po zmianie pliku bazy daniych nie działa mi klasa na cod modzie database wygląda tak "Databases" { "driver_default" "mysql" "default" { "driver" "default" "host" "localhost" "database" "sourcemod" "user" "root" "pass" "" //"timeout" "0" //"port" "0" } "storage-local" { "driver" "sqlite" "database" "sourcemod-local" } "clientprefs" { "driver" "sqlite" "host" "localhost" "database" "clientprefs-sqlite" "user" "root" "pass" "" //"timeout" "0" //"port" "0" "codmod_lvl_sql" { "driver" "mysql" "host" "..." // adres bazy mysql "database" "..." // database bazy mysql "user" "..." // login uzytkownika do bazy mysql "pass" "..." // haslo uzytkownika do bazy mysql } "sourcebans" { "driver" "default" "host" "..." "database" "..." "user" "..." "pass" "..." //"timeout" "0" "port" "3306" } } co jest nie tak? ta same dane tylko dodałem to co mi polecono
  8. "Automatic Updater" (1.9.0.6276) by AlliedModders LLC: Updates SourceMod gamedata files "Webternet" (1.9.0.6276) by AlliedModders LLC: Extension for interacting with URLs "CS Tools" (1.9.0.6276) by AlliedModders LLC: CS extended functionality "BinTools" (1.9.0.6276) by AlliedModders LLC: Low-level C/C++ Calling API "SDK Tools" (1.9.0.6276) by AlliedModders LLC: Source SDK Tools "Regex" (1.9.0.6276) by AlliedModders LLC: Provides regex natives for plugins "SDK Hooks" (1.9.0.6276) by AlliedModders LLC: Source SDK Hooks "Top Menus" (1.9.0.6276) by AlliedModders: Creates sorted nested menus "MySQL-DBI" (1.9.0.6276) by AlliedModders LLC: MySQL driver implementation for DBI "SQLite" (1.9.0.6276) by AlliedModders LLC: SQLite Driver odpowiedź po wpisaniu
  9. okej zmieniłem plik databases.cfg ale nie wiem gdzie owe pliki dodać "sm exts list i sprawdź czy masz clientprefs.ext.so" gdybyś mógł trochę mnie naprowadzić
  10. "Databases" { "codmod_lvl_sql" { "driver" "mysql" "host" "dupa" // adres bazy mysql "database" "dupa" // database bazy mysql "user" "dupa" // login uzytkownika do bazy mysql "pass" "dupa" // haslo uzytkownika do bazy mysql } "driver_default" "mysql" "sourcebans" { "driver" "default" "host" "dupa" "database" "dupa" "user" "dupa" "pass" "dupa" //"timeout" "0" "port" "3306" } }
  11. Hejaa. Posiadam taki oto problem. Wgrałem coda na server oraz parę pluginów raczej niezbyt mieszających w mechanikę samej gry. Postanowiłem dodać hity z fortneita wyglądają bardzo ciekawie więc proces instalacyjny był bardzo prosty. Przeciągnąłem wszystkie pliki do odpowiednich katalogów i nic niestety nie działa. Sprawdziłem też parę innych podobnych pluginów po wgraniu również nie pokazywały otrzymywanych obrażeń w formie tekstu czy też grafiki. Zacząłem się zastanawiać czy może któryś plugin nie powoduje blokady pokazywania obrażeń... niestety po wyłączeniu praktycznie wszystkich pluginów dodanych przeze mnie(po za sourcebansem) plugin nadal nie działał. Brak logów ani informacji w konsoli użyłem pluginu z tego forum. Liczę na szybką pomoc pozdrawiam! Może ma ktoś działający zamiennik lub działający ten sam plugin a może trzeba dodać gdzieś dodatkowe cvary. Edit: L 09/05/2019 - 17:46:06: [SM] Unable to load plugin "fortnite_hits.smx": Required extension "Client Preferences" file("clientprefs.ext") not running Jedyne co znalazłem i tylko raz obecnie się to nie pokazuje
  12. Udowodniłem własną głupotę nie skompilowałem pliku system_monet.sp 🤣 Wybaczcie do zamknięcia...
  13. Witam. Staram się dodać monety do silnika Cod by Linux... Dodałem include <money> na początku oraz dodałem do swojego kodu hud linijkę getmoney(client) niestety po wrzuceniu pluginu na server nie ma hud ani wyboru klasy podaję kod w którym dodaję do hud monety public Action:PokazInformacje(Handle:timer, any:client) { if(!IsValidClient(client)) return; char sBuffer[512]; if(IsPlayerAlive(client)) { Format(sBuffer, sizeof(sBuffer), "[Klasa: %s]", nazwy_klas[klasa_gracza[client]]); Format(sBuffer, sizeof(sBuffer), "%s\n[Doświadczenie: %d]", sBuffer, doswiadczenie_gracza[client]); Format(sBuffer, sizeof(sBuffer), "%s\n[Level: %d]", sBuffer, poziom_gracza[client]); Format(sBuffer, sizeof(sBuffer), "%s\n[Item: %s]", sBuffer, nazwy_itemow[item_gracza[client]]); Format(sBuffer, sizeof(sBuffer), "%s\n[Wytrzymałość: %d]", sBuffer, wytrzymalosc_itemu_gracza[client]); Format(sBuffer, sizeof(sBuffer), "%s\n[Monety: %d]", sBuffer, GetMoney(client)); } else { new spect = GetEntProp(client, Prop_Send, "m_iObserverMode"); if(spect == 4 || spect == 5) { new target = GetEntPropEnt(client, Prop_Send, "m_hObserverTarget"); if(target != -1 && IsValidClient(target)) { Format(sBuffer, sizeof(sBuffer), "[Klasa: %s]", nazwy_klas[klasa_gracza[target]]); Format(sBuffer, sizeof(sBuffer), "%s\n[Doświadczenie: %d]", sBuffer, doswiadczenie_gracza[target]); Format(sBuffer, sizeof(sBuffer), "%s\n[Level: %d]", sBuffer, poziom_gracza[target]); Format(sBuffer, sizeof(sBuffer), "%s\n[Item: %s]", sBuffer, nazwy_itemow[item_gracza[target]]); Format(sBuffer, sizeof(sBuffer), "%s\n[Wytrzymałość: %d]", sBuffer, wytrzymalosc_itemu_gracza[target]); Format(sBuffer, sizeof(sBuffer), "%s\n[Monety: %d]", sBuffer, GetMoney(client)); } } } SetHudTextParams(0.4, 0.10, 1.0, 255, 0, 20, 255, 0, 10.0, 0.0, 0.0); ShowSyncHudText(client, g_hHud, sBuffer); hud_task[client] = CreateTimer(0.5, PokazInformacje, client, TIMER_FLAG_NO_MAPCHANGE); }
×
×
  • Dodaj nową pozycję...