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
 

gruszka95 - zdjęcie

gruszka95

Rejestracja: 26.12.2010
Aktualnie: Nieaktywny
Poza forum Ostatnio: 15.05.2018 18:50
*****

#247939 Wykrycie frakcji

Napisane przez Goliath w 09.05.2011 19:32

if(nalezy_do[klasa_gracza[id]] == polacy)
{
...
}

?
  • +
  • -
  • 1


#218036 Zmiana modelu gracza dla klasy/perku

Napisane przez Goliath w 21.02.2011 20:19

Witam.
Dziś pokażę wam, jak w prosty sposób zmienić model postaci dla klasy/perku. Weźmy przykładową klasę np. Rushera.
Spoiler

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:
Spoiler

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:
Spoiler

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");

  • +
  • -
  • 25


#209663 Model dla klasy

Napisane przez xyz? w 26.01.2011 17:29

szukasz
public plugin_precache()
dodajesz:

///Moje modele xxx - nazwa modelu;p
        precache_model("models/twojfolder/twojmodel.mdl");
szukasz:
public CurWeapon(id)
dodajesz: tylko lepiej dodaj pod csw_c4
//nazwa twojego modelu
        if(informacje_przedmiotu_gracza[id][0] == 52 && weapon == CSW_KNIFE)
        {
 	entity_set_string(id, EV_SZ_viewmodel, "models/twojfolder/twojmodel.mdl")
        }

  • +
  • -
  • 2


#209669 Model dla klasy

Napisane przez kiver w 26.01.2011 17:45

No tak, ale ty mu podałeś do itemu ^^

Jeśli będzie chciał dla klasy to musi zrobić tak


if(klasa_gracza[id] == Snajper && weapon == CSW_KNIFE)
{
entity_set_string(id, EV_SZ_viewmodel, "models/twojfolder/twojmodel.mdl")
}

  • +
  • -
  • 2


#214184 [DeathRun Pack] v1 Linux+Windows

Napisane przez Gufinsky w 09.02.2011 17:25

Dołączona grafika



Dołączona grafika

- Amxmodx 1.8.2
- Unikalny VIP
- Unikalny /respawn
- Guziki końcowe są już ustawione (DeathRun Timer)
- Dodany ad_manager z funkcja you, która pobiera nick gracza

Dołączona grafika

- Gram na DeathRun'ach od około 2 lat
- Starałem się zrobić tą paczkę jak najlepiej umiem
- Docencie jakoś moją prace
- Mam nadzieję, że się spodoba
- Paczka gotowa do wrzucenia na serwer



Dołączona grafika
Konsola:
sm_reset - restartuje rekord speeda na aktualnej mapie (dla admina)
Czat:
/best - pokazuje gracza i czas w jakim przeszedl mape
/grawitacja - dla VIPA zmienia grawitacje
/speed - dla VIPa zmienia speed
/freeze - kupujemy granat zamrazajcy
fps - komendy na szybsze bh
/info - pokazuje info co posiada vip
/drshop - pokazuje deathrun shop


Dołączona grafika

Spoiler


Plugins.ini

Spoiler



Dołączona grafika

- Wrzucasz wszystko do folderu cstrike
- Restart serwera / mapy
- I gotowe
- Życzę miłej gry



Dołączona grafika


[DeathRun Pack]v1 Linux

http://www7.zippysha...04632/file.html
Dołączona grafika

- Coś nie działa? Pisz w tym temacie!
- Chcesz coś dodać? Pisz w tym temacie!
- Chcesz coś usunąć z paczki? Pisz w tym temacie!
- Jakieś problemy z paczką? Pisz w tym temacie!
- Oceń paczkę! Pisz w tym temacie!
- Jeśli ktoś będzie chciał mogę zrobić MapPack DeathRun








Zakaz kopiowania na inne fora bez zgody autora.




Edit v1
18.03.12
Pracuję nad wersją v2 deathrun pack'a.
  • +
  • -
  • 60


