←  Prośby o modyfikacje silników/klas/perków

AMXX.pl: Support AMX Mod X i SourceMod

»

Perk
Skrzydla arch. dodac task

  • +
  • -
Gatki - zdjęcie Gatki 26.07.2015

Witam prosiłbym o przerobienie pluginu aby mozna bylo go uzywac co X sekund.

 

http://amxx.pl/index...attach_id=35520

Odpowiedz

  • +
  • -
klqs99 - zdjęcie klqs99 27.07.2015

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <codmod>
#include <fakemeta>
#include <engine>
#include <hamsandwich>
#include <fakemeta_util>

#define VERSION "1.0"
#define AUTHOR "author"

new ma_perk[33];
new player_b_blink[33];

#define DAMAGE 300.0 //Damage trzesienia
#define DAMAGE_INT 1.0 //Ilosc wzrostu damage przy dodaniu 1 pkt inteligencji
#define ODLEGLOSC 200.0 //odleglosc razenia trzesienia

#define nazwa "Skrzydla Archaniola"
#define opis "Masz zmniejszona grawitacje, kiedy podczas skoku uzyjesz go spadasz na ziemie i wywolujesz trzesienie"

public plugin_init() {
	register_plugin(nazwa, "1.0", "d0n tHe Pr0oo")
	
	cod_register_perk(nazwa, opis);	
	RegisterHam(Ham_Spawn, "player", "fwSpawn", 1);
	
}

public fwSpawn(id)
{
	if(ma_perk[id])
	{
		fm_set_user_gravity(id, 0.4);

	}
}


public cod_perk_used(id)
{
	if(!is_user_alive(id) || !ma_perk[id])
		return PLUGIN_CONTINUE;
	
	new flags = pev(id, pev_flags);
	if(!(flags & FL_ONGROUND) && halflife_time()-player_b_blink[id] <= X.0)
	{
		new Float:velocity[3];
		pev(id, pev_velocity, velocity);
		velocity[2] = -800.0
		set_pev(id, pev_velocity, velocity);
		TrzesienieZiemi(id);
	}	
	
	return PLUGIN_CONTINUE;
}

public cod_perk_enabled(id)
{
	ma_perk[id] = 1;
	player_b_blink[id] = floatround(halflife_time())
	fwSpawn(id);
}

public cod_perk_disabled(id)
{
	ma_perk[id] = 0;
}

public TrzesienieZiemi(id)
{
	message_begin(MSG_ONE,get_user_msgid("ScreenShake"),{0,0,0},id);
	write_short(7<<14);
	write_short(1<<13);
	write_short(1<<14);
	message_end();

	new entlist[33];
	new numfound = find_sphere_class(id, "player", ODLEGLOSC, entlist, 32);
	
	for (new i=0; i < numfound; i++)
	{		
		new pid = entlist[i];
		
		if (is_user_alive(pid) && get_user_team(id) != get_user_team(pid))
			cod_inflict_damage(id, pid, DAMAGE, DAMAGE_INT);
	}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/

47 linijka X


Użytkownik klqs99 edytował ten post 27.07.2015 14:41
Odpowiedz

  • +
  • -
Gatki - zdjęcie Gatki 27.07.2015

Po tej modyfikacjy perk w ogole nie dziala. :P

Odpowiedz

  • +
  • -
klqs99 - zdjęcie klqs99 27.07.2015

a to?

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <codmod>
#include <fakemeta>
#include <engine>
#include <hamsandwich>
#include <fakemeta_util>

#define VERSION "1.0"
#define AUTHOR "author"

new ma_perk[33];
new player_b_blink[33];

#define DAMAGE 300.0 //Damage trzesienia
#define DAMAGE_INT 1.0 //Ilosc wzrostu damage przy dodaniu 1 pkt inteligencji
#define ODLEGLOSC 200.0 //odleglosc razenia trzesienia

#define nazwa "Skrzydla Archaniola"
#define opis "Masz zmniejszona grawitacje, kiedy podczas skoku uzyjesz go spadasz na ziemie i wywolujesz trzesienie"

public plugin_init() {
	register_plugin(nazwa, "1.0", "d0n tHe Pr0oo")
	
	cod_register_perk(nazwa, opis);	
	RegisterHam(Ham_Spawn, "player", "fwSpawn", 1);
	
}

public fwSpawn(id)
{
	if(ma_perk[id])
	{
		fm_set_user_gravity(id, 0.4);

	}
}


public cod_perk_used(id)
{
	if(!is_user_alive(id) || !ma_perk[id])
		return PLUGIN_CONTINUE;
	
	new flags = pev(id, pev_flags);
	if(!(flags & FL_ONGROUND) && !(halflife_time()-player_b_blink[id] <= X.0))
	{
		new Float:velocity[3];
		pev(id, pev_velocity, velocity);
		velocity[2] = -800.0
		set_pev(id, pev_velocity, velocity);
		TrzesienieZiemi(id);
	}	
	
	return PLUGIN_CONTINUE;
}

public cod_perk_enabled(id)
{
	ma_perk[id] = 1;
	player_b_blink[id] = floatround(halflife_time())
	fwSpawn(id);
}

public cod_perk_disabled(id)
{
	ma_perk[id] = 0;
}

public TrzesienieZiemi(id)
{
	message_begin(MSG_ONE,get_user_msgid("ScreenShake"),{0,0,0},id);
	write_short(7<<14);
	write_short(1<<13);
	write_short(1<<14);
	message_end();

	new entlist[33];
	new numfound = find_sphere_class(id, "player", ODLEGLOSC, entlist, 32);
	
	for (new i=0; i < numfound; i++)
	{		
		new pid = entlist[i];
		
		if (is_user_alive(pid) && get_user_team(id) != get_user_team(pid))
			cod_inflict_damage(id, pid, DAMAGE, DAMAGE_INT);
	}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/
Odpowiedz