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
 

Dzacek - zdjęcie

Dzacek

Rejestracja: 03.04.2012
Aktualnie: Nieaktywny
Poza forum Ostatnio: 10.04.2014 15:29
-----

#514564 Generator klas- dodatki.

Napisane przez Gość w 13.02.2013 11:20

Tak, jak napisał Kawon, aktualnie toczy się dyskusja odnośnie aktualizacji generatora klas wśród Administracji, wkrótce damy znać.
Temat pozostanie otwarty, by móc składać kolejne propozycje i prowadzić ew. dyskusje dot. kodu dodatków do klas.


#511273 Generator klas- dodatki.

Napisane przez M4n1k`` w 05.02.2013 18:27

Spoiler

Reszty nie mogę znaleźć. :D
Ew. któryś z userów na forum tutaj da. ;>
  • +
  • -
  • 3


#511238 Generator klas- dodatki.

Napisane przez M4n1k`` w 05.02.2013 17:42

Wiem, że aktualizujecie ten generator klas do CODa, lecz mogę dodać kilka propozycji:
- nowy model broni,
- nowy model gracz ( macie to w generatorze VIP),
- dodatkowe x+inteligencja,
- niewidzialność przez kilka sekund.
Więc zrobiłem ankietę, żeby nie było czegoś takiego, że zrobicie coś takiego dla 1 osoby.
  • +
  • -
  • 4


#315772 Zmiana prędkości ataku bronią

Napisane przez MarWit w 31.10.2011 13:23

Witam.

W tym tutku pokaże jak zmienić szybkość ataku dla danej broni:)

1. Tworzymy klasę ( standard: punkty, nazwa/opis klasy, itd. )
2. W plugin init dodajemy:

- Jeżeli chcemy zmienić szybkość ataku nożem:

Spoiler

- Jeżeli chcemy zmienić szybkość ataku każdej innej broni:
Spoiler


3. Gdzieś niżej dodajemy:

- Dla noża:

Spoiler

- Dla kazdej innej broni
Spoiler


Teraz drobne tłumaczenie:

Aby zwiększyć/zmniejszyć prędkość ataku zmieniamy
fSpeedMultiplier
. Gdzie 0.3 ustawiamy na własną ( i mniejsza wartość tym wieksza prędkość ataku )

Aby zmienić bron na której ma być wieksza prędkość ataku:

1. Sposób ( tylko 1 bron ):

Szukamy linijki
if(iWeapon == CSW_DEAGLE)

gdzie CSW_DEAGLE zmieniamy na własne

oraz

iEnt = fm_find_ent_by_owner(-1, "weapon_deagle", id)

gdzie "weapon_deagle", zmieniamy na własne.

2. Sposób ( wiecej broni )

Zamiast

static Float:fSpeedMultiplier = 0.3;

if(iWeapon == CSW_DEAGLE)
{
iEnt = fm_find_ent_by_owner(-1, "weapon_deagle", id)

set_pdata_float( iEnt, 46, ( get_pdata_float(iEnt, 46, 4) * fSpeedMultiplier), 4 );
set_pdata_float( iEnt, 47, ( get_pdata_float(iEnt, 47, 4) * fSpeedMultiplier), 4 );
}


dajemy


static Float:fSpeedMultiplier;

switch(iWeapon)
{
case CSW_AK47: {

fSpeedMultiplier = 0.3

iEnt = fm_find_ent_by_owner(-1, "weapon_ak47", id)
}

case CSW_AWP: {

fSpeedMultiplier = 0.8

iEnt = fm_find_ent_by_owner(-1, "weapon_awp", id)
}

default: return PLUGIN_CONTINUE

}

set_pdata_float( iEnt, 46, ( get_pdata_float(iEnt, 46, 4) * fSpeedMultiplier), 4 );
set_pdata_float( iEnt, 47, ( get_pdata_float(iEnt, 47, 4) * fSpeedMultiplier), 4 );


Oczywiście gdzie CSW_AWP/CSW_AK47 i "weapon_awp"/"weapon_ak47" zmieniamy na własne np. jeżeli chcemy mieć o połowe wiekszą predkość ataku na deagle, glock'u i m4 switch bedzie wyglądał tak:



switch(iWeapon)
{
case CSW_GLOCK18: {

fSpeedMultiplier = 0.5

iEnt = fm_find_ent_by_owner(-1, "weapon_glock18", id)
}

case CSW_DEAGLE: {

fSpeedMultiplier = 0.5

iEnt = fm_find_ent_by_owner(-1, "weapon_deagle", id)
}

case CSW_M4A1: {

fSpeedMultiplier = 0.5

iEnt = fm_find_ent_by_owner(-1, "weapon_m4a1", id)
}

default: return PLUGIN_CONTINUE

}

set_pdata_float( iEnt, 46, ( get_pdata_float(iEnt, 46, 4) * fSpeedMultiplier), 4 );
set_pdata_float( iEnt, 47, ( get_pdata_float(iEnt, 47, 4) * fSpeedMultiplier), 4 );


Przykładowa klasa ( 5x szybszy atak na m4 )
Spoiler


Przydatna strona z nazwami broni ( CSW_* oraz weapon_* ): KLIK lub KLIK

Jeżeli czegoś nie rozumiecie, piszcie pod tematem ;)
  • +
  • -
  • 33


#516111 Prośba o 33 klasy w tym 11 premium m.in "StrzelecOpozycji(Premium)"

Napisane przez Yakashi w 16.02.2013 18:58

Spoiler


Ninja


#516117 Prośba o 33 klasy w tym 11 premium m.in "StrzelecOpozycji(Premium)"

Napisane przez M4n1k`` w 16.02.2013 19:03

Masz temat z NitrogenGalil:
http://amxx.pl/topic...wraz-z-perkami/
  • +
  • -
  • 1


#516094 Prośba o 33 klasy w tym 11 premium m.in "StrzelecOpozycji(Premium)"

Napisane przez M4n1k`` w 16.02.2013 18:39

Masz klasę "Lama", widziałem ją @2xUP, ale dodałem jej wszystkie bronie. :)
Załączony plik  codclass_lama.sma   3,92 KB   103 Ilość pobrań
  codclass_lama.amxx
  • +
  • -
  • 1


#515652 Prośba o 33 klasy w tym 11 premium m.in "StrzelecOpozycji(Premium)"

Napisane przez play12 w 15.02.2013 20:03

Klasa 8.Miniscouter:
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#define DMG_BULLET (1<<1)

	  
new const nazwa[]   = " MiniScouter";
new const opis[]	= "1/4scout 1/7 deagl 1 mina";
new const bronie	= (1<<CSW_SCOUT)|(1<<CSW_DEAGLE);
new const zdrowie   = 30;
new const kondycja  = 20;
new const inteligencja = 10;
new const wytrzymalosc = 0;
new ma_klase[33];
  
new const modelMiny[] = "models/QTM_CodMod/mine.mdl"
new sprite_blast_miny;
new ilosc_min_gracza[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "Play");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_touch("mine", "player",  "DotykMiny");
register_event("HLTV", "NowaRunda_Miny", "a", "1=0", "2=0");
		RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
RegisterHam(Ham_Spawn, "player", "fwSpawn_Miny", 1);
}
public plugin_precache()
{
precache_model(modelMiny);
sprite_blast_miny = precache_model("sprites/dexplo.spr");
}
public client_disconnect(id)
{
new entMiny = find_ent_by_class(0, "mine");
while(entMiny > 0)
{
  if(entity_get_edict(entMiny, EV_ENT_owner) == id)
   remove_entity(entMiny);
  entMiny = find_ent_by_class(entMiny, "mine");
}
}
public cod_class_enabled(id)
{
ilosc_min_gracza[id] = 1;
}
public cod_class_skill_used(id)
{
	  
if (!ilosc_min_gracza[id])
{
  client_print(id, print_center, "Wykorzystales juz wszystkie miny!");
}
else
{
  ilosc_min_gracza[id]--;
  new Float:origin[3];
  entity_get_vector(id, EV_VEC_origin, origin);
  new ent = create_entity("info_target");
  entity_set_string(ent ,EV_SZ_classname, "mine");
  entity_set_edict(ent ,EV_ENT_owner, id);
  entity_set_int(ent, EV_INT_movetype, MOVETYPE_TOSS);
  entity_set_origin(ent, origin);
  entity_set_int(ent, EV_INT_solid, SOLID_BBOX);
  entity_set_model(ent, modelMiny);
  entity_set_size(ent,Float:{-16.0,-16.0,0.0},Float:{16.0,16.0,2.0});
  drop_to_floor(ent);
  set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,50);
}
}
public fwSpawn_Miny(id)
{
if(is_user_alive(id))
  ilosc_min_gracza[id] = 1;
}
public DotykMiny(ent, id)
{
if(!is_valid_ent(ent))
  return;
new attacker = entity_get_edict(ent, EV_ENT_owner);
if (get_user_team(attacker) != get_user_team(id))
{
  new Float:fOrigin[3];
  entity_get_vector( ent, EV_VEC_origin, fOrigin);
  new iOrigin[3];
  for(new i=0;i<3;i++)
   iOrigin[i] = floatround(fOrigin[i]);
  message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  write_byte(TE_EXPLOSION);
  write_coord(iOrigin[0]);
  write_coord(iOrigin[1]);
  write_coord(iOrigin[2]);
  write_short(sprite_blast_miny);
  write_byte(32);
  write_byte(20);
  write_byte(0);
  message_end();
  new entlist[33];
  new numfound = find_sphere_class(ent,"player", 90.0 ,entlist, 32);
  for (new i=0; i < numfound; i++)
  {
   new pid = entlist[i];
   if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid))
	continue;
   cod_inflict_damage(attacker, pid, 70.0, 0.8, ent, (1<<24));
  }
  remove_entity(ent);
}
}
public NowaRunda_Miny()
{
new entMiny = find_ent_by_class(-1, "mine");
while(entMiny > 0)
{
  remove_entity(entMiny);
  entMiny = find_ent_by_class(entMiny, "mine");
}
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
		if(!is_user_connected(idattacker))
				return HAM_IGNORED;
	  
		if(!ma_klase[idattacker])
				return HAM_IGNORED;
	  
		if(damagebits & DMG_BULLET)
		{
				new weapon = get_user_weapon(idattacker);
			  
				if(weapon == CSW_SCOUT && damage > 20.0 && random_num(1,4) == 1)
						cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
				if(weapon == CSW_DEAGLE && damage > 20.0 && random_num(1,7) == 1)
						cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

					  
		}
	  
		return HAM_IGNORED;
}