#156434 cod komandos, bug awp

Napisane przez QTM. Peyote w 01.08.2010 12:05

2)Znajdź w TakeDamage:
Spoiler

i zamień na:
Spoiler

  • +
  • -
  • 1


#194176 [5.9l] Zła redukcja obrażeń po zwiększeniu lvl

Napisane przez sebul w 06.12.2010 00:32

Nie wiem czy ktoś to zauważył, ale po zwiększeniu lvl (czyli i max statów, a dokładniej zręczności), redukcja obrażeń trochę źle działa, gdyż przy 50 pkt w zręczności miało się już praktycznie max % redukcji tych obrażeń, a dodawanie powyżej 50 pkt w zręczność, mało co dawało i tak mając 100 pkt w zręczności, redukcja obrażeń była prawie taka sama jak przy 50 punktach. Oczywiście jest na to rozwiązanie ;]
Znajdź wszystkie
player_damreduction[id] = (47.3057*(1.0-floatpower( 2.7182, -0.06798*float(player_agility[id])))/100)

zamień na
player_damreduction[id] = damachange(X, Y, Z);

Dodaj gdziekolwiek w sma, np. przed "public reset_skill(id)"


I Opcja bez zmiany sposobu obliczeń
stock Float:damachange(maxstat, skill, dziel) {
if(skill > 0)
return (47.3057*(1.0-floatpower(2.7182,-(0.06798/(maxstat/50))*float(skill)))/dziel);

return 0.0;
}
  • zamiast X wpisz maksymalną wartość statystyki, czyli w standardzie jest to 50
  • zamiast Y wpisz statystykę, która będzie w obliczeniach, czyli dla redukcji obrażeń będzie to "player_agility[id]"
  • zamiast Z wpisz liczbę przez którą redukcja obrażeń będzie się dzielić, im większa liczba, tym mniejsza będzie redukcja, w standardzie jest 100

II Opcja ze zmianą sposobu obliczania redukcji, jak dla mnie ta opcja jest lepsza, przy większej ilości punktów dodanych w zręczność, 1 punkt daje więcej niż przy standardowych wyliczeniach
stock Float:damachange(maxstat, skill, Float:dziel) {
if(skill > 0) {
new Float:qwe = float(skill)/maxstat;
new Float:bonus = (2.0-floatpower(2.0, qwe))/(dziel*4);
if(bonus < 0.0) bonus = 0.0;
return bonus+qwe/dziel;
}

return 0.0;
}

  • zamiast X wpisz maksymalną wartość statystyki, np. 50
  • zamiast Y wpisz statystykę, która będzie w obliczeniach, czyli dla redukcji obrażeń będzie to "player_agility[id]"
  • zamiast Z wpisz liczbę zmiennoprzecinkową, przez którą redukcja obrażeń będzie się dzielić, jeśli wpiszesz 2.0 to maksymalna wartość redukcji będzie wynosić 50%, im większa liczba, tym mniejsza będzie redukcja

  • +
  • -
  • 14


#204333 Tag mismach

Napisane przez fuuuuu! w 09.01.2011 09:25

Dzizas krajst, sekunda i widać...

1,1

  • +
  • -
  • 1


#202546 Block item

Napisane przez ELOS w 03.01.2011 17:51

