Jump to content


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

Posted Image Posted Image

Guest Message by DevFuse
 

Nakupenda.'s Photo

Nakupenda.

Rejestracja: 07.10.2011
Aktualnie: Nieaktywny
Poza forum Ostatnio: 20.11.2012 21:09
-----

#418155 [ROZWIĄZANE] Kierunek patrzenia gracza

Posted by Guest on 06.06.2012 02:11

U mnie działa wyśmienicie (fakemeta + engine)
Sęk tkwi w tym, by wymusić ustawienie nowego wektoru wzroku (fixangle=1).

#include 
#include 
#include 
#include 

public plugin_init(){
    register_plugin("xxx","0.1","xxx")
    register_clcmd("say /sprawdz", "kierunek_patrzenia")
}
public kierunek_patrzenia(id){
    new Float:Angles[3];          // pojemnik na wektor wzroku
    pev(id,pev_v_angle,Angles);   // pobiera wektor zwroku gracza
    Angles[0]=90.0;               // ustawia pionowy wektor na sam dol (skala od 90.0 (dol) poprzez 0.0 (srodek) do -90.0 (gora))
    set_view_angle(id,Angles);    // ustawia wektor wzroku gracza
}

set_view_angle(id, Float:angles[3]){
    entity_set_vector(id, EV_VEC_angles, angles);  // ustawia bytowi wektor wzroku
    entity_set_int(id, EV_INT_fixangle, 1);        // wymusza wektor wzroku

    return;
}


edit. Kto mi uwierzy, że karta wisiała od wczoraj nie odświeżana i post napisałem, zanim ujrzałem post Darka?
BTW. Post się chociaż przyda jako przykład użycia, a set_view_angle() znalazłem kiedyś na AM i używam z powodzeniem. benio101 (06.06.2012, 22:28):
przy 90.0 będzie patrzeć na dół, kod był i jest dobry, pomyliłem za to opis w komentarzu do kodu, opis już poprawiony.



#414357 Dokumentacja offline

Posted by G[o]Q on 25.05.2012 22:47

ja to bym nie pytal o zdanie innych tylko bral sie do roboty xD
  • +
  • -
  • 4


#409773 Pouczenie słowne od administracji + menu

Posted by ogieR8 on 13.05.2012 03:23

Posted Image

Pouczenie słowne od administracji, na czym to polega ? Już mówię. Po wpisaniu w czacie :

/kara
/upomnij
/warning
/ostrzezenie


.. otwiera nam się menu z wszystkimi graczami, po wybraniu odpowiedniego gracz, który został kliknięty otrzymuję wiadomość :

"[OSTRZEZENIE] Dostales pouczenie od administracji, zapoznaj sie z regulaminem i wiecej go nie lam.."

Dodatkowo można ustawić cvar'em, czy inni też mają wiedzieć, że dostałeś pouczenie słowne od admina i wtedy jest też taka wiadomość dla wszystkich:

"[UWAGA] Gracz %s dostal pouczenie slowne od administracji. Byc sprytniejszy i przeczytaj regulamin !"


Posted Image
warning_retry (domyślne: 1) - jeśli 1 to ponawia menu po wybraniu gracza
warning_info_all (domyślne: 1) - jeśli 1 to powiadamia też innych graczy o pouczeniu


To chyba by było na tyle, plugin jest mojego autorstwa, dosyć banalny, menu na flagę KICK, pomysł podrzucił mi użytkownik : SlaNdisH!

Pozdrawiam i zachęcam do pobierania, w razie kłopotów proszę pisać, postaram się je zniwelować.

[ADM]
Poprzednia liczba pobrań: 152.
Poprawiłem też 7 ostrzeżeń.
[/ADM]

Attached Files


  • +
  • -
  • 19


#409771 [ROZWIĄZANE] Plugin od ostrzeżenia

Posted by ogieR8 on 13.05.2012 03:28

Nie sprawdzane, ale powinno działać. Zrobiłem Ci dla wygody menu, bo niektóre nicki są bardzo irytujące, na flagę KICK. Włącza się pod komendami :
- /ostrzezenie
- /upomnij
- /warning

SMA: http://wklej.to/kY3xg
Jeśli chcesz, aby po wybraniu gracza menu znów się pojawiło (potem możesz je wyłączyć pod '0. Wyjdz') to usuń '//' w 50 linii przed pokaz_menu(id)

Pod jakimi komendami się włącza to chyba będziesz umiał zrobić, zrobisz co zechcesz. Do kompilacji potrzebny Ci będzie .inl/.inc z ColorChat'a, gdyż dałem bardziej ozdobny napis, niż standard w client_print, aby rzucał się w oczy graczowi.

