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
 

xSPECJALSx - zdjęcie

xSPECJALSx

Rejestracja: 07.08.2023
Aktualnie: Nieaktywny
Poza forum Ostatnio: dziś, 00:20
-----

Moje posty

W temacie: Problem z kompilacją klasy cod mod nowy

11.08.2025 20:41

 

Witam edytowałem silnik cod mod nowy aby były 4 linie opisu klas, lecz ukazuje się błąd podczas kompilacji.

 

//  SILNIK


opis1_klas[MAX_ILOSC_KLAS+1][MAX_WIELKOSC_OPISU+1],
opis2_klas[MAX_ILOSC_KLAS+1][MAX_WIELKOSC_OPISU+1],
opis3_klas[MAX_ILOSC_KLAS+1][MAX_WIELKOSC_OPISU+1],
opis4_klas[MAX_ILOSC_KLAS+1][MAX_WIELKOSC_OPISU+1],


public ZarejestrujKlase(plugin, params) {
if(params != 9)
return PLUGIN_CONTINUE;


if(++ilosc_klas > MAX_ILOSC_KLAS)
return -1;


pluginy_klas[ilosc_klas] = plugin;


get_string(1, nazwy_klas[ilosc_klas], MAX_WIELKOSC_NAZWY);
get_string(2, opis1_klas[ilosc_klas], MAX_WIELKOSC_OPISU);
get_string(3, opis2_klas[ilosc_klas], MAX_WIELKOSC_OPISU);
get_string(4, opis3_klas[ilosc_klas], MAX_WIELKOSC_OPISU);
get_string(5, opis4_klas[ilosc_klas], MAX_WIELKOSC_OPISU);


zdrowie_klas[ilosc_klas] = get_param(6);
kondycja_klas[ilosc_klas] = get_param(7);
inteligencja_klas[ilosc_klas] = get_param(8);
wytrzymalosc_klas[ilosc_klas] = get_param(9);
for(new i=0;i<klasid;i++) {
if(equali(nazwy_klas[ilosc_klas],nazwa_klasy[i])) {
frakcja_klas[ilosc_klas] = nazwa_frakcji[i];
}
}
return ilosc_klas;
}


native cod_register_class(const nazwa[], const opis1[], const opis2[], const opis3[], const opis4[], punkty_zdrowia, punkty_kondycji, punkty_inteligencji, punkty_wytrzymalosci);


// KLASA


new const opis1[] = "1";
new const opis2[] = "2";
new const opis3[] = "3";
new const opis4[] = "4";


new const zdrowie   = 0;
new const kondycja  = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;


cod_register_class(nazwa, opis1, opis2, opis3, opis4, zdrowie, kondycja, inteligencja, wytrzymalosc);


// Kompilacja klasy


AMX Mod X Compiler 1.8.3-dev+5201
Copyright (c) 1997-2006 ITB CompuPhase
Copyright (c) 2004-2013 AMX Mod X Team


Error: Array dimensions do not match on line 33
Warning: Symbol is never used: "inteligencja" on line 19
Warning: Symbol is never used: "kondycja" on line 18
Warning: Symbol is never used: "wytrzymalosc" on line 20


1 Error, 3 Warning


Linia 33: cod_register_class(nazwa, opis1, opis2, opis3, opis4, zdrowie, kondycja, inteligencja, wytrzymalosc);
Linia 18: new const kondycja  = 0;
Linia 19: new const inteligencja = 0;
Linia 20: new const wytrzymalosc = 0;

 

Powinno działać 

#include <amxmodx>

// --- KONFIG ---
#define MAX_ILOSC_KLAS        64
#define MAX_WIELKOSC_NAZWY    32
#define MAX_WIELKOSC_OPISU    127

// --- PAMIĘĆ SILNIKA ---
new ilosc_klas;

new pluginy_klas[MAX_ILOSC_KLAS + 1];

new nazwy_klas[MAX_ILOSC_KLAS + 1][MAX_WIELKOSC_NAZWY + 1];
new opis1_klas[MAX_ILOSC_KLAS + 1][MAX_WIELKOSC_OPISU + 1];
new opis2_klas[MAX_ILOSC_KLAS + 1][MAX_WIELKOSC_OPISU + 1];
new opis3_klas[MAX_ILOSC_KLAS + 1][MAX_WIELKOSC_OPISU + 1];
new opis4_klas[MAX_ILOSC_KLAS + 1][MAX_WIELKOSC_OPISU + 1];

new zdrowie_klas[MAX_ILOSC_KLAS + 1];
new kondycja_klas[MAX_ILOSC_KLAS + 1];
new inteligencja_klas[MAX_ILOSC_KLAS + 1];
new wytrzymalosc_klas[MAX_ILOSC_KLAS + 1];

// (opcjonalnie) frakcje – jeśli używasz
new frakcja_klas[MAX_ILOSC_KLAS + 1];

// --- NATYWA (API) ---
public plugin_init()
{
    register_plugin("CoD Core", "1.0", "");
}

public plugin_natives()
{
    // bez stylu paramów (domyślnie), 9 argumentów
    register_native("cod_register_class", "ZarejestrujKlase");
}

