←  Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

Nowy Plugin
mp_freezetime dla vipa

  • +
  • -
ImSpY - zdjęcie ImSpY 17.09.2012

Po zmianie speed'u gracza (set_user_maxspeed) na starcie rundy(event HLTV)/spawnie bez małego zabezpieczenia gracz może sobie swobodnie biegać jak trwa freezetime.

HLTV nie jest eventem startu rundy.
Może swobodnie biegać, o ile prędkość jest źle ustawiana, np. eventem CurWeapon, który nie służy do ustawiania prędkości.
Jeszcze niedawno sam o tym nie wiedziałem, więc znam ten ból.

BTW. Jest to możliwe do uzyskania bez większego wysiłku.
Czy istnieje taki plugin? Tak.


Starałem się napisać to najprościej jak się da (z event HLTV) :D Coraz częściej myśle żeby nie pisać opisu tylko dać kod pokazujący to i owo :) Niemniej jednak event HLTV jest wywoływany podczas startu rundy :)
Czasami da się "źle ustawianie" wykorzystać w całkiem ciekawych celach :))
(23.09.2012 15:55):
Temat został wydzielony z działu AMX Mod X → Pytania

Witam czy istnieje plugin ktory daje vip'om mp_freezetime ustalane cvarem ??


Użytkownik ImSpY edytował ten post 17.09.2012 21:37
Odpowiedz

  • +
  • -
Supryk - zdjęcie Supryk 18.09.2012

a pomoże ktoś ??
Odpowiedz

  • +
  • -
Supryk - zdjęcie Supryk 19.09.2012

ref
Odpowiedz

  • +
  • -
Supryk - zdjęcie Supryk 20.09.2012

ref
Odpowiedz

TheGrzegorz - zdjęcie TheGrzegorz 21.09.2012

Nie wiem czy istnieje taki plugin ,ale pewnie w .sma Vipa dało by się zrobić ;)
Odpowiedz

  • +
  • -
glut - zdjęcie glut 21.09.2012

Jeżeli dobrze rozumiem to chodzi Ci o to aby Vip miał FreezeTime np. przez 5 sek po rozpoczęciu gry ??

jeżeli tak to zrób

przy spawnie

dostaje

set_user_maxspeed (id,0.1)


i stworzyć task że po 5 sek ma speeda bo to wyżej go unieruchamia

tu masz przykład zastosowania na flagę T

jeżeli bd miał problem daj sma dodam ci to :D

#include <amxmodx>
#include <fun>

#define PLUGIN "Spped"
#define VERSION "1.0"
#define AUTHOR "glut"


public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_logevent("Round_Start",2,"1=Round_Start");
}
public Round_Start()
{
for (new id=1; id < 33; id++)
{
if(is_user_alive(id) && get_user_flags(id) & ADMIN_LEVEL_H)
{
set_user_maxspeed (id,0.1)
set_task(5.0,"zmien_speeda",id,_,_,"a",1)
}
}
}
public zmien_speeda(id)
{
set_user_maxspeed(id,-1.0)
}
Odpowiedz

  • +
  • -
Supryk - zdjęcie Supryk 21.09.2012

vip mial miec freeztime ustalany cvarem mniejszy od reszty graczy
@up
dzięki za chęci
Odpowiedz

  • +
  • -
glut - zdjęcie glut 21.09.2012

To proszę

cvar do amxx.cfg

ft_vipa "3"

wtedy Vip ma FT na 3 sek :)

#include <amxmodx>
#include <fun>

#define PLUGIN "Spped"
#define VERSION "1.0"
#define AUTHOR "glut"

new ft_vipa

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_logevent("Round_Start",2,"1=Round_Start");

ft_vipa = register_cvar("ft_vipa","3")
}
public Round_Start()
{
for (new id=1; id < 33; id++)
{
if(is_user_alive(id) && get_user_flags(id) & ADMIN_LEVEL_H)
{
set_user_maxspeed (id,0.1)
set_task(get_pcvar_float(ft_vipa),"zmien_speeda",id,_,_,"a",1)
}
}
}
public zmien_speeda(id)
{
set_user_maxspeed(id,-1.0)
}
Odpowiedz

  • +
  • -
Supryk - zdjęcie Supryk 21.09.2012

dddzieki wielkie zaraz sprawdzę
Odpowiedz

AztekHQS - zdjęcie AztekHQS 21.09.2012

register_logevent("Round_Start",2,"1=Round_Start")

round_start jest po freezetime ...
Odpowiedz

  • +
  • -
glut - zdjęcie glut 22.09.2012

Tak Wiem ale on chciał mieć FreezeTime dla vipa osobny więc zrobiłem :)

Nw czy wszyscy gracze mają freezetime czy tylko Vip :)

@ Jeżeli dla wszystkich to niech zrobi tak :D

Wyłączy Freezetime na serwie

wrzuci ten plugin

#include <amxmodx>
#include <fun>

#define PLUGIN "Spped"
#define VERSION "1.0"
#define AUTHOR "glut"

new ft_vipa;
new ft_gracza;

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	register_logevent("Round_Start",2,"1=Round_Start");
	
	ft_vipa = register_cvar("ft_vipa","3")
	
	ft_gracza = register_cvar("ft_gracza","5")
}
public Round_Start()
{
	for (new id=1; id < 33; id++)
	{
		if(is_user_alive(id))
		{
			if(get_user_flags(id) & ADMIN_LEVEL_H)
			{
				set_user_maxspeed (id,0.1)
				set_task(get_pcvar_float(ft_vipa),"zmien_speeda",id,_,_,"a",1)
			}
			else
			{
				set_user_maxspeed (id,0.1)
				set_task(get_pcvar_float(ft_gracza),"zmien_speeda_gracza",id,_,_,"a",1)
			}
		}
	}
}
public zmien_speeda(id)
{
	set_user_maxspeed(id,-1.0)
}
public zmien_speeda_gracza(id)
{
	set_user_maxspeed(id,-1.0)
}

i niech wpisze cvary

ft_vipa "3" // czas ft vipa
ft_gracza "5" // czas ft gracza

Użytkownik glut1997 edytował ten post 22.09.2012 07:09
Odpowiedz

AztekHQS - zdjęcie AztekHQS 22.09.2012

#include <amxmodx>
#include <hamsandwich>
#include <fun>

#define VIP ADMIN_LEVEL_H

public plugin_init() {
register_plugin("VIP FreezeTime", "1.0", "AztekHQS")

register_cvar("amx_vip_ft", "5")

RegisterHam(Ham_Spawn, "player", "Resp", 1)
}

public Resp(id) {
if(!is_user_alive(id) || !(get_user_flags(id) & VIP)) return PLUGIN_CONTINUE

set_user_maxspeed(id, 0.1)
set_task(get_cvar_float("amx_vip_ft"), "Zmien", id)

return PLUGIN_CONTINUE
}

public Zmien(id) set_user_maxspeed(id, 250.0)


Cvar:
amx_vip_ft "5" // czas freezetime vipa

Użytkownik AztekHQS edytował ten post 22.09.2012 11:50
Odpowiedz

Gość_21977_* 23.09.2012

Freezetime trzeba całkowicie zablokować, ten domyślny, i napisać własny, ustalając osobne czasy dla vipów oraz reszty.
Powyższy plugin nie ma eventu zmiany prędkości, więc śmiem obstawiać, że także nie działa.

set_user_maxspeed(id, 250.0)
Nie każda broń ma prędkość 250.
Odpowiedz