Page 1 of 1
Hp/sec
Posted: 2012 Dec 30 18:27
by Froza
Sveiki, galėtu kas nors sukurti man pluginą kuris duotu Vipams su flag H ir paprastiems žaidėjams hp per tam tikra laiką sekundžių.
PVZ:
Vipai gauna 10HP per 5 sekundes, o paprasti žaidėjai 5hp per 5 sekundes...
Re: Hp/sec
Posted: 2012 Dec 30 18:53
by newb
Kazkas tokio
Code: Select all
#include <amxmodx>#include <hamsandwich>#include <fun> #define VIP ADMIN_LEVEL_H#define VIPHP 10#define HP 5#define TIME 5.0 public plugin_init() { register_plugin("hp/sec", "1.3.3.7", "amxmodx.lt") RegisterHam(Ham_Spawn, "player", "hook_PlayerSpawn", 1) register_event("DeathMsg", "hook_Death", "a")} public hook_Death() remove_task(read_data(2)) public client_disconnect(id) remove_task(id) public hook_PlayerSpawn(id) { if(!is_user_alive(id)) return set_task(TIME, get_user_flags(id) & VIP ? "hpvip" : "hp", id, _, _, "b")} public hpvip(id) set_user_health(id, get_user_health(id) + VIPHP) public hp(id) set_user_health(id, get_user_health(id) + HP)
Re: Hp/sec
Posted: 2012 Dec 30 18:57
by konfiguras
kažką bandžiau aš daryti, bet tik paprastiems žmonėms, ar toks kodas yra geras?:
Code: Select all
#include <amxmodx>#include <cstrike>#include <fun>#include <fakemeta>#include <hamsandwich> public gyvybes(id) { if(cs_get_user_team(id) != !is_user_alive(id)) return PLUGIN_HANDLED; new hp = get_user_health(id); if(hp < 100) { set_user_health(id, hp + 5); set_task(10.0, "gyvybes", id, _, _, "a") } else { remove_task(id) } return PLUGIN_HANDLED;}
Re: Hp/sec
Posted: 2012 Dec 30 19:06
by Giltinas
Code: Select all
#include <amxmodx>#include <amxmisc>#include <cstrike>#include <hamsandwich>#include <fun>#include <engine>#include <fakemeta> #define PLUGIN "Give hp"#define VERSION "1.0"#define AUTHOR "Giltinas"#define TASK_ID 997#define VIP ADMIN_LEVEL_H public plugin_init(){ register_plugin(PLUGIN, VERSION, AUTHOR) RegisterHam(Ham_Spawn, "player", "bacon_spawn", 1) } public bacon_spawn(id){ if(!is_user_alive(id)) return PLUGIN_HANDLED; if(get_user_flags(id) & VIP && is_user_alive(id)) { Give_Hp(id); } else if(is_user_alive(id)) { Give_All(id); } return PLUGIN_CONTINUE;} public Give_Hp(id){ set_user_health(id, get_user_health(id) +10) set_task(5.0, "Heal_VIP", id + TASK_ID)} public Give_All(id){ set_user_health(id, get_user_health(id) +5) set_task(5.0, "Heal_All", id + TASK_ID)} public Heal_VIP(id){ id -= TASK_ID new gyvybes gyvybes = get_user_health(id) if(is_user_alive(id)) { if(gyvybes < 200) { set_user_health(id, get_user_health(id) +10) set_task(5.0, "Heal_VIP", id + TASK_ID) } }} public Heal_All(id){ id -= TASK_ID new gyvybes gyvybes = get_user_health(id) if(is_user_alive(id)) { if(gyvybes < 200) { set_user_health(id, get_user_health(id) +5) set_task(5.0, "Heal_All", id + TASK_ID) } }}
Re: Hp/sec
Posted: 2012 Dec 30 19:38
by newb
Arba kitas varijantas su 1 tasku
Code: Select all
#include <amxmodx>#include <hamsandwich>#include <fun> #define VIP ADMIN_LEVEL_H#define VIPHP 10#define HP 5#define TIME 5.0 public plugin_init() { register_plugin("hp/sec", "1.3.3.8", "amxmodx.lt") register_event("HLTV", "eNewRound", "a", "1=0", "2=0")} public eNewRound() { remove_task(123) // removinam kad duotu vel po 5 sec, o ne random set_task(TIME, "hp", 123, _, _, "b")} public hp(id) { new players[32], num get_players(players, num, "a") for(new i, id; i < num; i++) { id = players[i] set_user_health(id, get_user_health(id) + (get_user_flags(id) & VIP ? VIPHP : HP)) }}
P.S. Pas mane nera hp limito ir tikriausei irasyti zaideju flagus i atskira vara butu geriau, kad nekviest funkcija kas 5 sec.
Re: Hp/sec
Posted: 2012 Dec 30 19:57
by Froza
Čia jau tarp tiek darbų nežinau kurį rinktis... Gal patartumėte dabar kurį darbą rinktis kuris prie csdm modo labiau tiktu? Man šito dalyko reikia CSDM modui jeigu yra skirtumas.
Giltinas padarė su 200hp kaip man reikėjo lyg mintis nuskaitęs.

Re: Hp/sec
Posted: 2012 Dec 30 21:11
by Giltinas
Nu mano lygt gerai veikia dar pats bandžiau ant savo serverio.
Re: Hp/sec
Posted: 2012 Dec 30 22:24
by Tetusis
Froza wrote:Čia jau tarp tiek darbų nežinau kurį rinktis... Gal patartumėte dabar kurį darbą rinktis kuris prie csdm modo labiau tiktu? Man šito dalyko reikia CSDM modui jeigu yra skirtumas.
Giltinas padarė su 200hp kaip man reikėjo lyg mintis nuskaitęs.

newb.