Cerere Shop pe baza unui sistem de credite

Categoria cu cereri de pluginuri si nu numai.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Forum rules
Accesează link-ul pentru a putea vedea regulile forumului

Daca doriti sa vi se modifice un plugin, va rugam postati aici .
Post Reply
Aneimar
Membru, skill 0
Membru, skill 0
Posts: 90
Joined: 07 Apr 2016, 00:16
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Has thanked: 1 time
Contact:

25 May 2018, 13:09

Salut !
Doresc un shop pe baza acestui sistem de credite , am incercat eu ceva dar tot nu am reusit cum mi-am dorit eu .
| Afiseaza codul
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <csx>
#include <dhudmessage>
#include <fakemeta>
#include <nvault>

#define PLUGIN  "Depozit Mooney"
#define AUTHOR  "Aragon*"
#define VERSION "1.0"

enum (+= 100)
{
   TASK_MESAJHUD
}

#define ID_HUD (taskid - TASK_MESAJHUD)

new PlayerCredits[10000], retrase[33];
new Vault, SymbolsName, savepoints;

public plugin_init() {         
   register_plugin(PLUGIN,VERSION,AUTHOR)
   register_forward(FM_ClientUserInfoChanged, "ChangeName");
   SymbolsName = register_cvar("fr_name_symbols", "`");    //| Symbols Name Restricted |//   biohazardshopmod = register_cvar("bh_shop_mode", "1");      //| Money/Points 0 Money Tax -> 1 Points Tax |//
   savepoints = register_cvar("fr_save_points", "1");   //| Save Points Mode 0 Disable -> 1 Name -> 2 IP -> 3 SteamID |//
//   register_clcmd("depozit","Depozit")
   register_logevent("round_start", 2, "1=Round_Start")
//   register_clcmd("say /depozit","Depozit")
//   register_clcmd("say_team /depozit","Depozit")
//   register_clcmd("retrage","Retrage")
  // register_clcmd("say /retrage","Retrage")
  // register_clcmd("say_team /retrage","Retrage")
   register_clcmd("credite","Show_Credits")
   register_clcmd("credite","Show_Credits")
   register_clcmd("say /credite","Show_Credits")
   register_clcmd("say /credite","Show_Credits")
   register_clcmd("say_team /credite","Show_Credits")
   register_clcmd("say_team /credite","Show_Credits")
   register_concmd("amx_give_credits", "Give_Credits", ADMIN_IMMUNITY, "Name/@T/@CT/@All -> Amount");
   register_concmd("amx_reset_credits", "Reset_Credits", ADMIN_IMMUNITY, "Name/@T/@CT/@All");
   }
public plugin_natives() {
   register_native("get_user_credits", "get_user_credits", 1);
   register_native("set_user_credits", "set_user_credits", 1);
}
public set_user_credits(id, credits) {
   PlayerCredits[id] = credits;
   SaveCredits(id)
   }
public get_user_credits(id) {
   return PlayerCredits[id]
   }
public client_putinserver(id) {
   LoadCredits(id)
   retrase[id] = 0
   set_task(180.0, "give_credits", id, _, _, "b")
   set_task(1.0, "MesajHUD", id+TASK_MESAJHUD, _, _, "b")
   }
public client_authorized(id) {
   LoadCredits(id)
   }
public client_connected(id) {
   LoadCredits(id)
   }
public client_disconnect(id) {
   SaveCredits(id)
   remove_task(id)
   retrase[id] = 0
   remove_task(id+TASK_MESAJHUD)
   }
   
public give_credits(id)
{
   ColorChat(id, "^x03[DR]^x04 Ai primit^x03 3 credite^x04 pentru ca ai jucat 5 minute.");
   ColorChat(id, "^x03[DR]^x04 Joaca cat mai mult si acumulezi credite in prostie.");
   PlayerCredits[id] += 3
}

public round_start()
{
   static id;
   for (id = 1; id <= get_maxplayers(); id++)
   {
      if(is_user_alive(id))
      {
         retrase[id] = 0
      }
   }
}
   
//------| Change Name |------//
public ChangeName(id, buffer) {
   if(!is_user_connected(id))
   return FMRES_IGNORED;

   static Name[32], Val[32];
   get_user_name(id, Name, sizeof Name - 1);
   engfunc(EngFunc_InfoKeyValue, buffer, "name", Val, sizeof Val - 1);
   
   if(equal(Val, Name))
   return FMRES_IGNORED;
   
   set_task(0.2, "client_connect", id);
   return FMRES_SUPERCEDE;
   }
   