Sprawdz klase 4.Kapitan (MPremium):
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <hamsandwich>
#define DMG_BULLET (1<<1)
	   
new const nazwa[]   = " Kapitan(MPremium)";
new const opis[]    = "1/1 AWP 1/5 elites";
new const bronie    = (1<<CSW_ELITE)|(1<<CSW_AWP);
new const zdrowie   = 50;
new const kondycja  = 70;
new const inteligencja = 0;
new const wytrzymalosc = 0;
new ma_klase[33];
   
public plugin_init()
{
register_plugin(nazwa, "1.0", "Play");
	    RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_G))
{
  client_print(id, print_chat, "[ Kapitan(MPremium)] Nie masz uprawnien, aby uzywac tej klasy.")
  return COD_STOP;
}
  
return COD_CONTINUE;
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
	    if(!is_user_connected(idattacker))
			    return HAM_IGNORED;
	   
	    if(!ma_klase[idattacker])
			    return HAM_IGNORED;
	   
	    if(damagebits & DMG_BULLET)
	    {
			    new weapon = get_user_weapon(idattacker);
			   
			    if(weapon == CSW_AWP && damage > 20.0 && random_num(1,1) == 1)
					    cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
			   if(weapon == CSW_ELITE && damage > 20.0 && random_num(1,5) == 1)
					    cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
					   
	    }
	   
	    return HAM_IGNORED;
}

Sprawdz klase XXL GhostSnajper :
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#define DMG_BULLET (1<<1)
	   
new const nazwa[]   = "[XXL]GhostSnajper";
new const opis[]    = "1/1 scout  1/3 deagl 4 miny gdy kuca ze scoutem slabo go widac (okolo 80 przezroczystosci)";
new const bronie    = (1<<CSW_SCOUT)|(1<<CSW_DEAGLE);
new const zdrowie   = 0;
new const kondycja  = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;
   
new const modelMiny[] = "models/QTM_CodMod/mine.mdl"
new sprite_blast_miny;
new ilosc_min_gracza[33];
new ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "Play");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_forward(FM_PlayerPreThink, "fwPrethink_Niewidzialnosc", 1);
register_touch("mine", "player",  "DotykMiny");
register_event("HLTV", "NowaRunda_Miny", "a", "1=0", "2=0");
	    RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
RegisterHam(Ham_Spawn, "player", "fwSpawn_Miny", 1);
}
public plugin_precache()
{
precache_model(modelMiny);
sprite_blast_miny = precache_model("sprites/dexplo.spr");
}
public client_disconnect(id)
{
new entMiny = find_ent_by_class(0, "mine");
while(entMiny > 0)
{
  if(entity_get_edict(entMiny, EV_ENT_owner) == id)
   remove_entity(entMiny);
  entMiny = find_ent_by_class(entMiny, "mine");
}
}
public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
  client_print(id, print_chat, "[[XXL]GhostSnajper] Nie masz uprawnien, aby uzywac tej klasy.")
  return COD_STOP;
}
ilosc_min_gracza[id] = 4;
ma_klase[id] = true;
  
