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.
|
Adrenaline1986
Rejestracja: 03.11.2009Aktualnie: Nieaktywny
Poza forum Ostatnio: 11.12.2011 19:01





Statystyki
- Grupa: Użytkownik
- Całość postów: 33
- Odwiedzin: 5 535
- Tytuł: Życzliwy
- Wiek: 38 lat
- Urodziny: 2, 1986
-
Płeć
Nie podano
-
Lokalizacja
Warszawa
Kontakt
Narzędzia użytkownika
Znajomi
Adrenaline1986 nie posiada znajomych
#257338 [ROZWIĄZANE] [FIX] 1.6 Błędne przypisywanie adminów.
Napisane przez L0rdS^P0l4K
w 09.06.2011 22:42
#257343 [ROZWIĄZANE] [FIX] 1.6 Błędne przypisywanie adminów.
Napisane przez sebul
w 10.06.2011 00:03
#249897 [ROZWIĄZANE] [FIX] 1.6 Błędne przypisywanie adminów.
Napisane przez L0rdS^P0l4K
w 16.05.2011 11:49
Przedstawiam kolejnego FIXa dla jakże finalnej wersji GM AMXBans 1.6 [FINAŁ?].
FIX usuwa problem błędnego przypisywania adminów, dotyczy to głównie 'własnych flag' admina i opcji 'statyczny czas bana'
Problem dot. tego że wysyłane są 2 tablice
Jedna z aktywnymi adminami a druga z 'własnymi flagami' czyli custom_flags.
Problem w tym że w aktiv_new tworzył się wpis tylko gdy admin jest aktywny czyli zaznaczony... a w tablicy custom_flags wpis tworzył się zawsze bo w formularzu pole "własne flagi" i "stat. czas bana" były jedynie ukrywane a z ukrytych pól dane też są wysyłane.
W sumie znowu prozaiczna sprawa, wystarczy dynamiczne blokowanie tych pól [wyłączenie przez disabled] i dane pole nie tworzy niepotrzebnego wpisu w tablicy.
Zacznę od tego że oczywiście jest możliwość usuwania tego błędy w kodzie PHP, filtrowanie zmiennych usuwanie komórek w tablicy, ale po co ? skoro można to zrobić prościej?
1. Otwieramy ./templates/NAZW_TWOJEGO_STYLU/admin_sa.tpl
2.Wyszukaj:
<input type="text" name="custom_flags[]" id="cftxt{$admins.aid}" size="16" value="{$admins.custom_flags}"/>Zamień na:
<input type="text" name="custom_flags[]" id="cftxt{$admins.aid}" size="16" value="{$admins.custom_flags}" {if $admins.aktiv!=1}disabled="disabled"{/if}/>
3. Wyszukaj:
<select name="use_static_bantime[]">{html_options values=$yesno_choose output=$yesno_output|lang selected=$admins.use_static_bantime}</select>Zamień na:
<select id="usbtxt{$admins.aid}" name="use_static_bantime[]" {if $admins.aktiv!=1}disabled="disabled"{/if}>{html_options values=$yesno_choose output=$yesno_output|lang selected=$admins.use_static_bantime}</select>
4. Wyszukaj
<input type="checkbox" name="aktiv_new[]" value="{$admins.aid}" {if $admins.aktiv==1}checked{/if} onclick="document.getElementById('cf{$admins.aid}').style.visibility=(this.checked)?'visible':'hidden'; document.getElementById('usb{$admins.aid}').style.visibility=(this.checked)?'visible':'hidden';" /></td>Zamień na:
<input type="checkbox" name="aktiv_new[]" value="{$admins.aid}" {if $admins.aktiv==1}checked{/if} onclick="this.form.elements['cftxt{$admins.aid}'].disabled = this.form.elements['usbtxt{$admins.aid}'].disabled = !this.checked; document.getElementById('cf{$admins.aid}').style.visibility=(this.checked)?'visible':'hidden'; document.getElementById('usb{$admins.aid}').style.visibility=(this.checked)?'visible':'hidden';" /></td>
#218431 itemy
Napisane przez hmm
w 23.02.2011 10:40
if(kasa >= 10000) { cs_set_user_money(id, kasa-10000); cod_set_user_perk(id, -1, -1, 1); client_print(id, print_chat, "[COD:MW] Kupiles losowy perk!"); } if(kasa < 10000) client_print(id, print_chat, "[COD:MW] Masz za malo kasy!"); } case 7: {Jak chcesz .sma tego sklepu to załącznik.
Załączone pliki
-
cod_shop.sma 7,3 KB 66 Ilość pobrań
cod_shop.amxx
#218036 Zmiana modelu gracza dla klasy/perku
Napisane przez Goliath
w 21.02.2011 20:19
Dziś pokażę wam, jak w prosty sposób zmienić model postaci dla klasy/perku. Weźmy przykładową klasę np. Rushera.
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
new const nazwa[] = "Rusher";
new const opis[] = "Brak";
new const bronie = 1<<CSW_M3;
new const zdrowie = 0;
new const kondycja = 55;
new const inteligencja = 10;
new const wytrzymalosc = 0;
public plugin_init() {
register_plugin(nazwa, "1.0", "QTM_Peyote");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
Dodajmy teraz na początku:
#include <hamsandwich>
#include <cstrike>
A następnie tworzymy zmienną typu true/false (o nazwie ma_klase dla klasy lub ma_perk dla perku) i dodajemy są do publiców cod_class_enabled i cod_class_disabled (lub cod_perk_enabled i cod_perk_disabled dla perku) w następujący sposób:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
#include <hamsandwich>
#include <cstrike>
new const nazwa[] = "Rusher";
new const opis[] = "Brak";
new const bronie = 1<<CSW_M3;
new const zdrowie = 0;
new const kondycja = 55;
new const inteligencja = 10;
new const wytrzymalosc = 0;
new bool:ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "QTM_Peyote");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
public cod_class_enabled(id)
{
ma_klase[id] = true;
}
public cod_class_disabled(id)
{
ma_klase[id] = false;
}
Następnym krokiem jest przygotowanie modeli graczy do ściągnięcia w taki sposób:
public plugin_precache()
{
precache_model("models/player/classic2/classic2.mdl");
precache_model("models/player/swat/swat.mdl");
}
Oczywiście wy musicie wpisać ścieżki do waszych modeli. Teraz musimy dodać to do plugin_init:
RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1);
I stworzyć następujący public:
public Odrodzenie(id)
{
if(ma_klase[id])
{
cs_set_user_model(id, (get_user_team(id) == 1)? "classic2": "swat");
}
}
Następnie dodajemy to do cod_class_enabled (lub cod_perk_enabled dla perku):
cs_set_user_model(id, (get_user_team(id) == 1)? "classic2": "swat");
A to do cod_class_disabled (lub cod_perk_disabled dla perku):
cs_reset_user_model(id);
W podanym wyżej przypadku terrorysta będzie otrzymywał model classic2, a CT model swat. Zmieńcie to na wasze nazwy modeli. Dla leniwych - gotowe .sma:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
#include <hamsandwich>
#include <cstrike>
new const nazwa[] = "Rusher";
new const opis[] = "Brak";
new const bronie = 1<<CSW_M3;
new const zdrowie = 0;
new const kondycja = 55;
new const inteligencja = 10;
new const wytrzymalosc = 0;
new bool:ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "QTM_Peyote");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1);
}
public cod_class_enabled(id)
{
ma_klase[id] = true;
cs_set_user_model(id, (get_user_team(id) == 1)? "classic2": "swat");
}
public cod_class_disabled(id)
{
ma_klase[id] = false;
cs_reset_user_model(id);
}
public Odrodzenie(id)
{
if(ma_klase[id])
{
cs_set_user_model(id, (get_user_team(id) == 1)? "classic2": "swat");
}
}
public plugin_precache()
{
precache_model("models/player/classic2/classic2.mdl");
precache_model("models/player/swat/swat.mdl");
}
UWAGA!
Jeżeli nazwa waszego modelu to np. predator to należy go umieścić w katalogu models/player/predator/predator.mdl uwzględniając wielkość liter!
To już koniec. Mam nadzieję, że wszystko zrozumieliście

