[ ZE ] Experiencia al llegar a la meta
#1
Hola les dejo este plugin que tengo desde hace mucho y no lo utilizo.

crea un boton y te da XP ( hay que editar la native y poner la suya ) al tocar el boton. Whatever


Código PHP:
/* Script generated by Pawn Studio */

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <hamsandwich>
#include <xs>
#include <engine>
#include <cstrike>

new const iPlugin[][] = {"ZE TOUCH XP""0.1""Hypnotize""[ ZE ]" };

new const 
Model[] = "models/zombie_escape/modelo_boton.mdl";
new const 
iEnt[] = "ZonaSegura";

new 
Float:fOrigin[3];

new 
Path[256];
new 
iMap[90]; 
new 
iRuta[900]; 

new 
g_isTouch33 ];

native get_exp(id);
native set_expidvalue );
native get_ptsid );
native set_ptsidvalue );

#define reward 20

public plugin_init()
{
    
register_plugin(iPlugin[0], iPlugin[1], iPlugin[2])
    
// Add your own code here
    
    
RegisterHam(Ham_Use"func_button""HamUseButton");
    
    
register_event("HLTV""event_RoundStart""a""1=0""2=0");
    
    
register_clcmd("say /zona""f_Menu");
    
get_mapname(iMapcharsmax(iMap));
    
get_configsdir(Pathcharsmax(Path));
    
formatex(iRutacharsmax(iRuta), "%s/%s.ini"PathiMap);
    
    
ReadPos();
}
public 
plugin_precache() precache_model(Model);
public 
event_RoundStart()
{
    
arrayset(g_isTouchfalsesizeof(g_isTouch));
}
public 
HamUseButton(entvictim)
{
    if(!
ent || victim 32)
        return 
HAM_IGNORED
    
    
if(!is_user_alive(victim))
        return 
HAM_IGNORED
    
    
static szTarget[32];
    
entity_get_string(entEV_SZ_targetszTargetcharsmax(szTarget));
     
    if( 
equalszTarget"end_map" ) && is_user_alive(victim) &&  !g_isTouch[victim] )
    {    
        if(
is_user_connected(victim) && cs_get_user_team(victim) == CS_TEAM_CT)
        {
            
g_isTouchvictim ] = true;
            
            
set_dhudmessage2552550, -1.00.6501.03.0 );
            
show_dhudmessagevictim"TERMINASTE EL MAPA WACHIN!!!");
            
            
set_expvictimreward );
            
set_ptsvictim, ( get_ptsvictim ) + reward ) );
            
            
chatcolorvictim"^4%s^1 ^1Ganaste ^4%d^1 de ^4Experiencia^1 por llegar a la meta!"iPlugin[3], reward );
        }
    }
    
    return 
HAM_IGNORED
}
public 
f_Menu(id)
{
    if( ~
get_user_flagsid ) & ADMIN_RCON )
        return 
PLUGIN_HANDLED;
    
    new 
menu menu_create("Registrar Touch","hn_poner");
    
    
menu_additem(menu,"Registrar Entidad");
    
menu_additem(menu,"Borrar Entidad");
    
menu_additem(menu,"Guardar Entidad");
    
    
menu_display(idmenu);
    return 
PLUGIN_HANDLED;
}
public 
hn_poner(idmenuitem)
{
    if ( 
item == MENU_EXIT || ~get_user_flagsid ) & ADMIN_RCON )
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED;
    }
    switch(
item){
        case 
0:{
            new 
iOrigin[3]; get_user_origin(idiOrigin3);
            
IVecFVec(iOriginfOrigin); CreateEnt(fOrigin);
        }
        case 
1:{ 
            new 
iEntity = -1;
            while((
iEntity find_ent_by_class(iEntityiEnt)) != 0remove_entityiEntity );
            }
        case 
2SaveEnt(fOrigin);
    }
    
f_Menu(id);
    return 
PLUGIN_HANDLED;  


CreateEnt(const Float:Origin[3])
{
    new 
ent create_entity("func_button")
            
    if(!
is_valid_ent(ent))
        return 
PLUGIN_CONTINUE;
    
    
entity_set_string(entEV_SZ_classnameiEnt);
    
entity_set_string(entEV_SZ_target"end_map");
    
entity_set_int(entEV_INT_solidSOLID_BBOX);
    
entity_set_model(entModel);
    
    
#define INFENT_MINS { -16.0, -16.0, 0.0 }
    #define INFENT_MAXS { 16.0, 16.0, 72.0 }
    
entity_set_sizeentFloat:INFENT_MINSFloat:INFENT_MAXS );
    
engfunc(EngFunc_SetOriginentOrigin); 
    
    
set_rendering(entkRenderFxGlowShell125125125kRenderNormal16);
    
    
drop_to_floor(ent);
    return 
