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
 

Midi - zdjęcie

Midi

Rejestracja: 06.01.2012
Aktualnie: Nieaktywny
Poza forum Ostatnio: 22.08.2014 13:02
-----

#654010 dust2long Zmiana po okreslonym czasie

Napisane przez Niide w 31.07.2014 22:58

Proszę. Tam gdzie mapa miała się zmieniać po 1 rundzie, będzie się zmieniać po 1 minucie (info na czacie też zmienione).

 

Jak coś nie ten teges to pisz.

 

Spoiler

  • +
  • -
  • 1


#653614 [ROZWIĄZANE] Zmiana mapcycle od godziny 23

Napisane przez dasiek w 30.07.2014 07:36

http://amxx.pl/topic...-dzienny-nocny/


  • +
  • -
  • 1


#651765 Szukanie Aktywnych Banów w Amxbansie

Napisane przez xenos w 21.07.2014 13:24

Szukanie Aktywnych Banów w Amxbansie

opis
Proste narzędzie administracyjne , które ma na celu ułatwić sprawdzenie administratorowi na serwerze czy dany gracz ma obecnie aktywnego bana w AmxBansie poprzez użycie prostego menu.
W przypadku odnalezienia wpisu, admin zostanie poproszony o decyzję czy zbanować danego gracza.
komendyadmina.png

amx_szukaj - otwiera menu graczy

instalacja
http://amxx.pl/topic...-pluginow-amxx/

 

 

wymaganemoduly.png

#include <amxmodx>
#include <amxmisc>
#include <sqlx>
#include <colorchat>

cvary.png
Użyte do przechwycenia cvarow do amxbansa by użytkownik nie musiał wpisywać ponownie.


 

Dodatkowo definicjie banowania

czas: na jak długo ma być dany taki ban: 0- perm   domyślnie 1 min
flaga: jakie uprawnienia ma posiadać admin by móc użyć narzędzia domyślnie ADMIN_BAN

#define czas 0   
#define flaga ADMIN_BAN

Załączone pliki


  • +
  • -
  • 6


#650862 [ROZWIĄZANE] Niezamykanie jednej opcji w menu

Napisane przez Rivit w 18.07.2014 07:16

case: 2
{
   client_cmd(id, "say /rank")
   menu_display(id, menu)
   return PLUGIN_CONTINUE
}
sprawdz.
  • +
  • -
  • 2


#650863 [ROZWIĄZANE] Niezamykanie jednej opcji w menu

Napisane przez dasiek w 18.07.2014 07:17

a no np tak (lepiej) 

public handle_menu(id, menu, item) {
    if(item == MENU_EXIT) {
        menu_destroy(menu);
        return PLUGIN_HANDLED;
    }
 
    switch(item) {
        case 0: client_cmd(id, "say /regulamin");
        case 1: daj_bron(id);
        case 2: client_cmd(id, "say /rank");
        case 3: client_cmd(id, "say /serwery");
        case 4: client_cmd(id, "say /przelew");
    }
 
    if(item != 2) menu_destroy(menu);
    return PLUGIN_HANDLED;
}

  • +
  • -
  • 1


#650961 [ROZWIĄZANE] Niezamykanie jednej opcji w menu

Napisane przez GwynBleidD w 18.07.2014 13:32

CheQ, nie zadziała Twój pomysł niestety... od użycia menu_destroy nie zależy to, czy się menu zamknie czy nie, nawet lepiej: możesz użyć menu_destroy, a menu będzie dalej u gracza się pokazywać (ale nie będzie działało, tj wciśnięcie klawisza tylko je zamknie, nie wykona się akcja).

Menu zostaje zamknięte w nowym typie menu automatycznie po wciśnięciu klawisza, przed uruchomieniem forwardu, który podpięliśmy do tego menu. Jedynym sposobem jest NIE niszczenie menu oraz wyświetlenie go ponownie, tak jak pokazał to TibacK.
  • +
  • -
  • 2


