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.
|
HE za zabicie - ktoś napisze / znajdzie?
#1
Napisano 23.06.2011 13:50
Najlepiej jakby oprócz tego była procentowa szansa na to ze dostanie ten HE (np. 33%)
A jeśli ktoś miałby chęci aby się jeszcze pobawić to chciałbym aby po udanych otrzymaniu HE pojawił się komunikat w chacie " [PREFIX] Otrzymales granat HE za zabicie xxx "
Prefix moze byc w cvarze bądź sma (tak samo jak % szans na zdobycie HE)
Jeśli ktoś potrafi napisać chociaż pierwszą część - czyli otrzymanie HE za zabicie kogoś już będę wdzięczny
#2
Napisano 23.06.2011 14:43
Dodano 23 czerwiec 2011 - 14:58:
Post wyżej zreportowałem do usunięcia (ten mój jak coś), dlatego że nie mogę go edytować.
Tutaj jest sma, przekompiluj sobie
#include <amxmodx>
#include <fakemeta>
#include <ColorChat>
#define PLUGIN "Dawedov"
#define AUTHOR "He za kill"
#define VERSION "1.0"
new gSzPrefix[64];
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("DeathMsg", "DeathEventHook", "ade")
register_cvar("amx_hegren_prefix","[TAG]")
register_cvar("amx_hegren_chance","3")
get_cvar_string("amx_hegren_prefix",gSzPrefix,63);
}
public DeathEventHook()
{
new attacker = read_data(1)
new victim = read_data(2)
if(get_user_team(attacker) == get_user_team(victim))
return;
if(random(get_cvar_num("amx_hegren_chance")) == 1)
{
fm_give_item(attacker,"weapon_hegrenade");
ColorChat(attacker,GREEN,"%s^x01 Dostales granat HE za zabicie wroga.",gSzPrefix)
}
}
stock fm_give_item(index, const item[])
{
if (!equal(item, "weapon_", 7) && !equal(item, "ammo_", 5) && !equal(item, "item_", 5) && !equal(item, "tf_weapon_", 10))
return 0;
new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, item))
if (!pev_valid(ent))
return 0;
new Float:origin[3];
pev(index, pev_origin, origin);
set_pev(ent, pev_origin, origin);
set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN);
dllfunc(DLLFunc_Spawn, ent);
new save = pev(ent, pev_solid);
dllfunc(DLLFunc_Touch, ent, index);
if (pev(ent, pev_solid) != save)
return ent;
engfunc(EngFunc_RemoveEntity, ent);
return -1;
}
Dodano 23 czerwiec 2011 - 14:59:
Ehh nie ogarniam tego forum
Użytkownik Dawedov edytował ten post 23.06.2011 14:45
Nie pomagam na PW, tylko na forum.
#3
Napisano 23.06.2011 17:46
#define AUTHOR "He za kill"
Chyba odwrotnie
ColorChat(attacker,GREEN,"%s^x01 Dostales granat HE za zabicie wroga.",gSzPrefix)
Co oznacza to
%s^x01
I wielkie dzięki za plugin
#4
Napisano 23.06.2011 17:58
^x01 <- zmienia kolor na podstawowy (standardowo pomarańczowy)
No tam pomyliłem, ale to nie ważne ; d
A jeszcze co do cvara amx_hegren_chance, jego wartość to x w takim razie szansa otrzymania HE po zabiciu wynosi 1/x. Normalnie ustawione na 1/3 czyli 33% tak jak chciałeś ; d
Użytkownik Dawedov edytował ten post 23.06.2011 17:59
Nie pomagam na PW, tylko na forum.
#5
Napisano 23.06.2011 18:11
A oprócz tego, czy nie powinno być tak?
[%s]^x01
Bo to rozumiem że będzie ten prefix
#6
Napisano 23.06.2011 18:17
amx_cvar amx_hegren_prefix "[PREFIX]"
i masz z nawiasami.
Są 2 cvary
amx_hegren_prefix - ustawia tag/prefix jak kto woli
amx_hegren_chance - szansa 1/x dostania granatu, można zrobić też na procenty (ale to w sma trzeba zmienić), ale po co się z tym bawić (chociaż kod będzie nie dużo dłuższy ; d)
Nie pomagam na PW, tylko na forum.
#7
Napisano 23.06.2011 18:31
register_cvar("amx_hegren_chance","3")
jak i
register_cvar("amx_hegren_chance","1")
Czemu to nie chce działać?
#8
Napisano 23.06.2011 19:39
#include <amxmodx>
#include <fakemeta>
#include <ColorChat>
#define PLUGIN "He za kill"
#define AUTHOR "Dawedov"
#define VERSION "1.0"
new gCvarHeGrenChance;
new gSzPrefix[64];
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("DeathMsg", "DeathEventHook", "ade")
register_cvar("amx_hegren_prefix","[TAG]")
gCvarHeGrenChance = register_cvar("amx_hegren_chance","3")
get_cvar_string("amx_hegren_prefix",gSzPrefix,63);
}
public DeathEventHook()
{
new attacker = read_data(1)
new victim = read_data(2)
if(get_user_team(attacker) == get_user_team(victim)
|| !attacker
|| !is_user_alive(attacker))
return;
new temp = get_pcvar_num(gCvarHeGrenChance);
if(random(temp) == 1)
{
fm_give_item(attacker,"weapon_hegrenade");
ColorChat(attacker,GREEN,"%s^x01 Dostales granat HE za zabicie wroga.",gSzPrefix)
}
}
stock fm_give_item(index, const item[])
{
if (!equal(item, "weapon_", 7) && !equal(item, "ammo_", 5) && !equal(item, "item_", 5) && !equal(item, "tf_weapon_", 10))
return 0;
new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, item))
if (!pev_valid(ent))
return 0;
new Float:origin[3];
pev(index, pev_origin, origin);
set_pev(ent, pev_origin, origin);
set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN);
dllfunc(DLLFunc_Spawn, ent);
new save = pev(ent, pev_solid);
dllfunc(DLLFunc_Touch, ent, index);
if (pev(ent, pev_solid) != save)
return ent;
engfunc(EngFunc_RemoveEntity, ent);
return -1;
}
Użytkownik Dawedov edytował ten post 23.06.2011 19:42
Nie pomagam na PW, tylko na forum.
#9
Napisano 23.06.2011 20:08
("amx_hegren_chance","3")zmienić na
("amx_hegren_chance","1")? I czy plugin sprawdza czy ktoś już posiada granat HE?
#10
Napisano 23.06.2011 21:48
Nie pomagam na PW, tylko na forum.
#11
Napisano 23.06.2011 22:07
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <fakemeta_util>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"
new const g_szPrefix[] = "[PREFIX]";
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("DeathMsg", "eventPlayerDeath", "a");
// Add your code here...
}
public eventPlayerDeath()
{
new iKiller = read_data(1);
new iVictim = read_data(2);
if(get_user_team(iKiller) != get_user_team(iVictim))
{
if(random_num(1, 3) == 1)
{
fm_give_item(iKiller, "weapon_hegrenade");
client_print(iKiller, print_chat, "%s Dostales He Grenade za zabicie wroga!", g_szPrefix);
}
}
return PLUGIN_CONTINUE;
}
Użytkownik funfel edytował ten post 23.06.2011 22:08
jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook
na pewno jakoś C się odwdzięczę!
#12
Napisano 24.06.2011 11:55
Użytkownik Karpaj edytował ten post 24.06.2011 11:55
#13
Napisano 24.06.2011 13:58
Nie pomagam na PW, tylko na forum.
#14
Napisano 24.06.2011 14:44
Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych