Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

EferenTM - zdjęcie

EferenTM

Rejestracja: 15.12.2013
Aktualnie: Nieaktywny
Poza forum Ostatnio: 18.01.2014 10:39
-----

Moje tematy

Paralizator (by me)

27.12.2013 18:00

opis.png

Plugin na paralizator do modyfikacji JailBreak stworzonej przez Cypis`'a.

Plugin dodaje wszystkim strażnikom (CT) zamiast noża Paralizator, którym mogą "zamrozić" więźnia (Terrorystę) na czas jego przeszukania.

Standardowo 10 sekund.

 

P.S Jest to mój 1 plugin więc proszę o wyrozumiałość.

inneinformacje.png

Pliki v_paralizator.mdl i v_paralizator2.mdl wrzucić do:

cstrike->models

 

Jestem autorem tego pluginu.

Kopiowanie jego kawałków lub całości zabronione.

 

Podziękowania dla:

- k4x4z5 za pomoc w napisaniu pluginu

- Zerko za pomoc w zablokowaniu akcji graczowi.

 

W razie problemów pisać tutaj lub na GG i poprawię.

 

download.png

[ROZWIĄZANE] Zamrożenie gracza, brak akcji

27.12.2013 14:26

Witam, 

mam kod paralizatora napisanego przeze mnie, który działa świetnie, lecz jest jeden problem.

Po uderzeniu paralizatorem gracza zamraża go (nie może się ruszać) lecz może atakować,

Chciałbym się dowiedzieć jaką funkcją mógłbym uniemożliwić graczowi wykonywanie akcji uderz,strzel itp.

 

Oto kawałek kodu:

if(wid == CSW_KNIFE && !CheckParaliz(this) && is_user_alive(this) && get_user_team(this) == 1)
		{
			set_hudmessage(0, 0, 255, 0.02, 0.23, 0, 6.0, 7.0);
			show_hudmessage(idattacker, "[Sparalizowales: %s]^n[Masz 10 sekund na przeszukanie go]", username);	
			g_iCzas[this] = 10;
			set_task(1.0, "Freeze", this, _, _, "a", 10);
			set_user_maxspeed(this, 0.1);
			set_user_rendering(this, kRenderFxGlowShell, 0, 0, 255, kRenderGlow, 60)
			SetParaliz(this);
			return HAM_SUPERCEDE
		}
	}
	return HAM_IGNORED;
}
public Freeze(this)
{
	set_hudmessage(0, 0, 255, 0.02, 0.23, 0, 6.0, 7.0);
	show_hudmessage(this, "[Zostales sparalizowany]^n[Pozostalo: %d sekund]", g_iCzas[this]);
	--g_iCzas[this]
	if(g_iCzas[this] <= 0)
	{
		remove_task(this);
		set_user_maxspeed(this, 0.0);
		set_user_rendering(this, kRenderFxNone, 0, 0, 0, kRenderNormal);
		RemoveParaliz(this);
	}
}

Pomóżcie, dajcie wskazówkę, nawet w dokumentacji nie mogłem znaleźć odpowiedniej funkcji.

Pozdrawiam Eferen.

Próba zablokowania akcji we własnym pluginie.

23.12.2013 13:21

Witajcie, to znowu ja i kolejny problem,

jeden problem pomógł mi rozwiązać FD_GODPL, lecz jest jeszcze drugi problem nad którym się męczę i nie potrafię nic wykminić.

 

Problem jest następujący:

Po uderzeniu paralizatorem gracza TT - zamraża go i tworzy na nim poświatę niebieską przez 10 sek. (gitara tak ma być) lecz w trakcie trwania tych 10 sekund nie wiem jak zablokować graczowi "sparaliżowanemu" wszystkie akcje, typu uderzenie, obrót kamery, podskoki, kucanie. Jak go po prostu unieruchomić na te 10 sekund.

 

Oto kod:

#include <amxmodx>
#include <fakemeta>
#include <fun>
#include <hamsandwich>
 
new g_iMaxPlayers;
 
#define IsPlayer(%1) (1 <= %1 <= g_iMaxPlayers)
 
new g_iCzas[33];
new Paraliz;
 
#define SetParaliz(%1)  (Paraliz |= (1<<(%1-1)))
#define CheckParaliz(%1) (Paraliz & (1<<(%1-1)))
#define RemoveParaliz(%1) (Paraliz &= ~(1<<(%1-1)))
 
public plugin_init()
{
	register_plugin("Paralizator", "1.0.0", "Eferen");
	RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage");
	RegisterHam(Ham_Item_Deploy, "weapon_knife", "Item_Deploy", 1);
	RegisterHam(Ham_Killed, "player", "Death", 1);
	register_event("CurWeapon", "CurWeapon_event", "be", "1=1");
	
	g_iMaxPlayers = get_maxplayers();
}
 
public CurWeapon_event(id)
{
	if(CheckParaliz(id))
	 	set_user_maxspeed(id, 0.1);
}
 
public Death(id, killer, shouldgib)
{
	if(task_exists(id))
	{
		RemoveParaliz(id);
	 	remove_task(id);
	}
}
 
public plugin_precache()
{
	precache_model("models/v_paralizator.mdl");
	precache_model("models/v_paralizator2.mdl");
}
 
public Item_Deploy(wpn)
{
	static iOwner;
	iOwner = pev(wpn, pev_owner);
	
	if(!IsPlayer(iOwner))
		return HAM_IGNORED;
	
	if(get_user_team(iOwner) == 2)
	{
		set_pev(iOwner, pev_viewmodel2, "models/v_paralizator.mdl");
		set_pev(iOwner, pev_weaponmodel2, "models/v_paralizator2.mdl");
	}
	return HAM_IGNORED
}
 
public client_disconnect(id)
	RemoveParaliz(id);
 
public fwTakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
	if(is_user_alive(idattacker) && get_user_team(idattacker) == 2)
	{
		new wid = get_user_weapon(idattacker);	// Id broni
		if(wid == CSW_KNIFE && !CheckParaliz(this) && is_user_alive(this) && get_user_team(this) == 1)
		{
			set_hudmessage(255, 0, 0, -1.0, -1.0, 0, 6.0, 7.0);
			show_hudmessage(idattacker, "Sparalizowales gracza^nMasz 10 sekund na przeszukanie go!");	
			g_iCzas[this] = 10;
			set_task(1.0, "zamroz", this, _, _, "a", 10);
			set_user_maxspeed(this, 0.1);
			set_user_rendering(this, kRenderFxGlowShell, 0, 0, 255, kRenderGlow, 60)
			SetParaliz(this);
			return HAM_SUPERCEDE
		}
	}
	return HAM_IGNORED;
}
 
public zamroz(this)
{
	set_hudmessage(255, 0, 0, -1.0, -1.0, 0, 6.0, 7.0);
	show_hudmessage(this, "Zostales sparalizowany^nPozostalo Ci jeszcze: %d sekund", g_iCzas[this]);
	--g_iCzas[this]
	if(g_iCzas[this] <= 0)
	{
		remove_task(this);
		set_user_maxspeed(this, 0.0);
		set_user_rendering(this, kRenderFxNone, 0, 0, 0, kRenderNormal);
		RemoveParaliz(this);
	}
}

Z góry dziękuję, za pomocną odpowiedź daje +

Własny Plugin nie działa.

22.12.2013 18:00

Witajcie,

ostatnio napisałem plugin pt.: Paralizator pod JB by Cypis`.

 