PLUGIN_HANDLED;
}
SaveEnt(const Float:Origin[3]){
    new 
iCoordenada[90]; formatex(iCoordenadacharsmax(iCoordenada),  "%.2f %.2f %.2f"Origin[0], Origin[1], Origin[2]);
    new 
szText[300];
    
    if(!
file_exists(iRuta)) {
        
log_amx("[ZE] Archivo '%s' No existe, pero lo creamos."iRuta);
        
write_file(iRuta"; Archivo creado automaticamente");
        
formatex(szTextcharsmax(szText), "; El mapa es %s:"iMap); write_file(iRutaszText);
        
write_file(iRuta"; Plugin Made By Hypnotize");
        
write_file(iRuta"; Las Coordenadas son:");
    }
    
write_file(iRutaiCoordenada);
}
public 
ReadPos()
{
    if(!
file_exists(iRuta)) {
        
client_print(0print_chat"[ZE] Archivo '%s' NO Existe."iRuta);
        return;
    }
    new 
iDat[40], iDat2[40], iDat3[40];
    new 
szLine[700], Float:iPoss[3];
    
    new 
filefile fopen(iRuta"r");
    while(
file && !feof(file))
    {
        
fgets(fileszLinecharsmax(szLine));
        
        if(
szLine[0] == ';' || szLine[0] == '/' && szLine[1] == '/' || !szLine[0])
            continue;
        
        
parseszLineiDatcharsmax(iDat), iDat2charsmax(iDat2), iDat3charsmax(iDat3));
        
        
iPoss] = str_to_floatiDat );
        
iPoss] = str_to_floatiDat2 );
        
iPoss] = str_to_floatiDat3 );
        
        
CreateEntiPoss );
    }
    
fclose(file);

stock chatcolor(id, const input[], any:...)
{
    static 
szMsg[191], msgSayText;
    
    if (!
msgSayText)
        
msgSayText get_user_msgid("SayText");
    
    
vformat(szMsg190input3);
    
    
replace_all(szMsg190"!g""^4");
    
replace_all(szMsg190"!y""^1");
    
replace_all(szMsg190"!team""^3");
    
    
message_begin(id MSG_ONE_UNRELIABLE MSG_BROADCASTmsgSayText, .player id);
    
write_byte(id id 33);
    
write_string(szMsg);
    
message_end();

Quieres rentar un servidor en USA o BRASIL, envíame un Mensaje Privado.
Envía mensaje privado si vas a pagar por el servicio.
[Imagen: b_350_20_ff0505_381007_ffffff_000000.png]
[Imagen: b_350_20_ff0505_381007_ffffff_000000.png]

[Imagen: 76561198283253977.png]
(05/07/2018, 11:09 PM)meTaLiCroSS escribió: Esa es la diferencia, por eso no cualquier mandril puede programar
(16/05/2014, 08:22 AM)mongito100 escribió: Esto debería ir en tutoriales para q después un moderador/neeeeeel lo ponga en el tacho
(08/04/2020, 05:10 PM)asgasgasgasgasg escribió: bola de estupidos con retrasomental hijos de la gran puta por que putas ayudan a todo mundo y no a mi pedi un midnight dakness para zp y nadie me lo hizo malditos basuras bastardos tontos estupidos virgenes de mierda no van a conseguri nada tontos mierdaaaaaaaaaaaaaaaaaaaaaaaaaa
(26/07/2020, 12:37 AM)Hypnotize escribió: [Imagen: xdxd.png]


(26/07/2020, 07:21 PM)Ricardo01 escribió: Que problema tenés conmigo LA CONCHA DE TU MADRE.... La re mil que te parió te crees porque tenés "47" de recuperación eres todo anda hacerte coger seguramente le pagaste a alguien para que te dé reputación porque eres una basura de persona... Jamás vi una persona tan basura eh ignorante como vos...

(26/07/2020, 08:12 PM)Ricardo01 escribió: SOS pelotuda o te haces me tenés en cosas que nada que ver.... Man no tenes vida? Que estás tan aldp2 que haces todo esto? Busca una novia oh anda a pajearte un rato. Debes ser un gordo con lente que tiene poster de anime de culo virgen de mierda..

(26/07/2020, 08:25 PM)Ricardo01 escribió: Y que tiene? Lo ví me gustó y lo puse aparte? Que problema tenés conmigo si yo no te hice nada.. yo tiro post no es obligación que me ayudes... Nose que carajo te pasa conmigo. De la nada me empezaste a bardear y etc. Si tenés problema con tu familia o tu vida. agarratela con ellos no con gente que no conoces..

(26/07/2020, 11:18 PM)Ricardo01 escribió: Buena te crees porque sabes programar se crees superior pelotudo de mierda. Yo voy a crear todas las cuentas que quieras la concha de tu madre gordo virgen. Anda a mirar porno de anime. Yo te voy a insultar todo lo que quiera pelotudo... Te crees superior y crees que tenés derecho a molestar a otras personas que ni conoces... Aparte que me importa si sabes programa nadie te pide ayuda acá. Son millones no eres el único..



Responder
#2
(03/02/2019, 02:25 PM)Hypnotize escribió: Hola les dejo este plugin que tengo desde hace mucho y no lo utilizo.

crea un boton y te da XP ( hay que editar la native y poner la suya ) al tocar el boton. Whatever


Código PHP:
/* Script generated by Pawn Studio */

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <hamsandwich>
#include <xs>
#include <engine>
#include <cstrike>

new const iPlugin[][] = {"ZE TOUCH XP""0.1""Hypnotize""[ ZE ]" };

new const 
Model[] = "models/zombie_escape/modelo_boton.mdl";
new const 
iEnt[] = "ZonaSegura";

new 
Float:fOrigin[3];

new 
Path[256];
new 
iMap[90]; 
new 
iRuta[900]; 

new 
g_isTouch33 ];