PS. Jeśli chcecie, aby klasa/perk miała model niezależnie od drużyny używajcie tej funkcji:
cs_set_user_model(id, "nazwa_modelu");
#217391 Zmiana modeli broni dla klas/perków
Napisane przez Goliath
w 19.02.2011 20:34
Dzisiaj pokażę wam, jak zrobić klasę/perk ze zmienionym modelem broni (p_/v_/w_). Zacznę od wytłumaczenia, który model za co odpowiada:
- v_* jest to model, który widzimy my z perspektywy 1. osoby,
- p_* jest to model broni w naszych rękach, jaki widzą inni gracze,
- w_* jest to model broni leżącej na ziemi.
CoD Nowy
Zacznijmy od przygotowania pliku. Weźmy np. takiego Rushera. Plik .sma wygląda tak:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
new const nazwa[] = "Rusher";
new const opis[] = "Brak";
new const bronie = 1<<CSW_M3;
new const zdrowie = 0;
new const kondycja = 55;
new const inteligencja = 10;
new const wytrzymalosc = 0;
public plugin_init() {
register_plugin(nazwa, "1.0", "QTM_Peyote");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
Dodajmy wsród zmiennych warunek typu true/false (o nazwie ma_klase dla klasy lub ma_perk dla perku) i wrzućmy do forwardów cod_class_enabled i cod_class_disabled (jeżeli zmieniamy to dla perku, to do forwardów cod_perk_enabled i cod_perk_disabled). Następnie zaincludujmy potrzebną bibliotekę fakemeta oraz dodajmy modele do plugin_precache (żeby się ściągały przed dołączeniem do serwera).
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
#include <engine>
#include <fakemeta>
new const nazwa[] = "Rusher";
new const opis[] = "Brak";
new const bronie = 1<<CSW_M3;
new const zdrowie = 0;
new const kondycja = 55;
new const inteligencja = 10;
new const wytrzymalosc = 0;
new bool:ma_klase[33];
public plugin_init() {
register_plugin(nazwa, "1.0", "QTM_Peyote");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
public cod_class_enabled(id)
{
ma_klase[id] = true;
}
public cod_class_disabled(id)
{
ma_klase[id] = false;
}
public plugin_precache()
{
precache_model("models/cod/w_m3.mdl");
precache_model("models/cod/p_m3.mdl");
precache_model("models/cod/v_m3.mdl");
//powyżej zmieniasz ścieżki do nowych modeli
}
Zacznijmy od zmiany modelów p_ i v_. Dodajemy to do plugin_init:
register_event("CurWeapon", "CurWeapon", "be", "1=1")
A to na koniec pliku:
public CurWeapon(id)
{
new weapon = read_data(2);
if(ma_klase[id]) //tutaj wstawiamy ma_klase lub ma_perk
{
if(weapon == CSW_M3) //tutaj ustawiamy broń, jakiej model będziemy zmieniać
{
set_pev(id, pev_viewmodel2, "models/cod/v_m3.mdl")
//tu dajemy ścieżkę do nowego modeli v_
set_pev(id, pev_weaponmodel2, "models/cod/p_m3.mdl")
//tu dajemy ścieżkę do nowego modeli p_
}
}
}
Całość wygląda tak:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
#include <engine>
#include <fakemeta>
new const nazwa[] = "Rusher";
new const opis[] = "Brak";
new const bronie = 1<<CSW_M3;
new const zdrowie = 0;
new const kondycja = 55;
new const inteligencja = 10;
new const wytrzymalosc = 0;
new bool:ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "QTM_Peyote");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_event("CurWeapon", "CurWeapon", "be", "1=1")
}
public cod_class_enabled(id)
{
ma_klase[id] = true;
}
public cod_class_disabled(id)
{
ma_klase[id] = false;
}
public plugin_precache()
{
precache_model("models/cod/w_m3.mdl");
precache_model("models/cod/p_m3.mdl");
precache_model("models/cod/v_m3.mdl");
}
public CurWeapon(id)
{
new weapon = read_data(2);
if(ma_klase[id])
{
if(weapon == CSW_M3)
{
set_pev(id, pev_viewmodel2, "models/cod/v_m3.mdl")
set_pev(id, pev_weaponmodel2, "models/cod/p_m3.mdl")
}
}
}
Teraz zajmijmy się zmianą modelu w_. Dodajemy to do plugin_init:
register_forward(FM_SetModel, "fw_SetModel");
A to na koniec pliku:
public fw_SetModel(entity, model[])
{
if(!pev_valid(entity))
return FMRES_IGNORED
if(!equali(model, "models/w_m3.mdl")) //tutaj wpisujemy ścieżkę do STAREGO modelu w_, czyli tego który chcemy podmienić
return FMRES_IGNORED;
new entityowner = pev(entity, pev_owner);
if(!ma_klase[entityowner]) //tutaj wpisujemy ma_perk lub ma_klase
return FMRES_IGNORED;
engfunc(EngFunc_SetModel, entity, "models/cod/w_m3.mdl")
return FMRES_SUPERCEDE
}
A to gotowy .sma:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
#include <engine>
#include <fakemeta>
new const nazwa[] = "Rusher";
new const opis[] = "Brak";
new const bronie = 1<<CSW_M3;
new const zdrowie = 0;
new const kondycja = 55;
new const inteligencja = 10;
new const wytrzymalosc = 0;
new bool:ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "QTM_Peyote");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_event("CurWeapon", "CurWeapon", "be", "1=1")
register_forward(FM_SetModel, "fw_SetModel");
}
public cod_class_enabled(id)
{
ma_klase[id] = true;
}
public cod_class_disabled(id)
{
ma_klase[id] = false;
}
public plugin_precache()
{
precache_model("models/cod/w_m3.mdl");
precache_model("models/cod/p_m3.mdl");
precache_model("models/cod/v_m3.mdl");
}
public CurWeapon(id)
{
new weapon = read_data(2);
if(ma_klase[id])
{
if(weapon == CSW_M3)
{
set_pev(id, pev_viewmodel2, "models/cod/v_m3.mdl")
set_pev(id, pev_weaponmodel2, "models/cod/p_m3.mdl")
}
}
}
public fw_SetModel(entity, model[])
{
if(!pev_valid(entity))
return FMRES_IGNORED
if(!equali(model, "models/w_m3.mdl"))
return FMRES_IGNORED;
new entityowner = pev(entity, pev_owner);
if(!ma_klase[entityowner])
return FMRES_IGNORED;
engfunc(EngFunc_SetModel, entity, "models/cod/w_m3.mdl")
return FMRES_SUPERCEDE
}
To by było na tyle. Mam nadzieję, że zrozumieliście jak to zrobić. Niestety - modele musicie sami sobie znaleść