#647483 Najwięcej fragów w pluginie rangi

Napisane przez ka.linux w 04.07.2014 11:18

Nie testowałem, ale sprawdź nie obiecuję że będzie działać :)

#include <amxmodx>
#include <amxmisc>
#include <csx>

#define PLUGIN "Rangi"
#define VERSION "1.0"
#define AUTHOR "R3X"

// User stats parms id
#define STATS_KILLS             0
#define STATS_DEATHS            1
#define STATS_HS                2
#define STATS_TKS               3
#define STATS_SHOTS             4
#define STATS_HITS              5
#define STATS_DAMAGE            6

//Max count of levels
#define LEVELS 20
//Max len of ClassName
#define CLASS_LEN 25
#define MAX_NAME_LENGTH         31
#define MAX_BUFFER_LENGTH       2047

#define TASK_SHOWCLASS 2222

//Buffers
new t_sName[MAX_NAME_LENGTH + 1]                    = ""
new g_sBuffer[MAX_BUFFER_LENGTH + 1]                = ""

new giXP[LEVELS+1];
new gszClass[LEVELS+1][CLASS_LEN];
new giPointer=1;

new gcvarMaxName;
new gcvarType, gcvarTop, gcvarList;

new gmsgSayText;
new statsm;

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR);
    register_dictionary("statsx.txt");
    
    register_clcmd("say /top10", "cmdTop10", 0, "- wyswietla range i statystyki");
    register_clcmd("say /rank", "cmdRank", 0, "- wyswietla range i statystyki");
    register_clcmd("say /rangi", "cmdHelp", 0, "- wyswietla liste rang");
    
    register_clcmd("say_team /top10", "cmdTop10", 0, "- wyswietla range i statystyki");
    register_clcmd("say_team /rank", "cmdRank", 0, "- wyswietla range i statystyki");
    register_clcmd("say_team /rangi", "cmdHelp", 0, "- wyswietla liste rang");
    
    gcvarMaxName =     register_cvar("rangi_maxname", "Reszta jest milczeniem");
    gcvarType =     register_cvar("rangi_hud","0");
    gcvarTop =     register_cvar("rangi_top10","1");
    gcvarList =     register_cvar("rangi_list","1");
    
    gmsgSayText =     get_user_msgid("SayText");
    set_task(2.0, "najlepszy");
}
//CONFIG
public plugin_cfg(){
    new szFile[128];
    get_configsdir(szFile, 127);
    add(szFile, 127, "/rangi.ini");
    if(!file_exists(szFile))
        return set_fail_state("Nie znalaziono pliku ranga.ini w folderze configs/");
    new szLine[96], iLen=0, szClass[CLASS_LEN], szXP[16];
    
    for(new i=0;read_file(szFile, i, szLine, 95, iLen);i++,szClass[0]=szXP[0]='^0'){
        if( giPointer > LEVELS) break;
        
        if(iLen==0) continue;
        trim(szLine);
        if(szLine[0]=='^0' || szLine[0]==';') continue;
        
        parse(szLine, szClass, CLASS_LEN-1, szXP, 15);
        if(szClass[0] && szXP[0]){
            giXP[giPointer]=str_to_num(szXP);
            copy(gszClass[giPointer], CLASS_LEN-1, szClass)
            giPointer++;
        }
    }
    return PLUGIN_CONTINUE;
}

