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
 

zjem cie ! - zdjęcie

zjem cie !

Rejestracja: 15.10.2010
Aktualnie: Nieaktywny
Poza forum Ostatnio: 27.05.2013 01:04
-----

#197962 Dodawanie frakcji

Napisane przez Lopez. w 20.12.2010 16:22

Pierwsze co robimy to dodajemy nową tablicę np. pod:
new const nazwy_klas[][] = {"Brak",
        "Snajper",
        "Komandos",
        "Strzelec wyborowy",
        "Obronca",
        "Medyk",
        "Wsparcie ogniowe",
        "Saper",
        "Demolitions",
        "Rusher",
        "Rambo (Klasa Premium)"
};

dodajemy

new const frakcje[][]={
        "Brak",
        "Polacy",
        "Rosjanie"
}


zawsze pierwsze musi być Brak potem po przecinkach podajemy nazwy frakcji po ostaniej frakcji przecinka nie ma ilość jest dowolna ale nie przesadzajmy bo potem będzie dużo roboty ;)

dobrze idziemy dalej

dodajemy

enum { NONE = 0,polacy,rosjanie}


dodajemy tablice :

new const nalezy_do[]={
        NONE,
        polacy,
        rosjanie,
        polacy,
        rosjanie,
        polacy,
        polacy,
        rosjanie,
        polacy,
        polacy,
        rosjanie
}

to tutaj ustalamy do której frakcji należy klasa i tak w tym przykładzie Snajper należy do polaków a Komandos do Rosjan

Następnie musimy podmienić funkcje

public WybierzKlase(id)


na tą
public WybierzKlase(id)
{
        new menu = menu_create("Wybierz frakcje:", "Wybierzfrakcje_Handle");
        for(new i = 1;i<sizeof(frakcje);i++){
                menu_additem(menu, frakcje[i]);
        }
        menu_display(id, menu);
}

i dodać tą

public Wybierzfrakcje_Handle(id, menu2, item)
{       
        if(item == MENU_EXIT)
        {
                menu_destroy(menu2);
                return PLUGIN_CONTINUE;
        }       

        item++;
        frakcja_gracza[id] = item;
        new menu = menu_create("Wybierz klase:", "WybierzKlase_Handle");
        new klasa[50];
        for(new i=1; i<sizeof nazwy_klas; i++)
        {
                if(nalezy_do[i] == item){
                        WczytajDane(id, i);
                        format(klasa, 49, "%s \yPoziom: %i", nazwy_klas[i], poziom_gracza[id]);
                        menu_additem(menu, klasa);
                }
        }
       
        WczytajDane(id, klasa_gracza[id]);
       
        menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
        menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
        menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
        menu_display(id, menu);
       
        client_cmd(id, "spk QTM_CodMod/select");
        #if defined BOTY
        if(is_user_bot2(id))
                WybierzKlase_Handle(id, menu, random(sizeof nazwy_klas-1));
        #endif
       
        return PLUGIN_CONTINUE;
}

w zmiennych globalnych musimy jeszcze dodać

new frakcja_gracza[33]

możemy pod np new const nalezy_do :)

i na koniec musimy podmienić

WybierzKlase_Handle(id, menu, item)

na

public WybierzKlase_Handle(id, menu, item)
{
        client_cmd(id, "spk QTM_CodMod/select");
       
        if(item == MENU_EXIT)
        {
                menu_destroy(menu);
                return PLUGIN_CONTINUE;
        }       
       
        item++;
       
        new ile = 0;
        for(new i=1; i<sizeof nazwy_klas; i++)
        {
                if(nalezy_do[i] == frakcja_gracza[id]){
                        ile++;
                }
                if(ile == item){
                        item = i;
                        break;
                }
        }
       
       
        if(item == klasa_gracza[id])
                return PLUGIN_CONTINUE;
       
        if(item == Rambo && !(get_user_flags(id) & ADMIN_LEVEL_H))
        {
                client_print(id, print_chat, "[COD:MW] Nie masz uprawnien aby kozystac z klasy premium.");
                WybierzKlase(id);
                return PLUGIN_CONTINUE;
        }
       
        if(klasa_gracza[id])
        {
                nowa_klasa_gracza[id] = item;
                client_print(id, print_chat, "[COD:MW] Klasa zostanie zmieniona w nastepnej rundzie.");
        }
        else
        {
                klasa_gracza[id] = item;
                WczytajDane(id, klasa_gracza[id]);
                Odrodzenie(id);
        }
        return PLUGIN_CONTINUE;
}

no i kompilujemy i praca skończona ;)

źródło : www.darkgl.amxx.pl

[uwaga=DarkGL]Drobna poprawka[/uwaga]
  • +
  • -
  • 19


#245876 Model dla VIP

Napisane przez Lopez. w 05.05.2011 07:11

Dokładnie tak, jeszcze raz skopiuj ten kod, poprawiłem go troszkę.
  • +
  • -
  • 1