return COD_CONTINUE;
}
public cod_class_disabled(id)
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
	 ma_klase[id] = false;
}
public cod_class_skill_used(id)
{
	   
if (!ilosc_min_gracza[id])
{
  client_print(id, print_center, "Wykorzystales juz wszystkie miny!");
}
else
{
  ilosc_min_gracza[id]--;
  new Float:origin[3];
  entity_get_vector(id, EV_VEC_origin, origin);
  new ent = create_entity("info_target");
  entity_set_string(ent ,EV_SZ_classname, "mine");
  entity_set_edict(ent ,EV_ENT_owner, id);
  entity_set_int(ent, EV_INT_movetype, MOVETYPE_TOSS);
  entity_set_origin(ent, origin);
  entity_set_int(ent, EV_INT_solid, SOLID_BBOX);
  entity_set_model(ent, modelMiny);
  entity_set_size(ent,Float:{-16.0,-16.0,0.0},Float:{16.0,16.0,2.0});
  drop_to_floor(ent);
  set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,50);
}
}

//Przy kucaniu
public fwPrethink_Niewidzialnosc(id)
{
if(!ma_klase[id])
  return;
new button = get_user_button(id);
if( button & IN_DUCK )
{
  set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 80);
}
else
{
  set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
}
public fwSpawn_Miny(id)
{
if(is_user_alive(id))
  ilosc_min_gracza[id] = 4;
}
public DotykMiny(ent, id)
{
if(!is_valid_ent(ent))
  return;
new attacker = entity_get_edict(ent, EV_ENT_owner);
if (get_user_team(attacker) != get_user_team(id))
{
  new Float:fOrigin[3];
  entity_get_vector( ent, EV_VEC_origin, fOrigin);
  new iOrigin[3];
  for(new i=0;i<3;i++)
   iOrigin[i] = floatround(fOrigin[i]);
  message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  write_byte(TE_EXPLOSION);
  write_coord(iOrigin[0]);
  write_coord(iOrigin[1]);
  write_coord(iOrigin[2]);
  write_short(sprite_blast_miny);
  write_byte(32);
  write_byte(20);
  write_byte(0);
  message_end();
  new entlist[33];
  new numfound = find_sphere_class(ent,"player", 90.0 ,entlist, 32);
  for (new i=0; i < numfound; i++)
  {
   new pid = entlist[i];
   if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid))
    continue;
   cod_inflict_damage(attacker, pid, 70.0, 0.8, ent, (1<<24));
  }
  remove_entity(ent);
}
}
public NowaRunda_Miny()
{
new entMiny = find_ent_by_class(-1, "mine");
while(entMiny > 0)
{
  remove_entity(entMiny);
  entMiny = find_ent_by_class(entMiny, "mine");
}
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
	    if(!is_user_connected(idattacker))
			    return HAM_IGNORED;
	   
	    if(!ma_klase[idattacker])
			    return HAM_IGNORED;
	   
	    if(damagebits & DMG_BULLET)
	    {
			    new weapon = get_user_weapon(idattacker);
			   
			    if(weapon == CSW_SCOUT && damage > 20.0 && random_num(1,1) == 1)
					    cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
			    if(weapon == CSW_DEAGLE && damage > 20.0 && random_num(1,3) == 1)
					    cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
					   
	    }
	   
	    return HAM_IGNORED;
}

Klasa Lama sprawdz nie dałem jej kampy bo nie wiem co to za broń dałem tylko lame 1/20 z niej proszę sprawdz :
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#define DMG_BULLET (1<<1)
	   
new const nazwa[]   = "Lama";
new const opis[]    = "ma auto lame/kampe deagl 1 mina 1/20 z lamy i kampy";
new const bronie    = (1<<CSW_G3SG1)|(1<<CSW_DEAGLE);
new const zdrowie   = 0;
new const kondycja  = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;
new ma_klase[33];
   
new const modelMiny[] = "models/QTM_CodMod/mine.mdl"
new sprite_blast_miny;
new ilosc_min_gracza[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "Play");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_touch("mine", "player",  "DotykMiny");
register_event("HLTV", "NowaRunda_Miny", "a", "1=0", "2=0");
	    RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