ColorChat(kogo, GREEN, "[OSTRZEZENIE]^x01 Dostales pouczenie od administracji, zapoznaj sie z regulaminem i staraj sie tego wiecej nie robic")


Pozdrawiam ;)

---------------------------------------------------------------------------------------------------------------


@EDIT:

Tutaj v.1.1:
- dodane 2 cvary :

warning_info_all (domyślne: 1) - jeśli 1 to pokazuje info też innym, że gracz dostał ostrzeżenie
warning_retry (domyślne: 1) - jeśli 1 to ponawia menu po jego zniszczeniu przez wybór gracza


"[OSTRZEZENIE] Dostales pouczenie od administracji, zapoznaj sie z regulaminem i wiecej go nie lam.."

"[UWAGA] Gracz %s dostal pouczenie slowne od administracji. Byc sprytniejszy i przeczytaj regulamin !"

Tak to wygląda w praktyce, 2 tekst jest jeśli warning_info_all 1

Plugin też wydałem na amxx.pl, może komuś się też przydać, a na ogół jak coś piszę to dla pożytku publicznego, więc jak ktoś coś chcę to przeważnie daję.

Pozdrawiam.

Attached Files


  • +
  • -
  • 3


#407894 Granatnik do MP5

Posted by dasiek on 07.05.2012 18:06

rpg rocket jest już w csie tak jak i sprit
  • +
  • -
  • 1


#407888 AddToFullPack oraz byty wypadające po śmierci :)

Posted by radim on 07.05.2012 17:58

if(entity_range(host, ent) <= x)
set_es(es_handle, ES_RenderAmt, 255.0);
x - odległość
Warunek sprawdzający czy odległość między hostem a entem jest mniejsza lub równa x.
  • +
  • -
  • 1


#407846 Granatnik do MP5

Posted by dasiek on 07.05.2012 16:44

Plugin pozwala kupić granatnik do MP5'tki. Prawym klawiszem myszki puszcza się bombe - klawiszem użycia ją się detonuje. Koszt 10ciu granatów - 2500 $. zadawane obrażenia ustawia się cvarem

bomb_dmg

Granat można przyczepiać na ściany sufity i podłogi. Model Rakiet - innego nie miałem.

Fylm -

[AMXX CS 1.6] Granatnik do Mp5 - YouTube

Attached Files


  • +
  • -
  • 4


#319929 Dodanie broni dla gracza + ammo

Posted by sebul on 10.11.2011 12:36

Funkcja przyda się jeśli chcemy od razu dać komuś broń razem z ammo.
stock const WA_PRI_WEAPONS = ((1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90));
stock const WA_SEC_WEAPONS = ((1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE));
stock const WA_GRENADES = ((1<<CSW_HEGRENADE)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_FLASHBANG));
stock const WA_NO_WEAPONS = ((1<<0)|(1<<2)|(1<<CSW_VEST)|(1<<CSW_VESTHELM));

stock const maxClip[] = { -1, 13, -1, 10, 1, 7, 1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20, 10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, 1, 50, 0, 0 };
stock const maxAmmo[] = { -1, 52, -1, 90, 1, 32, 1, 100, 90, 1, 120, 100, 100, 90, 90, 90, 100, 120, 30, 120, 200, 32, 90, 120, 90, 2, 35, 90, 90, 1, 100, 0, 0 };

enum WeaponType {
WTEmpty = 0,
WTPistol,
WTPrimary,
WTGrenade,
WTBomb,
WTKnife
}

stock const WeaponType:g_weapons[] = {
WTEmpty,
WTPistol,
WTEmpty,
WTPrimary,
WTGrenade,
WTPrimary,
WTBomb,
WTPrimary, WTPrimary,
WTGrenade,
WTPistol, WTPistol,
WTPrimary, WTPrimary, WTPrimary, WTPrimary,
WTPistol, WTPistol,
WTPrimary, WTPrimary, WTPrimary, WTPrimary, WTPrimary, WTPrimary, WTPrimary,
WTGrenade,
WTPistol,
WTPrimary, WTPrimary,
WTKnife,
WTPrimary
};

stock give_weapon(id, weap = 0, ammo = 0, clip = -1) {
if(!is_user_alive(id))
return;

if(weap <= 0 || weap > 30) weap = random_num(1,30);

if(!((1<<weap) & (WA_PRI_WEAPONS|WA_SEC_WEAPONS))) {
give_weapon(id, _, ammo, clip);
return;
}

new weaponname[32];
get_weaponname(weap, weaponname, 31);

give_item(id, weaponname);
if(ammo != 0) cs_set_user_bpammo(id, weap, ammo < 0 ? maxAmmo[weap] : ammo);
if(clip >= 0 && clip < maxClip[weap]) {
new went = find_ent_by_owner(-1, weaponname, id);
if(is_valid_ent(went)) cs_set_weapon_ammo(went, clip);
}
}