native get_exp(id);
native set_expidvalue );
native get_ptsid );
native set_ptsidvalue );

#define reward 20

public plugin_init()
{
    
register_plugin(iPlugin[0], iPlugin[1], iPlugin[2])
    
// Add your own code here
    
    
RegisterHam(Ham_Use"func_button""HamUseButton");
    
    
register_event("HLTV""event_RoundStart""a""1=0""2=0");
    
    
register_clcmd("say /zona""f_Menu");
    
get_mapname(iMapcharsmax(iMap));
    
get_configsdir(Pathcharsmax(Path));
    
formatex(iRutacharsmax(iRuta), "%s/%s.ini"PathiMap);
    
    
ReadPos();
}
public 
plugin_precache() precache_model(Model);
public 
event_RoundStart()
{
    
arrayset(g_isTouchfalsesizeof(g_isTouch));
}
public 
HamUseButton(entvictim)
{
    if(!
ent || victim 32)
        return 
HAM_IGNORED
    
    
if(!is_user_alive(victim))
        return 
HAM_IGNORED
    
    
static szTarget[32];
    
entity_get_string(entEV_SZ_targetszTargetcharsmax(szTarget));
     
    if( 
equalszTarget"end_map" ) && is_user_alive(victim) &&  !g_isTouch[victim] )
    {    
        if(
is_user_connected(victim) && cs_get_user_team(victim) == CS_TEAM_CT)
        {
            
g_isTouchvictim ] = true;
            
            
set_dhudmessage2552550, -1.00.6501.03.0 );
            
show_dhudmessagevictim"TERMINASTE EL MAPA WACHIN!!!");
            
            
set_expvictimreward );
            
set_ptsvictim, ( get_ptsvictim ) + reward ) );
            
            
chatcolorvictim"^4%s^1 ^1Ganaste ^4%d^1 de ^4Experiencia^1 por llegar a la meta!"iPlugin[3], reward );
        }
    }
    
    return 
HAM_IGNORED
}
public 
f_Menu(id)
{
    if( ~
get_user_flagsid ) & ADMIN_RCON )
        return 
PLUGIN_HANDLED;
    
    new 
menu menu_create("Registrar Touch","hn_poner");
    
    
menu_additem(menu,"Registrar Entidad");
    
menu_additem(menu,"Borrar Entidad");
    
menu_additem(menu,"Guardar Entidad");
    
    
menu_display(idmenu);
    return 
PLUGIN_HANDLED;
}
public 
hn_poner(idmenuitem)
{
    if ( 
item == MENU_EXIT || ~get_user_flagsid ) & ADMIN_RCON )
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED;
    }
    switch(
item){
        case 
0:{
            new 
iOrigin[3]; get_user_origin(idiOrigin3);
            
IVecFVec(iOriginfOrigin); CreateEnt(fOrigin);
        }
        case 
1:{ 
            new 
iEntity = -1;
            while((
iEntity find_ent_by_class(iEntityiEnt)) != 0remove_entityiEntity );
            }
        case 
2SaveEnt(fOrigin);
    }
    
f_Menu(id);
    return 
PLUGIN_HANDLED;  


CreateEnt(const Float:Origin[3])
{
    new 
ent create_entity("func_button")
            
    if(!
is_valid_ent(ent))
        return 
PLUGIN_CONTINUE;
    
    
entity_set_string(entEV_SZ_classnameiEnt);
    
entity_set_string(entEV_SZ_target"end_map");
    
entity_set_int(entEV_INT_solidSOLID_BBOX);
    
entity_set_model(entModel);
    
    
#define INFENT_MINS { -16.0, -16.0, 0.0 }
    #define INFENT_MAXS { 16.0, 16.0, 72.0 }
    
entity_set_sizeentFloat:INFENT_MINSFloat:INFENT_MAXS );
    