RegisterHam(Ham_Spawn, "player", "fwSpawn_Miny", 1);
}
public plugin_precache()
{
precache_model(modelMiny);
sprite_blast_miny = precache_model("sprites/dexplo.spr");
}
public client_disconnect(id)
{
new entMiny = find_ent_by_class(0, "mine");
while(entMiny > 0)
{
  if(entity_get_edict(entMiny, EV_ENT_owner) == id)
   remove_entity(entMiny);
  entMiny = find_ent_by_class(entMiny, "mine");
}
}
public cod_class_enabled(id)
{
ilosc_min_gracza[id] = 1;
}
public cod_class_skill_used(id)
{
	   
if (!ilosc_min_gracza[id])
{
  client_print(id, print_center, "Wykorzystales juz wszystkie miny!");
}
else
{
  ilosc_min_gracza[id]--;
  new Float:origin[3];
  entity_get_vector(id, EV_VEC_origin, origin);
  new ent = create_entity("info_target");
  entity_set_string(ent ,EV_SZ_classname, "mine");
  entity_set_edict(ent ,EV_ENT_owner, id);
  entity_set_int(ent, EV_INT_movetype, MOVETYPE_TOSS);
  entity_set_origin(ent, origin);
  entity_set_int(ent, EV_INT_solid, SOLID_BBOX);
  entity_set_model(ent, modelMiny);
  entity_set_size(ent,Float:{-16.0,-16.0,0.0},Float:{16.0,16.0,2.0});
  drop_to_floor(ent);
  set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,50);
}
}
public fwSpawn_Miny(id)
{
if(is_user_alive(id))
  ilosc_min_gracza[id] = 1;
}
public DotykMiny(ent, id)
{
if(!is_valid_ent(ent))
  return;
new attacker = entity_get_edict(ent, EV_ENT_owner);
if (get_user_team(attacker) != get_user_team(id))
{
  new Float:fOrigin[3];
  entity_get_vector( ent, EV_VEC_origin, fOrigin);
  new iOrigin[3];
  for(new i=0;i<3;i++)
   iOrigin[i] = floatround(fOrigin[i]);
  message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  write_byte(TE_EXPLOSION);
  write_coord(iOrigin[0]);
  write_coord(iOrigin[1]);
  write_coord(iOrigin[2]);
  write_short(sprite_blast_miny);
  write_byte(32);
  write_byte(20);
  write_byte(0);
  message_end();
  new entlist[33];
  new numfound = find_sphere_class(ent,"player", 90.0 ,entlist, 32);
  for (new i=0; i < numfound; i++)
  {
   new pid = entlist[i];
   if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid))
    continue;
   cod_inflict_damage(attacker, pid, 70.0, 0.8, ent, (1<<24));
  }
  remove_entity(ent);
}
}
public NowaRunda_Miny()
{
new entMiny = find_ent_by_class(-1, "mine");
while(entMiny > 0)
{
  remove_entity(entMiny);
  entMiny = find_ent_by_class(entMiny, "mine");
}
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
	    if(!is_user_connected(idattacker))
			    return HAM_IGNORED;
	   
	    if(!ma_klase[idattacker])
			    return HAM_IGNORED;
	   
	    if(damagebits & DMG_BULLET)
	    {
			    new weapon = get_user_weapon(idattacker);
			   
			    if(weapon == CSW_G3SG1 && damage > 20.0 && random_num(1,20) == 1)
					    cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
					   
	    }
	   
	    return HAM_IGNORED;
}



#515789 [ROZWIĄZANE] Prośba o klase "MiniGhostSnajper" i 8 innych.

Napisane przez MAGNET w 16.02.2013 00:36

Poprawione:

Talib

Powstaniec

Predator

Załączone pliki


  • +
  • -
  • 1


#144936 Statystyki - Call of Duty Mod: MW

Napisane przez SSB w 17.06.2010 21:20

SS ze stylu Blue
Dołączona grafika

//Nie prosimy o rep
  • +
  • -
  • 11


#514210 [ROZWIĄZANE] Prośba o klase "MiniGhostSnajper" i 8 innych.

Napisane przez play12 w 12.02.2013 15:40

Proszę klase MiniGhostSnajper:

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#define DMG_BULLET (1<<1)	  
new const nazwa[]   = "MiniGhostSnajper";
new const opis[]	= "1/3 scout 2 miny 1/5 deagl.";
new const bronie	= (1<<CSW_SCOUT)|(1<<CSW_DEAGLE);
new const zdrowie   = 0;
new const kondycja  = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;
new ma_klase [33];
  
new const modelMiny[] = "models/QTM_CodMod/mine.mdl"
new sprite_blast_miny;
new ilosc_min_gracza[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "Play");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_touch("mine", "player",  "DotykMiny");
		RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
