Evet çok mantıklı çünkü ak normalde armor ile 108 vuruyor tam emin değilim ama 140 görüyor örneğin.
Konu
(20-04-2025, 00:48)john80 Adlı Kullanıcıdan Alıntı: Bu seferde gövde, bacak kısmı vs. çalışmıyor değer yükselmiyor hep 0'da
Henüz elimde test sunucusu bulunmadığı için "compiled but not tested" demek zorunda kalıyorum hocam deneye deneye yapacağız. Buyrun bunu da bir deneyin
PHP Kod:
#include <amxmodx>
#include <hamsandwich>
#include <fakemeta>
#include <cstrike>
#define PLUGIN "/me Eklentisi"
#define VERSION "1.6"
#define AUTHOR "fernpasha"
#define HIT_HEAD 1
#define HIT_CHEST 2
#define HIT_STOMACH 3
#define HIT_LEFTLEG 6
#define HIT_RIGHTLEG 7
new g_iTotalDamage[33];
new g_iTotalHits[33];
new g_iHits_Head[33];
new g_iHits_Chest[33];
new g_iHits_Stomach[33];
new g_iHits_Legs[33];
new g_iLastHitgroup[33]; // TraceAttack -> TakeDamage köprüsü
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
register_clcmd("say /me", "cmd_show_me");
register_logevent("event_round_start", 2, "1=Round_Start");
RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack", 0);
RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage_Post", 1);
}
public event_round_start()
{
for (new i = 1; i <= 32; i++)
{
g_iTotalDamage[i] = 0;
g_iTotalHits[i] = 0;
g_iHits_Head[i] = 0;
g_iHits_Chest[i] = 0;
g_iHits_Stomach[i] = 0;
g_iHits_Legs[i] = 0;
g_iLastHitgroup[i] = 0;
}
}
public fw_TraceAttack(victim, attacker, Float:damage, Float:direction[3], tracehandle, hitgroup)
{
if (!is_user_connected(attacker) || !is_user_connected(victim)) return HAM_IGNORED;
if (get_user_team(attacker) == get_user_team(victim)) return HAM_IGNORED;
g_iLastHitgroup[attacker] = hitgroup;
return HAM_IGNORED;
}
public fw_TakeDamage_Post(victim, inflictor, attacker, Float:damage, damagebits)
{
if (!is_user_connected(attacker) || !is_user_connected(victim)) return;
if (get_user_team(attacker) == get_user_team(victim)) return;
g_iTotalDamage[attacker] += floatround(damage, floatround_floor);
if (damage >= 1.0)
{
g_iTotalHits[attacker]++;
switch (g_iLastHitgroup[attacker])
{
case HIT_HEAD:
g_iHits_Head[attacker]++;
case HIT_CHEST:
g_iHits_Chest[attacker]++;
case HIT_STOMACH:
g_iHits_Stomach[attacker]++;
case HIT_LEFTLEG, HIT_RIGHTLEG:
g_iHits_Legs[attacker]++;
}
}
g_iLastHitgroup[attacker] = 0;
}
public cmd_show_me(id)
{
if (!is_user_connected(id)) return PLUGIN_HANDLED;
new szName[32];
get_user_name(id, szName, charsmax(szName));
client_print(id, print_chat, "[Klan Ismi] %s, bu round toplam %d hasar verdin ve %d mermi isabet ettirdin.",
szName, g_iTotalDamage[id], g_iTotalHits[id]);
client_print(id, print_chat, "[Klan Ismi] Isabet bolgeleri: Kafa: %d | Göğüs: %d | Karin: %d | Bacak: %d",
g_iHits_Head[id], g_iHits_Chest[id], g_iHits_Stomach[id], g_iHits_Legs[id]);
return PLUGIN_HANDLED;
}
(20-04-2025, 00:52)john80 Adlı Kullanıcıdan Alıntı: Hasar hala tutarsız 81 vurduğum adama 105 gösteriyor. @"pFer"
Şöyle ufak birşey ekleyelim o zaman. Buyrun
PHP Kod:
#include <amxmodx>
#include <hamsandwich>
#include <fakemeta>
#include <cstrike>
#define PLUGIN "/me Eklentisi"
#define VERSION "1.6"
#define AUTHOR "fernpasha"
#define HIT_HEAD 1
#define HIT_CHEST 2
#define HIT_STOMACH 3
#define HIT_LEFTLEG 6
#define HIT_RIGHTLEG 7
new g_iTotalDamage[33];
new g_iTotalHits[33];
new g_iHits_Head[33];
new g_iHits_Chest[33];
new g_iHits_Stomach[33];
new g_iHits_Legs[33];
new g_iLastHitgroup[33]; // TraceAttack -> TakeDamage köprüsü
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
register_clcmd("say /me", "cmd_show_me");
register_logevent("event_round_start", 2, "1=Round_Start");
RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack", 0);
RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage_Post", 1);
}
public event_round_start()
{
for (new i = 1; i <= 32; i++)
{
g_iTotalDamage[i] = 0;
g_iTotalHits[i] = 0;
g_iHits_Head[i] = 0;
g_iHits_Chest[i] = 0;
g_iHits_Stomach[i] = 0;
g_iHits_Legs[i] = 0;
g_iLastHitgroup[i] = 0;
}
}
public fw_TraceAttack(victim, attacker, Float:damage, Float:direction[3], tracehandle, hitgroup)
{
if (!is_user_connected(attacker) || !is_user_connected(victim)) return HAM_IGNORED;
if (get_user_team(attacker) == get_user_team(victim)) return HAM_IGNORED;
g_iLastHitgroup[attacker] = hitgroup;
return HAM_IGNORED;
}
public fw_TakeDamage_Post(victim, inflictor, attacker, Float:damage, damagebits)
{
if (!is_user_connected(attacker) || !is_user_connected(victim)) return;
if (get_user_team(attacker) == get_user_team(victim)) return;
g_iTotalDamage[attacker] += floatround(damage, floatround_floor);
if (damage >= 1.0)
{
g_iTotalHits[attacker]++;
switch (g_iLastHitgroup[attacker])
{
case HIT_HEAD:
g_iHits_Head[attacker]++;
break;
case HIT_CHEST:
g_iHits_Chest[attacker]++;
break;
case HIT_STOMACH:
g_iHits_Stomach[attacker]++;
break;
case HIT_LEFTLEG, HIT_RIGHTLEG:
g_iHits_Legs[attacker]++;
break;
}
}
g_iLastHitgroup[attacker] = 0;
}
public cmd_show_me(id)
{
if (!is_user_connected(id)) return PLUGIN_HANDLED;
new szName[32];
get_user_name(id, szName, charsmax(szName));
client_print(id, print_chat, "[Klan Ismi] %s, bu round toplam %d hasar verdin ve %d mermi isabet ettirdin.",
szName, g_iTotalDamage[id], g_iTotalHits[id]);
client_print(id, print_chat, "[Klan Ismi] Isabet bolgeleri: Kafa: %d | Göğüs: %d | Karin: %d | Bacak: %d",
g_iHits_Head[id], g_iHits_Chest[id], g_iHits_Stomach[id], g_iHits_Legs[id]);
return PLUGIN_HANDLED;
}
evet ama amxx compiler sitelerinde deniyorum oradan da hata veriyor plugin.
AMX Mod X Compiler 1.10.0.5467
Copyright © 1997-2006 ITB CompuPhase
Copyright © 2004-2013 AMX Mod X Team
asdasd.sma(76) : error 002: only a single statement (or expression) can follow each "case"
asdasd.sma(76) : error 036: empty statement
asdasd.sma(77) : warning 217: loose indentation
asdasd.sma(77) : error 014: invalid statement; not in switch
asdasd.sma(77) : warning 215: expression has no effect
asdasd.sma(77) : error 001: expected token: ";", but found ":"
asdasd.sma(77) : error 029: invalid expression, assumed zero
asdasd.sma(77) : fatal error 107: too many error messages on one line
Compilation aborted.
6 Errors.
Could not locate output file compiled/asdasd.amx (compile failed).
AMX Mod X Compiler 1.10.0.5467
Copyright © 1997-2006 ITB CompuPhase
Copyright © 2004-2013 AMX Mod X Team
asdasd.sma(76) : error 002: only a single statement (or expression) can follow each "case"
asdasd.sma(76) : error 036: empty statement
asdasd.sma(77) : warning 217: loose indentation
asdasd.sma(77) : error 014: invalid statement; not in switch
asdasd.sma(77) : warning 215: expression has no effect
asdasd.sma(77) : error 001: expected token: ";", but found ":"
asdasd.sma(77) : error 029: invalid expression, assumed zero
asdasd.sma(77) : fatal error 107: too many error messages on one line
Compilation aborted.
6 Errors.
Could not locate output file compiled/asdasd.amx (compile failed).
Son Düzenleme: 20-04-2025, 01:21, Düzenleyen: john80.
(20-04-2025, 01:20)john80 Adlı Kullanıcıdan Alıntı: evet ama amxx compiler sitelerinde deniyorum oradan da hata veriyor plugin.
O zaman bunu deneyelim. Compiler hatası almayacaksınız.
CSDurağı: compiled but not tested
Amxmodx Compiler:compiled but not tested
PHP Kod:
#include <amxmodx>
#include <hamsandwich>
#include <fakemeta>
#include <cstrike>
#define PLUGIN "/me Eklentisi"
#define VERSION "1.6"
#define AUTHOR "fernpasha"
#define HIT_HEAD 1
#define HIT_CHEST 2
#define HIT_STOMACH 3
#define HIT_LEFTLEG 6
#define HIT_RIGHTLEG 7
new g_iTotalDamage[33];
new g_iTotalHits[33];
new g_iHits_Head[33];
new g_iHits_Chest[33];
new g_iHits_Stomach[33];
new g_iHits_Legs[33];
new g_iLastHitgroup[33]; // TraceAttack -> TakeDamage köprüsü
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
register_clcmd("say /me", "cmd_show_me");
register_logevent("event_round_start", 2, "1=Round_Start");
RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack", 0);
RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage_Post", 1);
}
public event_round_start()
{
for (new i = 1; i <= 32; i++)
{
g_iTotalDamage[i] = 0;
g_iTotalHits[i] = 0;
g_iHits_Head[i] = 0;
g_iHits_Chest[i] = 0;
g_iHits_Stomach[i] = 0;
g_iHits_Legs[i] = 0;
g_iLastHitgroup[i] = 0;
}
}
public fw_TraceAttack(victim, attacker, Float:damage, Float:direction[3], tracehandle, hitgroup)
{
if (!is_user_connected(attacker) || !is_user_connected(victim)) return HAM_IGNORED;
if (get_user_team(attacker) == get_user_team(victim)) return HAM_IGNORED;
g_iLastHitgroup[attacker] = hitgroup;
return HAM_IGNORED;
}
public fw_TakeDamage_Post(victim, inflictor, attacker, Float:damage, damagebits)
{
if (!is_user_connected(attacker) || !is_user_connected(victim)) return;
if (get_user_team(attacker) == get_user_team(victim)) return;
g_iTotalDamage[attacker] += floatround(damage, floatround_floor);
if (damage >= 1.0)
{
g_iTotalHits[attacker]++;
if (g_iLastHitgroup[attacker] == HIT_HEAD)
{
g_iHits_Head[attacker]++;
}
else if (g_iLastHitgroup[attacker] == HIT_CHEST)
{
g_iHits_Chest[attacker]++;
}
else if (g_iLastHitgroup[attacker] == HIT_STOMACH)
{
g_iHits_Stomach[attacker]++;
}
else if (g_iLastHitgroup[attacker] == HIT_LEFTLEG || g_iLastHitgroup[attacker] == HIT_RIGHTLEG)
{
g_iHits_Legs[attacker]++;
}
}
g_iLastHitgroup[attacker] = 0;
}
public cmd_show_me(id)
{
if (!is_user_connected(id)) return PLUGIN_HANDLED;
new szName[32];
get_user_name(id, szName, charsmax(szName));
client_print(id, print_chat, "[Klan Ismi] %s, bu round toplam %d hasar verdin ve %d mermi isabet ettirdin.",
szName, g_iTotalDamage[id], g_iTotalHits[id]);
client_print(id, print_chat, "[Klan Ismi] Isabet bolgeleri: Kafa: %d | Göğüs: %d | Karin: %d | Bacak: %d",
g_iHits_Head[id], g_iHits_Chest[id], g_iHits_Stomach[id], g_iHits_Legs[id]);
return PLUGIN_HANDLED;
}
Benzer Konular
Yorum
431
Okunma
08-05-2026, 01:06
Yorum
816
Okunma
11-04-2026, 12:30
)

