Użytkownik kiver edytował ten post 23.12.2010 20:42
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.
|
Diablo + COD dawanie broni
#1
Napisano 23.12.2010 20:41
#2
Napisano 23.12.2010 21:07
new class_weapons[x] = {
(1<<CSW_KNIFE), // NONE
(1<<CSW_P90)|(1<<CSW_USP)|(1<<CSW_KNIFE), // Medyk
(1<<CSW_XM1014)|(1<<CSW_DEAGLE)|(1<<CSW_KNIFE), // Obrońca
(1<<CSW_MP5NAVY)|(1<<CSW_KNIFE), // Saper
(1<<CSW_USP)|(1<<CSW_KNIFE), // Szpieg
(1<<CSW_AWP)|(1<<CSW_KNIFE), // Snajper
(1<<CSW_AUG)|(1<<CSW_KNIFE) // Zamachowca
}x - ilość klas , łącznie z none.Jak masz więcej dodajesz...Znajdź:
public freeze_begin()
{
freeze_ended = false
}Dodaj pod:// gives a player a weapon efficiently
stock ham_give_weapon(id,weapon[])
{
if(!equal(weapon,"weapon_",7)) return 0;
new wEnt = engfunc(EngFunc_CreateNamedEntity,engfunc(EngFunc_AllocString,weapon));
if(!pev_valid(wEnt)) return 0;
set_pev(wEnt,pev_spawnflags,SF_NORESPAWN);
dllfunc(DLLFunc_Spawn,wEnt);
if(!ExecuteHamB(Ham_AddPlayerItem,id,wEnt))
{
if(pev_valid(wEnt)) set_pev(wEnt,pev_flags,pev(wEnt,pev_flags) | FL_KILLME);
return 0;
}
ExecuteHamB(Ham_Item_AttachToPlayer,wEnt,id)
return 1;
}
// takes a weapon from a player efficiently
stock ham_strip_weapon(id,weapon[])
{
if(!equal(weapon,"weapon_",7)) return 0;
new wId = get_weaponid(weapon);
if(!wId) return 0;
new wEnt;
while((wEnt = engfunc(EngFunc_FindEntityByString,wEnt,"classname",weapon)) && pev(wEnt,pev_owner) != id) {}
if(!wEnt) return 0;
if(get_user_weapon(id) == wId) ExecuteHamB(Ham_Weapon_RetireWeapon,wEnt);
if(!ExecuteHamB(Ham_RemovePlayerItem,id,wEnt)) return 0;
ExecuteHamB(Ham_Item_Kill,wEnt);
set_pev(id,pev_weapons,pev(id,pev_weapons) & ~(1<<wId));
// this block should be used for Counter-Strike:
/*if(wId == CSW_C4)
{
cs_set_user_plant(id,0,0);
cs_set_user_bpammo(id,CSW_C4,0);
}
else if(wId == CSW_SMOKEGRENADE || wId == CSW_FLASHBANG || wId == CSW_HEGRENADE)
cs_set_user_bpammo(id,wId,0);*/
return 1;
}
new weapon_name[31][]={"none","weapon_p228","weapon_shield","weapon_scout",
"weapon_hegrenade","weapon_xm1014","weapon_c4","weapon_mac10","weapon_aug",
"weapon_smokegrenade","weapon_elite","weapon_fiveseven","weapon_ump45",
"weapon_sg550","weapon_galil","weapon_famas","weapon_usp","weapon_glock18",
"weapon_awp","weapon_mp5navy","weapon_m249","weapon_m3","weapon_m4a1",
"weapon_tmp","weapon_g3sg1","weapon_flashbang","weapon_deagle","weapon_sg552",
"weapon_ak47","weapon_knife","weapon_p90"}
public dawanie_i_branie_broni(i)
{
new weapons[32], num
get_user_weapons(i, weapons, num)
new weapon;
for( new n = 0; n < num; n++ )
{
weapon = weapons[n]
if( !(class_weapons[player_class[i]] & weapon) && weapon!=CSW_C4)
{
ham_strip_weapon(i,weapon_name[weapon])
}
}
for( new n=1;n<31;n++)
{
if(class_weapons[player_class[i]] & (1<<n))
{
ham_give_weapon(i,weapon_name[n])
}
}
}W roundstart'cie szukasz:changeskin(i,0) }Dodajesz pod tym:
dawanie_i_branie_broni(i)W select_class_menu szukasz:
give_knife(id)Dodajesz pod tym:
if(is_user_alive(id)) dawanie_i_branie_broni(id)I tyle...
Powinieneś umieć zmodyfikować
#3
Napisano 23.12.2010 23:14
new class_weapons[x] = {
(1<<CSW_KNIFE), // NONE
(1<<CSW_P90)|(1<<CSW_USP)|(1<<CSW_KNIFE), // Medyk
(1<<CSW_XM1014)|(1<<CSW_DEAGLE)|(1<<CSW_KNIFE), // Obrońca
(1<<CSW_MP5NAVY)|(1<<CSW_KNIFE), // Saper
(1<<CSW_USP)|(1<<CSW_KNIFE), // Szpieg
(1<<CSW_AWP)|(1<<CSW_KNIFE), // Snajper
(1<<CSW_AUG)|(1<<CSW_KNIFE) // Zamachowca
}
#4
Napisano 24.12.2010 12:35
#5
Napisano 25.12.2010 15:14
#6
Napisano 25.12.2010 15:26
#7
Napisano 26.12.2010 14:42
Dodano 26 grudzień 2010 - 14:42:
RegisterHam(Ham_AddPlayerItem, "player", "dawanie_i_branie_broni"); dodałem coś takiego i nie działa, wyskakują errory podczas kompilacji.
#8
Napisano 26.12.2010 17:28
Użytkownik Lotos edytował ten post 26.12.2010 17:29
#9
Napisano 26.12.2010 17:48
Użytkownik kiver edytował ten post 26.12.2010 17:50
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych


Dodatki SourceMod



Temat jest zamknięty