//------| Client connect |------//   
public client_connect(id) {
   static sName[32];
   get_user_name(id, sName, sizeof sName - 1);
   static sChars[32];
   get_pcvar_string(SymbolsName, sChars, sizeof sChars - 1);   
   for(new i = 0 ; i < strlen(sName) ; i++) {
   for(new j = 0 ; j < strlen(sChars) ; j++) {
   if(sName == sChars[j]) {
   server_cmd("kick #%d ^"Numele tau contine caractere nepermise.^"", get_user_userid(id));
   break;
   }
   else {
   LoadCredits(id);
   }
   }
   }
   }
   
public Show_Credits(id) {
   set_hudmessage(0, 128, 0, 0.03, 0.86, 2, 6.0, 5.0);
   show_hudmessage(id, "Ai %d credite.", PlayerCredits[id]);
   ColorChat(id, "^x03[DR]^x04 Ai^x03 %d^x04 credite.", PlayerCredits[id]);
   return PLUGIN_HANDLED;
   }
   
public Give_Credits(id, level, cid) {
   if(!cmd_access(id, level, cid, 2)) {
   return PLUGIN_HANDLED;
   }
   new arg[23], gplayers[32], num, i, players, name[32];
   get_user_name(id, name, 31);
   read_argv(1, arg, 23);
   new give_credits[5];
   read_argv(2, give_credits, charsmax(give_credits));
   new Credits = str_to_num(give_credits);
   if(equali(arg, "@T")) {
   get_players(gplayers, num, "e", "TERRORIST");
   for(i = 0; i < num; i++) {
   players = gplayers;
   if(!is_user_connected(players))
   continue;
   PlayerCredits[players] += Credits;
   SaveCredits(id)
   }
   switch(get_cvar_num("amx_show_activity")) {
   case 1: ColorChat(0, "^x03Adminul^x04 le-a dat^x03 %i credite^x04 tuturor^x03 Furienilor.", Credits);
   case 2: ColorChat(0, "^x03%s^x04 le-a dat^x03 %i credite^x04 tuturor^x03 Furienilor.", name, Credits);
   }
   }
   else if(equali(arg, "@CT")) {
   get_players(gplayers, num, "e", "CT");
   for(i = 0; i < num; i++) {
   players = gplayers;
   if(!is_user_connected(players))
   continue;
   PlayerCredits[players] += Credits;
   SaveCredits(id)
   }
   switch(get_cvar_num("amx_show_activity")) {
   case 1: ColorChat(0, "^x03Adminul^x04 le-a dat^x03 %i credite^x04 tuturor^x03 Anti-Furienilor.", Credits);
   case 2: ColorChat(0, "^x03%s^x04 le-a dat^x03 %i credite^x04 tuturor^x03 Anti-Furienilor.", name, Credits);
   }
   }
   if(equali(arg, "@All")) {
   get_players(gplayers, num, "a");
   for(i = 0; i < num; i++) {
   players = gplayers;
   if(!is_user_connected(players))
   continue;
   PlayerCredits[players] += Credits;
   SaveCredits(id)
   }
   switch(get_cvar_num("amx_show_activity")) {
   case 1: ColorChat(0, "^x03Adminul^x04 le-a dat^x03 %i credite^x04 tuturor^x03 jucatorilor.", Credits);
   case 2: ColorChat(0, "^x03%s^x04 a dat^x03 %i credite ^x03 jucatorilor.", name, Credits);
   }
   }
   new player = cmd_target(id, arg, 11);
   if(!player) {
   return PLUGIN_HANDLED;
   }
   PlayerCredits[player] += Credits;
   SaveCredits(id)
   switch(get_cvar_num("amx_show_activity")) {
   case 1: ColorChat(player, "^x03Adminul^x04 ti-a dat^x03 %i credite.", Credits);
   case 2: ColorChat(player, "^x03%s^x04 ti-a dat^x03 %i credite.", name, Credits);
   }
   return PLUGIN_HANDLED;
   }
   