I teraz chcąc dać komuś jakąś broń robimy to tak
give_weapon(id, CSW_M4A1); // gracz dostanie m4 bez dodatkowej amunicji
give_weapon(id, CSW_USP, 20); // gracz dostanie usp i 20 dodatkowej amunicji
give_weapon(id, CSW_AWP, 20, 1); // gracz dostanie awp i 20 dodatkowej amunicji oraz 1 nabojem w magazynku
give_weapon(id, CSW_FAMAS, -1); // gracz dostanie famasa i max dodatkowej amunicji dla tej broni
give_weapon(id, CSW_MP5NAVY, _, 2); // gracz dostanie mp5 bez dodatkowej amunicji z 2 nabojami w magazynku
give_weapon(id, _, -1); // gracz dostanie losową broń i max dodatkowej amunicji dla tej broni
give_weapon(id); // gracz dostanie losową broń bez dodatkowej amunicji


Wymagane biblioteki:
- fun
- cstrike
- engine

Attached Files


  • +
  • -
  • 7


#210083 Struktury

Posted by DarkGL on 27.01.2011 21:22

W temacie o enum R3X , goq i owner podjęli temat ale nie omówili go dokładnie :>
struktury tworzymy przy pomocy enum i operatora new pozwalają one w łatwy sposób w jednej tablicy przechowywać różne informacje Float,liczby całkowite,stringi według mnie po co rozbijać informacje o graczu na kilka różnych tablic jeśli można posługiwać się jedną ;)

Prosta struktura:


#include <amxmisc>

#define PLUGIN "DarkGL"
#define VERSION "1.0"
#define AUTHOR "Simple Structure"

enum player
{
userid,
deaths,
kills
}

new players[33][player]

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /test","test")
}

public test(id){
players[id][userid] = get_user_userid ( id)
players[id][deaths] = get_user_deaths(id);
players[id][kills] = get_user_frags(id);
client_print(id,print_chat,"Twoje userid to : %d | Masz %d fragow i %d dedow",players[id][userid],players[id][kills],players[id][deaths])
}


nie ma jednak możliwości zrobienia czegoś takiego:

#include <amxmisc>

#define PLUGIN "DarkGL"
#define VERSION "1.0"
#define AUTHOR "Simple Structure"

enum player{
origin[3]
}

new players[33][player]

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /test","test")
}

public test(id){
get_user_origin(id,players[id][origin])
client_print(id,print_chat,"Origin x,y,z : %d | %d | %d",players[id][origin][0],players[id][origin][1],players[id][origin][2])
}


chyba że zrobimy to tak:


#include <amxmisc>

#define PLUGIN "DarkGL"
#define VERSION "1.0"
#define AUTHOR "Simple Structure"

enum player{
origin[3]
}

new players[33][player]

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /test","test")
}

public test(id){
new iTmp[3];
get_user_origin(id,iTmp)
players[id][origin][0] = iTmp[0];
players[id][origin][1] = iTmp[1];
players[id][origin][2] = iTmp[2];
client_print(id,print_chat,"Origin x,y,z : %d | %d | %d",players[id][origin][0],players[id][origin][1],players[id][origin][2])
}


Przechowywanie wartości Float
z tym trzeba już kombinowac :)


#include <amxmisc>
#include <fun>

#define PLUGIN "DarkGL"
#define VERSION "1.0"
#define AUTHOR "Simple Structure"

enum player{
speed
}

new players[33][player]

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /test","test")
}

public test(id){
players[id][speed] = _:get_user_maxspeed(id);
client_print(id,print_chat,"Twoja predkosc to %f",Float:players[id][speed])
}

co robi znacznik _: zapraszm do tutoriala R3X na ten temat :)
Turorial _:

Stringi


#include <amxmisc>

#define PLUGIN "DarkGL"
#define VERSION "1.0"
#define AUTHOR "Simple Structure"

enum player{
nick[64]
}

new players[33][player]

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /test","test")
}

public test(id){
new szName[64];
get_user_name(id,szName,charsmax(szName));
copy(players[id][nick],63,szName)
client_print(id,print_chat,"Twoj nick to %s",players[id][nick])
}


w linijce z instrukcja copy drugi parametr to ilosc znakow niestety nie da sie sprawdzic ile ma tablica zadeklarowana w enum
i to by było wszystko zachęcam do stosowania struktur w swoich pluginach
coś niejasne , piszcie :)
  • +
  • -
  • 17


#380360 nowy dział

Posted by kasza on 13.03.2012 21:58

Myślę że to zupełnie niepotrzebne.. Skoro już tak mamy się rozdrabniać to proponuję dodać jeszcze działy:

Pomoce szkolne.
Polityka zagraniczna Hondurasu.
Środowisko z subforami :
  • Akweny wodne.
  • Świat zwierząt.
  • Przyroda dalekiego wschodu.
Bezrobocie.
Anime.
Salon gier.
Telefony komórkowe.
Literatura
  • Światowa
  • Europejska
Można by jeszcze dodać Rewolucje kuchenne, ale zostawiam do decyzji moderatora.

Pozdrawiam.
  • +
  • -
  • 5


#378437 Jed's Half-Life Model Viewer

Posted by DarkGL on 10.03.2012 20:01

Jed's Half-Life Model Viewer jest nową wersją Half-Life Model Viewer
Tutorial o HLMV tutaj http://amxx.pl/topic...el-viewer-v125/

Oficjalna strona JHLMV
wunderboy.org - jed's half-life model viewer (jhlmv)

Jak możemy przeczytać zmian trochę nastąpiło
  • GUI re-organised
  • Default background colour is now blue/grey instead of black
  • "Save Options" allows you to save your preferences so they are loaded next time you start HLMV
  • Dump Model Info option creates a text file giving a detailed breakdown of your models internal structure
  • Acts as a front-end to STUDIOMDL and MDLDEC allowing you to decompile and compile models from within HLMV
  • Can open GCF, PAK, WAD and BSP files
  • Poly counter shows how many polygons are being drawn
  • Supports the Alpha and Additive texture flags
  • Displays transparent and additive textures in the model preview
  • Texture flags can be set and previewed and saved to the model
  • Option to view the UV Map for any given texture
  • Sequence panel now shows additional sequence parameters
  • Events for a given sequence can be viewed
  • Previewing of new weapon origins for v_model's (tweaked this version)
  • Addition of crosshair and guides for helping with re-origining weapons
  • Small bugs from HLMV 1.25 fixed

Dodatkowo

the current version doesnt support the new texture features of the Half-Life engine

Czyli zalecam używania JHLMV ponieważ HLMV nie obsługuje najnowszych efektów tekstur ( wszyscy się domyślają o co chodzi :P ) silnika HL

Download
Attached File  hlmv136_setup.zip   191.24KB   1121 downloads

  • +
  • -
  • 6


#285243 Colors, czyli wiadomości w sayu na kolorowo.

Posted by MarWit on 19.08.2011 18:30

Colors jest includem podobnym do AMXX-owego ColorChat-a pozwalający "pisac" na kolorowo.
Udostępnia on 6 funkcji które będe opisywał w kolejnych częsciach tutoriala.

1. Pisanie na say:

Funkcje:


1. CPrintToChat : Pozwala na pisane do określonego gracza.

Składnia: CPrintToChat(client, const String:szMessage[], any:...)
Przykład: CPrintToChat(odbiorca, "To jest tekst wysłany do jednego gracza")
Opis:

client - id gracza do ktorego wysyłamy wiadomość
String:szMessage[] - treść wiadomośći, moze to byc zmienna lub tekst wpisany w ""

Możliwe tagi: {default} {green} {lightgreen} {red} {blue} {olive}



2. CPrintToChatAll : Pozwala na pisanie do wszystkich graczy.

Składnia: CPrintToChatAll(const String:szMessage[], any:...)
Przykład: CPrintToChatAll("To jest przykładowy tekst wysłany do wszystkich graczy")
Opis: String:szMessage[] - treść wiadomośći, moze to byc zmienna lub tekst wpisany w ""
Możliwe tagi: {default} {green} {lightgreen} {red} {blue} {olive}


2. Pisanie na druzynowy say:

Funkcje:


1. CPrintToChatEx : Pozwala na pisanie do określonego gracza.

Składnia: CPrintToChatEx(client, author, const String:szMessage[], any:...)
Przykład: CPrintToChatEx(odbiorca, id, "To jest tekst, wysłany do jednego gracza na druzynowy say uzywajac id gracza uzywajacego funkcji")
Opis:

client - id gracza do którego wysyłamy wiadomość
author - id gracza od którego pobieramy drużyne
String:szMessage[] - treść wiadomośći, moze to byc zmienna lub tekst wpisany w ""

Możliwe tagi: {default} {green} {olive} {teamcolor}



