Counter-Strike 1.6
CS1.BG | DUST2 NOSHTA GARMI [RANKED PLAY] #1
45.144.155.113:27015
de_dust2
Играчи: 30/32
de_dust2
Counter-Strike 1.6
Cs-PlovdiV.com - Aim Attack 93.123.16.4:27022 aim_aztec Играчи: 0/16

Помощ за плъгин който презарежда куршумите при изтрел в главата

Ако имате затруднения при изработката/преработката на даден плъгин - пишете тук, ще се опитаме да ви помогнем!
Аватар
Hurricane
Извън линия
Потребител
Потребител
Мнения: 192
Регистриран на: 04 Юни 2022, 21:18
Се отблагодари: 17 пъти
Получена благодарност: 71 пъти

Помощ за плъгин който презарежда куршумите при изтрел в главата

Мнение от Hurricane » 15 Авг 2023, 22:31

Някой може ли да ми обясни защо този плъгин се компилира но не се активира ( bad file ) идеята на плъгина е да презареди куршумите ако последния изстрел е бил в главата. За първи път от 7 години отворих редактора :tooth: :tooth:

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>
#include <dodfun>

#define BULLETS_FOR_RELOADING 10
#define ACTIVE_WEAPON CSW_AWP

new const PLUGIN[] = "Bullet Spawn"
new const VERSION[] = "1.0"
new const AUTHOR[] = "Hurricane"


public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR);
	register_event("DeathMsg", "eventMSG", "a");
}

public eventMSG()
{
	new iKiller = read_data(1);
	new hs = read_data(3);
	
	new iKiller_Weapon = get_user_weapon(iKiller);
	new iKiller_Bullets = dod_get_user_ammo(iKiller, iKiller_Weapon);
	
	if(hs | is_user_connected(iKiller) | is_user_alive(iKiller) | iKiller_Weapon ==  ACTIVE_WEAPON | iKiller_Bullets == 0)
	{
		dod_set_user_ammo(iKiller, iKiller_Weapon, BULLETS_FOR_RELOADING);
	}
	
	else
	
	{
		return PLUGIN_HANDLED;
	}
	
	

}

Аватар
WaLkZ
Извън линия
Администратор
Администратор
Мнения: 799
Регистриран на: 05 Окт 2016, 21:13
Местоположение: Варна
Се отблагодари: 75 пъти
Получена благодарност: 227 пъти
Обратна връзка:

Re: Помощ за плъгин който презарежда куршумите при изтрел в главата

Мнение от WaLkZ » 15 Авг 2023, 22:49

Така като гледам е за DOD, а не за cs.

Аватар
Hurricane
Извън линия
Потребител
Потребител
Мнения: 192
Регистриран на: 04 Юни 2022, 21:18
Се отблагодари: 17 пъти
Получена благодарност: 71 пъти

Re: Помощ за плъгин който презарежда куршумите при изтрел в главата

Мнение от Hurricane » 15 Авг 2023, 23:32

Да схванах, пренаписах кода и до тука всичко добре!
Но как мога да проверя количеството куршуми във пълнителя и евентуално как мога да го заредя.

Код за потвърждение: Избери целия код

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <cstrike>

#define ACTIVE_WEAPON CSW_AWP

new const PLUGIN[] = "Happy Bullet"
new const VERSION[] = "1.0"
new const AUTHOR[] = "Hurricane"



public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR);
	register_event("DeathMsg" ,"ev_DeathMsg", "a");
}

public ev_DeathMsg()
{
	new iKiller = read_data(1);
	new HS = read_data(3);
	new clip, ammo
	
	new iKiller_Weapon = get_user_weapon(iKiller);
	new iKiller_Bullets = get_user_ammo(iKiller, iKiller_Weapon, clip, ammo);
	
	if(HS)
	{
		if(is_user_connected(iKiller) | is_user_alive(iKiller))
		{
			if(iKiller_Weapon == ACTIVE_WEAPON)
			{
				if(ammo == 0 )
				{
					set_hudmessage(255, 0, 0, -1.0, -1.0, 0, 6.0, 3.0)
					show_hudmessage(iKiller, "Dit is slechts een test, de plugin werkt !")
					
				}
				
			}
		}
	}
	
	return PLUGIN_HANDLED;
}
Единствения проблем е че не зарежда пълнителя, а худ съобщението си се показва, тоест отчита си добре че последния куршум от пълнителя беше с хс


Код за потвърждение: Избери целия код

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <cstrike>


#define ACTIVE_WEAPON CSW_AWP

new const PLUGIN[] = "Happy Bullet"
new const VERSION[] = "1.0"
new const AUTHOR[] = "Hurricane"



public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR);
	register_event("DeathMsg" ,"ev_DeathMsg", "a");
}

