Furien Random Player Savior [Update 02.02.2014]

Pluginuri facute de utilizatorii forumului eXtream.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

User avatar
Adventx
Membru, skill +4
Membru, skill +4
Posts: 1785
Joined: 17 Sep 2013, 21:44
Detinator Steam: Da
Reputatie: Fost moderator ajutator
Has thanked: 128 times
Been thanked: 142 times
Contact:

20 Jan 2014, 20:52

Descriere: Acesta este un plugin pentru Modul Furien, acesta alege un player Random care primeste 1HE, 255 HP, Defuse Kit si Glow, mai pe scurt acesta plugin ofera aceste abilitati in momentul cand Furienii trebue sa planteze Bomba, aveti si un Cvar de unde setati dupa cit timp sa fie ales playerul, setati acest cvar atunci cand furienii trebue sa planteze Bomba si gata :D Scuzati ca poate nu am explicat bine, cred ca ati inteles :)

Descarcare: GirlShare

Nume: Furien: Random Player Savior
Versiune: 1.2
Link oficial: http://www.extreamcs.com/forum

Sursa:
| Afiseaza codul
[code]
/* Plugin generated by AMXX-Studio */

/*
   Credite:
   
      cyby -  este ideea lui, am vazuto la el pe server :)
      C0sm1n - register cvar
      NicutaMM | Cstrike - thanks for Update
*/

#include <amxmodx>
#include <cstrike>
#include <fakemeta_util>
#include <hamsandwich>

#pragma semicolon 1


new const PLUGIN[] = "Furien: Random Player Savior";
new const VERSION[] = "1.2";
new const AUTHOR[] = "Adventx";

new bool: HaveDefuseKit[33];

new pcvar_time, CvarHP, CvarAP;

public plugin_init()
{
   register_plugin(PLUGIN, VERSION, AUTHOR);
   
   pcvar_time = register_cvar("random_time","30.0");
   CvarHP = register_cvar("savivor_hp","255");
   CvarAP = register_cvar("savivor_ap", "255");
   
   register_logevent("RoundStart", 2, "1=Round_Start");
   RegisterHam(Ham_Spawn, "player", "hamPlayerSpawnPost", true );
}

public RoundStart(id)
{
   set_task(get_pcvar_float(pcvar_time), "RandomPlayer", id);
}

public hamPlayerSpawnPost(id)
{
   fm_set_user_rendering(id);
   
   if(HaveDefuseKit[id])
   {
      
      HaveDefuseKit[id] = false;
      cs_set_user_defuse(id, 0);   
   }
}

public RandomPlayer()
{
   new iPlayers[32], iNum;
   get_players(iPlayers, iNum, "c");

   new iRandomPlayer = iPlayers[random_num(0, iNum -1)];

   if(is_user_alive(iRandomPlayer) && get_user_team(iRandomPlayer) == 2 )
   {
      ChatColor(0, "!g[AntiFurien] !t%s !n was chosen savior Christmas, he gets !g1 HE Grenade, %d HP, %d AP !nand !gDefuse Kit", get_name(iRandomPlayer), CvarHP, CvarAP);
      
      fm_set_user_health(iRandomPlayer, get_pcvar_num( CvarHP ) );
      fm_set_user_armor(iRandomPlayer, get_pcvar_num( CvarAP ) );
      fm_give_item(iRandomPlayer, "weapon_hegrenade");
      
      HaveDefuseKit[iRandomPlayer] = true;
      cs_set_user_defuse(iRandomPlayer, 1);
      
      fm_set_user_rendering(iRandomPlayer, kRenderFxGlowShell, 0,255,255, kRenderGlow, 25);
   }
}

stock get_name( id )
{
   new name[32];
   get_user_name(id, name, sizeof (name) -1);
   
   return name;
}

stock ChatColor(const id, const input[], any:...)
{
        new count = 1, players[32];
        static msg[191];
        vformat(msg, 190, input, 3);
       
        replace_all(msg, 190, "!g", "^4"); // Green Color
        replace_all(msg, 190, "!n", "^1"); // Default Color
        replace_all(msg, 190, "!t", "^3"); // Team Color
        replace_all(msg, 190, "!t2", "^0"); // Team2 Color
       
        if (id) players[0] = id; else get_players(players, count, "ch");
        {
                for (new i = 0; i < count; i++)
                {
                        if (is_user_connected(players))
                        {
                                message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players);
                                write_byte(players);
                                write_string(msg);
                                message_end();
                        }
                }
        }
}
[/code]


Instalare:
1. Fisierul random_player_savior.sma il puneti in addons/amxmodx/scripting
2. Fisierul random_player_savior.amxx il puneti in addons/amxmodx/plugins
3. Intrati in fisierul addons/amxmodx/configs/plugins.ini si adaugati la urma:

Code: Select all

random_player_savior.amxx
Cvar-uri (se adauga in fisierul amxmodx\configs\amxx.cfg):
  • random_time 30.0 - dupa cit timp sa fie ales Playerul Random