Tu nie ma nic do edyci :D wytłumaczę ci blokadę na te mapy aim_,awp_ oraz _fly. Będzie blokować M4A1
Wystarczy że w sma zmienisz.
if(get_user_weapon(id) == CSW_HEGRENADE)
Na
if(get_user_weapon(id) == CSW_M4A1)
Wystarczy znać nazwy broni np. Pewnie myślisz że MP5 pisze się MP5 ale tak naprawdę piszę się MP5navy niby mała różnica ale jest :D
@Down to jest na jaką broń zmienia gdy posiadamy daną broń najlepiej zostawić bo może crashować jak damy na broń której nie mamy.
engclient_cmd(id, "weapon_knife")
Tekst który nam się wyświetli po wybraniu zablokowanej broni. Można zmienić tu
client_print(id, print_center, "HE zablokowane na tej mapie!")
Np na
client_print(id, print_center, "M4A1 zablokowane na tej mapie!")
Tu już na jakich mapach ma blokować.
get_mapname(mapa, 4);
if(equal(mapa, "aim_") || equal(mapa, "awp_") || equal(mapa, "fy_p")) register_event("CurWeapon","CurWeapon","be", "1=1", "2=4")
Np. Chcę żeby broń blokowało na awp,de i fy_pool_day
get_mapname(mapa, 4);
if(equal(mapa, "awp_") || equal(mapa, "de_") || equal(mapa, "fy_p")) register_event("CurWeapon","CurWeapon","be", "1=1", "2=4")
Jeżeli zaś chcemy aby kilka broni było zablokowanych (nie testowane)
Za
if(get_user_weapon(id) == CSW_HEGRENADE){
        engclient_cmd(id, "weapon_knife")
        client_print(id, print_center, "HE zablokowane na tej mapie!")
}
dodajemy
if(get_user_weapon(id) == CSW_M4A1){
        engclient_cmd(id, "weapon_knife")
        client_print(id, print_center, "M4A1 zablokowane na tej mapie!")
}
Jeżeli nadal nie rozumiesz napisz w tym temacie jakie bronie na jakich mapach ma blokować a ci pomogę :D

Edit:
Aha ty chcesz blokade na coda itemów spróbuj na sam koniec coda dodać.
public CurWeapon(id)
{
	new mapa[5];
get_mapname(mapa, 4);
if(equal(mapa, "aim_") || equal(mapa, "awp_") || equal(mapa, "fy_p")) register_event("CurWeapon","CurWeapon","be", "1=1", "2=4")
if(get_user_item(id) == PRZEDMIOT_ID_1){
        engclient_cmd(id, "say /drop")
        client_print(id, print_center, "Ten item jest zablokowany na tej mapie!")
}
}
Lecz nie jestem pewny bo używam aktualnie nowego coda i nie wiem czy to będzie działać.
  • +
  • -
  • 1


#200522 Klasy

Napisane przez Goliath w 28.12.2010 17:19

Zacznijmy od ubrania wroga. W .sma danej klasy, na końcu dodaj:
public ZmienUbranie(id,reset)
{
	if (!is_user_connected(id)) 
		return PLUGIN_CONTINUE;
	
	if (reset)
		cs_reset_user_model(id);
	else
	{
		new num = random_num(0,3);
		cs_set_user_model(id, (get_user_team(id) == 1)? CT_Skins[num]: Terro_Skins[num]);
	}
	
	return PLUGIN_CONTINUE;
}
W cod_class_enabled:
ZmienUbranie(id, 0);
W cod_class_disabled:
ZmienUbranie(id, 1);

A to na niewidzialność. W plugin_init daj:
register_event("CurWeapon","CurWeapon","be", "1=1");
W cod_class_enabled:
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 5);
W cod_class_disabled:
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
Na końcu pliku:
public CurWeapon(id)
{
	new weapon = read_data(2);
	if(ma_klase[id])
	{
		if(weapon == CSW_KNIFE)
		{
			set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 5);
		}
		if(weapon != CSW_KNIFE)
		{
			set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 5);
		}
	}
}
Oczywiście niewidzialność można dawać dla poszczególnych broni ;)

EDIT: Jak chcesz niewidzialność tylko na nożu, zamiast tego ostatniego daj:
public CurWeapon(id)
{
	new weapon = read_data(2);
	if(ma_klase[id])
	{
		if(weapon == CSW_KNIFE)
		{
			set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 5);
		}
		if(weapon != CSW_KNIFE)
		{
			set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
		}
	}
}

  • +
  • -
  • 2