Mensajes: 26
Temas: 15
Registro en: Apr 2020
Reputación:
0
18/12/2021, 06:51 PM
(Última modificación: 18/12/2021, 06:54 PM por cholo2352. Edited 1 time in total.)
necesitaría ese plugin para mi sv, si conoces de algún aporte seria de gran ayuda! gracias por leer!
Mensajes: 395
Temas: 48
Registro en: Oct 2018
Reputación:
6
Lo acabo de hacer, fijate si te sirve!
Código PHP: // === SISTEMA DE SKINS === // ===== VERSION: 1.0 =====
#include <amxmodx> #include <amxmisc> #include <hamsandwich> #include <cstrike>
new const PLUGIN[][] = { "Sys de Skins", "1.0", "Emanuelitop15", "^4[^3SKINS^4]^1" };
// FLAGS #define JUGADOR ADMIN_ALL #define ADMIN ADMIN_BAN // flag: d #define VIP ADMIN_LEVEL_B // flag: n
// SKINS new g_skin[33];
enum _: DATA_SKINS { SKIN[32], SKIN_MDL[32], SKIN_FLAG };
new const i_skins[][DATA_SKINS] = { { "Terrateniente", "terrateniente", JUGADOR }, { "Skiny Girl", "skinnygirl", ADMIN }, { "Soldado", "soldado", ADMIN }, { "Predator", "predator", VIP }, }
// Funciones Principales public plugin_init() { register_plugin(PLUGIN[0], PLUGIN[1], PLUGIN[2]);
register_clcmd("say skin", "clcmd_skin");
RegisterHam(Ham_Spawn, "player", "ham_jugador_spawn_post", true); }
public client_putinserver(id) g_skin[id] = -1;
public plugin_precache() { new s, mdl[106], mdlT[106];
for (s = 0; s < sizeof (i_skins); s++) { formatex(mdl, charsmax(mdl), "models/player/%s/%s.mdl", i_skins[s][SKIN_MDL], i_skins[s][SKIN_MDL]); precache_model(mdl);
// T formatex(mdlT, charsmax(mdlT), "models/player/%s/%sT.mdl", i_skins[s][SKIN_MDL], i_skins[s][SKIN_MDL]); if (file_exists(mdlT)) precache_model(mdlT); } }
public clcmd_skin(id) { menu_skins(id); return PLUGIN_HANDLED; }
public ham_jugador_spawn_post(id) { if (is_user_alive(id) && get_user_team(id) == 1 || get_user_team(id) == 2) colocar_skin(id); }
menu_skins(id) { new menu, s, sz_txt[206], pos[3];
menu = menu_create("\ySELECCIONA UNA SKIN\d\R", "hdr_skins");
menu_additem(menu, "\dQUITARSE LA SKIN^n");
for (s = 0; s < sizeof (i_skins); s++) { if (g_skin[id] == s) formatex(sz_txt, charsmax(sz_txt), "\d%s \r(EQUIPADA)", i_skins[s][SKIN]); else if (!access(id, i_skins[s][SKIN_FLAG])) formatex(sz_txt, charsmax(sz_txt), "\d%s \r(SOLO %s)", i_skins[s][SKIN], i_skins[s][SKIN_FLAG] == ADMIN ? "ADMINS" : i_skins[s][SKIN_FLAG] == VIP ? "VIP" : "JUGADORES"); else formatex(sz_txt, charsmax(sz_txt), i_skins[s][SKIN]);
num_to_str(s, pos, charsmax(pos)); menu_additem(menu, sz_txt, pos); }
menu_setprop(menu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(menu, MPROP_BACKNAME, "Volver"); menu_setprop(menu, MPROP_EXITNAME, "Salir"); menu_display(id, menu); } public hdr_skins(id, menu, item) { menu_destroy(menu);
if (!is_user_connected(id) || item == MENU_EXIT) return PLUGIN_HANDLED;
if (!item) { if (g_skin[id] != -1) { g_skin[id] = -1; client_print_color(id, 0, "%s Te has quitado la skin!", PLUGIN[3]); }
return PLUGIN_HANDLED; }
item--;
if (g_skin[id] == item) { menu_skins(id); return PLUGIN_HANDLED; }
if (!access(id, i_skins[item][SKIN_FLAG])) { client_print_color(id, 0, "%s Esta skin es para los^4 %s^1 :(", PLUGIN[3], i_skins[item][SKIN_FLAG] == ADMIN ? "ADMINS" : i_skins[item][SKIN_FLAG] == VIP ? "VIP" : "JUGADORES"); return PLUGIN_HANDLED; }
g_skin[id] = item; client_print_color(id, 0, "%s Te has colocado la skin:^4 %s^1", PLUGIN[3], i_skins[g_skin[id]][SKIN]); client_print_color(id, 0, "%s En la siguiente ronda se te colocará la skin!", PLUGIN[3]); menu_skins(id); return PLUGIN_HANDLED; }
colocar_skin(id) { if (!is_user_alive(id)) return;
if (g_skin[id] == -1) { cs_reset_user_model(id); return; }
if (!access(id, i_skins[g_skin[id]][SKIN_FLAG])) { client_print_color(id, 0, "%s Se te ha quitado la skin porque no tienes el acceso para usarla!", PLUGIN[3]); g_skin[id] = -1; return; }
cs_set_user_model(id, i_skins[g_skin[id]][SKIN_MDL]); }
___________________________________
SI NECESITAS UN PLUGIN TE LO HAGO $$$
COMUNICATE A MI DISCORD: emanuelitop15
Mensajes: 167
Temas: 79
Registro en: Jun 2018
Reputación:
0
(19/12/2021, 12:47 AM)[E]manuelitop15 escribió: Lo acabo de hacer, fijate si te sirve!
Código PHP: // === SISTEMA DE SKINS === // ===== VERSION: 1.0 =====
#include <amxmodx> #include <amxmisc> #include <hamsandwich> #include <cstrike>
new const PLUGIN[][] = { "Sys de Skins", "1.0", "Emanuelitop15", "^4[^3SKINS^4]^1" };
// FLAGS #define JUGADOR ADMIN_ALL #define ADMIN ADMIN_BAN // flag: d #define VIP ADMIN_LEVEL_B // flag: n
// SKINS new g_skin[33];
enum _: DATA_SKINS { SKIN[32], SKIN_MDL[32], SKIN_FLAG };
new const i_skins[][DATA_SKINS] = { { "Terrateniente", "terrateniente", JUGADOR }, { "Skiny Girl", "skinnygirl", ADMIN }, { "Soldado", "soldado", ADMIN }, { "Predator", "predator", VIP }, }
// Funciones Principales public plugin_init() { register_plugin(PLUGIN[0], PLUGIN[1], PLUGIN[2]);
register_clcmd("say skin", "clcmd_skin");
RegisterHam(Ham_Spawn, "player", "ham_jugador_spawn_post", true); }
public client_putinserver(id) g_skin[id] = -1;
public plugin_precache() { new s, mdl[106], mdlT[106];
for (s = 0; s < sizeof (i_skins); s++) { formatex(mdl, charsmax(mdl), "models/player/%s/%s.mdl", i_skins[s][SKIN_MDL], i_skins[s][SKIN_MDL]); precache_model(mdl);
// T formatex(mdlT, charsmax(mdlT), "models/player/%s/%sT.mdl", i_skins[s][SKIN_MDL], i_skins[s][SKIN_MDL]); if (file_exists(mdlT)) precache_model(mdlT); } }
public clcmd_skin(id) { menu_skins(id); return PLUGIN_HANDLED; }
public ham_jugador_spawn_post(id) { if (is_user_alive(id) && get_user_team(id) == 1 || get_user_team(id) == 2) colocar_skin(id); }
menu_skins(id) { new menu, s, sz_txt[206], pos[3];
menu = menu_create("\ySELECCIONA UNA SKIN\d\R", "hdr_skins");
menu_additem(menu, "\dQUITARSE LA SKIN^n");
for (s = 0; s < sizeof (i_skins); s++) { if (g_skin[id] == s) formatex(sz_txt, charsmax(sz_txt), "\d%s \r(EQUIPADA)", i_skins[s][SKIN]); else if (!access(id, i_skins[s][SKIN_FLAG])) formatex(sz_txt, charsmax(sz_txt), "\d%s \r(SOLO %s)", i_skins[s][SKIN], i_skins[s][SKIN_FLAG] == ADMIN ? "ADMINS" : i_skins[s][SKIN_FLAG] == VIP ? "VIP" : "JUGADORES"); else formatex(sz_txt, charsmax(sz_txt), i_skins[s][SKIN]);
num_to_str(s, pos, charsmax(pos)); menu_additem(menu, sz_txt, pos); }
menu_setprop(menu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(menu, MPROP_BACKNAME, "Volver"); menu_setprop(menu, MPROP_EXITNAME, "Salir"); menu_display(id, menu); } public hdr_skins(id, menu, item) { menu_destroy(menu);
if (!is_user_connected(id) || item == MENU_EXIT) return PLUGIN_HANDLED;
if (!item) { if (g_skin[id] != -1) { g_skin[id] = -1; client_print_color(id, 0, "%s Te has quitado la skin!", PLUGIN[3]); }
return PLUGIN_HANDLED; }
item--;
if (g_skin[id] == item) { menu_skins(id); return PLUGIN_HANDLED; }
if (!access(id, i_skins[item][SKIN_FLAG])) { client_print_color(id, 0, "%s Esta skin es para los^4 %s^1 :(", PLUGIN[3], i_skins[item][SKIN_FLAG] == ADMIN ? "ADMINS" : i_skins[item][SKIN_FLAG] == VIP ? "VIP" : "JUGADORES"); return PLUGIN_HANDLED; }
g_skin[id] = item; client_print_color(id, 0, "%s Te has colocado la skin:^4 %s^1", PLUGIN[3], i_skins[g_skin[id]][SKIN]); client_print_color(id, 0, "%s En la siguiente ronda se te colocará la skin!", PLUGIN[3]); menu_skins(id); return PLUGIN_HANDLED; }
colocar_skin(id) { if (!is_user_alive(id)) return;
if (g_skin[id] == -1) { cs_reset_user_model(id); return; }
if (!access(id, i_skins[g_skin[id]][SKIN_FLAG])) { client_print_color(id, 0, "%s Se te ha quitado la skin porque no tienes el acceso para usarla!", PLUGIN[3]); g_skin[id] = -1; return; }
cs_set_user_model(id, i_skins[g_skin[id]][SKIN_MDL]); }
En donde tengo que modificar para que me coloque la skin al seleccionarlo y no tenga que esperar a la siguiente ronda.
Mensajes: 448
Temas: 38
Registro en: May 2020
Reputación:
19
(11/02/2022, 02:41 PM)Axon escribió: En donde tengo que modificar para que me coloque la skin al seleccionarlo y no tenga que esperar a la siguiente ronda.
Código PHP: // === SISTEMA DE SKINS === // ===== VERSION: 1.0 =====
#include <amxmodx> #include <amxmisc> #include <hamsandwich> #include <cstrike>
new const PLUGIN[][] = { "Sys de Skins", "1.0", "Emanuelitop15", "^4[^3SKINS^4]^1" };
// FLAGS #define JUGADOR ADMIN_ALL #define ADMIN ADMIN_BAN // flag: d #define VIP ADMIN_LEVEL_B // flag: n
// SKINS new g_skin[33];
enum _: DATA_SKINS { SKIN[32], SKIN_MDL[32], SKIN_FLAG };
new const i_skins[][DATA_SKINS] = { { "Terrateniente", "terrateniente", JUGADOR }, { "Skiny Girl", "skinnygirl", ADMIN }, { "Soldado", "soldado", ADMIN }, { "Predator", "predator", VIP }, }
// Funciones Principales public plugin_init() { register_plugin(PLUGIN[0], PLUGIN[1], PLUGIN[2]);
register_clcmd("say skin", "clcmd_skin");
RegisterHam(Ham_Spawn, "player", "ham_jugador_spawn_post", true); }
public client_putinserver(id) g_skin[id] = -1;
public plugin_precache() { new s, mdl[106], mdlT[106];
for (s = 0; s < sizeof (i_skins); s++) { formatex(mdl, charsmax(mdl), "models/player/%s/%s.mdl", i_skins[s][SKIN_MDL], i_skins[s][SKIN_MDL]); precache_model(mdl);
// T formatex(mdlT, charsmax(mdlT), "models/player/%s/%sT.mdl", i_skins[s][SKIN_MDL], i_skins[s][SKIN_MDL]); if (file_exists(mdlT)) precache_model(mdlT); } }
public clcmd_skin(id) { menu_skins(id); return PLUGIN_HANDLED; }
public ham_jugador_spawn_post(id) { if (is_user_alive(id) && get_user_team(id) == 1 || get_user_team(id) == 2) colocar_skin(id); }
menu_skins(id) { new menu, s, sz_txt[206], pos[3];
menu = menu_create("\ySELECCIONA UNA SKIN\d\R", "hdr_skins");
menu_additem(menu, "\dQUITARSE LA SKIN^n");
for (s = 0; s < sizeof (i_skins); s++) { if (g_skin[id] == s) formatex(sz_txt, charsmax(sz_txt), "\d%s \r(EQUIPADA)", i_skins[s][SKIN]); else if (!access(id, i_skins[s][SKIN_FLAG])) formatex(sz_txt, charsmax(sz_txt), "\d%s \r(SOLO %s)", i_skins[s][SKIN], i_skins[s][SKIN_FLAG] == ADMIN ? "ADMINS" : i_skins[s][SKIN_FLAG] == VIP ? "VIP" : "JUGADORES"); else formatex(sz_txt, charsmax(sz_txt), i_skins[s][SKIN]);
num_to_str(s, pos, charsmax(pos)); menu_additem(menu, sz_txt, pos); }
menu_setprop(menu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(menu, MPROP_BACKNAME, "Volver"); menu_setprop(menu, MPROP_EXITNAME, "Salir"); menu_display(id, menu); } public hdr_skins(id, menu, item) { menu_destroy(menu);
if (!is_user_connected(id) || item == MENU_EXIT) return PLUGIN_HANDLED;
if (!item) { if (g_skin[id] != -1) { g_skin[id] = -1; client_print_color(id, 0, "%s Te has quitado la skin!", PLUGIN[3]); }
return PLUGIN_HANDLED; }
item--;
if (g_skin[id] == item) { menu_skins(id); return PLUGIN_HANDLED; }
if (!access(id, i_skins[item][SKIN_FLAG])) { client_print_color(id, 0, "%s Esta skin es para los^4 %s^1 :(", PLUGIN[3], i_skins[item][SKIN_FLAG] == ADMIN ? "ADMINS" : i_skins[item][SKIN_FLAG] == VIP ? "VIP" : "JUGADORES"); return PLUGIN_HANDLED; }
g_skin[id] = item; client_print_color(id, 0, "%s Te has colocado la skin:^4 %s^1", PLUGIN[3], i_skins[g_skin[id]][SKIN]); colocar_skin(id); menu_skins(id); return PLUGIN_HANDLED; }
colocar_skin(id) { if (!is_user_alive(id)) return;
if (g_skin[id] == -1) { cs_reset_user_model(id); return; }
if (!access(id, i_skins[g_skin[id]][SKIN_FLAG])) { client_print_color(id, 0, "%s Se te ha quitado la skin porque no tienes el acceso para usarla!", PLUGIN[3]); g_skin[id] = -1; return; }
cs_set_user_model(id, i_skins[g_skin[id]][SKIN_MDL]); }
Mensajes: 1,148
Temas: 82
Registro en: May 2015
Reputación:
8
en mi firma hay uno si te sirve
|