Mam następujący problem:

- nie zamraża po uderzeniu.

-paralizator jak i inne bronie CT nie zadają DMG przy czym TT zadają DMG.

 

Spoiler

[ROZWIĄZANE] Własny Plugin nie działa.

21.12.2013 16:24

Witajcie,

ostatnio napisałem plugin pt.: Paralizator pod JB by Cypis`.

 

Mam następujący problem:

- plugin nie za bardzo działa.

- nie wczytuje modelu Paralizatora.

- nie zamraża/odmraża gracza.

 

Oto kod:

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>

#define PLUGIN "Paralizator JB"
#define VERSION "1.0"
#define AUTHOR "Eferen"

new time_seconds = 10

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR);
	register_forward(FM_PlayerPreThink, "Paraliz");
	RegisterHam(Ham_Spawn, "player", "player_spawn", 1);
	register_clcmd("say /paralizator", "handle_say")
	register_touch("player","weapon_knife","paralizator");
}
 
public plugin_precache()
{
	precache_model("models/v_paralizator.mdl")
	precache_model("models/v_paralizator2.mdl")
}
 
public player_spawn(id)
{
	if(cs_get_user_team(id) == 0)
	{
	client_print(id,print_chat,"[Paralizator] Nie wybrales druzyny!")
	return PLUGIN_HANDLED
	}
	if(cs_get_user_team(id) == 1)
	{
	client_print(id,print_chat,"[Paralizator] Jestes w grupie wiezniow, ktorzy nie maja paralizatora!")
	return PLUGIN_HANDLED
	}
	if(cs_get_user_team(id) == 2)
	{
	return PLUGIN_CONTINUE
	}
	if(cs_get_user_team(id) == 3)
	{
	client_print(id,print_chat,"[Paralizator] Jestes w grupie obserwatorow, nie posiadasz paralizatora!")
	return PLUGIN_HANDLED
	}
}
public Paraliz(id)
{
	if(is_user_alive(id))
	{
		new id2, body, bron;
		get_user_aiming(id, id2, body, distance=50);
		cs_get_weapon_id(bron)
			if(cs_get_weapon_id(bron) == CSW_KNIFE
			{
				entity_set_model(bron, Model[])
			}
	}
}
public paralizator(id, weapon)
{    
 
    if(is_valid_ent(weapon)&& is_user_alive(id)) 
 
    {
 
                 client_print(id, print_center, "Sparalizowales Gracza! Masz 10 sek na przeszukanie go!");
	         set_user_rendering(id, fx=kRenderFxNone, r=0, g=0, b=255, render=kRenderNormal, amount=16)
	
    }
 
}
public odliczanie(id)

{
	--time_seconds;
		if(time_s > 1)
		{
			set_task(1.0, "odlicznie",id)
		}

		else

		{

			zamrozenie(id);

		}

}



public zamrozenie(id)
{
		if(is_user_alive(id) && _:cs_get_user_team(id)== 2)
		{
			set_user_maxspeed( id, 0.0 )
		}
}

Pomocy chłopaki.

 

P.S Dodam jeszcze, że to mój 2 plugin a 1 z modelami i zarmażaniem.