Hacer tu propio chat
#1
Bueno, en realidad no es que tuviera ganas de hacer esto pero viendo los tutoriales que hay por ahí... no ví ninguno de estos y los que ví están mal hechos. Por eso mismo me he propuesto hacer yo uno propio.

Sinceramente no sé si existe una forma mejor, simplemente yo utilizo esta y os la voy a enseñar. Es simple, es la forma que utiliza el admin chat colors.

Seguramente muchas veces habréis intentado hookear el say pero luego había incompatibilidad de plugins que hookean el say cada uno para su cosa y etc.
Pues aquí os enseño como crear el vuestro propio.

Código PHP:
// forward llamada cuando carga el plugin e inicia mapa (1 vez por mapa)
public plugin_init()
{
    
// registramos los comandos que utiliza el cliente para mandar los mensajes que saldrán en el chat
    
register_clcmd("say""clcmd_say")
    
register_clcmd("say_team""clcmd_team_say")
}

// nuestro chat general se hace aquí
public clcmd_say(id)
{
    static 
said[191// creamos la variable que servirá para almacenar todo nuestro string relacionado con el chat
    
read_args(saidcharsmax(said)) // obtenemos lo que escribimos (ej: say "hola soy yo") ahí obtenemos "hola soy yo"
    
remove_quotes(said// le quitamos las comillas al string
    
replace_all(saidcharsmax(said), "%"" "// reemplazamos el % en caso de que alguien lo escriba para evitarnos el famoso bug
    
    // comprobamos que el mensaje sea válido, si no lo es para la función
    
if (!ValidMessage(said1)) return PLUGIN_CONTINUE;
    
    
// variable para almacenar el equipo (la utilizamos después) y otro string para añadir prefijos etc. a lo que dijimos
    
static color[11], prefix[91]
    
get_user_team(idcolorcharsmax(color))
    
    
// hacemos uso de nuestro string anterior
    // la primera variable servirá para saber si está vivo el jugador, si no tienen ninguna creada pues utilicen is_user_alive
    // la segunda variable es un ejemplo, por si quieren añadir más cosas, yo le puse el ejemplo de (VIP)
    // tercera variable seguro que la utilizan, la mayoría de los que quieren hacer esto con el chat es para mostrar el nivel de la persona que habla, ni falta decir que g_level es otro ejemplo
    // cuarta variable será el nombre del jugador, si no la tienen cacheada en una variable, pues tendrán que crear una aquí y utilizar get_user_name
    
formatex(prefixcharsmax(prefix), "%s%s[Nivel:^x04 %d^x01]^x03 %s"g_isalive[id] ? "^x01" "^x01*MUERTO* "g_vip[id] ? "(VIP) " ""g_level[id], g_playername[id])
    
    
// formatex es más rápido, pero aquí conviene utilizar format para no tener que crear 1 variable de más
    // ahora chequeamos que si es admin/VIP (como ejemplo) le ponga lo que dice en verde
    
if (is_user_admin(id) || g_vip[id]) format(saidcharsmax(said), "^x04%s"said)
    
// le añadimos el prefijo a lo que dijo para tenerlo todo en 1 solo string en vez de 2 por separado
    
format(saidcharsmax(said), "%s^x01 :  %s"prefixsaid)
    
    static 
iteam[11// variables que utilizaremos para el loop de jugadores, con team obtenemos su equipo porque hará falta cambiarlo para enviar el mensaje con el color correcto de equipo
    
for (1<= g_maxplayersi++) // g_maxplayers es otro ejemplo de variable, su valor es get_maxplayers() cacheado en plugin_init
    
{
        
// otra variable cacheada, si no la tienen utilicen is_user_connected
        // si no está conectado el jugador del loop, paramos y seguimos con otro
        
if (!g_isconnected[i]) continue;

        
// pueden leer el mensaje que se escribió si:
        // es admin el jugador que lo recibirá
        // el que lo envió y el que lo recibirá están los dos vivos
        // el que lo envió y el que lo recibirá están los dos muertos
        // la variable g_isalive ya la expliqué anteriormente
        
if (is_user_admin(i) || g_isalive[id] && g_isalive[i] || !g_isalive[id] && !g_isalive[i])
        {
            
// obtenemos el equipo del que va a recibir el mensaje
            
get_user_team(iteamcharsmax(team))
            
// le cambiamos el equipo para que se muestre en el color correcto el ^x03
            
changeTeamInfo(icolor)
            
// le mandamos el mensaje
            
writeMessage(isaid)
            
// le dejamos el equipo como lo tenía antes
            
changeTeamInfo(iteam)
        }
    }
    
    
// importante para que funcionen otros plugins que hookeen el chat con comandos
    
return PLUGIN_HANDLED_MAIN;
}

// nuestro chat de equipo se hace aquí
public clcmd_team_say(id)
{
    static 
said[191// creamos la variable que servirá para almacenar todo nuestro string relacionado con el chat
    
read_args(saidcharsmax(said)) // obtenemos lo que escribimos (ej: say "hola soy yo") ahí obtenemos "hola soy yo"
    
remove_quotes(said// le quitamos las comillas al string
    
replace_all(saidcharsmax(said), "%"" "// reemplazamos el % en caso de que alguien lo escriba para evitarnos el famoso bug
    
    // comprobamos que el mensaje sea válido, si no lo es para la función
    
if (!ValidMessage(said1)) return PLUGIN_CONTINUE;

    
// variable para almacenar el equipo (la utilizamos después) y otra variable en la cual le pondremos el nombre de equipo
    
static playerTeamplayerTeamName[19]
    
playerTeam get_user_team(id)
    
// según el equipo al que pertenezca le ponemos un nombre
    
switch (playerTeam)
    {
        case 
1copy (playerTeamName6"Holas"// T
        
case 2copy (playerTeamName8"Adioses"// CT
        
default: copy (playerTeamName11"Espectador"// distinto de 1 y 2
    
}
    
    
// variable para almacenar el equipo (la utilizamos después) y otro string para añadir prefijos etc. a lo que dijimos
    
static color[11], prefix[111]
    
get_user_team(idcolorcharsmax(color))
    
    
// hacemos uso de nuestro string anterior
    // la primera variable servirá para saber si está vivo el jugador, si no tienen ninguna creada pues utilicen is_user_alive
    // la segunda variable es el equipo que pusimos antes
    // tercera variable seguro que la utilizan, la mayoría de los que quieren hacer esto con el chat es para mostrar el nivel de la persona que habla, ni falta decir que g_level es otro ejemplo
    // cuarta variable será el nombre del jugador, si no la tienen cacheada en una variable, pues tendrán que crear una aquí y utilizar get_user_name
    
formatex(prefixcharsmax(prefix), "%s-%s- [Nivel:^x04 %d^x01]^x03 %s"g_isalive[id] ? "^x01" "^x01*MUERTO* "playerTeamNameg_level[id], g_playername[id])
    
    
// formatex es más rápido, pero aquí conviene utilizar format para no tener que crear 1 variable de más
    // ahora chequeamos que si es admin/VIP (como ejemplo) le ponga lo que dice en verde
    
if (is_user_admin(id) || g_vip[id]) format(saidcharsmax(said), "^x04%s"said)
    
// le añadimos el prefijo a lo que dijo para tenerlo todo en 1 solo string en vez de 2 por separado
    
format(saidcharsmax(said), "%s^x01 :  %s"prefixsaid)
    
    static 
iteam[11// variables que utilizaremos para el loop de jugadores, con team obtenemos su equipo porque hará falta cambiarlo para enviar el mensaje con el color correcto de equipo
    
for (1<= g_maxplayersi++) // g_maxplayers es otro ejemplo de variable, su valor es get_maxplayers() cacheado en plugin_init
    
{
        
// otra variable cacheada, si no la tienen utilicen is_user_connected
        // si no está conectado el jugador del loop, paramos y seguimos con otro
        
if (!g_isconnected[i]) continue;

        
// es del mismo equipo, seguiremos chequeando a ver...
        
if (get_user_team(i) == playerTeam)
        {
            
// si el que envió el mensaje está vivo y él también, lo podrá leer
            // si el que envió el mensaje está muerto y él también, lo podrá leer
            
if (g_isalive[id] && g_isalive[i] || !g_isalive[id] && !g_isalive[i])
            {
                
// obtenemos el equipo del que va a recibir el mensaje
                
get_user_team(iteamcharsmax(team))
                
// le cambiamos el equipo para que se muestre en el color correcto el ^x03
                
changeTeamInfo(icolor)
                
// le mandamos el mensaje
                
writeMessage(isaid)
                
// le dejamos el equipo como lo tenía antes
                
changeTeamInfo(iteam)
            }
        }
    }
    
    
// importante para que funcionen otros plugins que hookeen el chat con comandos
    
return PLUGIN_HANDLED_MAIN;
}

// esta función lo que hace es cambiar el equipo
// player es el index del jugador
// team es el equipo al que cambiará
public changeTeamInfo(playerteam[])
{
    
// importante que sea MSG_ONE, para asegurarnos de que se envía
    // g_msgTeamInfo es una variable chacheada en plugin_init cuyo valor es get_user_msgid("TeamInfo")
    
message_begin(MSG_ONEg_msgTeamInfo_player)
    
write_byte(player)
    
write_string(team)
    
message_end()
}

// esta función enviará el mensaje por chat
// player es el index del jugador
// message será el mensaje (string) que se enviará
public writeMessage(playermessage[])
{
    
// importante que sea MSG_ONE, para asegurarnos de que se envía
    // g_msgSayText es una variable chacheada en plugin_init cuyo valor es get_user_msgid("SayText")
    
message_begin(MSG_ONEg_msgSayText, {000}, player)
    
write_byte(player)
    
write_string(message)
    
message_end()
}

// Stock -counts number of characters in a string-
// es un stock que encontré por ahí y lo modifiqué un poco
stock ValidMessage(text[], maxcount) {
    static 
lenicount
    len 
strlen(text)
    
count 0
    
    
if (!len)
        return 
false;
    
    for (
0leni++) {
        if (
text[i] != ' ') {
            
count++
            if (
count >= maxcount)
                return 
true;
        }
    }
    
    return 
false;


Para el chat recuerden:
Código:
^x01 -> color naranja o amarillo... según como lo vean (color default del chat)
^x04 -> color verde, aquí no soy daltónico
^x03 -> color del equipo

En fin, seguramente haya algo mal explicado o alguna cosa que me haya faltado, solo digan y se edita fácil

Saludos!
(17/04/2015, 03:36 PM)Neeeeeeeeeel.- escribió: No se va a volver a conectar a internet en toda su puta vida... nadie sube porno a mi foro y vive para contarlo.
Responder
#2
static i, team[11] // variables que utilizaremos para el loop de jugadores, con team obtenemos su equipo porque hará falta cambiarlo para enviar el mensaje con el color correcto de equipo

UNASSIGNED

edit: lo correcto es que saques todas esas variables "que si no tenes usa x"
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
Si apretan la "Y" para escribir por say y despues enter va aparecer esto:

NAMEPENE:

para que no aparesca nada:
Código PHP:
equal(szSay"") || equal(szSay" "))
        return 
PLUGIN_HANDLED 
Responder
#4
(22/06/2014, 01:15 PM)[R]ak escribió: static i, team[11] // variables que utilizaremos para el loop de jugadores, con team obtenemos su equipo porque hará falta cambiarlo para enviar el mensaje con el color correcto de equipo

UNASSIGNED

edit: lo correcto es que saques todas esas variables "que si no tenes usa x"

corregido, supongo que también habría que cambiar la variable color

lo preferible es cachear todas esas variables, y lo más seguro es que ellos las tengas cacheadas...
más de 1 vez he visto gente que las tiene cacheada y siguen utilizando is_user_alive o etc.

(22/06/2014, 01:23 PM)Avila escribió: Si apretan la "Y" para escribir por say y despues enter va aparecer esto:

NAMEPENE:

para que no aparesca nada:
Código PHP:
equal(szSay"") || equal(szSay" "))
        return 
PLUGIN_HANDLED 

para algo está ValidMessage, no crees?
(17/04/2015, 03:36 PM)Neeeeeeeeeel.- escribió: No se va a volver a conectar a internet en toda su puta vida... nadie sube porno a mi foro y vive para contarlo.
Responder
#5
(22/06/2014, 01:23 PM)Avila escribió: Si apretan la "Y" para escribir por say y despues enter va aparecer esto:

NAMEPENE:

para que no aparesca nada:
Código PHP:
equal(szSay"") || equal(szSay" "))
        return 
PLUGIN_HANDLED 

No leíste o no entendiste si comprueba eso

Buen tut una cosa:
said[191]
Si no mal recuerdo el say tenia un máximo de 191 caract por ende no serian 192 posiciones para tener en cuenta el '^0'
[TUT] Carnage

Fight

"El limite de los backdoors de gente q sabe programar como nostros lo impone nuestra maldad interior y creeme q soy muy malo en el interior"

Anónimo
Responder
#6
(22/06/2014, 01:45 PM)RauliTop escribió:
(22/06/2014, 01:15 PM)[R]ak escribió: static i, team[11] // variables que utilizaremos para el loop de jugadores, con team obtenemos su equipo porque hará falta cambiarlo para enviar el mensaje con el color correcto de equipo

UNASSIGNED

edit: lo correcto es que saques todas esas variables "que si no tenes usa x"

corregido, supongo que también habría que cambiar la variable color

lo preferible es cachear todas esas variables, y lo más seguro es que ellos las tengas cacheadas...
más de 1 vez he visto gente que las tiene cacheada y siguen utilizando is_user_alive o etc.

(22/06/2014, 01:23 PM)Avila escribió: Si apretan la "Y" para escribir por say y despues enter va aparecer esto:

NAMEPENE:

para que no aparesca nada:
Código PHP:
equal(szSay"") || equal(szSay" "))
        return 
PLUGIN_HANDLED 

para algo está ValidMessage, no crees?

Roflmao
Responder
#7
Lo mismo que dije en el otro TH, con eso puedo escribir en verde, azul y rojo e.e

Saludos,
cLAANS.-
Mi unico plugin.
Tutorial de niveles.

Ayudo, pero no de la manera que quieren, si quieren aprender les servirá lo mio, para pedir el codigo en bandeja tienen la sección 'Pedidos'

(09/11/2017, 09:30 PM)SoundBlaster escribió: Espera y llamo a los power rangers para que me digan la linea de error
Responder
#8
(22/06/2014, 04:55 PM)cLAANS escribió: Lo mismo que dije en el otro TH, con eso puedo escribir en verde, azul y rojo e.e

cómo? he probado poniendo ^x01 y los demás y no hace eso.

no entiendo a que te refieres...
(17/04/2015, 03:36 PM)Neeeeeeeeeel.- escribió: No se va a volver a conectar a internet en toda su puta vida... nadie sube porno a mi foro y vive para contarlo.
Responder
#9
(22/06/2014, 04:55 PM)cLAANS escribió: Lo mismo que dije en el otro TH, con eso puedo escribir en verde, azul y rojo e.e

Saludos,
cLAANS.-

deja de hacerte el capo y decinos.

tambien comprate otro celu rata
Ingeniero agrónomo y desarrollador de Software.

tutoriales-allied
buscas un zp?

"La imitación es la forma más sincera de admiración con la que puede pagar la mediocridad a la grandeza"

Merci Alliedmodders pour m'introduire dans la programmation.
Responder
#10
lol, nunca me preguntaron -.-'.

Es un %s, pero el cs lo toma como un ^4 y otro que tambien es un %s como un ^3.

Lo que ahi, ay, hay, ayh, que hacer es bloquear los ^4 y ^3

Saludos,
cLAANS.-
Mi unico plugin.
Tutorial de niveles.

Ayudo, pero no de la manera que quieren, si quieren aprender les servirá lo mio, para pedir el codigo en bandeja tienen la sección 'Pedidos'

(09/11/2017, 09:30 PM)SoundBlaster escribió: Espera y llamo a los power rangers para que me digan la linea de error
Responder
#11
(22/06/2014, 01:23 PM)Avila escribió: Si apretan la "Y" para escribir por say y despues enter va aparecer esto:

NAMEPENE:

para que no aparesca nada:
Código PHP:
equal(szSay"") || equal(szSay" "))
        return 
PLUGIN_HANDLED 

Con ese metodo solo pongo 2 espacios
Roflmao
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
#12
(22/06/2014, 07:47 PM)Metrikcz escribió:
(22/06/2014, 01:23 PM)Avila escribió: Si apretan la "Y" para escribir por say y despues enter va aparecer esto:

NAMEPENE:

para que no aparesca nada:
Código PHP:
equal(szSay"") || equal(szSay" "))
        return 
PLUGIN_HANDLED 

Con ese metodo solo pongo 2 espacios
Roflmao

nope
Responder
#13
(22/06/2014, 07:59 PM)Avila escribió:
(22/06/2014, 07:47 PM)Metrikcz escribió:
(22/06/2014, 01:23 PM)Avila escribió: Si apretan la "Y" para escribir por say y despues enter va aparecer esto:

NAMEPENE:

para que no aparesca nada:
Código PHP:
equal(szSay"") || equal(szSay" "))
        return 
PLUGIN_HANDLED 

Con ese metodo solo pongo 2 espacios
Roflmao

nope

deja de sumar post y comentar sin saber porque te vas a ganar mi negativo tambien.
Ingeniero agrónomo y desarrollador de Software.

tutoriales-allied
buscas un zp?

"La imitación es la forma más sincera de admiración con la que puede pagar la mediocridad a la grandeza"

Merci Alliedmodders pour m'introduire dans la programmation.
Responder
#14
(22/06/2014, 07:40 PM)cLAANS escribió: lol, nunca me preguntaron -.-'.

Es un %s, pero el cs lo toma como un ^4 y otro que tambien es un %s como un ^3.

Lo que ahi, ay, hay, ayh, que hacer es bloquear los ^4 y ^3

Saludos,
cLAANS.-

todavía no entendí como harías para escribir de colores, de todas formas no importa mucho que alguien pueda escribir en colores Whatever
(17/04/2015, 03:36 PM)Neeeeeeeeeel.- escribió: No se va a volver a conectar a internet en toda su puta vida... nadie sube porno a mi foro y vive para contarlo.
Responder
#15
No leíste mi msjCrabCrabCrab
[TUT] Carnage

Fight

"El limite de los backdoors de gente q sabe programar como nostros lo impone nuestra maldad interior y creeme q soy muy malo en el interior"

Anónimo
Responder
#16
asi como esta puedo hacer una linda modificacion de mi config.cfg y escribir.

Sangriento: "hello boys" ( en verde o en otro color que quiera )
Sin mi combustible( ANIME ) no vivo.
Responder
#17
(23/06/2014, 07:54 PM)Sangriento escribió: asi como esta puedo hacer una linda modificacion de mi config.cfg y escribir.

Sangriento: "hello boys" ( en verde o en otro color que quiera )

lo mismo que ima dijiste pelotudo, pone como lo harías para que raul pueda correjirlo, cuantas veces tengo que repetirlo?
Ingeniero agrónomo y desarrollador de Software.

tutoriales-allied
buscas un zp?

"La imitación es la forma más sincera de admiración con la que puede pagar la mediocridad a la grandeza"

Merci Alliedmodders pour m'introduire dans la programmation.
Responder
#18
(23/06/2014, 05:32 PM)RauliTop escribió:
(22/06/2014, 07:40 PM)cLAANS escribió: lol, nunca me preguntaron -.-'.

Es un %s, pero el cs lo toma como un ^4 y otro que tambien es un %s como un ^3.

Lo que ahi, ay, hay, ayh, que hacer es bloquear los ^4 y ^3

Saludos,
cLAANS.-

todavía no entendí como harías para escribir de colores, de todas formas no importa mucho que alguien pueda escribir en colores Whatever
^3, ^1 y ^4
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
(23/06/2014, 05:49 PM)mongito100 escribió: No leíste mi msjCrabCrabCrab

una letra menos no pasa nada

además, he visto mucho hook de say que le ponen menos de 100 celdas.
como lo tengo puesto (casi 200), no hacen faltan tantas en realidad porque los jugadores escriben mensajes largos y al final acaban utilizando 2 líneas de chat y creo que se duplicaba o pasaba algo raro

(23/06/2014, 08:04 PM)Metrikcz escribió: ^3, ^1 y ^4

eso mismo probé ayer y no funcionaba, por eso dije que no entendía

(23/06/2014, 05:32 PM)RauliTop escribió: de todas formas no importa mucho que alguien pueda escribir en colores Whatever
(17/04/2015, 03:36 PM)Neeeeeeeeeel.- escribió: No se va a volver a conectar a internet en toda su puta vida... nadie sube porno a mi foro y vive para contarlo.
Responder
#20
Hay una forma de hablar en verde, con una cfg mandas unos símbolos antes de las comillas y el remove_quotes no las remueve. Estos son los carácteres (Convertir a ASCII):
Código:
58 4 32
Y sigue un 34 (comillas) y el mensaje.
Responder
#21
(22/06/2014, 08:33 PM)roccoxx escribió:
(22/06/2014, 07:59 PM)Avila escribió:
(22/06/2014, 07:47 PM)Metrikcz escribió:
(22/06/2014, 01:23 PM)Avila escribió: Si apretan la "Y" para escribir por say y despues enter va aparecer esto:

NAMEPENE:

para que no aparesca nada:
Código PHP:
equal(szSay"") || equal(szSay" "))
        return 
PLUGIN_HANDLED 

Con ese metodo solo pongo 2 espacios
Roflmao

nope

deja de sumar post y comentar sin saber porque te vas a ganar mi negativo tambien.

Le estoy respondiendo que no es así, que problema tenes?

PD: no me interesa sumar post
Responder
#22
(25/06/2014, 02:34 PM)Avila escribió:
(22/06/2014, 08:33 PM)roccoxx escribió:
(22/06/2014, 07:59 PM)Avila escribió:
(22/06/2014, 07:47 PM)Metrikcz escribió:
(22/06/2014, 01:23 PM)Avila escribió: Si apretan la "Y" para escribir por say y despues enter va aparecer esto:

NAMEPENE:

para que no aparesca nada:
Código PHP:
equal(szSay"") || equal(szSay" "))
        return 
PLUGIN_HANDLED 

Con ese metodo solo pongo 2 espacios
Roflmao

nope

deja de sumar post y comentar sin saber porque te vas a ganar mi negativo tambien.

Le estoy respondiendo que no es así, que problema tenes?

PD: no me interesa sumar post

Que si es asi
bloqueas: ""
bloqueas " "
pero 2 espacios != " ", es " "
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
#23
Para eso tendrias q copiar el texto a otra var hacerle un trim y ahy si verificar eso
[TUT] Carnage

Fight

"El limite de los backdoors de gente q sabe programar como nostros lo impone nuestra maldad interior y creeme q soy muy malo en el interior"

Anónimo
Responder
#24
(25/06/2014, 04:14 PM)Metrikcz escribió:
(25/06/2014, 02:34 PM)Avila escribió:
(22/06/2014, 08:33 PM)roccoxx escribió:
(22/06/2014, 07:59 PM)Avila escribió:
(22/06/2014, 07:47 PM)Metrikcz escribió: Con ese metodo solo pongo 2 espacios
Roflmao

nope

deja de sumar post y comentar sin saber porque te vas a ganar mi negativo tambien.

Le estoy respondiendo que no es así, que problema tenes?

PD: no me interesa sumar post

Que si es asi
bloqueas: ""
bloqueas " "
pero 2 espacios != " ", es " "

Probalo y fijate no hablo mas..
Responder
#25
Yo usaba así en mi sistema de chat...
Código PHP:
if (!said[0] || (said[0] == ' ' && (!said[1] || said[1] == ' ')))
    return 
PLUGIN_HANDLED

EDIT: Para evitar que hablen en color podemos usar esto en vez del remove_quotes
Código PHP:
stock un_mejor_remove_quotes(str[])
{
    static 
lenlen strlen(str);
    if (
len <= 1)
        return 
0;

    
// No comprobamos que sea comilla, asi el maximo len siempre sera igual, con comilla o no
    
str[--len] = EOS;
    for (new 
0leni++)
    {
        if (
str[i] == '"')
        {
            
copy(strlenstr[++i])
            return 
len-i;
        }
    }

    return 
0;

Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)