public ev_DeathMsg()
{
	new iKiller = read_data(1);
	new HS = read_data(3);
	new clip, ammo
	
	new iKiller_Weapon = get_user_weapon(iKiller);
	new iKiller_Connected = is_user_connected(iKiller);
	new iKiller_Alive = is_user_alive(iKiller)
	
	get_user_ammo(iKiller, iKiller_Weapon, clip, ammo);
	
	if(HS)
	{
		if(iKiller_Connected | iKiller_Alive )
		{
			if( iKiller_Weapon == ACTIVE_WEAPON)
			{
				if( clip <= 1 )
				{
					set_hudmessage(0, 0, 255, 0.0, -1.0, 0, 6.0, 3.0)
					show_hudmessage(iKiller, "Just try someting !")
					
					cs_set_weapon_ammo(iKiller_Weapon, 10)
					
				}
			}
			
			return PLUGIN_HANDLED;
		}
	}
	
	return PLUGIN_HANDLED;

}

Аватар
TryAgain
Извън линия
Потребител
Потребител
Мнения: 182
Регистриран на: 25 Яну 2017, 16:59
Се отблагодари: 1 път
Получена благодарност: 26 пъти

Re: Помощ за плъгин който презарежда куршумите при изтрел в главата

Мнение от TryAgain » 16 Авг 2023, 09:43

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <cstrike>
#include <engine>

#define ACTIVE_WEAPON CSW_AWP

new const PLUGIN[] = "Happy Bullet"
new const VERSION[] = "1.0"
new const AUTHOR[] = "Hurricane"

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR);
	register_event("DeathMsg" ,"ev_DeathMsg", "a");
}

public ev_DeathMsg()
{
	new iKiller = read_data(1);
	new HS = read_data(3);
	new clip, ammo
	
	new iKiller_Weapon = get_user_weapon(iKiller);
	get_user_ammo(iKiller, iKiller_Weapon, clip, ammo);
	
	if(HS)
	{
		if(is_user_connected(iKiller) | is_user_alive(iKiller))
		{
			if(iKiller_Weapon == ACTIVE_WEAPON)
			{
				if( clip <= 1 )
				{
					set_hudmessage(255, 0, 0, -1.0, -1.0, 0, 6.0, 3.0)
					show_hudmessage(iKiller, "Dit is slechts een test, de plugin werkt !")
					cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_awp", iKiller), 10)
				}
				
			}
		}
	}
	
	return PLUGIN_HANDLED;
}

Аватар
Radeon
Извън линия
Потребител
Потребител
Мнения: 143
Регистриран на: 04 Апр 2021, 11:30
Се отблагодари: 2 пъти
Получена благодарност: 34 пъти
Обратна връзка:

Re: Помощ за плъгин който презарежда куршумите при изтрел в главата

Мнение от Radeon » 16 Авг 2023, 10:15

Ти в условието си поставил при хеадшот да попълва пълнителя с патрони. Защо трябва да проверяваш дали оръжието е активно в момента. И защо да проверява колко патрона имаш, нали искаш при HS веднага да напълни пълнителя ?

Код за потвърждение: Избери целия код

if( iKiller_Weapon == ACTIVE_WEAPON)
			{
				if( clip <= 1 )
Според мен трябва за всяко оръжие да има проверка. Примерно дали е awp дали е galil и т.н. , за да не му даваш винаги едни и същи патрони, което ще доведе до това че на awp може да дадеш 30 патрона.

Код за потвърждение: Избери целия код

if(HS)
	{
			if( user_has_weapon( id, CSW_AK47))
			{ 
				cs_set_weapon_ammo( find_ent_by_owner( -1, "weapon_ak47", id ), 30 );
			}
			
			if( user_has_weapon( id, CSW_DEAGLE))
        		{ 	
				cs_set_weapon_ammo( find_ent_by_owner( -1, "weapon_deagle", id ), 7 );
			}
	}
	 
Също така кода който ползваш дава патроните след убийство в главата . А ти си написал че искаш след последния патрон в главата, което не винаги е убийство. Така че ползвай това за да не е при убийство, a при damage.

Код за потвърждение: Избери целия код

public client_damage(iAttacker,iVictim,iDamage,iWeaponID,iPlace,iTA)
{
	if(iAttacker && iVictim && iAttacker != iVictim)
	{
		
		if(iPlace == HIT_HEAD)
		{
		} 
		

Аватар
Hurricane
Извън линия
Потребител
Потребител
Мнения: 192
Регистриран на: 04 Юни 2022, 21:18
Се отблагодари: 17 пъти
Получена благодарност: 71 пъти

Re: Помощ за плъгин който презарежда куршумите при изтрел в главата

Мнение от Hurricane » 16 Авг 2023, 12:43

Radeon написа: 16 Авг 2023, 10:15 Ти в условието си поставил при хеадшот да попълва пълнителя с патрони. Защо трябва да проверяваш дали оръжието е активно в момента. И защо да проверява колко патрона имаш, нали искаш при HS веднага да напълни пълнителя ?
Не, идеята е ако играчат е остнал с един патрон, и ако успе да убие някого с изтрел в главата да му презареди патроните.
Проверката е за да работи плъгина с авп единствено, или да моше да се променя.

Тоест играча е направил HS, играча е направил това хс с авп, играча е направил HS то с последния патрон

Сега си работи плъгина както исках, благодаря ви :) :o

Заключено
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Помощ в скриптирането”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 гост