Problem wygląda tak że plugin losuje po 1 osobie z temu i przyznaje jej hp a za zabicie takiej osoby dostaje sie bonusy.
Chciałem zrobić by osoba która wylosuje plugin dostala nie tylko HP ale tez extra skok tylko 1. Kiedy dodałem kawałek kodu i wrzuciłem na serwer okazało się że wszyscy maja extra skok.
Pytanie brzmi jak zrobić by tylko wylosowana osoba z temu dostala 1 extra skok.
Dodatkowo chciałbm dodać prefix przed nickiem takiej osobie i by serwer informował kto został wylosowany.
Jak mam to zrobić?
Oto kod.
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <fakemeta>
#include <cstrike>
#include <hamsandwich>
#include <ColorChat>
new bool:mikolaj[33], skoki[33];
public plugin_init(){
register_plugin("Losowanie Mikolaja", "1.0", "Sniper Elite");
RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1);
register_logevent("PoczatekRundy", 2, "1=Round_Start");
register_event("DeathMsg", "Death", "ade");
register_forward(FM_CmdStart, "CmdStart");
register_cvar("santa_hp", "50");
register_cvar("santa_armor", "200");
register_cvar("santa_frags", "2");
register_cvar("santa_money", "500");
}
public Odrodzenie(id){
mikolaj[id] = false
cs_reset_user_model(id)
return PLUGIN_CONTINUE;
}
public PoczatekRundy(){
if(get_playersnum() >=4){
los_mikolaj_ct()
los_mikolaj_tt()
}
}
public Death()
{
new id = read_data(2);
new attacker = read_data(1);
if(!is_user_alive(attacker) || !is_user_connected(attacker))
return PLUGIN_CONTINUE;
if(get_playersnum() >= 4){
if(mikolaj[id]){
set_user_frags (attacker, get_user_frags(attacker) + get_cvar_num("santa_frags"))
cs_set_user_money (attacker,cs_get_user_money(attacker) + get_cvar_num("santa_money"))
}
}
return PLUGIN_CONTINUE;
}
public CmdStart(id, uc_handle){
new flags = pev(id, pev_flags);
if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id]>0){
--skoki[id];
new Float:velocity[3];
pev(id, pev_velocity,velocity);
velocity[2] = random_float(265.0,285.0);
set_pev(id,pev_velocity,velocity);
} else if(flags & FL_ONGROUND && skoki[id]!=-1){
skoki[id] = 1;
}
}
public los_mikolaj_ct(){
new players[32], num
get_players(players, num);
new rand = random_num(1,num)
if(cs_get_user_team(rand) == CS_TEAM_CT && is_user_alive(rand)){
ColorChat(rand, BLUE, "Jestes Srebnym Graczem!!");
//skoki[id]=1;
set_user_health (rand, get_user_health(rand) + get_cvar_num("santa_hp"))
set_user_armor(rand, get_cvar_num("santa_armor"))
mikolaj[rand] = true
}
else los_mikolaj_ct()
return PLUGIN_CONTINUE;
}
public los_mikolaj_tt(){
new players[32], num
get_players(players, num);
new rand = random_num(1,num)
if(cs_get_user_team(rand) == CS_TEAM_T && is_user_alive(rand)){
ColorChat(rand, RED, "Jestes Srebnym Graczem !!");
//skoki[id]=1;
set_user_health (rand, get_user_health(rand) + get_cvar_num("santa_hp"))
set_user_armor(rand, get_cvar_num("santa_armor"))
mikolaj[rand] = true
}
else los_mikolaj_tt()
return PLUGIN_CONTINUE;
}


Dodatki SourceMod




Temat jest zamknięty


losowanie.amxx






