Welcome to our community

Be a part of something great, join today!

DeathMatch VIP [v1.1] [2014]

DecaK

New member
Plugin Info

DeathMatch V.I.P
v1.1
by DecaK
Thanks to N3u[T]r4L z'bot
---------------------------------------​

Zbog cega je ovaj plugin poseban?​

Ovo je jedan VIP Plugin koji ima nesto sto drugi nemaju, kao sto znate igraci se mnogo 'pale' na VIPa, ovo im omogucava da kada skupe odredjeni broj fragova(default 250), dobiju VIPa sve dok ne izadju sa servera.Plugin je napravljen na ovu foru jer mislim da ce igraci visiti tu po ceo dan samo da dobiju VIPa i da im ostane.Plugin nije prenatrpan, VIP sadrzi veci speed, veci gravity, bonus hp na svakom spawnu(default +15) i vip tag u scoreboardu.Dok igraci ne dobiju VIPa, tu je hud koji broji jos koliko im ubistva fali da dobiju VIPa.Sto je jako bitno, ta ubistva se mere fragovima.Bukvalno, kada igrac skupi 250 fragova u skoru, dobija VIPa.Nisam slikao, ali text izgleda ovako:
Code:
Kills for VIP: [I]<broj>[/I]

Cim ubiju nekog ili restartuju skor, <broj> se menja.Plugin pravi folder koji se nalazi u configs/ folderu, i zove se DM_Vip.Postoje i logovi koji loguju koji igrac je dobio VIPa, njegove informacije i vreme.U tom istom folderu postoji i fajl motd.txt u kom pisete opis VIP Plugina.VIP je stavljen na flag T(ADMIN_LEVEL_H).



Komande u chatu i u konzoli

say /vip - Otvara motd prozor sa vip infom.Podesavanja motd prozora u configs/DM_Vip/motd.txt

amx_givevip - Daje VIPa nekom igracu, dok ne izadje sa servera.Komandu mogu koristiti samo HEAD ADMINI.



Cvarovi​

Cvarove menjate u fajlu amxx.cfg ! Na kraju fajla su ispisani default cvarovi, samo ih promenite.Cvarovi:

dmvip_gravity 1/0 - VIP gravity upaljeno/ugaseno

dmvip_speed 1/0 - VIP speed upaljeno/ugaseno

dmvip_hp 1/0 - VIP bonus hp upaljeno/ugaseno

dmvip_bonushp <broj> - VIP bonus hp kolicina

dmvip_get_for_frags 1/0 - Igrac dobija VIPa za fragove upaljeno/ugaseno

dmvip_frags need 250 - Koliko je potrebno fragova za VIPa

dmvip_hud_brojac 1/0 - Hud Brojac jos koliko killova za vipa upaljen/ugasen

dmvip_viptag 1/0 - VIP Tag u scoreboardu upaljen/ugasen​


PLUGIN JE TESTIRAN I RADI PROVERENO BEZ PROBLEME I NE OBARA SERVER!!!​


U sledecoj verziji koja ce biti odradjena za par nedelja, ce biti puno dodataka i apsolutna kontrola nad svim.Uskoro izlazi i moj Special VIP ima daleko veci i jaci sistem od ovog.Sve bugove koje pronadjete, molim vas da ostavite u temi ili posaljite meni u inbox.Hvala![/code]

SMA:

Code:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <hamsandwich>
#include <engine>
#include <colorchat>

new const VIPFolder[] = "addons/amxmodx/configs/DM_Vip/"
new const Cvarovi[] = "addons/amxmodx/configs/DM_Vip/cvarovi.cfg"
new const Logovi[] = "addons/amxmodx/configs/DM_Vip/logovi.ini"
new const Motd[] = "addons/amxmodx/configs/DM_Vip/motd.txt"

enum
{
    SCOREATTRIB_ARG_PLAYERID = 1,
    SCOREATTRIB_ARG_FLAGS
};

enum ( <<= 1 )
{
    SCOREATTRIB_FLAG_NONE = 0,
    SCOREATTRIB_FLAG_DEAD = 1,
    SCOREATTRIB_FLAG_BOMB,
    SCOREATTRIB_FLAG_VIP
};

new cvar_gravity, cvar_hp, cvar_bonushp, cvar_speed, cvar_getvip, cvar_getvip_frags, cvar_hud, cvar_viptag;
new bool:ivip[33];
new SyncHudObj;

public plugin_init() {
	register_plugin("DeathMatch VIP", "1.0", "DecaK")
	register_clcmd("say /vip", "OpisVIP")
	RegisterHam(Ham_Spawn, "player", "spawnam")
	register_event("CurWeapon", "kur", "be", "1=1")
	register_message( get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib" );
	register_concmd("amx_givevip", "DajVipa", ADMIN_RCON, "<nick> - Daje igracu FreeVIPa dok se ne diskonektuje." )
	cvar_gravity = register_cvar("dmvip_gravity", "1")
	cvar_speed = register_cvar("dmvip_speed", "1")
	cvar_hp = register_cvar("dmvip_hp", "1")
	cvar_bonushp = register_cvar("dmvip_bonushp", "15")
	cvar_getvip = register_cvar("dmvip_get_for_frags", "1")
	cvar_getvip_frags = register_cvar("dmvip_frags_need", "250")
	cvar_hud = register_cvar("dmvip_hud_brojac", "1")
	cvar_viptag = register_cvar("dmvip_viptag", "1")
	SyncHudObj = CreateHudSyncObj();
	set_task(0.5, "ProveriBre")
}

public ProveriBre(id) {
	server_cmd("exec %s", Cvarovi)
	server_exec
}

public DajVipa(id) {
	if(!get_user_flags(id) & ADMIN_RCON) {
	return PLUGIN_HANDLED;
}
	new nik[33];
	read_argv(1, nik, charsmax(nik))
	new player = cmd_target(id, nik, CMDTARGET_ALLOW_SELF | CMDTARGET_NO_BOTS)
	if(!is_user_connected(player)) {
	client_print(id, print_console, "[DM-Vip] Nepostojaca komanda.")
}
	ivip[player] = true;
	new headnick[33];
	new playernick[33];
	get_user_name(id, headnick, 33);
	get_user_name(player, playernick, 33);
	ColorChat(0, RED, "^4[^3DM-Vip^4]^3 Head %s^1 je dao igracu ^3 %s^1 DM Vipa, do sledeceg izlaska sa servera.", headnick, playernick)
	ColorChat(player, RED, "^4[^3DM-Vip^4]^3 Head %s^1 ti je dao DM Vipa, do sledeceg izlaska sa servera.", headnick)
	return PLUGIN_HANDLED
}

public plugin_precache() {
	if(!dir_exists(VIPFolder)) {
	mkdir(VIPFolder)
}

	if(!file_exists(Cvarovi)) {
	write_file(Cvarovi, " ")
	write_file(Cvarovi, ";************************************************")
	write_file(Cvarovi, "*********; DM Vip 1.0 by DecaK")
	write_file(Cvarovi, "dmvip_gravity ^"1^" //Da li je upaljen VIP Gravity")
	write_file(Cvarovi, "dmvip_speed ^"1^" // Da li je upaljen VIP Speed")
	write_file(Cvarovi, "dmvip_hp ^"1^" // Da li upaljen VIP Spawn Bonus HP")
	write_file(Cvarovi, "dmvip_bonushp ^"15^" // Koliki je VIP Spawn Bonus HP")
	write_file(Cvarovi, "dmvip_getvip ^"1^" // Da li radi sistem za dobijanje vipa za fragove")
	write_file(Cvarovi, "dmvip_getvip_frags ^"250^" // Koliko mora fragova igrac da ima da bi dobio VIP-a")
	write_file(Cvarovi, "dmvip_hud_brojac ^"1^" // Da li je upaljen hud koji broji koliko je jos ostalo ubistva za vipa")
	write_file(Cvarovi, "dmvip_viptag ^"1^" // Da li pise VIP u scoreboardu?")
	write_file(Cvarovi, ";************************************************")
}

	if(!file_exists(Logovi)) {
	write_file(Logovi, ";Ovde ce se nalaziti logovi - koji igrac je dobio VIPa i kada")
}
	if(!file_exists(Motd)) {
	write_file(Motd, ";Ovde pisete opis vip plugina kada igrac otkuca /vip")
}
	server_cmd("exec %s", Cvarovi)
	server_exec()
	return PLUGIN_CONTINUE;
}

public OpisVIP(id) {
	show_motd(id, Motd, "Opis VIPA")
}

public kur(id) {
	if(ivip[id]) {
	set_user_maxspeed(id, get_user_maxspeed(id)+450.0)
}
	return PLUGIN_CONTINUE;
}

public spawnam(id) {
	if(get_user_frags(id) > get_pcvar_num(cvar_getvip_frags)) {
	if(get_pcvar_num(cvar_getvip) > 0) {
	new steam[32]
	new nik[32]
	new vreme[33]
	get_time("%d.%m - %H:%M", vreme, 33)
	get_user_authid(id, steam, 31)
	get_user_name(id, nik, 31)
	new tekst[128]
	formatex(tekst, 128, "Igrac %s je dobio Free Frag VIPa,  %s, njegov SteamID je %s",nik,vreme,steam) // pisemo sta znaci string text
	write_file(Logovi, tekst)
	ivip[id] = true;
}
	return PLUGIN_CONTINUE;
}
	if(ivip[id]) {
	if(get_pcvar_num(cvar_gravity) > 0) {
	set_user_gravity(id, get_user_gravity(id)-0.4)
}
	if(get_pcvar_num(cvar_speed) > 0) {
	set_user_maxspeed(id, get_user_maxspeed(id)+550.0)
}
	if(get_pcvar_num(cvar_hp) > 0) {
	set_user_health(id, get_user_health(id)+get_pcvar_num(cvar_bonushp))
}
}
	return PLUGIN_CONTINUE;
}

public MessageScoreAttrib( iMsgId, iDest, iReceiver )
{
    if( get_pcvar_num( cvar_viptag ) > 0 )
    {
        new iPlayer = get_msg_arg_int( SCOREATTRIB_ARG_PLAYERID );
        
        if( ivip[iPlayer] )
        {
            set_msg_arg_int( SCOREATTRIB_ARG_FLAGS, ARG_BYTE, SCOREATTRIB_FLAG_VIP );
        }
    }
} 

public client_connect(id) {
	ivip[id] = false;
	if(get_user_flags(id) & ADMIN_LEVEL_H) {
	ivip[id] = true;
	return PLUGIN_HANDLED;
}
	return PLUGIN_CONTINUE;
}  

public client_putinserver(id) {
	set_task(3.0, "HudBrojac", id)
}

public HudBrojac(id) {
	if(get_user_frags(id) > get_pcvar_num(cvar_getvip_frags)) {
	return PLUGIN_HANDLED;
}
	if(get_user_frags(id) == get_pcvar_num(cvar_getvip_frags)) {
	return PLUGIN_HANDLED;
}
	if(get_pcvar_num(cvar_hud) > 0) {
	new ostalo = get_pcvar_num(cvar_getvip_frags)-get_user_frags(id);
	set_task(0.1, "HudBrojac", id);
	set_hudmessage(255, 0, 0, 0.23, 0.5, 0, 2.0, 3.0)
	ShowSyncHudMsg(id, SyncHudObj, "Kills for VIP: %i",  ostalo)
}
	return PLUGIN_CONTINUE;
}
 

Attachments

Last edited:
Re: DeathMatch VIP [v1.1] [2014]

Hvala,hvala :) Bas mi je palo na pamet a nema nista tako pa sam mislio da ce biti korisno jer ce privlaciti igrace :)
 