//COMMANDS
public cmdTop10(id){
    if(get_pcvar_num(gcvarTop) <= 0){
        print_colored(id, "* ^x04Top10^x01 jest wylaczone");
        return PLUGIN_HANDLED;
    }
    format_top10(g_sBuffer)
    show_motd(id, g_sBuffer, "Top 10")
    return PLUGIN_CONTINUE;
}
public cmdRank(id)
{   
    static stats[8], body[8], rankpos, rankmax;
    get_user_stats(id, stats, body);
   
    rankpos = get_user_stats(id, stats, body);
    rankmax = get_statsnum();
   
    print_colored(id, "* Twoja ranga to^x04 %s^x01, zajmujesz^x03 %d^x01 pozycje z^x03 %d", get_rankname(stats[0]), rankpos, rankmax);
    print_colored(id, "* Posiadasz^x03 %d^x01 zabojstw,^x03 %d^x01 smierci oraz^x03 %d^x01 headshot'ow, zadajac^x03 %d^x01 obrazen.", stats[STATS_KILLS ], stats[STATS_DEATHS], stats[STATS_HS], stats[STATS_DAMAGE]);
   
    return PLUGIN_HANDLED;
}
public cmdHelp(id){
    if(get_pcvar_num(gcvarList) <= 0){
        print_colored(id, "* ^x04Lista rang^x01 jest niedostepna");
        return PLUGIN_HANDLED;
    }
    static sBuffer[MAX_BUFFER_LENGTH+1];
    new iLen;
    iLen = formatex(sBuffer, MAX_BUFFER_LENGTH, "<body bgcolor=#000000><font color=#FFB000><pre>")
    iLen += formatex(sBuffer[iLen], MAX_BUFFER_LENGTH - iLen, "#id  Nazwa  Prog^n");
    if(giPointer > 1)
        iLen += formatex(sBuffer[iLen], MAX_BUFFER_LENGTH - iLen, "%02d %-22.22s < %d^n", 1, gszClass[1], giXP[1]);
    for(new i=2;i<giPointer;i++){
        iLen += format(sBuffer[iLen], MAX_BUFFER_LENGTH - iLen, "%02d %-22.22s %d-%d^n", i, gszClass[i], giXP[i-1]+1,giXP[i]);
    }
    new szMaxName[CLASS_LEN];
    get_pcvar_string(gcvarMaxName, szMaxName, CLASS_LEN-1);
    iLen += format(sBuffer[iLen], MAX_BUFFER_LENGTH - iLen, "* %s > %d", szMaxName, giXP[giPointer-1]);
    show_motd(id, sBuffer, "Rangi");
    return PLUGIN_HANDLED;
}

//FORWARDS
public client_connect(id)
{
    if(is_user_bot(id) || get_pcvar_num(gcvarType)==0)
        return;
   
    set_task(1.0,"taskDisplayRank",TASK_SHOWCLASS+id,_,_,"b");
}

public client_disconnect(id)
    if(task_exists(TASK_SHOWCLASS+id))
        remove_task(TASK_SHOWCLASS+id)
   
//TASKS
public taskDisplayRank(id){
    id-=TASK_SHOWCLASS;
    static stats[8], body[8];
    get_user_stats(id, stats, body);
    
    set_hudmessage(255, 255, 255, 0.15, 0.55);
    show_hudmessage(id, "Ranga: %s^nZabojstw: %d",get_rankname(stats[STATS_KILLS ]), stats[STATS_KILLS ]);
}

//CLASS
get_lvl_by_exp(iXP){
    new i;
    for(i=1;i<=giPointer;i++){
        if(giXP[i]>=iXP)
        break;
    }
    if(i > giPointer)
        return -1;
    return i;
}
get_rankname(frags){
     static szClass[CLASS_LEN];
     new iLvl=get_lvl_by_exp(frags);
     if(iLvl>=0)
         copy(szClass,CLASS_LEN-1, gszClass[iLvl]);
     else
        get_pcvar_string(gcvarMaxName, szClass, CLASS_LEN-1);
     return szClass;
}

//RANK
// Stats formulas
Float:effec(izStats[8])
{
    if (!izStats[STATS_KILLS])
        return (0.0)
    
    return (100.0 * float(izStats[STATS_KILLS]) / float(izStats[STATS_KILLS] + izStats[STATS_DEATHS]))
}

Float:accuracy(izStats[8])
{
    if (!izStats[STATS_SHOTS])
        return (0.0)
    
    return (100.0 * float(izStats[STATS_HITS]) / float(izStats[STATS_SHOTS]))
}

