Terörist Takımından tek kişi her el 1 kere !canazalt yazarak CT'nin canını "CFG" üzerinden belirlenen kredi miktarı ve can miktarı ile azaltabilir .
Bu benim sourcemodda sıfırdan kodladığım ilk eklenti oldukça basit bir kod satırları var algoritma bilgisi olan kişiler kolaylıkla kodların yapısını çözebilir bu nedenle benim gibi sourcemoda yeni başlamış kişiler kodları inceleyerek bir başlangıç yapabilirler . (Eklenti çalışır durumda fakat kod da eksik - fazla olabilir)
Bu benim sourcemodda sıfırdan kodladığım ilk eklenti oldukça basit bir kod satırları var algoritma bilgisi olan kişiler kolaylıkla kodların yapısını çözebilir bu nedenle benim gibi sourcemoda yeni başlamış kişiler kodları inceleyerek bir başlangıç yapabilirler . (Eklenti çalışır durumda fakat kod da eksik - fazla olabilir)
PHP Kod :
#include <sourcemod>
#include <sdktools>
#include <store>
#pragma tabsize 0
bool Yapildi = false;
ConVar KrediMiktari, AzalicakCan;
public Plugin myinfo =
{
name = "CT Can Azalt",
author = "akosetr",
description = "CT krediyle can azaltma",
version = "1.0",
url = "https://steamcommunity.com/id/akosetr"
}
public void OnPluginStart()
{
RegConsoleCmd("sm_canazalt", Ct_Hp);
KrediMiktari = CreateConVar("akose_kredi_deger", "300", "Can Azaltmak İçin Kredi Miktarı");
AzalicakCan = CreateConVar("akose_canazalt_deger", "50", "CT Can Azalma Miktarı");
HookEvent("round_end", Round_Bitis);
AutoExecConfig(true, "CT_canazalt");
}
public Action Ct_Hp(int client, int args)
{
int can = AzalicakCan.IntValue;
int kredial = KrediMiktari.IntValue;
if(Yapildi == false) {
if(Store_GetClientCredits(client) >= kredial)
{
//can azaltma
for (int i = 1; i <= MaxClients; i++)
{
if(i && IsClientInGame(i) && IsClientConnected(i) && !IsFakeClient(i))
{
if(GetClientTeam(i) == 3)
{
SetEntityHealth(i, can);
}
}
}
//kredi azaltma
Store_SetClientCredits(client, Store_GetClientCredits(client) - GetConVarInt(KrediMiktari));
//kredi azaltma bildiri
new String:nick[32];
GetClientName(client, nick, 32);
PrintToChatAll("\x03 \x03%s \x04CT'nin canını \x07Kredi Karşılığında azalttı.", nick);
Yapildi = true;
}
else
{
PrintToChat(client, "\x07 \x10CT'nin Canını Azaltmak için Krediniz Yetmemektedir. \x10Mevcut Krediniz: \x02%d",Store_GetClientCredits(client));
}
}
else
{
PrintToChat(client, "\x10 \x03Bu round zaten CT'nin Canı Azaltıldı.");
}
return Plugin_Handled;
}
public Round_Bitis(Handle:event, const String:name[], bool:dontBroadcast)
{
Yapildi = false;
}