register_event("HLTV", "NowaRunda_Miny", "a", "1=0", "2=0");
RegisterHam(Ham_Spawn, "player", "fwSpawn_Miny", 1);
}
public plugin_precache()
{
precache_model(modelMiny);
sprite_blast_miny = precache_model("sprites/dexplo.spr");
}
public client_disconnect(id)
{
new entMiny = find_ent_by_class(0, "mine");
while(entMiny > 0)
{
  if(entity_get_edict(entMiny, EV_ENT_owner) == id)
   remove_entity(entMiny);
  entMiny = find_ent_by_class(entMiny, "mine");
}
}
public cod_class_enabled(id)
{
ilosc_min_gracza[id] = 2;
}
public cod_class_skill_used(id)
{
	  
if (!ilosc_min_gracza[id])
{
  client_print(id, print_center, "Wykorzystales juz wszystkie miny!");
}
else
{
  ilosc_min_gracza[id]--;
  new Float:origin[3];
  entity_get_vector(id, EV_VEC_origin, origin);
  new ent = create_entity("info_target");
  entity_set_string(ent ,EV_SZ_classname, "mine");
  entity_set_edict(ent ,EV_ENT_owner, id);
  entity_set_int(ent, EV_INT_movetype, MOVETYPE_TOSS);
  entity_set_origin(ent, origin);
  entity_set_int(ent, EV_INT_solid, SOLID_BBOX);
  entity_set_model(ent, modelMiny);
  entity_set_size(ent,Float:{-16.0,-16.0,0.0},Float:{16.0,16.0,2.0});
  drop_to_floor(ent);
  set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,50);
}
}
public fwSpawn_Miny(id)
{
if(is_user_alive(id))
  ilosc_min_gracza[id] = 2;
}
public DotykMiny(ent, id)
{
if(!is_valid_ent(ent))
  return;
new attacker = entity_get_edict(ent, EV_ENT_owner);
if (get_user_team(attacker) != get_user_team(id))
{
  new Float:fOrigin[3];
  entity_get_vector( ent, EV_VEC_origin, fOrigin);
  new iOrigin[3];
  for(new i=0;i<3;i++)
   iOrigin[i] = floatround(fOrigin[i]);
  message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  write_byte(TE_EXPLOSION);
  write_coord(iOrigin[0]);
  write_coord(iOrigin[1]);
  write_coord(iOrigin[2]);
  write_short(sprite_blast_miny);
  write_byte(32);
  write_byte(20);
  write_byte(0);
  message_end();
  new entlist[33];
  new numfound = find_sphere_class(ent,"player", 90.0 ,entlist, 32);
  for (new i=0; i < numfound; i++)
  {
   new pid = entlist[i];
   if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid))
	continue;
   cod_inflict_damage(attacker, pid, 70.0, 0.8, ent, (1<<24));
  }
  remove_entity(ent);
}
}
public NowaRunda_Miny()
{
new entMiny = find_ent_by_class(-1, "mine");
while(entMiny > 0)
{
  remove_entity(entMiny);
  entMiny = find_ent_by_class(entMiny, "mine");
}
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
		if(!is_user_connected(idattacker))
				return HAM_IGNORED;
	  
		if(!ma_klase[idattacker])
				return HAM_IGNORED;
	  
		if(damagebits & DMG_BULLET)
		{
				new weapon = get_user_weapon(idattacker);
			  
				if(weapon == CSW_SCOUT && damage > 20.0 && random_num(1,3) == 1)
						cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0,
idinflictor, damagebits);
				if(weapon == CSW_DEAGL && damage > 20.0 && random_num(1,5) == 1)
						cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

					  
		}
	  
		return HAM_IGNORED;
}

Sprawdz klase GhostSnajper(MegaPremium):

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#define DMG_BULLET (1<<1)	  
new const nazwa[]   = "GhostSnajper(MegaPremium)";
new const opis[]	= "1/1 scout podczas kucania z nim 60 niewidzialności 4 miny 1/3 deagl";
new const bronie	= (1<<CSW_SCOUT)|(1<<CSW_DEAGLE);
new const zdrowie   = 0;
new const kondycja  = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;

  
new const modelMiny[] = "models/QTM_CodMod/mine.mdl"
new sprite_blast_miny;
new ilosc_min_gracza[33];
new ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "Play");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_forward(FM_PlayerPreThink, "fwPrethink_Niewidzialnosc", 1);
register_touch("mine", "player",  "DotykMiny");
		RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
