4en3rgY Romania
Reset Score [Update 3.1] 2z8bv910
Welcome To 4EN3RGY Romania
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. If you already have an account, login here - otherwise create an account for free today!

4en3rgY Romania


Nu sunteti conectat. Conectați-vă sau înregistrați-vă

Reset Score [Update 3.1]

Vezi subiectul anterior Vezi subiectul urmator In jos  Mesaj [Pagina 1 din 1]

1Reset Score [Update 3.1] Empty Reset Score [Update 3.1] Mier 06 Apr 2011, 21:14

Viorel

ViorelFondator

[Trebuie sa fiti înscris şi conectat pentru a vedea această imagine]

Cu ajutorul acestui plugin puteti sa va resetati scorul la 0-0

[Trebuie sa fiti înscris şi conectat pentru a vedea această imagine]

    Pluginul are mai multe versiuni.Aceasta este versiunea 3.1


[Trebuie sa fiti înscris şi conectat pentru a vedea această imagine]

Comenzi:
    say /resetscore
    say_team /resetscore
    /resetscore


Cvaruri:
amx_reset_chat
    1 - Afiseaza mesajul de anuntare
    0 - Nu afiseaza mesajul de anuntare

amx_reset_plugin
    1 - Pluginul este activat
    0 - Pluginul este dezactivat

amx_reset_dead
    1 - Jucatorii isi pot reseta scorul cand sunt morti
    0 - Jucatorii nu-si pot reseta scorul cand sunt morti

amx_reset_tag
amx_reset_time
amx_reset_plugin
    1 - Pluginul este activat
    0 - Pluginul este dezactivat

Se adauga in /config/amxx.cfg

Instalare:

1. Fisierul reset_score_3.sma il puneti in addons/amxmodx/scripting
2. Fisierul reset_score_3.amxx il puneti in addons/amxmodx/plugins
3. Intrati in fisierul addons/amxmodx/configs/plugins.ini si adaugati la sfarsitul fisierului:
Cod:
reset_score_3.amxx

[Trebuie sa fiti înscris şi conectat pentru a vedea această imagine]

In poza de mai jos:Mesajul de anuntare care este setat default pe 60.0 secunde

[Trebuie sa fiti înscris şi conectat pentru a vedea această imagine]

In poza de mai jos:Cand jucatorul are scorul 0-0...

[Trebuie sa fiti înscris şi conectat pentru a vedea această imagine]

In poza de mai jos:
    Jucatorului ii apare un mesaj "Scorul tau este 0-0"
    Tuturor jucatorilor le apare un mesaj "X si-a resetat scorul"


[Trebuie sa fiti înscris şi conectat pentru a vedea această imagine]

Update 3.1 -
    2 cvaruri noi
    optimizare cod
    am inclus colorchat.inc in plugin


[sursa=SMA]
Cod:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

#pragma semicolon 1

//Colorchat
enum Color {
   NORMAL = 1, // clients scr_concolor cvar color
   GREEN, // Green Color
   TEAM_COLOR, // Red, grey, blue
   GREY, // grey
   RED, // Red
   BLUE, // Blue
};

new TeamName[][] = {
   "",
   "TERRORIST",
   "CT",
   "SPECTATOR"
};

//Cvar-uri
new cvar_chat;
new cvar_on;
new cvar_dead;
new cvar_tag;
new cvar_time;

public plugin_init() {
   register_plugin("Resetscore", "3.1", "Ex3cuTion");
   
   register_clcmd("say /resetscore", "cmdReset");
   register_clcmd("say /rs","cmdReset");
   register_clcmd("say_team /resetscore", "cmdReset");
   register_clcmd("/resetscore", "cmdReset");
   
   cvar_chat = register_cvar("amx_reset_chat", "1");
   cvar_on = register_cvar("amx_reset_plugin", "1");
   cvar_dead = register_cvar("amx_reset_dead","1");
   cvar_tag = register_cvar("amx_reset_tag","ResetScore");
   cvar_time = register_cvar("amx_reset_time","60");
   
   if(get_pcvar_num(cvar_chat) == 1) {
      new Float:timp = get_pcvar_float(cvar_time);
      set_task(timp, "chatmsgshow",_,_,_,"b",0);
   }
}