// native cod_register_class(const nazwa[], const opis1[], const opis2[], const opis3[], const opis4[], hp, kond, int, wyt)
public ZarejestrujKlase(plugin, params)
{
    if (params != 9)
        return -1;

    if (++ilosc_klas > MAX_ILOSC_KLAS)
        return -1;

    pluginy_klas[ilosc_klas] = plugin;

    // Bufory na dane z wołania natywy
    get_string(1, nazwy_klas[ilosc_klas],  MAX_WIELKOSC_NAZWY + 1);
    get_string(2, opis1_klas[ilosc_klas],  MAX_WIELKOSC_OPISU + 1);
    get_string(3, opis2_klas[ilosc_klas],  MAX_WIELKOSC_OPISU + 1);
    get_string(4, opis3_klas[ilosc_klas],  MAX_WIELKOSC_OPISU + 1);
    get_string(5, opis4_klas[ilosc_klas],  MAX_WIELKOSC_OPISU + 1);

    zdrowie_klas[ilosc_klas]      = get_param(6);
    kondycja_klas[ilosc_klas]     = get_param(7);
    inteligencja_klas[ilosc_klas] = get_param(8);
    wytrzymalosc_klas[ilosc_klas] = get_param(9);

    // TODO: jeśli masz mapowanie frakcji po nazwie, zrób je tu.
    // for (...) if (equali(nazwy_klas[ilosc_klas], ...)) frakcja_klas[ilosc_klas] = ...

    return ilosc_klas; // ID nowej klasy
}

W temacie: Problem z kompilacją klasy cod mod nowy

28.07.2025 19:09

Błąd kompilacji „Error: Array dimensions do not match” wskazuje na problem z niezgodnością

rozmiarów tablic w wywołaniu funkcji cod_register_class. Prawdopodobnie wynika to z przekazywania

nieodpowiednich typów danych lub niezgodnych rozmiarów tablic.

 

Funkcja cod_register_class oczekuje, że argumenty opis1, opis2, opis3, opis4 będą pojedynczymi tablicami znaków (np. const opis1[]), a nie dwuwymiarowymi tablicami. Dlatego kompilator zgłasza błąd niezgodności rozmiarów tablic.

W temacie: Ranga przed nickiem

28.07.2025 18:51

 

public plugin_init()
{
	register_message(get_user_msgid("SayText"), "msg_saytext");
}

public msg_saytext(msgid, dest, id)
{
	new target = get_msg_arg_int(1);
	
	if(!is_user_connected(target))
	{
		return;
	}
	
	new text[192];
	get_msg_arg_string(2, text, charsmax(text));
	
	new ranga[30];
	rank(target, ranga);
	
	if(!equal(text, "#Cstrike_Chat_All"))
	{
		set_msg_arg_string(2, fmt("^4[%s]^3 %s", ranga, text));
	}
	else
	{
		get_msg_arg_string(4, text, charsmax(text));
		set_msg_arg_string(4, "");
		set_msg_arg_string(2, fmt("^4[%s]^3 %n^1 :  %s", ranga, target, text));
	}
}

 

a fmt ? jest mi to nie znane :D

 

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

#define COLOR_RANK  "3"    // Zielony kolor w AMX (zielony: 3)
#define COLOR_TEAM_RED    "4"  // Czerwony (terro)
#define COLOR_TEAM_BLUE   "1"  // Niebieski (CT)
#define COLOR_STANDARD   "7"   // Standardowy (biały)

public plugin_init()
{
    register_plugin("Rank Prefix", "1.0", "xZANDARMx");
}

public client_putinserver(id)
{
    // Przykładowa ranga - możesz to zrobić dynamicznie z pliku lub bazy
    new const rank[] = "[Ranga]";
    
    new team = get_user_team(id);
    new nick[32];
    get_user_name(id, nick, charsmax(nick));
    
    new colorTeam[2];
    
    if (team == 2) // Terror
    {
        colorTeam[0] = COLOR_TEAM_RED[0];
        colorTeam[1] = 0;
    }
    else if (team == 3) // CT
    {
        colorTeam[0] = COLOR_TEAM_BLUE[0];
        colorTeam[1] = 0;
    }
    else
    {
        colorTeam[0] = COLOR_STANDARD[0];
        colorTeam[1] = 0;
    }
    
    // Formatowanie: [Ranga] (zielony) + nick (kolor drużyny)
    // Wyświetlamy to w czacie
    client_print(0, print_chat, "\x03[%s]\x01 \x0%s%s\x01 joined the game", COLOR_RANK, nick);
}

W temacie: 🔧 Zlecenie: Kompletny serwer CS 1.6 Zombie Mod w stylu starego holyskill.pl...

06.04.2025 13:33

To już bym wolał postawić forum na IPS więcej możliwości z szablonami pluginami wtyczkami,  niż bawić się w darmowe silniki Mybb lub PHPBB

W temacie: poszukuje pluginów

19.02.2025 16:08

https://amxx.pl/topi...nfo-po-śmierci/

 

https://amxx.pl/topi...racz-rundy-say/

 

https://amxx.pl/topi...odłożeniu-paki/