register_event("HLTV", "NowaRunda_Miny", "a", "1=0", "2=0");
RegisterHam(Ham_Spawn, "player", "fwSpawn_Miny", 1);
}
public plugin_precache()
{
precache_model(modelMiny);
sprite_blast_miny = precache_model("sprites/dexplo.spr");
}
public client_disconnect(id)
{
new entMiny = find_ent_by_class(0, "mine");
while(entMiny > 0)
{
  if(entity_get_edict(entMiny, EV_ENT_owner) == id)
   remove_entity(entMiny);
  entMiny = find_ent_by_class(entMiny, "mine");
}
}
public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
  client_print(id, print_chat, "[GhostSnajper(MegaPremium)] Nie masz uprawnien, aby uzywac tej klasy.")
  return COD_STOP;
}
ilosc_min_gracza[id] = 4;
ma_klase[id] = true;
  
return COD_CONTINUE;
}
public cod_class_disabled(id)
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
	 ma_klase[id] = false;
}
public cod_class_skill_used(id)
{
	  
if (!ilosc_min_gracza[id])
{
  client_print(id, print_center, "Wykorzystales juz wszystkie miny!");
}
else
{
  ilosc_min_gracza[id]--;
  new Float:origin[3];
  entity_get_vector(id, EV_VEC_origin, origin);
  new ent = create_entity("info_target");
  entity_set_string(ent ,EV_SZ_classname, "mine");
  entity_set_edict(ent ,EV_ENT_owner, id);
  entity_set_int(ent, EV_INT_movetype, MOVETYPE_TOSS);
  entity_set_origin(ent, origin);
  entity_set_int(ent, EV_INT_solid, SOLID_BBOX);
  entity_set_model(ent, modelMiny);
  entity_set_size(ent,Float:{-16.0,-16.0,0.0},Float:{16.0,16.0,2.0});
  drop_to_floor(ent);
  set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,50);
}
}

//Przy kucaniu
public fwPrethink_Niewidzialnosc(id)
{
if(!ma_klase[id])
  return;
new button = get_user_button(id);
if( button & IN_DUCK )
{
  set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 60);
}
else
{
  set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
}
public fwSpawn_Miny(id)
{
if(is_user_alive(id))
  ilosc_min_gracza[id] = 4;
}
public DotykMiny(ent, id)
{
if(!is_valid_ent(ent))
  return;
new attacker = entity_get_edict(ent, EV_ENT_owner);
if (get_user_team(attacker) != get_user_team(id))
{
  new Float:fOrigin[3];
  entity_get_vector( ent, EV_VEC_origin, fOrigin);
  new iOrigin[3];
  for(new i=0;i<3;i++)
   iOrigin[i] = floatround(fOrigin[i]);
  message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  write_byte(TE_EXPLOSION);
  write_coord(iOrigin[0]);
  write_coord(iOrigin[1]);
  write_coord(iOrigin[2]);
  write_short(sprite_blast_miny);
  write_byte(32);
  write_byte(20);
  write_byte(0);
  message_end();
  new entlist[33];
  new numfound = find_sphere_class(ent,"player", 90.0 ,entlist, 32);
  for (new i=0; i < numfound; i++)
  {
   new pid = entlist[i];
   if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid))
	continue;
   cod_inflict_damage(attacker, pid, 70.0, 0.8, ent, (1<<24));
  }
  remove_entity(ent);
}
}
public NowaRunda_Miny()
{
new entMiny = find_ent_by_class(-1, "mine");
while(entMiny > 0)
{
  remove_entity(entMiny);
  entMiny = find_ent_by_class(entMiny, "mine");
}
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
		if(!is_user_connected(idattacker))
				return HAM_IGNORED;
	  
		if(!ma_klase[idattacker])
				return HAM_IGNORED;
	  
		if(damagebits & DMG_BULLET)
		{
				new weapon = get_user_weapon(idattacker);
			  
				if(weapon == CSW_SCOUT && damage > 20.0 && random_num(1,1) == 1)
						cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
				if(weapon == CSW_DEAGL && damage > 20.0 && random_num(1,3) == 1)
						cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

					  
		}
	  
		return HAM_IGNORED;
}


if(!(get_user_flags(id) & ADMIN_LEVEL_H)) - tu sobie ustawiasz jaką flage chcesz.

Proszę klase Kapita(Premium)

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <fun>
#include <hamsandwich>
#define DMG_BULLET (1<<1)
	   
new const nazwa[]   = "Kapitan(MegaPremium)";
new const opis[]    = "1/1 awp 1/4 deagl 1/3 kosa 1/5 granat ";
new const bronie    = (1<<CSW_HEGRENADE)|(1<<CSW_AWP)|(1<<CSW_DEAGLE);
new const zdrowie   = 0;
new const kondycja  = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;
new ma_klase[33];
   