#245872 Model dla VIP

Napisane przez Lopez. w 05.05.2011 07:06

#include <amxmodx>
#include <amxmisc>
#include <cstrike>

public plugin_init() {
register_plugin("Modele", "0.1", "Miczu")

register_event("TeamInfo","team_assign","a")
}

public plugin_precache()
{
precache_model("models/player/vip_ct/vip_ct.mdl")
precache_model("models/player/vip_te/vip_te.mdl")
}

public team_assign()
{
new id = read_data(1)

if(access(id, ADMIN_LEVEL_A) && access(id,ADMIN_USER))
{
new team[32]
read_data(2,team,31)

if(equal("TERRORIST",team)) cs_set_user_model(id,"vip_te")
if(equal("CT",team)) cs_set_user_model(id,"vip_ct")
}

  • +
  • -
  • 2


#202860 Menu zasady. Trzy podkategorie.

Napisane przez Leihto w 04.01.2011 23:12

#include <amxmodx>

#define PLUGIN "Menu zasad"
#define VERSION "1.0"
#define AUTHOR "Blak Rajder"

//Plugin zrobiony dla Graj24.Eu

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /zasady", "menu");


}

public menu(id)
{
new menu = menu_create("Menu Serwera", "menu_handler")
menu_additem(menu, "Zasady Ct", "1", 0)
menu_additem(menu, "Zasady Zombie", "2", 0)
menu_additem(menu, "Zasady ogolne", "3", 0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu, 0)
}

public menu_handler(id, menu, item)
{
if (item == MENU_EXIT)
{
return PLUGIN_HANDLED
}
new data[6], iName[64]
new access, callback
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
new key = str_to_num(data)
switch(key)
{
case 1:{
show_motd(id, "menu/zasadyct.html", "Zasady Ct");
menu_destroy(menu)
return PLUGIN_HANDLED
}
case 2:{
show_motd(id, "menu/zasadyzomb.html", "Zasady Zombie");
menu_destroy(menu)
return PLUGIN_HANDLED
}
case 3:{
show_motd(id, "menu/zasadyogol.txt", "Zasady ogolne");
menu_destroy(menu)
return PLUGIN_HANDLED
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}


P.S. Nie umiesz chyba szukac :)
*****
  • +
  • -
  • 0


#169504 [Base Builder] Skill Mod

Napisane przez DarkGL w 08.09.2010 23:00

Dołączona grafika
Mod napisałem dla siebie miałem nadzieje go sprzedać ale dobra udostępnię go community.
Za przetrwanie,zabicie ct/tt dostajemy expa możemy wydawać na coraz lepsze poziomy skilli im więcej mamy expa tym wyższą mamy rangę którą widać na czacie (np. [Spawacz el. Drewnianych]DarkGL) - tutaj należą się podziękowania dla Szyfrant'a bo to on wymyślił rangi :)
Lista skilli:
Wieksze DMG
Mniejsza grawitacja
Wiecej zycia
Szybsze strzelani
Szybsze bieganie
Mniejsza widocznosc
AutoBH
Wiekszy magazynek
Trafienie krytyczne
Mniejszy recoil
Wampiryzm

wszystko wyważyłem tak że wbicie czegoś na level dający duża przewagę zajmie wieki ;F

Dołączona grafika
bb_exp_round 50 // exp za przeżycie rundy
bb_exp_kill_ct 20 //exp za zabicie ct
bb_exp_kill_tt 10 //exp za zabicie tt
bb_exp_level 40 //mnożnik dla leveli tzn 1 level skila kosztuje 40 drugi 80 trzeci 120 i tak dalej
bb_exp_hs 5 //plus do expa za zabicie przez hs
bb_hud //info o ilości expa ma pokazywać w 0 - StatusText(jak w daiblo) lub 1 - w hud

Dołączona grafika
wszystkie w sayu
/skille - pokazuje menu do ulepszania skilli
/staty - staty skilli
/rese - resetuje skille

Dołączona grafika
add_exp nick ile_expa // dodaje lub odejmuje expa wymagana flaga ADMIN_BAN

Dołączona grafika
Standardowa ale mod w plugins.ini najlepiej dopisać na samym końcu inaczej mogą nie działać komendy w say dla innych plugów :)
Tworzymy pusty plik stats.txt w amxmodx/base/ (tworzymy także folder base)
Plik wav umieszczamy w
sound/darkgl/bb/gained_level.wav

Ps. nie bijcie za słaby kod :kwiaty:

Dołączona grafika
Załączony plik  bb_exp.sma   27,65 KB  3245 Ilość pobrań
  bb_exp.amxx
Załączony plik  bb_exp.amxx   32,2 KB  691 Ilość pobrań

Załączony plik  gained_level.wav   245,98 KB  2147 Ilość pobrań

  • +
  • -
  • 38