Comenzi administrative (se tasteaza in consola si trebuie sa fiti administrator):
  • - Nu necesita
Comenzi publice (se tasteaza in joc prin apasarea tastei Y):
  • - Nu necesita
Module necesare (se sterge ; din fata modulului de mai jos; acestea le gasiti in fisierul amxmodx\configs\modules.ini):
- amxmodx
- cstrike
- fakemeta
- hamsandwich
- fun

Imagini:
| Afiseaza codul
Image
Image
Image
Image
Credite:
*Thanks cyby pentru fixare bug cu Glow ;)
*Thanks C0sm1n - Register cvar float
*Thanks NicutaMM | Cstrike - thanks for Update
Last edited by Adventx on 08 Jul 2014, 23:53, edited 1 time in total.
RoyalServer 2
Cosmin
Fost moderator
Fost moderator
Posts: 9362
Joined: 06 Jul 2013, 22:08
Detinator Steam: Da
Detinator server CS: Nu
Reputatie: Fost eXtream Mod
Fost Scripter eXtreamCS
Nume anterior: scosmynnnn
Has thanked: 492 times
Been thanked: 547 times

20 Jan 2014, 21:04

Bun,un fel de salvatorul craciunului,dar e diferit.
P.S Tu lasi la orice credite? :))

P.S2 Mai era o varianta,te foloseai de libraria csx, #include < csx >
Faci publicu-l asa:
public bomb_planting(planter) {
//cod
}
Cand incearca sa planteze bomba sa ia playerul random,sunt mai multe variante poti face si cu event..
Last edited by Cosmin on 20 Jan 2014, 21:16, edited 1 time in total.
User avatar
Adventx
Membru, skill +4
Membru, skill +4
Posts: 1785
Joined: 17 Sep 2013, 21:44
Detinator Steam: Da
Reputatie: Fost moderator ajutator
Has thanked: 128 times
Been thanked: 142 times
Contact:

20 Jan 2014, 21:14

scosmynnnn wrote:Bun,un fel de salvatorul craciunului,dar e diferit.
P.S Tu lasi la orice credite? :))
Mersi :P , numai ca asta se face Salvatorul Craciunului cand Furienii Planteaza Bomba, un fel ca AntiFurienii sa aiba sanse sa cistige runda :)

Oricum nu este ideea mea, este ideea lui cyby :P
munir
Membru eXtream
Membru eXtream
Posts: 3193
Joined: 30 Aug 2012, 22:16
Detinator Steam: Da
CS Status: Fost scripter
Detinator server CS: Nu
SteamID: -
Reputatie: Fost super moderator
Restrictie schimbare nume
Nume anterior: falseq, cruyff
Location: Bucuresti
Has thanked: 342 times
Been thanked: 571 times
Contact:

20 Jan 2014, 22:28

Code: Select all

public RoundStart(id)
{
   set_task(get_pcvar_float(pcvar_time), "RandomPlayer", id);
}
Total gresit. Parcurge playerii, apoi in task pune indexul playeriilor.

Code: Select all

public RoundStart()
{
   new iplayers[ 32 ], inum;
   get_players( iplayers, inum, "c" );

   for( new i = 0; i < inum; i++ )
   {
           set_task(get_pcvar_float(pcvar_time), "RandomPlayer", iplayers[ i ] );
   }
}
In felul asta trimiti taskul pentru fiecare player de pe server.
Retras
User avatar
KronoS eXtream
Fost administrator
Fost administrator
Posts: 4378
Joined: 02 Apr 2009, 19:18
Detinator Steam: Da
Reputatie: Fost administrator
Fost detinator Zombie-Land.eXtream.Ro
Contribuitor
Fost Scripter eXtreamCS
Dezvoltator al listei de seriozitate eXtreamCS
Location: Bucharest
Has thanked: 551 times
Been thanked: 820 times
Contact:

21 Jan 2014, 00:28

RoundStart este un event global, deci nu are parametrii (id).Trebuie sa parcurgi toti jucatorii (vezi ce ti-a dat cruyff).
La apelarea eventului Ham_Spawn trebuie sa verifici daca jucatorul este in viata deoarece acesta nu este executat doar la spawn-ul unui jucator.

Ca optimizare ai putea trece

Code: Select all

new const PLUGIN[] = "Furien: Random Player Savior";
new const VERSION[] = "1.2";
new const AUTHOR[] = "Adventx";
in define-uri pentru ca desi variabilele alea sunt declarate constante, ele tot mananca memorie.
Nu efectuez tranzactii pe mess, skype etc. Aveti grija la indivizii care se dau drept mine!
Nu mai ofer suport asa ca nu imi mai trimiteti mesaje in legatura cu asta!


Zombie Plague Shade 1.2-debug1 [with Item Limiter] (12 September 2015) - Bombardier Branch
User avatar
Adventx
Membru, skill +4
Membru, skill +4
Posts: 1785
Joined: 17 Sep 2013, 21:44
Detinator Steam: Da
Reputatie: Fost moderator ajutator
Has thanked: 128 times
Been thanked: 142 times
Contact:

21 Jan 2014, 13:24

KronoS # GG wrote:RoundStart este un event global, deci nu are parametrii (id).Trebuie sa parcurgi toti jucatorii (vezi ce ti-a dat cruyff).
La apelarea eventului Ham_Spawn trebuie sa verifici daca jucatorul este in viata deoarece acesta nu este executat doar la spawn-ul unui jucator.

Ca optimizare ai putea trece

Code: Select all

new const PLUGIN[] = "Furien: Random Player Savior";
new const VERSION[] = "1.2";
new const AUTHOR[] = "Adventx";
in define-uri pentru ca desi variabilele alea sunt declarate constante, ele tot mananca memorie.
Mersi KronoS # GG, o sa tin cont de ce mi-ai spus ^:)^
User avatar
Adventx
Membru, skill +4
Membru, skill +4
Posts: 1785
Joined: 17 Sep 2013, 21:44
Detinator Steam: Da
Reputatie: Fost moderator ajutator
Has thanked: 128 times
Been thanked: 142 times
Contact:

21 Jan 2014, 13:24

cruyff wrote:

Code: Select all

public RoundStart(id)
{
   set_task(get_pcvar_float(pcvar_time), "RandomPlayer", id);
}
Total gresit. Parcurge playerii, apoi in task pune indexul playeriilor.

Code: Select all

public RoundStart()
{
   new iplayers[ 32 ], inum;
   get_players( iplayers, inum, "c" );

   for( new i = 0; i < inum; i++ )
   {
           set_task(get_pcvar_float(pcvar_time), "RandomPlayer", iplayers[ i ] );
   }
}
In felul asta trimiti taskul pentru fiecare player de pe server.
Mersi!
Cosmin
Fost moderator
Fost moderator
Posts: 9362
Joined: 06 Jul 2013, 22:08
Detinator Steam: Da
Detinator server CS: Nu
Reputatie: Fost eXtream Mod
Fost Scripter eXtreamCS
Nume anterior: scosmynnnn
Has thanked: 492 times
Been thanked: 547 times

21 Jan 2014, 15:51

Nici eu nu am vazut ca in logevent nu a parcurs playerii si in spawn nu a verificat daca este in viata,scuze.Scuze :P
P.S Man amxx studio nu merge modificat in asa fel incat sa numai scrie cu #define ci cu new const ? ma refer la inregistrarea pluginului.
User avatar
DaNNe.
Fost moderator
Fost moderator
Posts: 2811
Joined: 08 Nov 2013, 20:43
Detinator Steam: Da
CS Status: Activitate scăzută
SteamID: /id/FurienMaster
Reputatie: Nick anterior: DnD. Gold, Emrys
0.5/3
Fost moderator ajutator
Fost Membru Club eXtreamCS (doua luni)
Has thanked: 244 times
Been thanked: 129 times
Contact:

30 Jan 2014, 16:47

Pluginul e destul de frumos. Succes mai departe!!!
Dar...

Code: Select all

   cyby -  este ideea lui,
am vazuto la el pe server :)
- Copiati, copiati!
User avatar
Adventx
Membru, skill +4
Membru, skill +4
Posts: 1785
Joined: 17 Sep 2013, 21:44
Detinator Steam: Da
Reputatie: Fost moderator ajutator
Has thanked: 128 times
Been thanked: 142 times
Contact:

30 Jan 2014, 17:23

DaNNe. wrote:Pluginul e destul de frumos. Succes mai departe!!!
Dar...

Code: Select all

   cyby -  este ideea lui,
am vazuto la el pe server :)
- Copiati, copiati!
cyby mi-a dat voie sa fac public pluginul!
In rest ce nu iti place? :-w
User avatar
S3ekEr^
Utilizator neserios (tepar)
Utilizator neserios (tepar)
Posts: 3475
Joined: 06 Dec 2009, 12:47
Detinator Steam: Nu
Reputatie: Nume anterior: The Seeker , Reptyle
Fost Scripter
Fost super moderator
Utilizator neserios ( tepar )
Has thanked: 117 times
Been thanked: 329 times

30 Jan 2014, 23:37

Chaos a avut prima data aceasta idee, la pluginul meu am lasat creditele reale nu visele astea din 2012-2013 care ati aparut :)
User avatar
cyby
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 1777
Joined: 16 Jul 2011, 21:46
Detinator Steam: Da
Detinator server CS: Da
Reputatie: Scripter eXtreamCS
Fost Moderator ajutator
Has thanked: 146 times
Been thanked: 396 times

31 Jan 2014, 02:59

S3ekEr^ wrote:Chaos a avut prima data aceasta idee, la pluginul meu am lasat creditele reale nu visele astea din 2012-2013 care ati aparut :)
A avut-o, bine zis. Ii multumim lui Chaos ca a avut ideea cu functia random, salut.
93.114.82.17:27015 - Monster Invasion CO-OP Mod
Post Reply

Return to “Pluginuri eXtream”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 3 guests