// Get and format top 10
format_top10(sBuffer[MAX_BUFFER_LENGTH + 1])
{
    new iMax = get_statsnum()
    new izStats[8], izBody[8]
    new iLen = 0

    if (iMax > 10)
        iMax = 10;

    new lKills[16], lDeaths[16], lHits[16], lShots[16], lEff[16], lAcc[16]
    
    format(lKills, 15, "%L", LANG_SERVER, "KILLS")
    format(lDeaths, 15, "%L", LANG_SERVER, "DEATHS")
    format(lHits, 15, "%L", LANG_SERVER, "HITS")
    format(lShots, 15, "%L", LANG_SERVER, "SHOTS")
    format(lEff, 15, "%L", LANG_SERVER, "EFF")
    format(lAcc, 15, "%L", LANG_SERVER, "ACC")
    
    ucfirst(lEff)
    ucfirst(lAcc)

    iLen = format(sBuffer, MAX_BUFFER_LENGTH, "<body bgcolor=#000000><font color=#FFB000><pre>")
    iLen += format(sBuffer[iLen], MAX_BUFFER_LENGTH - iLen, "%2s %-22.22s %6s %6s %6s %6s %4s %4s %4s^n", "#", "Nick", "Level", lKills, lDeaths, lHits, lShots, "HS", lEff, lAcc)
    
    for (new i = 0; i < iMax && MAX_BUFFER_LENGTH - iLen > 0; i++)
    {
        get_stats(i, izStats, izBody, t_sName, MAX_NAME_LENGTH)
        replace_all(t_sName, MAX_NAME_LENGTH, "<", "[")
        replace_all(t_sName, MAX_NAME_LENGTH, ">", "]")
        iLen += format(sBuffer[iLen], MAX_BUFFER_LENGTH - iLen, "%2d %-22.22s %-22.22s %6d %6d %6d %6d %4d %3.0f%% %3.0f%%^n", i + 1, t_sName,get_rankname(izStats[STATS_KILLS]), izStats[STATS_KILLS],
                        izStats[STATS_DEATHS], izStats[STATS_HITS], izStats[STATS_SHOTS], izStats[STATS_HS], effec(izStats), accuracy(izStats))
    }
}
//STOCKS
stock print_colored(id, const text[], any:...)
{
    static szMessage[192];
    szMessage[0]='^x01';
    vformat(szMessage[1], 190, text, 3);
 
    if(id==0)
    {
        new plist[32], playernum;
        get_players(plist, playernum);
        for(new i = 0; i < playernum; i++)
        {
            id = plist[i];
            message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id);
            write_byte(id);
            write_string(szMessage);
            message_end();
        }
    }
    else
    {
        message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id);
        write_byte(id);
        write_string(szMessage);
        message_end();
    }
}
public najlepszy()
{
    new Stats[8], Body [8], Name[31];
    get_stats(statsm, Stats, Body, Name, 31);
    statsm++;
    
    print_colored(0, "* [Twoja-Siec] Najwiecej fragow %d posiada %s z ranga %s", Stats[0], Name, get_rankname(Stats[0]));

    return PLUGIN_CONTINUE
}
 

  • +
  • -
  • 1


#646938 [ROZWIĄZANE] Problem z respawn DM

Napisane przez MAGNET w 02.07.2014 11:35

Użyj Map Spawn Editor:

http://amxx.pl/topic...wns-editor-v10/


  • +
  • -
  • 1


#646877 [ROZWIĄZANE] Problem z respawn DM

Napisane przez MAGNET w 02.07.2014 01:25

Usun spawny standardowe.
  • +
  • -
  • 1


#377375 Stacje z HP i pancerzem.

Napisane przez ILikeSpam w 08.03.2012 20:32

opis
Czy wiesz jak działa DeatchMatch w HalfLife?
Istnieją tam Stacje, w których możesz naładować swoje punkty życia i pancerza.
Teraz takie same możesz mieć w Counter Strike!
Umieść je, w którym miejscu chcesz ;)