2. CPrintToChatAllEx : Pozwala na pisanie do wszystkich.

Składnia: CPrintToChatAllEx(author, const String:szMessage[], any:...)
Przykład: CPrintToChatAllEx(id, "To jest tekst, wysłany do wszystkich graczy na drużynowy say uzywając id gracza uzywajacego funkcji")
Opis:

author - id gracza od którego pobieramy drużyne
String:szMessage[] - treść wiadomośći, moze to byc zmienna lub tekst wpisany w ""

Możliwe tagi: {default} {green} {olive} {teamcolor}



3. Pozostałe :

Funkcje:


1. CRemoveTags : Pozwala na usunięcie tagów z podanego tekstu.

Składnia: CRemoveTags(String:szMessage[], maxlength)
Przykład: new String:szMessage[] = "Ten {red} tekst {green} zawiera {teamcolor} przyladowe {olive} tagi"
CRemoveTags(szMessage, sizeof(szMessage))


A teraz po teorii czas na praktyke Posted Image
/* Plugin Template generated by Pawn Studio */

#include <sourcemod>
#include <colors>

public Plugin:myinfo =
{
    name = "Test Colors",
    author = "MarWit",
    description = "W tym pluginie bedziemy testowac include Colors",
    version = "1.0",
    url = "http://amxx.pl"
}

public OnPluginStart()
{
    RegConsoleCmd("colors_test1", colors_test1, "<none>", 0); // Rejestrujemy komende
    RegConsoleCmd("colors_test2", colors_test2, "<none>", 0); // -||-
    RegConsoleCmd("colors_test3", colors_test3, "<none>", 0); // -||-
    RegConsoleCmd("colors_test4", colors_test4, "<none>", 0); // -||-
}

public Action:colors_test1(client, args)
{
    CPrintToChat(client, "{olive} To jest tekst wysłany do jednego gracza"); // Wyswietlamy tekst w kolorze oliwnym
    return Plugin_Handled
}

public Action:colors_test2(client, args)
{
    CPrintToChatAllEx(client, "To jest tekst, wysłany do wszystkich graczy na drużynowy say uzywając id gracza uzywajacego funkcji") // Wyswietlamy wszyskim test o kolorze teamu gracza ktory wpisal komende
    return Plugin_Handled
}

public Action:colors_test3(client, args)
{
    CPrintToChatEx(client, client, "To jest {defualt} kolorwy {olive} test :)") // Wyswietlamy tekst w kolorach: kolor teamu gracza, standardowy, oliwny.
    return Plugin_Handled
}

public Action:colors_test4(client, args)
{
    new String:szMessage[] = "Ten {red} tekst {green} zawiera {teamcolor} przyladowe {olive} tagi" // Tworzymy nowa zmienna
    CRemoveTags(szMessage, sizeof(szMessage)) // Usuwamy tagi ze zmiennej
    PrintCenterText(client, szMessage) // Wyswietlamy gotowy tekst na środku ekranu gracza
    return Plugin_Handled}

Posted Image

Myślę że komuś może sie to przydac.
Wszelkie sugestie i błędy proszę o pisanie w komentarzach.


Tutorial by MarWit.

Proszę o nie kopiowanie na inne fora bez mojej zgody.

Attached Files


  • +
  • -
  • 7


#255463 Info po smierci

Posted by DarkGL on 03.06.2011 04:59

opis.png
Plugin pozwala po zginięciu dać info swojemu teamowi poprzez mikrofon lub czat

 

http://darkgl.pl/201...nfo-po-smierci/

ss.png
info.jpg

cvary.png



//czas na danie infa po śmierci standard to 5 sekund

info_smierci_czas 5

download.png
Attached File  inf_smierc.amxx   5.62KB   495 downloads

Attached File  inf_smierc.sma   1.77KB   4747 downloads
  inf_smierc.amxx


  • +
  • -
  • 57


#302853 V.I.P NEO 1.0

Posted by Skromny on 03.10.2011 20:09

** Darmowy chełm


A to całe miasto dajesz ? haha.

ps. Musiałem :)
  • +
  • -
  • 12


#377135 get_cvar_num coś mi nie chce śmigać

Posted by speedkill on 08.03.2012 14:33

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "Administrator"

new wartosc

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	new cvar = register_cvar("abcedf","1")
	wartosc = get_pcvar_num(cvar)
	register_clcmd("say /test","test")
}
public test(id)
{
	client_print(id,3,"Wartosc cvar'a wynosi %d",wartosc)
}
Zwraca Wartosc cvar'a wynosi 1
  • +
  • -
  • 1




Sign In