Re: DeathMatch VIP [v1.1] [2014]

- Datoteku .amxx ubacuje moderator naknadno dok blagovremeno proveri vaš kôd i kompajluje ga lokalno jer članovima tehnički nije dozvoljen upload.
- Ukoliko želite da vaš izvorni kôd .sma ostane privatan pošaljite moderatoru PM.

Pozz
 
Re: DeathMatch VIP [v1.1] [2014]

@ZeN pa brate, ja nisam ni ubacivao, kalu mi je rekao da ubacim pa sam ubacio :S Izvini, moderator mi kaze ja uradim xD :D
 
Re: DeathMatch VIP [v1.1] [2014]

@ZeN pa brate, ja nisam ni ubacivao, kalu mi je rekao da ubacim pa sam ubacio :S Izvini, moderator mi kaze ja uradim xD :D

Odobren je plugin. Sutra ce biti uploadovan amxx. ;)

Poz
 
Last edited:
Re: DeathMatch VIP [v1.1] [2014]

Jedno te isto ako sam ja vec gledao plugin i rekao mu da ubaci .amxx fajl ali ajde dobro neka to Zen uploaduje ili sta vec
 
Re: DeathMatch VIP [v1.1] [2014]

Jedno te isto ako sam ja vec gledao plugin i rekao mu da ubaci .amxx fajl ali ajde dobro neka to Zen uploaduje ili sta vec

Mora moderator/smoderator/admin da ubaci jer on moze time da izmeni amxx... Ne kazem to licno prema DecaK-u nego opste...
Amxx sada mozete skinuti. :)

Poz :)
 
Re: DeathMatch VIP [v1.1] [2014]

Kolko ti puta pomognem i nikad da me u credits stavis. :(

Brisi ceka se odobrenje... Iz prvog posta.
 
Re: DeathMatch VIP [v1.1] [2014]

Pa rekoh posto je plugins sajt mozda je dozvoljen :) Skinut je svakako :)
 
Re: DeathMatch VIP [v1.1] [2014]

Cemu server_exec kada nisi otvorio zagrade. Ako neuneses parametre u funkciji, tj ova funkcija ih nema nez kako uopste oce da kompajluje.

Edit: Koristi cmd_access umesto provere flaga. -_-
 
Re: DeathMatch VIP [v1.1] [2014]

To ti je fix za bug, forica :D Desikac mi je pokazao :D Pogledaj njegove plugine, primetices to u svakom :)
 
Back
Top