Aby umieścić stację, upewnij się, że jesteś adminem i zbinduj sobie pod odpowiadający Ci klawisz komendę "+place_station". Następnie przytrzymaj go. najedź celownikiem na miejsce, w którym chcesz umieścić stację i zwolnij przycisk. Zostanie Ci wyświetlone menu z możliwością wyboru rodzaju stacji. Komendą "push_station" i "pull_station" możesz przemieścić stację w kierunku, w którym patrzysz. Jeśli wybrane położenia stacji Ci odpowiadają możesz je zapisać w pliku konfiguracyjnym, który tworzy się automatycznie na każdej mapie.

Nowością w pluginie jest to, że możesz usuwać umieszczone stacje komendą "del_station". Wystarczy zbindować pod dany klawisz i wcisnąć.

Aby skorzystać ze stacji należy stanąć w jej pobliżu i nacisnąć klawisz USE-key (domyślnie E).

komendy admina

"+place_station" umieszczenie stacji na ścianie przed tobą.<br>
"push_station" -Przenieś stację dalej<br>
"pull_station" - Przenieś stację bliżej<br>
"del_station" - Usuń stację


cvary

HA_maxhealth - Ilość punktów zdrowia w stacji z HP [0-100] (Domyślnie: 40)
HA_maxplayerhealth - Maksymalna ilość zdrowia jaką gracz może naładować [100 - 255] (Domyślnie: 255 HP)
HA_healthpersec - Ilość przywracania Hp [w sekundach] (Domyślnie: 4)
HA_maxarmor - Ilość punktów pancerza w stacji (0-100) (Domyślnie: 40 AP)
HA_maxplayerarmor - Maksymalna ilość punktów pancerza jaką gracz może naładować [100 - 255] (Domyślnie: 255 Pancerza)
HA_armorpersec - Ilość przywracania Pancerza [w sekundach] (Domyślnie: 4)
HA_healthreloadtime - Jak długo gracz musi czekać, aby móc ponownie skorzystać ze stacji z HP [w sekundach](Domyślnie: 30 sec)
HA_armorreloadtime - Jak długo gracz musi czekać, aby móc ponownie skorzystać ze stacji z pancerzem [w sekundach] (Domyślnie: 30 sec)
HA_gloweffect - Czerwony blask stacji z Hp oraz niebieski blask stacji z pancerzem [0|1] (on|off) (Domyślnie: 1)


wymagane moduly

fakemeta


instalacja

Standardowa +
Folder addons do cstrike
Folder sound do cstrike
Folder models do cstrike

screenshot

http://imageshack.us...eenshotvc4.jpg/


Changeolog jest zawarty w SMA.

Starałem się tłumaczyć własnymi słowami jednocześnie nie odbiegając od przesłania pluginu ;)

Źródło: http://forums.alliedmods.net

Załączone pliki


  • +
  • -
  • 5


#356506 Zablokowanie BuyZone

Napisane przez FORMOZA w 01.02.2012 14:30

Witam,

Chciałbym wam przedstawić plugin na zablokowanie buyzone (strefy kupowania). Można to wykorzystać np: do Cod mod-a zamiast blokować oddzielnie bronie. Można też go wykorzystać w każdej innej modyfikacji podobnej do cod mod-a :)


screenshot
http://gm4.in/i/wi.jpg

wymagane moduly
HAMSANDWICH

instalacja
Standardowa

download
Załączony plik  buyzone.sma   583 bajtów  593 Ilość pobrań
  buyzone.amxx

Załączony plik  buyzone.amxx   1,86 KB  11 Ilość pobrań


Ps. Opis pluginu aby usunąć warna :D Z góry dziękuje za jego usunięcie
  • +
  • -
  • 8


#286502 [Poradnik PokeMod] Custom.inl

Napisane przez radim w 22.08.2011 13:08