engfunc(EngFunc_SetOriginentOrigin); 
    
    
set_rendering(entkRenderFxGlowShell125125125kRenderNormal16);
    
    
drop_to_floor(ent);
    return 
PLUGIN_HANDLED;
}
SaveEnt(const Float:Origin[3]){
    new 
iCoordenada[90]; formatex(iCoordenadacharsmax(iCoordenada),  "%.2f %.2f %.2f"Origin[0], Origin[1], Origin[2]);
    new 
szText[300];
    
    if(!
file_exists(iRuta)) {
        
log_amx("[ZE] Archivo '%s' No existe, pero lo creamos."iRuta);
        
write_file(iRuta"; Archivo creado automaticamente");
        
formatex(szTextcharsmax(szText), "; El mapa es %s:"iMap); write_file(iRutaszText);
        
write_file(iRuta"; Plugin Made By Hypnotize");
        
write_file(iRuta"; Las Coordenadas son:");
    }
    
write_file(iRutaiCoordenada);
}
public 
ReadPos()
{
    if(!
file_exists(iRuta)) {
        
client_print(0print_chat"[ZE] Archivo '%s' NO Existe."iRuta);
        return;
    }
    new 
iDat[40], iDat2[40], iDat3[40];
    new 
szLine[700], Float:iPoss[3];
    
    new 
filefile fopen(iRuta"r");
    while(
file && !feof(file))
    {
        
fgets(fileszLinecharsmax(szLine));
        
        if(
szLine[0] == ';' || szLine[0] == '/' && szLine[1] == '/' || !szLine[0])
            continue;
        
        
parseszLineiDatcharsmax(iDat), iDat2charsmax(iDat2), iDat3charsmax(iDat3));
        
        
iPoss] = str_to_floatiDat );
        
iPoss] = str_to_floatiDat2 );
        
iPoss] = str_to_floatiDat3 );
        
        
CreateEntiPoss );
    }
    
fclose(file);

stock chatcolor(id, const input[], any:...)
{
    static 
szMsg[191], msgSayText;
    
    if (!
msgSayText)
        
msgSayText get_user_msgid("SayText");
    
    
vformat(szMsg190input3);
    
    
replace_all(szMsg190"!g""^4");
    
replace_all(szMsg190"!y""^1");
    
replace_all(szMsg190"!team""^3");
    
    
message_begin(id MSG_ONE_UNRELIABLE MSG_BROADCASTmsgSayText, .player id);
    
write_byte(id id 33);
    
write_string(szMsg);
    
message_end();


Me parece un muy buen plugin, pero estas seguro que no tiene un bug o algun error? Whatever (Solo pregunto)
Ze_Jurassic_World_Z [52%]
Ze_Jumping_Area [37%]
(04/02/2019, 05:15 PM)kikizon2 escribió: Me voy por un tiempo y cuando regreso veo esto... Oh god why
Responder
#3
Usar write_file es muy malo.
Plugins:
En GitHub
Responder
#4
(05/02/2019, 04:35 PM)w0w escribió: Usar write_file es muy malo.

por que?
Responder
#5
(05/02/2019, 09:53 PM)hud escribió:
(05/02/2019, 04:35 PM)w0w escribió: Usar write_file es muy malo.

por que?

Creo que hay nuevas funciones que hacen mejor el trabajo de write_file, puedo estar equivocado pero creo que leí algo así hace un par de meses.
[Imagen: ZPChileOficial.png]

[Imagen: b_350_20_323957_202743_f19a15_111111.png]
Zombie Plague Chile

Discord AMXX: Click URL invitación
Venta Jailbreak: Click aca
Responder
#6
(05/02/2019, 09:53 PM)hud escribió:
(05/02/2019, 04:35 PM)w0w escribió: Usar write_file es muy malo.

por que?

Porque lo pone en la documentación, se lleva demaiados recursos, hay natives mejores.
Plugins:
En GitHub
Responder
#7
(06/02/2019, 03:39 AM)w0w escribió:
(05/02/2019, 09:53 PM)hud escribió:
(05/02/2019, 04:35 PM)w0w escribió: Usar write_file es muy malo.

por que?

Porque lo pone en la documentación, se lleva demaiados recursos, hay natives mejores.

a si tenes razón, en mi cabeza pensé que era esa la native.

Usa fprintf Hypnotize.

(06/02/2019, 02:11 AM)metita escribió: Creo que hay nuevas funciones que hacen mejor el trabajo de write_file, puedo estar equivocado pero creo que leí algo así hace un par de meses.

estas en lo correcto.
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)