←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Sprawdzenie jak długo trwa flash

  • +
  • -
d0naciak's Photo d0naciak 23.12.2015

Witam, mam pytanie: Jak sprawdzić jak długo (w sekundach) trwa oślepienie gracza? Skleciłem coś takiego, tylko nie mam pewności czy to zadziała:

/* Plugin generated by AMXX-Studio */
 
#include <amxmodx>
#include <amxmisc>
 
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"
 
 
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
 
register_event("ScreenFade", "ev_DostalFlasha", "be", "4=255", "5=255", "6=255", "7=200", "7=255");
}
 
public ev_DostalFlasha(id)
{
if(!is_user_alive(id))
return PLUGIN_CONTINUE;
 
new iCzasFlasha = floatround(float(read_data(2)) / float((1<<12))); //potem to wykorzystam :)
return PLUGIN_CONTINUE;
}
Quote

  • +
  • -
Asiap's Photo Asiap 24.12.2015

moze tak

#include <amxmodx>
#include <fakemeta>

new Float:g_fGameTime;

public plugin_init()
{
	register_forward(FM_Think, "GrenadeThink");
}

public GrenadeThink(iEnt)
{
	if(!pev_valid(iEnt))
	{
		return;
	}

	static szName[32];
	pev(iEnt, pev_classname, szName, 31);
	
	if(!equal(szName, "grenade"))
	{
		return;
	}

	static Float:fGameTime, Float:fDmgTime;
	fGameTime = get_gametime();
	pev(iEnt, pev_dmgtime, fDmgTime);

	if(fDmgTime > fGameTime)
	{
		return;
	}

	g_fGameTime = fGameTime;
}

dmgtime sprawdza czas 'utworzenia' granatu

pozniej nalezy sprawdzic czy dmgtime != get_gametime()

Quote