Spis:
1. Custom.inl (addons&--#62;amxmodx&--#62;scripting&--#62;pokemon&--#62;custom.inl)
a.) Zwiększenie ilości pokemonów na Pokemodzie
b.) Zwiększenie ilości itemów na Pokemodzie
c.) Zmiana zapisu plików pokemoda (SAVE_ID)
2. Pokemod.sma - Kompilacja Pokemoda

Do roboty Dołączona grafika

1. Custom.inl
a.) Zwiększenie ilości pokemonów na Pokemodzie (ważne, gdy jak dodajemy nowe pokemony)
- wchodzimy do addons&--#62;amxmodx&--#62;scripting&--#62;pokemon&--#62;custom.inl
- szukamy linijki
Spoiler

- zamiast 400 wpisujemy ilość ile ma się mieścić pokemonów na naszym Pokemodzie.
Skutki nie zmienienia: Gdy mamy wpisane 151 pokemonów, i będziemy chcieli dodać nowego pokemona, który id będzie miał 152, wtedy Pokemod go zignoruje i nie będzie można nim grać, ani nie będzie widoczny w pokedex, tak jakby go w ogóle nie było.
b.) Zwiększenie ilości itemów na Pokemodzie
- wchodzimy do addons&--#62;amxmodx&--#62;scripting&--#62;pokemon&--#62;custom.inl
- szukamy linijki
Spoiler

- zamiast 200 wpisujemy ilość ile ma się mieścić itemów na naszym Pokemodzie.
Skutki nie zmienienia: Gdy mamy wpisane 100 itemów, i będziemy chcieli dodać nowy item, który będzie 101 z kolei, wtedy Pokemod go zignoruje i nie będzie można tego itemu używać, ani nie będzie widoczny w pokedex, tak jakby go w ogóle nie było, ani nie będzie dostępny w markecie i nie można będzie go kupić oraz znaleść.
c.) Zmiana zapisu plików pokemoda (SAVE_ID)
- wchodzimy do addons&--#62;amxmodx&--#62;scripting&--#62;pokemon&--#62;custom.inl
- szukamy linijki
Spoiler

- zamiast "1" wpisujemy albo 0 lub 1. 0 - zapis na steamid i ip, 1 - zapis na nick

2. Pokemod.sma - Kompilacja Pokemoda
Po zmienieniu custom.inl. wchodzicie do addons&--#62;amxmodx&--#62;scripting. Tam znajdujecie pokemod.sma. Zaznaczacie go i trzymacie naciśnięty lewy przycisk myszy. Następnie przesuwacie pokemod.sma na compile.exe. Powinno wyskoczyć czarne okienko, nie wyłączajcie go. Możecie dopiero wyłączyć jak się już skompiluje, czyli wyskoczy coś takiego jak zaznaczone na czerwono screenie:
ImageShack� - Online Photo and Video Hosting
Nie zwracajcie na moje wraningi, u was takie nie powinny być. Gdy już się skompiluje, należy nacisnąć enter, aby wyłączyć okienko. Następnie wchodzimy do addons&--#62;amxmodx&--#62;scripting&--#62;compiled. tam jest nowo powstały plik pokemod.amxx z waszym wybranym level'em. Należy go wgrać do addons&--#62;amxmodx&--#62;plugins, zrestartować serwer i GOTOWE.

To chyba na tyle, zapraszam do innych poradników. W razie problemów, stwórz temat a Ci na pewno pomogę.
[PokeMod] [Poradnik PokeMod] Edycja koloru Skilla - AMXX.pl: Support AMX Mod X
[PokeMod] [Poradnik PokeMod] Zwiększenie level'a - AMXX.pl: Support AMX Mod X
[PokeMod] [Poradnik PokeMod] Defines.inl - AMXX.pl: Support AMX Mod X

!!! UWAGA !!!
Prawa zastrzeżone. Zakaz kopiowania na inne fora.


  • +
  • -
  • 1