#203831 Magazyn na perki v2.2
Napisane przez stasekstaskowy
w 07.01.2011 22:50
menu_additem(menu, napis1[id]);//0 menu_additem(menu, napis2[id]);//1 menu_additem(menu, napis3[id]);//2zamiencie na
menu_additem(menu, napis1);//0 menu_additem(menu, napis2);//1 menu_additem(menu, napis3);//2
nie potrzeba tworzyc z ''napisow'' tablicy gdyz wyswietla to dla kazdego gracza inne menu
#204099 Magazyn na perki v2.2
Napisane przez stasekstaskowy
w 08.01.2011 15:37
#200786 Magazyn na perki v2.2
Napisane przez Goliath
w 29.12.2010 12:07

Ten plugin umożliwia przechowywanie kilku perków w specjalnym magazynie. Po wpisaniu na czacie /magazyn, otwiera się menu, w którym możemy włożyć, wyjąć, zamienić lub usunąć dany perk (raz włożonego perku, nie będzie można wyjąć do końca rundy).
Dodałem zapis na nVault, więc po wyjściu i ponownym wejściu na serwer, perki w magazynie zostaną (można zmienić w konfiguracji pluginu).

say /magazyn - otwiera menu magazynu

1. Jeżeli jeszcze tego nie zrobiliśmy, dokonujemy zmiany z tego tematu: [CoD Nowy] Naprawa natywu cod_get_user_perk - AMXX.pl: Support AMX Mod X
2. Otwieramy plik cod_magazyn.sma i dokonujemy konfiguracji pluginu:
/************************************* * KONFIGURACJA PLUGINU * **************************************/ /******************************** Zmień 32 na ilość slotów na twoim serwerze *********************************/ #define MAX_PLAYERS 32 /******************************** Jeżeli używasz pluginu na wytrzymałość perków, zmień poniższą linijkę na: #define WYTRZYMALOSC Jeżeli nie, zmień ją na: //define WYTRZYMALOSC *********************************/ #define WYTRZYMALOSC /******************************** Jeżeli chcesz, aby perki w magazynie przechodziły na następną mapę, zmień poniższą linijkę na: #define ZAPISUJ Jeżeli nie, zmień ją na: //define ZAPISUJ *********************************/ #define ZAPISUJ /******************************** Tutaj zmień 3 na ilość slotów, jaką chcesz mieć w magazynie. *********************************/ #define ILOSC_SLOTOW 3 /* UWAGA! * * Po jakiejkolwiek zmianie w konfiguracji * * musisz ponownie skompilować plugin! * */ /************************************* * KONIEC KONFIGURACJI * **************************************/
3. Kompilujemy plik cod_magazyn.sma.
4. Wrzucamy skompilowane pluginy na serwer (jakby ktoś nie wiedział, to do katalogu amxmodx/plugins).
5. Dopisujemy do plugins.ini (lub plugins-codmod.ini, Wasza wola

cod_magazyn.amxx

Aktualna wersja (v2.2):
Starsze wersje:
v2.1
Wersja normalna:


Wersja kompatybilna z pluginem na wytrzymałość perk&amp;amp;oacute;w:


v2.0
Wersja normalna:


Wersja kompatybilna z pluginem na wytrzymałość perk&amp;amp;oacute;w:


Wersje niższe niż v2.0



Poniżej - wersja kompatybilna z pluginem na wytrzymałość perk&amp;amp;oacute;w:



A tutaj - odpowiedniki powyższych plugin&amp;amp;oacute;w bez zapisu na nVault (perki znikają po każdej mapie, wyjściu z serwera itp.):






#202529 Magazyn na perki v2.2
Napisane przez Goliath
w 03.01.2011 17:14
#143255 [ROZWIĄZANE] Bug import z pliku banned.cfg
Napisane przez ALIENt
w 10.06.2010 13:41
Szukamy bannedcfg
Ten kod usuwamy
<form name="bannedcfg" method="POST" enctype="multipart/form-data"> <tr class="settings_line"> <td> <input size="32" type="text" name="reason" value="{"_IMPORT"|lang}" /> {"_REASON"|lang}<br /> <input size="32" type="text" name="player_nick" value="{"_UNKNOWN"|lang}" /> {"_NICKNAME"|lang}<br /> <input size="32" type="text" name="server_name" value="{"_WEB"|lang}" /> {"_SERVER"|lang}<br /> <input size="28" type="text" name="ban_created" value="{$smarty.now|date_format:"%d-%m-%Y"}" /> <script language="javascript" src="calendar1.js" /><a href="javascript:cal1.popup();"><img src="images/date.png" width="16" height="16" border="0" title="Pick a date"></a> {"_DATE"|lang}<br /> <input class="input_file" type="file" size="30" name="filename"> </td> <td width="1%" valign="bottom"><input type="submit" class="button" name="bancfgupl" onclick="return confirm('{"_DATAIMPORT"|lang}');" value="{"_IMPORT"|lang}" /></td> <script language="JavaScript"> <!-- var cal1 = new calendar1(document.forms['bannedcfg'].elements['ban_created']); cal1.year_scroll = true; cal1.time_comp = false; --> </script> </tr>
a za niego wstawiamy
<form name="bannedcfg" method="POST" enctype="multipart/form-data"> <tr class="settings_line"> <td> <input size="32" type="text" name="reason" value="{"_IMPORT"|lang}" /> {"_REASON"|lang}<br /> <input size="32" type="text" name="player_nick" value="{"_UNKNOWN"|lang}" /> {"_NICKNAME"|lang}<br /> <input size="32" type="text" name="server_name" value="{"_WEB"|lang}" /> {"_SERVER"|lang}<br /> <input size="28" type="text" name="ban_created" value="{$smarty.now|date_format:"%d-%m-%Y"}" /> <input class="input_file" type="file" size="30" name="filename"> </td> <td width="1%" valign="bottom"><input type="submit" class="button" name="bancfgupl" onclick="return confirm('{"_DATAIMPORT"|lang}');" value="{"_IMPORT"|lang}" /></td> <script language="JavaScript"> <!-- var cal1 = new calendar1(document.forms['bannedcfg'].elements['ban_created']); cal1.year_scroll = true; cal1.time_comp = false; --> </script> </tr>
I Wszystko dziala jak nalezy.
Polecam się na przyszlosc.
Pozdrawiam.
- AMXX.pl: Support AMX Mod X i SourceMod
- → Przeglądanie profilu: Reputacja: Adrenaline1986
- Regulamin