Böyle deneyin, ayrıca konunuz çözülmeden çözüldü olarak bildirmeyin 3 tane aynı konudan açmışsınız.
Kod:
#pragma semicolon 1
#include <amxmodx>
#include <reapi>
new const serverTag[] = "xGame[TR] Clan";
enum _: Bools {
redbull,
togglered,
redbuy
};
enum _: CvarSet {
RSpeed,
RCost,
RHealth,
Float:RGravity
};
new iCvars[CvarSet], bool:iL_Bool[MAX_CLIENTS + 1][Bools], hardkomut, islem;
public plugin_init() {
register_plugin("Ac Kapat Redbull", "1.1", "suriyelikene");
register_clcmd("radio1", "@RedbullUse");
register_clcmd("say /redbull", "@RedbullUse");
register_clcmd("say .redbull", "@RedbullUse");
register_clcmd("say_team /redbull", "@RedbullUse");
RegisterHookChain(RG_CBasePlayer_Killed, "@PlayerKilled", .post = true);
RegisterHookChain(RG_CBasePlayer_Spawn, "@IsSpawn", .post = true);
bind_pcvar_num(create_cvar("redbull_fiyat", "-1"), iCvars[RCost]);
bind_pcvar_num(create_cvar("redbull_maxhiz", "700"), iCvars[RSpeed]);
bind_pcvar_num(create_cvar("redbull_maxhp", "150"), iCvars[RHealth]);
bind_pcvar_float(create_cvar("redbull_gravity", "0.5"), iCvars[RGravity]);
register_event("CurWeapon", "@CurWeapon", "be");
}
public plugin_natives() {
register_native("Hard_Komut", "native_Hard_Komut");
register_native("Hard_KomutAc", "native_Hard_KomutAc");
register_native("Hard_KomutKapat", "native_Hard_KomutKapat");
register_native("IslemKapat", "nIslemKapat");
register_native("IslemAc", "nIslemAc");
}
public native_Hard_Komut(id) {
return hardkomut;
}
public native_Hard_KomutAc(id) {
new bmOyuncular[32], bmSayi;
get_players(bmOyuncular, bmSayi, "a");
for (new i; i < bmSayi; i++) {
id = bmOyuncular[i];
set_entvar(id, var_maxspeed, 320.0);
set_entvar(id, var_gravity, 1.0);
remove_task(id + 1707);
iL_Bool[id][redbull] = false;
iL_Bool[id][togglered] = false;
}
hardkomut = true;
}
public nIslemKapat(id) {
new bmOyuncular[32], bmSayi;
get_players(bmOyuncular, bmSayi, "a");
for (new i; i < bmSayi; i++) {
id = bmOyuncular[i];
set_entvar(id, var_maxspeed, 320.0);
set_entvar(id, var_gravity, 1.0);
remove_task(id + 1707);
iL_Bool[id][redbull] = false;
iL_Bool[id][togglered] = false;
}
islem = true;
}
public nIslemAc(id) {
islem = false;
}
public native_Hard_KomutKapat(id) {
hardkomut = false;
}
@RedbullUse(const iPlayer) {
if (!is_user_alive(iPlayer)) {
client_print_color(iPlayer, iPlayer, "^4[^3%s^4] ^1Mantiken Yasamadigin Icin ^4Redbulla Erisim Kapalidir.", serverTag);
return PLUGIN_HANDLED;
}
static iNumT;
rg_initialize_player_counts(iNumT);
if (iNumT <= 1) {
client_print_color(iPlayer, iPlayer, "^4[^3%s^4] ^1Son Mahkum Oldugun Icin ^4Redbulla Erisim Kapalidir.", serverTag);
return PLUGIN_HANDLED;
}
if (hardkomut) {
client_print_color(iPlayer, iPlayer, "^4[^3%s^4] ^1Hard Komut Acik Oldugu Icin ^4Redbulla Erisim Kapalidir.", serverTag);
return PLUGIN_HANDLED;
}
if (islem) {
client_print_color(iPlayer, iPlayer, "^4[^3%s^4] ^1Redbull Kapali Oldugu Icin ^4Redbulla Erisim Kapalidir.", serverTag);
return PLUGIN_HANDLED;
}
if (!iL_Bool[iPlayer][redbuy]) {
if (get_member(iPlayer, m_iAccount) >= iCvars[RCost]) {
set_entvar(iPlayer, var_gravity, iCvars[RGravity]);
set_entvar(iPlayer, var_maxspeed, float(iCvars[RSpeed]));
set_task(1.0, "@AddHealth", iPlayer + 1707);
iL_Bool[iPlayer][redbull] = true;
iL_Bool[iPlayer][togglered] = true;
iL_Bool[iPlayer][redbuy] = true;
client_print_color(iPlayer, iPlayer, "^4[^3%s^4] ^1%d $^3 Karsiliginda ^4RedBull ^1Satin Aldiniz.", serverTag, iCvars[RCost]);
client_print_color(iPlayer, iPlayer, "^4[^3%s^4] ^1RedBull'u ^4'Z' ^3Tusuna Basarak ^4Acip, Kapatabilirsin.", serverTag);
}
} else {
if (!iL_Bool[iPlayer][togglered]) {
set_entvar(iPlayer, var_gravity, iCvars[RGravity]);
set_entvar(iPlayer, var_maxspeed, float(iCvars[RSpeed]));
set_task(1.0, "@AddHealth", iPlayer + 1707);
iL_Bool[iPlayer][redbull] = true;
iL_Bool[iPlayer][togglered] = true;
client_print_color(iPlayer, iPlayer, "^4[^3%s^4] ^1RedBull ^4Aktif Edildi!", serverTag);
} else {
remove_task(iPlayer + 1707);
set_entvar(iPlayer, var_maxspeed, 300.0);
set_entvar(iPlayer, var_gravity, 1.0);
iL_Bool[iPlayer][redbull] = false;
iL_Bool[iPlayer][togglered] = false;
client_print_color(iPlayer, iPlayer, "^4[^3%s^4] ^1RedBull ^4Devre Disi Birakildi!", serverTag);
}
}
return PLUGIN_HANDLED;
}
@AddHealth(const iTaskim) {
new iPlayer = iTaskim - 1707;
if (!is_user_alive(iPlayer) || !iL_Bool[iPlayer][redbull]) return;
if (get_entvar(iPlayer, var_health) < float(iCvars[RHealth])) {
set_entvar(iPlayer, var_health, Float:get_entvar(iPlayer, var_health) + 1.0);
}
set_entvar(iPlayer, var_maxspeed, float(iCvars[RSpeed]));
set_entvar(iPlayer, var_gravity, iCvars[RGravity]);
set_task(1.0, "@AddHealth", iPlayer + 1707);
}
@PlayerKilled(const iVictim, const iAttacker) {
static iNumT;
rg_initialize_player_counts(iNumT);
if (iNumT <= 1) {
for (new i = 1; i <= MaxClients; i++) {
if (is_user_alive(i)) {
set_entvar(i, var_maxspeed, 300.0);
set_entvar(i, var_gravity, 1.0);
iL_Bool[i][redbull] = false;
remove_task(i + 1707);
}
}
}
}
@IsSpawn(const iPlayer) {
if (!is_user_alive(iPlayer)) return;
if (task_exists(iPlayer + 1707)) remove_task(iPlayer + 1707);
iL_Bool[iPlayer][redbull] = false;
iL_Bool[iPlayer][togglered] = false;
}
public client_connect(iPlayer) {
iL_Bool[iPlayer][redbull] = false;
iL_Bool[iPlayer][togglered] = false;
iL_Bool[iPlayer][redbuy] = false;
}
public client_disconnected(iPlayer) {
iL_Bool[iPlayer][redbull] = false;
iL_Bool[iPlayer][togglered] = false;
iL_Bool[iPlayer][redbuy] = false;
if (task_exists(iPlayer + 1707)) remove_task(iPlayer + 1707);
}
@CurWeapon(const id) {
if (iL_Bool[id][togglered]) {
new Float:Speed;
get_entvar(id, var_maxspeed, Speed);
if (Speed < float(iCvars[RSpeed])) {
set_entvar(id, var_maxspeed, float(iCvars[RSpeed]));
}
set_entvar(id, var_gravity, iCvars[RGravity]);
return PLUGIN_HANDLED;
}
return PLUGIN_CONTINUE;
}