PHP Kod:
revive teammates
)

revive teammates
(25-02-2025, 18:06)hairless34 Adlı Kullanıcıdan Alıntı: Arkadaşlar selam, ölen takım arkadaşının yanına gidip ''E'' tuşu ile revlediğimiz plugini arıyorum yardımcı olur musunuz?Merhaba dener misiniz ölü oyuncunun yanına gidip 5 saniye e tuşuna basılı tuttuğunuzda canlandıracaktırPHP Kod:revive teammates
#include <amxmodx>
#include <cstrike>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <reapi>
#define MAX_PLAYERS 32
#define RESURRECT_RANGE 100.0
#define RESURRECT_TIME 5.0
new g_bIsResurrecting[MAX_PLAYERS + 1];
new Float:g_flResurrectStartTime[MAX_PLAYERS + 1];
new g_iResurrectTarget[MAX_PLAYERS + 1];
public plugin_init() {
register_plugin("Resurrect Teammate", "1.0", "mehmetreis");
register_forward(FM_PlayerPreThink, "OnPlayerPreThink");
}
public OnPlayerPreThink(id) {
if (!is_user_alive(id)) {
return;
}
new button = get_entvar(id, var_button);
new oldbutton = get_entvar(id, var_oldbuttons);
if (button & IN_USE && !(oldbutton & IN_USE)) {
StartResurrect(id);
} else if (!(button & IN_USE) && oldbutton & IN_USE) {
StopResurrect(id);
}
if (g_bIsResurrecting[id]) {
ProcessResurrect(id);
}
}
public StartResurrect(id) {
new target = FindDeadTeammate(id);
if (target) {
g_bIsResurrecting[id] = true;
g_flResurrectStartTime[id] = get_gametime();
g_iResurrectTarget[id] = target;
client_print(id, print_center, "Resurrecting... Hold E for 5 seconds.");
}
}
public StopResurrect(id) {
if (g_bIsResurrecting[id]) {
g_bIsResurrecting[id] = false;
g_flResurrectStartTime[id] = 0.0;
g_iResurrectTarget[id] = 0;
client_print(id, print_center, "Resurrection stopped.");
}
}
public ProcessResurrect(id) {
if (!g_bIsResurrecting[id]) {
return;
}
new target = g_iResurrectTarget[id];
if (!is_user_connected(target) || is_user_alive(target)) {
StopResurrect(id);
return;
}
if (get_gametime() - g_flResurrectStartTime[id] >= RESURRECT_TIME) {
ResurrectPlayer(id, target);
StopResurrect(id);
}
}
public ResurrectPlayer(id, target) {
if (!is_user_connected(target)) {
return;
}
ExecuteHamB(Ham_CS_RoundRespawn, target);
client_print(id, print_center, "Player has been resurrected!");
client_print(target, print_center, "You have been resurrected by a teammate!");
}
public FindDeadTeammate(id) {
new Float:origin[3];
get_entvar(id, var_origin, origin);
new team = get_entvar(id, var_team);
for (new i = 1; i <= MAX_PLAYERS; i++) {
if (!is_user_connected(i) || is_user_alive(i) || get_entvar(i, var_team) != team) {
continue;
}
new Float:targetOrigin[3];
get_entvar(i, var_origin, targetOrigin);
if (vector_distance(origin, targetOrigin) <= RESURRECT_RANGE) {
return i;
}
}
return 0;
}(25-02-2025, 18:57)ZebaniBey Adlı Kullanıcıdan Alıntı: SATIYORLARDI ONU EN SON
(25-02-2025, 19:01)mehmetxkonya Adlı Kullanıcıdan Alıntı:kardeşim eline sağlık. maalesef çalışmıyor. ölen oyuncunun üstünde E REVİVE tarzı bir şey yazıyor bir bar doluyor o tarz bir şey arıyorum. Tüm yabancı forumları alt üst ettim maalesef çalışmadı. türkçeleştirdim çalışmadı(25-02-2025, 18:06)hairless34 Adlı Kullanıcıdan Alıntı: Arkadaşlar selam, ölen takım arkadaşının yanına gidip ''E'' tuşu ile revlediğimiz plugini arıyorum yardımcı olur musunuz?Merhaba dener misiniz ölü oyuncunun yanına gidip 5 saniye e tuşuna basılı tuttuğunuzda canlandıracaktırPHP Kod:revive teammatesKod:#include <amxmodx>
#include <cstrike>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <reapi>
#define MAX_PLAYERS 32
#define RESURRECT_RANGE 100.0
#define RESURRECT_TIME 5.0
new g_bIsResurrecting[MAX_PLAYERS + 1];
new Float:g_flResurrectStartTime[MAX_PLAYERS + 1];
new g_iResurrectTarget[MAX_PLAYERS + 1];
public plugin_init() {
register_plugin("Resurrect Teammate", "1.0", "mehmetreis");
register_forward(FM_PlayerPreThink, "OnPlayerPreThink");
}
public OnPlayerPreThink(id) {
if (!is_user_alive(id)) {
return;
}
new button = get_entvar(id, var_button);
new oldbutton = get_entvar(id, var_oldbuttons);
if (button & IN_USE && !(oldbutton & IN_USE)) {
StartResurrect(id);
} else if (!(button & IN_USE) && oldbutton & IN_USE) {
StopResurrect(id);
}
if (g_bIsResurrecting[id]) {
ProcessResurrect(id);
}
}
public StartResurrect(id) {
new target = FindDeadTeammate(id);
if (target) {
g_bIsResurrecting[id] = true;
g_flResurrectStartTime[id] = get_gametime();
g_iResurrectTarget[id] = target;
client_print(id, print_center, "Resurrecting... Hold E for 5 seconds.");
}
}
public StopResurrect(id) {
if (g_bIsResurrecting[id]) {
g_bIsResurrecting[id] = false;
g_flResurrectStartTime[id] = 0.0;
g_iResurrectTarget[id] = 0;
client_print(id, print_center, "Resurrection stopped.");
}
}
public ProcessResurrect(id) {
if (!g_bIsResurrecting[id]) {
return;
}
new target = g_iResurrectTarget[id];
if (!is_user_connected(target) || is_user_alive(target)) {
StopResurrect(id);
return;
}
if (get_gametime() - g_flResurrectStartTime[id] >= RESURRECT_TIME) {
ResurrectPlayer(id, target);
StopResurrect(id);
}
}
public ResurrectPlayer(id, target) {
if (!is_user_connected(target)) {
return;
}
ExecuteHamB(Ham_CS_RoundRespawn, target);
client_print(id, print_center, "Player has been resurrected!");
client_print(target, print_center, "You have been resurrected by a teammate!");
}
public FindDeadTeammate(id) {
new Float:origin[3];
get_entvar(id, var_origin, origin);
new team = get_entvar(id, var_team);
for (new i = 1; i <= MAX_PLAYERS; i++) {
if (!is_user_connected(i) || is_user_alive(i) || get_entvar(i, var_team) != team) {
continue;
}
new Float:targetOrigin[3];
get_entvar(i, var_origin, targetOrigin);
if (vector_distance(origin, targetOrigin) <= RESURRECT_RANGE) {
return i;
}
}
return 0;
}
(25-02-2025, 19:16)hairless34 Adlı Kullanıcıdan Alıntı:Dediğin şekilde ayarladım zor bir plugin tekrar dener misin ?(25-02-2025, 18:57)ZebaniBey Adlı Kullanıcıdan Alıntı: SATIYORLARDI ONU EN SON(25-02-2025, 19:01)mehmetxkonya Adlı Kullanıcıdan Alıntı: Merhaba dener misiniz ölü oyuncunun yanına gidip 5 saniye e tuşuna basılı tuttuğunuzda canlandıracaktırkardeşim eline sağlık. maalesef çalışmıyor. ölen oyuncunun üstünde E REVİVE tarzı bir şey yazıyor bir bar doluyor o tarz bir şey arıyorum. Tüm yabancı forumları alt üst ettim maalesef çalışmadı. türkçeleştirdim çalışmadıKod:#include <amxmodx>
#include <cstrike>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <reapi>
#define MAX_PLAYERS 32
#define RESURRECT_RANGE 100.0
#define RESURRECT_TIME 5.0
new g_bIsResurrecting[MAX_PLAYERS + 1];
new Float:g_flResurrectStartTime[MAX_PLAYERS + 1];
new g_iResurrectTarget[MAX_PLAYERS + 1];
public plugin_init() {
register_plugin("Resurrect Teammate", "1.0", "mehmetreis");
register_forward(FM_PlayerPreThink, "OnPlayerPreThink");
}
public OnPlayerPreThink(id) {
if (!is_user_alive(id)) {
return;
}
new button = get_entvar(id, var_button);
new oldbutton = get_entvar(id, var_oldbuttons);
if (button & IN_USE && !(oldbutton & IN_USE)) {
StartResurrect(id);
} else if (!(button & IN_USE) && oldbutton & IN_USE) {
StopResurrect(id);
}
if (g_bIsResurrecting[id]) {
ProcessResurrect(id);
}
}
public StartResurrect(id) {
new target = FindDeadTeammate(id);
if (target) {
g_bIsResurrecting[id] = true;
g_flResurrectStartTime[id] = get_gametime();
g_iResurrectTarget[id] = target;
client_print(id, print_center, "Resurrecting... Hold E for 5 seconds.");
}
}
public StopResurrect(id) {
if (g_bIsResurrecting[id]) {
g_bIsResurrecting[id] = false;
g_flResurrectStartTime[id] = 0.0;
g_iResurrectTarget[id] = 0;
client_print(id, print_center, "Resurrection stopped.");
}
}
public ProcessResurrect(id) {
if (!g_bIsResurrecting[id]) {
return;
}
new target = g_iResurrectTarget[id];
if (!is_user_connected(target) || is_user_alive(target)) {
StopResurrect(id);
return;
}
if (get_gametime() - g_flResurrectStartTime[id] >= RESURRECT_TIME) {
ResurrectPlayer(id, target);
StopResurrect(id);
}
}
public ResurrectPlayer(id, target) {
if (!is_user_connected(target)) {
return;
}
ExecuteHamB(Ham_CS_RoundRespawn, target);
client_print(id, print_center, "Player has been resurrected!");
client_print(target, print_center, "You have been resurrected by a teammate!");
}
public FindDeadTeammate(id) {
new Float:origin[3];
get_entvar(id, var_origin, origin);
new team = get_entvar(id, var_team);
for (new i = 1; i <= MAX_PLAYERS; i++) {
if (!is_user_connected(i) || is_user_alive(i) || get_entvar(i, var_team) != team) {
continue;
}
new Float:targetOrigin[3];
get_entvar(i, var_origin, targetOrigin);
if (vector_distance(origin, targetOrigin) <= RESURRECT_RANGE) {
return i;
}
}
return 0;
}
#include <amxmodx>
#include <cstrike>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <reapi>
#include <fun>
#define MAX_PLAYERS 32
#define RESURRECT_RANGE 100.0
#define RESURRECT_TIME 5.0
new g_bIsResurrecting[MAX_PLAYERS + 1];
new Float:g_flResurrectStartTime[MAX_PLAYERS + 1];
new g_iResurrectTarget[MAX_PLAYERS + 1];
public plugin_init() {
register_plugin("Resurrect Teammate", "1.0", "YourName");
register_forward(FM_PlayerPreThink, "OnPlayerPreThink");
}
public OnPlayerPreThink(id) {
if (!is_user_alive(id)) {
return;
}
new button = get_entvar(id, var_button);
new oldbutton = get_entvar(id, var_oldbuttons);
if (button & IN_USE && !(oldbutton & IN_USE)) {
StartResurrect(id);
} else if (!(button & IN_USE) && oldbutton & IN_USE) {
StopResurrect(id);
}
if (g_bIsResurrecting[id]) {
ProcessResurrect(id);
}
}
public StartResurrect(id) {
new target = FindDeadTeammate(id);
if (target) {
g_bIsResurrecting[id] = true;
g_flResurrectStartTime[id] = get_gametime();
g_iResurrectTarget[id] = target;
// HUD mesajı göster
set_hudmessage(0, 255, 0, -1.0, 0.3, 0, 6.0, 1.0);
show_hudmessage(id, "E REVIVE - Hold E to resurrect");
}
}
public StopResurrect(id) {
if (g_bIsResurrecting[id]) {
g_bIsResurrecting[id] = false;
g_flResurrectStartTime[id] = 0.0;
g_iResurrectTarget[id] = 0;
// HUD mesajını temizlemenin en iyi yolu boş bir mesaj göstermektir.
set_hudmessage(0, 0, 0, -1.0, 0.3, 0, 0.1, 0.2);
show_hudmessage(id, " ");
client_print(id, print_center, "Resurrection stopped.");
}
}
public ProcessResurrect(id) {
if (!g_bIsResurrecting[id]) {
return;
}
new target = g_iResurrectTarget[id];
if (!is_user_connected(target) || is_user_alive(target)) {
StopResurrect(id);
return;
}
if (get_gametime() - g_flResurrectStartTime[id] >= RESURRECT_TIME) {
ResurrectPlayer(id, target);
StopResurrect(id);
}
}
public ResurrectPlayer(id, target) {
if (!is_user_connected(target)) {
return;
}
ExecuteHamB(Ham_CS_RoundRespawn, target);
client_print(id, print_center, "Player has been resurrected!");
client_print(target, print_center, "You have been resurrected by a teammate!");
}
public FindDeadTeammate(id) {
new Float:origin[3];
get_entvar(id, var_origin, origin);
new team = get_entvar(id, var_team);
for (new i = 1; i <= MAX_PLAYERS; i++) {
if (!is_user_connected(i) || is_user_alive(i) || get_entvar(i, var_team) != team) {
continue;
}
new Float:targetOrigin[3];
get_entvar(i, var_origin, targetOrigin);
if (vector_distance(origin, targetOrigin) <= RESURRECT_RANGE) {
return i;
}
}
return 0;
}(25-02-2025, 19:37)mehmetxkonya Adlı Kullanıcıdan Alıntı:Eline emeğine sağlık. Yapay zeka pluginine benzemiş(25-02-2025, 19:16)hairless34 Adlı Kullanıcıdan Alıntı: kardeşim eline sağlık. maalesef çalışmıyor. ölen oyuncunun üstünde E REVİVE tarzı bir şey yazıyor bir bar doluyor o tarz bir şey arıyorum. Tüm yabancı forumları alt üst ettim maalesef çalışmadı. türkçeleştirdim çalışmadıDediğin şekilde ayarladım zor bir plugin tekrar dener misin ?Kod:#include <amxmodx>
#include <cstrike>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <reapi>
#include <fun>
#define MAX_PLAYERS 32
#define RESURRECT_RANGE 100.0
#define RESURRECT_TIME 5.0
new g_bIsResurrecting[MAX_PLAYERS + 1];
new Float:g_flResurrectStartTime[MAX_PLAYERS + 1];
new g_iResurrectTarget[MAX_PLAYERS + 1];
public plugin_init() {
register_plugin("Resurrect Teammate", "1.0", "YourName");
register_forward(FM_PlayerPreThink, "OnPlayerPreThink");
}
public OnPlayerPreThink(id) {
if (!is_user_alive(id)) {
return;
}
new button = get_entvar(id, var_button);
new oldbutton = get_entvar(id, var_oldbuttons);
if (button & IN_USE && !(oldbutton & IN_USE)) {
StartResurrect(id);
} else if (!(button & IN_USE) && oldbutton & IN_USE) {
StopResurrect(id);
}
if (g_bIsResurrecting[id]) {
ProcessResurrect(id);
}
}
public StartResurrect(id) {
new target = FindDeadTeammate(id);
if (target) {
g_bIsResurrecting[id] = true;
g_flResurrectStartTime[id] = get_gametime();
g_iResurrectTarget[id] = target;
// HUD mesajı göster
set_hudmessage(0, 255, 0, -1.0, 0.3, 0, 6.0, 1.0);
show_hudmessage(id, "E REVIVE - Hold E to resurrect");
}
}
public StopResurrect(id) {
if (g_bIsResurrecting[id]) {
g_bIsResurrecting[id] = false;
g_flResurrectStartTime[id] = 0.0;
g_iResurrectTarget[id] = 0;
// HUD mesajını temizlemenin en iyi yolu boş bir mesaj göstermektir.
set_hudmessage(0, 0, 0, -1.0, 0.3, 0, 0.1, 0.2);
show_hudmessage(id, " ");
client_print(id, print_center, "Resurrection stopped.");
}
}
public ProcessResurrect(id) {
if (!g_bIsResurrecting[id]) {
return;
}
new target = g_iResurrectTarget[id];
if (!is_user_connected(target) || is_user_alive(target)) {
StopResurrect(id);
return;
}
if (get_gametime() - g_flResurrectStartTime[id] >= RESURRECT_TIME) {
ResurrectPlayer(id, target);
StopResurrect(id);
}
}
public ResurrectPlayer(id, target) {
if (!is_user_connected(target)) {
return;
}
ExecuteHamB(Ham_CS_RoundRespawn, target);
client_print(id, print_center, "Player has been resurrected!");
client_print(target, print_center, "You have been resurrected by a teammate!");
}
public FindDeadTeammate(id) {
new Float:origin[3];
get_entvar(id, var_origin, origin);
new team = get_entvar(id, var_team);
for (new i = 1; i <= MAX_PLAYERS; i++) {
if (!is_user_connected(i) || is_user_alive(i) || get_entvar(i, var_team) != team) {
continue;
}
new Float:targetOrigin[3];
get_entvar(i, var_origin, targetOrigin);
if (vector_distance(origin, targetOrigin) <= RESURRECT_RANGE) {
return i;
}
}
return 0;
}
benim istediğimi sanırım diğer arkadaş anladı. ses dosyaları SPR dosyaları olan kuralları olan ibr plugin