public cmdReset(id) {
   new tag[32];
   new g_Tag = get_pcvar_string(cvar_tag,tag,31);
   
   if(get_pcvar_num(cvar_on) == 0) {
      ColorChat(id,GREEN,"[%s]^x01 Pluginul este dezactivat",g_Tag);
      return PLUGIN_HANDLED;
   }
   if(get_pcvar_num(cvar_dead) == 0 && !is_user_alive(id)) {
      ColorChat(id, GREEN, "[%s]^x01 Poti folosii comanda numai atunci cand esti viu",g_Tag);
      return PLUGIN_HANDLED;
   }
   
   new frags = get_user_frags(id);
   new deaths = get_user_deaths(id);
   
   if(frags == 0 && deaths == 0) {
      ColorChat(id, GREEN, "[%s]^x01 Scorul tau este deja:[%d-%d]",g_Tag,frags,deaths);
      return PLUGIN_HANDLED;
   }
   
   new nick[32];
   get_user_name(id, nick, 31);
   
   cs_set_user_deaths(id, 0);
   set_user_frags(id, 0);
   cs_set_user_deaths(id, 0);
   set_user_frags(id, 0);
   
   new frags2 = get_user_frags(id);
   new deaths2 = get_user_deaths(id);
   
   ColorChat(id, GREEN, "[%s]^x01 Scorul tau este acum^x04 %d-%d",g_Tag,frags2,deaths2);
   ColorChat(0,GREEN,"[%s]^x01 si-a resetat scorul",nick);
   
   return PLUGIN_HANDLED;
}
public chatmsgshow(id) {
   new tag[32];
   new g_Tag = get_pcvar_string(cvar_tag,tag,31);
   
   ColorChat(id, GREEN, "[%s]^x01 Daca vrei sa iti resetezi scorul,foloseste comanda^x04 /resetscore^x01 sau^x04 /retry !",g_Tag);
}

ColorChat(id, Color:type, const msg[], {Float,Sql,Result,_}:...)
{
   if( !get_playersnum() ) return;
   
   new message[256];

   switch(type)
   {
      case NORMAL: // clients scr_concolor cvar color
      {
         message[0] = 0x01;
      }
      case GREEN: // Green
      {
         message[0] = 0x04;
      }
      default: // White, Red, Blue
      {
         message[0] = 0x03;
      }
   }

   vformat(message[1], 251, msg, 4);

   // Make sure message is not longer than 192 character. Will crash the server.
   message[192] = '^0';

   new team, ColorChange, index, MSG_Type;
   
   if(id)
   {
      MSG_Type = MSG_ONE;
      index = id;
   } else {
      index = FindPlayer();
      MSG_Type = MSG_ALL;
   }
   
   team = get_user_team(index);
   ColorChange = ColorSelection(index, MSG_Type, type);

   ShowColorMessage(index, MSG_Type, message);
      
   if(ColorChange)
   {
      Team_Info(index, MSG_Type, TeamName[team]);
   }
}

ShowColorMessage(id, type, message[])
{
   static bool:saytext_used;
   static get_user_msgid_saytext;
   if(!saytext_used)
   {
      get_user_msgid_saytext = get_user_msgid("SayText");
      saytext_used = true;
   }
   message_begin(type, get_user_msgid_saytext, _, id);
   write_byte(id);
   write_string(message);
   message_end();   
}

Team_Info(id, type, team[])
{
   static bool:teaminfo_used;
   static get_user_msgid_teaminfo;
   if(!teaminfo_used)
   {
      get_user_msgid_teaminfo = get_user_msgid("TeamInfo");
      teaminfo_used = true;
   }
   message_begin(type, get_user_msgid_teaminfo, _, id);
   write_byte(id);
   write_string(team);
   message_end();

   return 1;
}

ColorSelection(index, type, Color:Type)
{
   switch(Type)
   {
      case RED:
      {
         return Team_Info(index, type, TeamName[1]);
      }
      case BLUE:
      {
         return Team_Info(index, type, TeamName[2]);
      }
      case GREY:
      {
         return Team_Info(index, type, TeamName[0]);
      }
   }

   return 0;
}

FindPlayer()
{
   new i = -1;

   while(i <= get_maxplayers())
   {
      if(is_user_connected(++i))
         return i;
   }

   return -1;
}
[/sursa]

Vezi subiectul anterior Vezi subiectul urmator Sus  Mesaj [Pagina 1 din 1]

Permisiunile acestui forum:
Nu puteti raspunde la subiectele acestui forum

 

Copyright @ 2010-2024 by 4en3rgY ~> All rights reserved.