Ayuda Callfunc_begin.
#1
Tengo un problema con call func, en el primer plugin tengo esto:

Código PHP:
if( callfunc_begin("dar_dinero""Test.amxx") == 
{
    
callfunc_push_int(id);
    
callfunc_end();
    return;


y en el segundo plugin esto:

Código PHP:
public dar_dinero(id)
{
    if (!
g_UsedDinero[id])
    {
        
Dinero[id] += 5000
        g_UsedDinero
[id] = true
        say
(id"Encontraste 5000 Pesos Botados")
    }


y no funciona, la public que quiero abrir se llama "dar_dinero" y el plugin "Test.amxx" y no me sirve, no se habré, alguna solucion ?, Gracias Gran sonrisa
Responder
#2
Usa una native.. mas facil
Hi Milashkasiya CrabCrab

Soy un #Panda.. Soy solo un tipo que parece #común pero soy todo lo contrario; alguien #atípico en esta sociedad actual

[Imagen: xl0jvd-5.png]
Link
Responder
#3
a lo mejor si cambias ese say(id, ...) por client_print(id, print_chat, "Encontraste 5000 pesos Botados")

edito: probé esa funcion en un plugin y me anda bien, a lo mejor te anda pero no estás mandando el mensaje correctamente.
Responder
#4
(06/01/2014, 10:05 PM)[R]ak escribió: Usa una native.. mas facil

Estuve viendo como se usa las natives pero no se como se usa, me ayudas ? Gracias.

(06/01/2014, 10:06 PM)internel escribió: a lo mejor si cambias ese say(id, ...) por client_print(id, print_chat, "Encontraste 5000 pesos Botados")

edito: probé esa funcion en un plugin y me anda bien, a lo mejor te anda pero no estás mandando el mensaje correctamente.

No anda nada, Porque esos 5000 Se suman a un dinero que tengo y no se suman :S
Responder
#5
1 plugin
client_cmd(id, "givemoney")

2 plugin
// Plugin init
register_clcmd("givemoney", "dar_dinero")
Todos los MODS VHL totalmente gratuitos  Descarga Aqui

Mis plugins:
STEAM: https://steamcommunity.com/id/Metrikcz/
FB: fb.com/rwoong
Venta plugins a pedido en México mándame MP
Responder
#6
(06/01/2014, 10:18 PM)xGreat escribió:
(06/01/2014, 10:05 PM)[R]ak escribió: Usa una native.. mas facil

Estuve viendo como se usa las natives pero no se como se usa, me ayudas ? Gracias.

(06/01/2014, 10:06 PM)internel escribió: a lo mejor si cambias ese say(id, ...) por client_print(id, print_chat, "Encontraste 5000 pesos Botados")

edito: probé esa funcion en un plugin y me anda bien, a lo mejor te anda pero no estás mandando el mensaje correctamente.

No anda nada, Porque esos 5000 Se suman a un dinero que tengo y no se suman :S

mmm, como dice [R]ak te conviene utilizar natives para cuando trabajes con variables.

te recomiendo usar las natives, o sino la segunda opción es la que te dice Metrikcz la cual no te la sugiero mucho porque podría saturar al servidor con comandos del cliente, pero funciona igual y te lleva a lo mismo, asi que intenta con cualquiera de las 2 opciones a ver cual te resulta más cómodo.
Responder
#7
(06/01/2014, 10:53 PM)Metrikcz escribió: 1 plugin
client_cmd(id, "givemoney")

2 plugin
// Plugin init
register_clcmd("givemoney", "dar_dinero")

No comentes cosas absurdas
Hi Milashkasiya CrabCrab

Soy un #Panda.. Soy solo un tipo que parece #común pero soy todo lo contrario; alguien #atípico en esta sociedad actual

[Imagen: xl0jvd-5.png]
Link
Responder
#8
(06/01/2014, 11:05 PM)internel escribió:
(06/01/2014, 10:18 PM)xGreat escribió:
(06/01/2014, 10:05 PM)[R]ak escribió: Usa una native.. mas facil

Estuve viendo como se usa las natives pero no se como se usa, me ayudas ? Gracias.

(06/01/2014, 10:06 PM)internel escribió: a lo mejor si cambias ese say(id, ...) por client_print(id, print_chat, "Encontraste 5000 pesos Botados")

edito: probé esa funcion en un plugin y me anda bien, a lo mejor te anda pero no estás mandando el mensaje correctamente.

No anda nada, Porque esos 5000 Se suman a un dinero que tengo y no se suman :S

mmm, como dice [R]ak te conviene utilizar natives para cuando trabajes con variables.

te recomiendo usar las natives, o sino la segunda opción es la que te dice Metrikcz la cual no te la sugiero mucho porque podría saturar al servidor con comandos del cliente, pero funciona igual y te lleva a lo mismo, asi que intenta con cualquiera de las 2 opciones a ver cual te resulta más cómodo.

Como dije antes, no se usar natives, que alguien me ayude o que me enseñe a usar natives :S
Responder
#9
en un plugin pones:

Código PHP:
#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Crear Natives"
#define VERSION "1.0"
#define AUTHOR "Internel"


/* AQUÍ VARIABLES */

new g_dinero[33]

public 
plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
}

public 
plugin_natives()
{
    
register_library("prueba");
    
    
register_native("f_obt_dinero""native_obt_dinero"1);
    
register_native("f_set_dinero""native_set_dinero"1)
    
}

public 
native_obt_dinero(id)
    return 
g_dinero[id];

public 
native_set_dinero(idcantidad)
{
    
g_dinero[id] = cantidad;


entonces en el segundo plugin solo llamas así:

Código PHP:
#include <prueba>

public tu_funcion(id)
{
    
f_set_dinero(idf_obt_dinero(id) + 5000)


espero que funcione, cualquier cosa dime no mas xd
Responder
#10
Registras una librería q no chequeas
Crab

Gente haciendo copy paste
Hi Milashkasiya CrabCrab

Soy un #Panda.. Soy solo un tipo que parece #común pero soy todo lo contrario; alguien #atípico en esta sociedad actual

[Imagen: xl0jvd-5.png]
Link
Responder
#11
(06/01/2014, 11:29 PM)[R]ak escribió: Registras una librería q no chequeas
Crab

Gente haciendo copy paste

agh, se me olvidó el otro archivo xD

no es copy paste, es solo un código que habia escrito hace un tiempo.

El otro archivo que tienes que hacer es el include, creas un archivo de cero y pones esto:

Código PHP:
#if defined _prueba_included
  #endinput
#endif
#define _prueba_included

native f_obt_dinero(id);
native f_set_dinero(idcantidad

luego lo guardas como prueba.inc
Responder
#12
Sabes para que es register_library?
Hi Milashkasiya CrabCrab

Soy un #Panda.. Soy solo un tipo que parece #común pero soy todo lo contrario; alguien #atípico en esta sociedad actual

[Imagen: xl0jvd-5.png]
Link
Responder
#13
(06/01/2014, 11:59 PM)[R]ak escribió: Sabes para que es register_library?

registra el plugin como una librería a través de un archivo include con el nombre que le quiera dar.
así el sub-plugin registra ese include y tiene acceso a las funciones de la librería
Responder
#14
O.o u fail dude
Hi Milashkasiya CrabCrab

Soy un #Panda.. Soy solo un tipo que parece #común pero soy todo lo contrario; alguien #atípico en esta sociedad actual

[Imagen: xl0jvd-5.png]
Link
Responder
#15
plugin 2
public plugin_natives() register_native("dardinero", "dar_dinero", 1)

amxmodx.inc
native dardinero(id)

plugin 1
dardinero(id)
Todos los MODS VHL totalmente gratuitos  Descarga Aqui

Mis plugins:
STEAM: https://steamcommunity.com/id/Metrikcz/
FB: fb.com/rwoong
Venta plugins a pedido en México mándame MP
Responder
#16
Que alguien postee algo que sirva porfavor pacman
Responder
#17
(07/01/2014, 12:09 AM)[R]ak escribió: O.o u fail dude

entonces puedes explicar que es? así se evita tener el error del concepto
Responder
#18
(07/01/2014, 12:20 AM)xGreat escribió: Que alguien postee algo que sirva porfavor pacman

no has probado lo que acabo de postear ?
Todos los MODS VHL totalmente gratuitos  Descarga Aqui

Mis plugins:
STEAM: https://steamcommunity.com/id/Metrikcz/
FB: fb.com/rwoong
Venta plugins a pedido en México mándame MP
Responder
#19
es simple, yo las uso así y siempre me funciono:
Código PHP:
//en donde tenes la funcion a la que queres llamar:
public plugin_natives() register_native"Name_Native""Funcion"1/*Nombre de la native y el de la funcion,
                                                    el 1 me parece que es algo de los parametros*/
//en el plugin que llama a la funcion en el otro:
native Name_Native(args);
public 
asdasd(id)
         
Name_Native(id); 
Responder
#20
xGreat:

1.- Pone esto dentro de tu plugin del Test.sma

Código PHP:
public plugin_natives()
    
register_native("native_dar_dinero""dar_dinero"1

2.- Luego compilas.

3.- Abres tu otro plugin y al principio del plugin:
Código PHP:
native native_dar_dinero(id

4.- Luego en tu mismo plugin donde querias llamar con el call_func llamas a native_dar_dinero(id)

Ejemplo

Código PHP:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>

native native_dar_dinero(id)

public 
plugin_init() {
    
register_plugin("3""2""1")
    
register_clcmd("say /dinero""Function")
}

public Function(
idnative_dar_dinero(id
[Imagen: 76561197999970868.png]
Responder
#21
(07/01/2014, 03:04 AM)LA BANDA escribió: xGreat:

1.- Pone esto dentro de tu plugin del Test.sma

Código PHP:
public plugin_natives()
    
register_native("native_dar_dinero""dar_dinero"1

2.- Luego compilas.

3.- Abres tu otro plugin y al principio del plugin:
Código PHP:
native native_dar_dinero(id

4.- Luego en tu mismo plugin donde querias llamar con el call_func llamas a native_dar_dinero(id)

Ejemplo

Código PHP:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>

native native_dar_dinero(id)

public 
plugin_init() {
    
register_plugin("3""2""1")
    
register_clcmd("say /dinero""Function")
}

public Function(
idnative_dar_dinero(id
exactamente lo que puse yo...
Responder
#22
(07/01/2014, 04:33 AM)[Anti] escribió: exactamente lo que puse yo...

Dale
[Imagen: 76561197999970868.png]
Responder
#23
Solucionado, Vi un TUT de Roccoxx, Gracias igual a todos los que postearon. Sonrisa
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)