public plugin_init()
{
register_plugin(nazwa, "1.0", "Play");
	    RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}
public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
  client_print(id, print_chat, "[Kapitan(MegaPremium)] Nie masz uprawnien, aby uzywac tej klasy.")
  return COD_STOP;
}
give_item(id, "weapon_hegrenade");
  
return COD_CONTINUE;
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
	    if(!is_user_connected(idattacker))
			    return HAM_IGNORED;
	   
	    if(!ma_klase[idattacker])
			    return HAM_IGNORED;
	   
	    if(damagebits & DMG_BULLET)
	    {
			    new weapon = get_user_weapon(idattacker);
			   
			    if(weapon == CSW_AWP && damage > 20.0 && random_num(1,1) == 1)
					    cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
			    if(weapon == CSW_KNIFE && damage > 20.0 && random_num(1,3) == 1)
					    cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
			    if(weapon == CSW_HEGRENADE && damage > 20.0 && random_num(1,5) == 1)
					    cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
			    if(weapon == CSW_DEAGL && damage > 20.0 && random_num(1,4) == 1)
					    cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

					   
	    }
	   
	    return HAM_IGNORED;
}

Tak jak mówiłem tutaj ustawiasz sobie flage pod jaką chcesz mieć klasę premium. if(!(get_user_flags(id) & ADMIN_LEVEL_H))


#514243 [ROZWIĄZANE] Prośba o klase "MiniGhostSnajper" i 8 innych.

Napisane przez Play 4FuN w 12.02.2013 16:41

Vixen (1dmg = 10int.)
Załączony plik  codclass_Vixen.sma   1,24 KB   27 Ilość pobrań
  codclass_Vixen.amxx
  • +
  • -
  • 1


#357467 Doświadczenie za asystę [Update 3.02.12]

Napisane przez ToRRent w 03.02.2012 12:43

Dołączona grafika
Przeróbka pluginu Kill Assist pod Nowego Cod moda :) wszyscy którzy korzystają z tego pluginu proszeni są o zaktualizowanie go ponieważ znalazłem błąd w obliczeniach (zamiast dodawać doświadczenie mnożyło je względem poziomów)

Gracz otrzymuje doświadczenie według wzoru
=50% expa za fraga + 1 xp za każdy lvl przeciwnika (jeżeli miał wyższy od nas)

Dołączona grafika
- amx_killassist_enable 0-2 (default: 1)
0 = Wyłącz plugin / 1 =Asysty będzie wyświetlać w Death Notice (Górny prawy róg) / 2 = Asysty będzie wyświetlać w wiadomości Hud

- amx_killassist_mindamage 1-9999 (default: 30)
ilość dmg jaką musi wykonać gracz żeby zaliczyło asystę

- amx_killassist_givefrags 0/1 (default: 1)
Dać fraga graczowi który asystował ?

- amx_killassist_givemoney 0-16000 (default: 150)
Ile $$ dać pomocnikowi ?

- amx_killassist_onlyalive 0/1 (default: 1)
Czy tylko żywi pomocnicy mają otrzymywać wynagrodzenie za asystę ?

Dołączona grafika
plik z rozszerzeniem .sma dodajemy do addons/amxmodx/scripting
plik z rozszerzeniem .amxx dodajemy do addons/amxmodx/plugins
w pliku plugins-codmod.ini znajdującym się w addons/amxmodx/configs dopisujemy pod
QTM_CodMod.amxx
to
COD_Asysta.amxx

Dołączona grafika
Załączony plik  COD_Asysta.sma   10,43 KB   825 Ilość pobrań
  COD_Asysta.amxx
Załączony plik  COD_Asysta.amxx   14,62 KB   43 Ilość pobrań

  • +
  • -
  • 15


#514156 [ROZWIĄZANE] Prośba o klase "MiniGhostSnajper" i 8 innych.

Napisane przez Play 4FuN w 12.02.2013 13:50

Załączony plik  codclass_Vixen.sma   1,07 KB   27 Ilość pobrań
  codclass_Vixen.amxx
  • +
  • -
  • 1


#513757 Prośba o 6 perkow m.in "nanosuid"

Napisane przez Play 4FuN w 11.02.2013 12:47

Załączony plik  codperk_AutoBH.sma   1001 bajtów   27 Ilość pobrań
  codperk_AutoBH.amxx
  • +
  • -
  • 2




Logowanie


  • Potrzebujesz konta? Zarejestruj się!