public Reset_Credits(id, level, cid) {
   if(!cmd_access(id, level, cid, 2)) {
   return PLUGIN_HANDLED;
   }
   new arg[23], gplayers[32], num, i, players, name[32];
   get_user_name(id, name, 31);
   read_argv(1, arg, 23);
   if(equali(arg, "@T")) {
   get_players(gplayers, num, "e", "TERRORIST");
   for(i = 0; i < num; i++) {
   players = gplayers;
   if(!is_user_connected(players))
   continue;
   PlayerCredits[players] = 0;
   SaveCredits(id)
   }
   switch(get_cvar_num("amx_show_activity")) {
   case 1: ColorChat(0, "^x03Adminul^x04 a luat^x03 creditele^x04 tuturor^x03 Furienilor.");
   case 2: ColorChat(0, "^x03%s^x04 a luat^x03 creditele^x04 tuturor^x03 Furienilor.", name);
   }
   }
   
   else if(equali(arg, "@CT")) {
   get_players(gplayers, num, "e", "CT");
   for(i = 0; i < num; i++) {
   players = gplayers;
   if(!is_user_connected(players))
   continue;
   PlayerCredits[players] = 0;
   SaveCredits(id)
   }
   switch(get_cvar_num("amx_show_activity")) {
   case 1: ColorChat(0, "^x03Adminul^x04 a luat^x03 creditele^x04 tuturor^x03 Anti-Furienilor.");
   case 2: ColorChat(0, "^x03%s^x04 a luat^x03 creditele^x04 tuturor^x03 Anti-Furienilor.", name);
   }
   }
   if(equali(arg, "@All")) {
   get_players(gplayers, num, "a");
   for(i = 0; i < num; i++) {
   players = gplayers;
   if(!is_user_connected(players))
   continue;
   PlayerCredits[players] = 0;
   SaveCredits(id)
   }
   switch(get_cvar_num("amx_show_activity")) {
   case 1: ColorChat(0, "^x03Adminul^x04 a luat^x03 creditele^x04 tuturor^x03 jucatorilor.");
   case 2: ColorChat(0, "^x03%s^x04 a luatx03 creditele^x04 tuturor^x03 jucatorilor.", name);
   }
   }
   new player = cmd_target(id, arg, 11);
   if(!player) {
   return PLUGIN_HANDLED;
   }
   PlayerCredits[player] = 0;
   SaveCredits(id)
   switch(get_cvar_num("amx_show_activity")) {
   case 1: ColorChat(player, "^x03Adminul^x04 ti-a luat^x03 creditele.");
   case 2: ColorChat(player, "^x03%s^x04 ti-a luat^x03 creditele.", name);
   }
   return PLUGIN_HANDLED;
   }
   
//------| Save Credits |------//
public SaveCredits(id) {
   Vault = nvault_open("DepozitCredits");
   new data_credits[256], key_credits[64];
   switch( get_pcvar_num(savepoints) ) { 
   case 1:  { 
   new name[33];
   get_user_name(id,name,32);
   format(key_credits, 63, "%s-/", name);
      }
   case 2: {
   new player_ip[33];
   get_user_ip(id,player_ip,32);
   format(key_credits, 63, "%s-/", player_ip);
   }
   case 3: {
   new steam_ID[33];
   get_user_authid(id,steam_ID,32);
   format(key_credits, 63, "%s-/", steam_ID);
   }
   }
   format(data_credits, 255, "%i#", PlayerCredits[id]);
   nvault_set(Vault, key_credits, data_credits);
   return PLUGIN_CONTINUE;
   }
//------| Loading Credits |------//
public LoadCredits(id) {
   Vault = nvault_open("DepozitCredits");
   new data_credits[256], key_credits[64];
   switch( get_pcvar_num(savepoints) )  { 
   case 1:  { 
   new name[33];
   get_user_name(id,name,32);
   format(key_credits, 63, "%s-/", name);
   }
   case 2: {
   new player_ip[33];
   get_user_ip(id,player_ip,32);
   format(key_credits, 63, "%s-/", player_ip);
   }
   case 3: {
   new steam_ID[33];
   get_user_authid(id,steam_ID,32);
   format(key_credits, 63, "%s-/", steam_ID);
   }
   }
   format(data_credits, 255, "%i#", PlayerCredits[id]);
   nvault_get(Vault, key_credits, data_credits, 255);
   replace_all(data_credits, 255, "#", " ");

   new Credits[32];
   parse(data_credits, Credits, 31);
   PlayerCredits[id] = str_to_num(Credits);
   return PLUGIN_CONTINUE;
   } 
   
stock ColorChat(const id, const input[], any:...) {
   new count = 1, players[32];
   static msg[191];
   vformat(msg, 190, input, 3);
 
   replace_all(msg, 190, "!x04", "^4");
   replace_all(msg, 190, "!x01", "^1");
   replace_all(msg, 190, "!x03", "^3");
 
   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();
   }
   }
   } 
   }


In shop doresc sa fie inclus doar HP si AP pentru 10 credite .
Post Reply

Return to “Cereri”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 19 guests