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.
|
[ROZWIĄZANE] Forigin paki
#1
Napisano 17.06.2012 17:32
#2
Napisano 17.06.2012 17:37
#3
Napisano 17.06.2012 17:45
#4
Napisano 17.06.2012 17:56
#5
Napisano 17.06.2012 18:27
http://amxx.pl/dokum...07/bomb_planted
public bomb_planted( planter ) { new Float:origin[3]; get_user_origin(planter, origin) }lub z fakemeta:
public bomb_planted( planter ) { new Float:origin[3]; pev(planter, pev_origin, origin) }
Użytkownik radim edytował ten post 17.06.2012 18:29
Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !
#6
Napisano 17.06.2012 19:06
#7
Napisano 17.06.2012 19:10
#8
Napisano 17.06.2012 20:16
new c4 = -1 while((c4 = find_ent_by_model(c4, "grenade", "sciezka_do_modelu_paki"))) { new Float:origin[3]; get_user_origin(c4, origin) }Bądź w fakemecie
new c4 = -1 while((c4 = find_ent_by_model(c4, "grenade", "sciezka_do_modelu_paki"))) { new Float:origin[3]; pev(c4, pev_origin, origin) }
Użytkownik radim edytował ten post 17.06.2012 20:17
Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !
#9
Napisano 17.06.2012 20:20
kiedy nie jest podłożona na bs'ie
Co do samego śledzenia, jest to dosyć proste do zrealizowania. Na początku rundy śledzisz do kogo trafia paka:
register_event("WeapPickup", "event_got_bomb", "be", "1=6")
Event ładnie zwraca id gracza, który dostaje bombę. Później przelatujesz po jego "inventory" i dopadasz bombę. Gdy ją znajdziesz, zapisujesz id enta do zmiennej globalnej i później przez cały czas pobierasz pozycję tego enta.
NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
#10
Napisano 17.06.2012 20:30
new c4 = engfunc(EngFunc_FindEntityByString, -1, "classname", "weapon_c4")
if (!c4)
return
zmiennej c4 przypisywany jest numer bytu paki, później sobie pobierasz orign fakemetą lub czym tam wolisz
#11
Napisano 17.06.2012 20:35
jeśli gracz trzyma pakę to ma ona identyczne origin jak gracz lub jest troche wyżej ( nie jestem pewien )Gdy ją znajdziesz, zapisujesz id enta do zmiennej globalnej
#12
Napisano 17.06.2012 21:25
NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
#13
Napisano 17.06.2012 21:41
CS jest tak napisany że tu nic nigdy nie działa tak jak powinno
#14
Napisano 17.06.2012 21:59
lezy na bsie i pika szukasz po modelu
lata sobie za terrorystą szukasz originów goscia który ją ma nie ma co kombinować bo origin duzo sie nie rózni a autorowi chodzi pewnie o sprawdzanie odległości
a co do iD to obstawiam ze jest to zrobione tak ze gracz ma swoją pake w ekwipunku ale jest dodatkowy ent który jest do niego przyczepiony(cos jak pev_aiment/movetype_follow) i wlasnie id tamtego enta jest równe id paki leżącej na ziemi no chyba ze w modelu jest osobny skin dla goscia z paką
Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka
GG:6022845 (nie pomagam za free osobom ponizej rangi MoD)
#15
Napisano 18.06.2012 03:19
NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
#16
Napisano 18.06.2012 09:29
#17
Napisano 18.06.2012 13:04
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "Cypis"
#define DROP 87123
new id_paki;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_logevent("logSpawBomb", 3, "2=Spawned_With_The_Bomb");
register_logevent("logSpawBomb", 3, "2=Got_The_Bomb");
register_logevent("logDropBomb", 3, "2=Dropped_The_Bomb");
register_logevent("logPlantBomb", 3, "2=Planted_The_Bomb");
register_forward(FM_PlayerPostThink, "fwPlayerPostThink");
}
public logSpawBomb()
{
remove_task(DROP);
id_paki = engfunc(EngFunc_FindEntityByString, -1, "classname", "weapon_c4");
}
public logDropBomb()
{
set_task(0.1, "taskDrop", DROP);
}
public taskDrop()
{
id_paki = fm_find_ent_by_model(-1, "weaponbox", "models/w_backpack.mdl");
}
public logPlantBomb()
{
id_paki = 0;
}
public fwPlayerPostThink(id)
{
if(!is_user_alive(id))
return;
if(!pev_valid(id_paki))
return;
new Float:PakaOrigin[3];
pev(id_paki, pev_origin, PakaOrigin);
//tu dalej kod na wyświetalnie tego co chcesz ...
}
stock fm_find_ent_by_model(index, const classname[], const models[])
{
new ent = index, model[32];
while((ent = engfunc(EngFunc_FindEntityByString, ent, "classname", classname)))
{
pev(ent, pev_model, model, 31);
if(equal(model, models))
return ent;
}
return 0;
}
Użytkownik Cypis' edytował ten post 18.06.2012 14:32
#18 Gość_21977_*
Napisano 18.06.2012 16:32
new ent=-1, Float:origin[3];
while((ent = find_ent_by_class(ent, "weapon_c4"))){
pev(ent, pev_origin, origin);
}
ent=-1;
while((ent = find_ent_by_model(ent, "weaponbox", "models/w_backpack.mdl"))){
pev(ent, pev_origin, origin);
}
Użytkownik benio101 edytował ten post 18.06.2012 16:35
poprawa warunku
#19
Napisano 18.06.2012 16:46
#20 Gość_21977_*
Napisano 18.06.2012 16:47
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych