i geting errors
in this code i getting error expression expected i try to solve whole night but i cant
else if ( S_DELIM != null )
{
// --- 2 letters in tag
if ( GetTag( strPlayer ).len() == 2 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 3, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 3 letters in tag
else if ( GetTag( strPlayer ).len() == 3 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 4, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 4 letters in tag
else if ( GetTag( strPlayer ).len() == 4 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 5, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 5 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 5 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 6, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 6 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 6 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 7, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
}
}
in this cmds i getting error plr does not exists
else if ( cmd == "clanstats" )
{
(text) ? text = text : text = GetTag( plr.Name );
( plr ) ? text = GetTag( plr.Name ) : text = text;
if ( !text ) Msg( "Error, You no have tag do !clanstats [Clan]", player );
else
{
local Tag = GetTok( text, " ", 1 ).tolower();
if ( IsClanRegister( text ) )
{
if ( plr )
{
Kills <- ClanKills( GetTag( plr.Name ).tolower() ); Deaths <- ClanDeaths( GetTag( plr.Name ).tolower() ); Deads <- ClanDeads( GetTag( plr.Name ).tolower() ); Ratio <- GetRatio( Kills, Deaths, Deads );
( Ratio ) ? All( GetTag( plr.Name ) + "'s Stats - Kills " + Kills + " Deaths " + Deaths + " Deads " + Deads + " Ratio K/DD: " + Ratio ): All( GetTag( plr.Name ) + "' Stats - Kills " + Kills + " Deaths " + Deaths + " Deads " + Deads );
}
else if ( text )
{
local q = ::QuerySQL( sDB, "SELECT Clan, Kills, Deaths, Deads FROM ClanStats WHERE Clan='" + Tag + "' COLLATE NOCASE" );
local PKills = ::GetSQLColumnData( q, 1 ).tofloat(), PDeaths = ::GetSQLColumnData( q, 2 ).tofloat(), PDeads = ::GetSQLColumnData( q, 3 ).tofloat(), Ratio = GetRatio( PKills, PDeaths, PDeads );
( Ratio ) ? All( text + "'s Stats - Kills " + PKills + " Deaths " + PDeaths + " Deads " + PDeads + " Ratio K/DD: " + Ratio ): All( text + "' Stats - Kills " + PKills + " Deaths " + PDeaths + " Deads " + PDeads );
}
}
else Msg( "Error > " + text + " is no registered.", player );
}
}
in this function i getting error tostring does not exists
function FindPlayerClan( player, string )
{
string = string;
q <- QuerySQL( sDB, "SELECT * FROM ClanUsers WHERE Clans='" + GetTag( string ) + "' COLLATE NOCASE" );
DBName <- GetSQLColumnData( q, 1 ).tostring();
TCC <- TruncateClan;
if ( DBName.tolower().find( TCC( string.tolower() ) ) ) { PrivMessage( "Your Nick " + TCC( string ) + ", Clan: " + GetTag( string ), player ); } else { ClanKick( player ); return null; }
}
(https://forum.vc-mp.org/proxy.php?request=http%3A%2F%2Fi62.tinypic.com%2Fn46t5.png&hash=fc1dbda66ad0e2d1b5e7f540ce2154dda852558d)
Quote from: xxkillerxx on Sep 23, 2015, 08:30 AMi geting errors
in this code i getting error expression expected i try to solve whole night but i cant
else if ( S_DELIM != null )
{
// --- 2 letters in tag
if ( GetTag( strPlayer ).len() == 2 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 3, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 3 letters in tag
else if ( GetTag( strPlayer ).len() == 3 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 4, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 4 letters in tag
else if ( GetTag( strPlayer ).len() == 4 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 5, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 5 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 5 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 6, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 6 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 6 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 7, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
}
}
Is this GetTag or GetClanTag function?
If this is try this one
function GetTag( strPlayer )
{
local
D_DELIM = regexp(@"([\[(=^<]+\w+[\])=^>]+)"),
S_DELIM = regexp(@"(\w.+[.*=]+)"),
D_DELIM_res = D_DELIM.capture(strPlayer),
S_DELIM_res = S_DELIM.capture(strPlayer);
if ( D_DELIM_res != null )
{
return strPlayer.slice( D_DELIM_res[ 0 ].begin + 1, D_DELIM_res[ 0 ].end - 1 );
}
else if ( S_DELIM_res != null )
{
return strPlayer.slice( S_DELIM_res[ 0 ].begin, S_DELIM_res[ 0 ].end - 1 );
}
else return null;
}
Lol
@Zeeshan.Bhatti @xxkillerxx Is this your whole code?
If No Post whole in which expression expected
Killerx, I have updated you clanstats command try this one.. Sure its working fine.
else if ( cmd == "clanstats" )
{
Msg <- MessagePlayer;
All <- Message;
(text) ? text = text : text = GetTag( player.Name );
( player ) ? text = GetTag( player.Name ) : text = text;
if ( !text ) PrivMessage( "Error, You dont have tag do /clanstats", player );
else
{
local Tag = GetTok( text, " ", 1 ).tolower();
if ( IsClanRegister( text ) )
{
if ( player )
{
Kills <- ClanKills( GetTag( player.Name ).tolower() ); Deaths <- ClanDeaths( GetTag( player.Name ).tolower() ); Deads <- ClanDeads( GetTag( player.Name ).tolower() ); Ratio <- GetRatio( Kills, Deaths, Deads );
( Ratio ) ? All( GetTag( player.Name ) + "'s Stats - Kills " + Kills + " Deaths " + Deaths + " Deads " + Deads + " Ratio K/DD: " + Ratio ): All( GetTag( player.Name ) + "' Stats - Kills " + Kills + " Deaths " + Deaths + " Deads " + Deads );
}
else if ( text )
{
local q = ::QuerySQL( db, "SELECT Clan, Kills, Deaths, Deads FROM ClanStats WHERE Clan='" + Tag + "' COLLATE NOCASE" );
local PKills = ::GetSQLColumnData( q, 1 ).tofloat(), PDeaths = ::GetSQLColumnData( q, 2 ).tofloat(), PDeads = ::GetSQLColumnData( q, 3 ).tofloat(), Ratio = GetRatio( PKills, PDeaths, PDeads );
( Ratio ) ? eMessage( text + "'s Stats - Kills " + PKills + " Deaths " + PDeaths + " Deads " + PDeads + " Ratio K/DD: " + Ratio ): All( text + "' Stats - Kills " + PKills + " Deaths " + PDeaths + " Deads " + PDeads );
}
}
else PrivMessage( "Error > " + text + " is not registered.", player );
}
}
@Zeeshan.Bhatti pl0x Make Simple one for killerxx so he will know next time how to make :D
Quote from: FinchDon on Sep 23, 2015, 09:48 AM@Zeeshan.Bhatti pl0x Make Simple one for killerxx so he will know next time how to make :D
:D
And, try this one..
function FindPlayerClan( player, string )
{
string = string;
q <- QuerySQL( sDB, "SELECT * FROM ClanUsers WHERE Clans='" + GetTag( string ) + "' COLLATE NOCASE" );
DBName <- GetSQLColumnData( q, 1 ).string();
TCC <- TruncateClan;
if ( DBName.tolower().find( TCC( string.tolower() ) ) ) { PrivMessage( "Your Nick " + TCC( string ) + ", Clan: " + GetTag( string ), player ); } else { ClanKick( player ); return null; }
}
not works
and solve this too getting error expression expected and its function is following not getclantag
function TruncateClan(strPlayer)
else if ( S_DELIM != null )
{
// --- 2 letters in tag
if ( GetTag( strPlayer ).len() == 2 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 3, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 3 letters in tag
else if ( GetTag( strPlayer ).len() == 3 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 4, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 4 letters in tag
else if ( GetTag( strPlayer ).len() == 4 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 5, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 5 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 5 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 6, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 6 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 6 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 7, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
}
}
try this now
function TruncateClan(strPlayer)
else if ( S_DELIM != null )
{
// --- 2 letters in tag
if ( GetTag( strPlayer ).len() == 2 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 3, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 3 letters in tag
else if ( GetTag( strPlayer ).len() == 3 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 4, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 4 letters in tag
else if ( GetTag( strPlayer ).len() == 4 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 5, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 5 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 5 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 6, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 6 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 6 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 7, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
}
same error
try this
function TruncateClan(strPlayer)
if ( S_DELIM != null )
{
// --- 2 letters in tag
if ( GetTag( strPlayer ).len() == 2 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 3, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 3 letters in tag
else if ( GetTag( strPlayer ).len() == 3 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 4, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 4 letters in tag
else if ( GetTag( strPlayer ).len() == 4 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 5, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 5 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 5 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 6, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 6 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 6 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 7, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
}
or this
function TruncateClan(strPlayer)
{
if ( S_DELIM != null )
// --- 2 letters in tag
else if ( GetTag( strPlayer ).len() == 2 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 3, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 3 letters in tag
else if ( GetTag( strPlayer ).len() == 3 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 4, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 4 letters in tag
else if ( GetTag( strPlayer ).len() == 4 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 5, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 5 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 5 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 6, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 6 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 6 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 7, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
}
}
same error
help me
This is last one :(
function TruncateClan(strPlayer)
if ( S_DELIM != null )
{
// --- 2 letters in tag
else if ( GetTag( strPlayer ).len() == 2 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 3, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 3 letters in tag
else if ( GetTag( strPlayer ).len() == 3 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 4, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 4 letters in tag
else if ( GetTag( strPlayer ).len() == 4 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 5, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 5 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 5 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 6, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
// --- 6 letters in tag no found for valid
else if ( GetTag( strPlayer ).len() == 6 )
{ return strPlayer.slice( S_DELIM[ 0 ].begin + 7, S_DELIM[ 0 ].end + strPlayer.len() - FindClanTag(strPlayer).len() ); }
}
now not working any solution and any expert who can help me
Just Check at first of code you miss expression {
on which first code
Stop scripting, else post your whole clanstats, so that we can actually test it
take it
@KAKAN as isay in uper posts i gettng error string does not exists in which function i posted in my uper posts ok
only the error of string does not exists error remains all solved by zeeshan
http://www.mediafire.com/download/041x08d7l4gksdk/Clanstats+by+P%26B.rar
and addmanager cmds not works its say i does not exists when i remove i then says params does not exists when i remove it cmds leaves works
else if ( cmd == "addmanager" )
{
// This command is for any admin
if ( !text ) Msg( "Syntax > !addmanager <[Tag]Owner> <[Tag]Leader> <[Tag]Leader2> <Clan-Without-Symbol>", player );
else if ( i <= 3 ) Msg( "Syntax > !addmanager <[Tag]Owner> <[Tag]Leader> <[Tag]Leader2> <Clan-Without-Symbol>", player );
else
{
if ( !IsClanRegister( params[ 3 ].tolower() ) ) Msg( "Error > The clan " + params[ 3 ] + " is no register!", player );
else {
local Owner = params[ 0 ], Manager1 = params[ 1 ], Manager2 = params[ 2 ], Clan = params[ 3 ];
if ( !GetTag( Owner ) ) PM( "Error > The owner need clan!!", player );
else if ( !GetTag( Manager1 ) ) PM( "Error > The Manager 1 need clan!!", player );
else if ( !GetTag( Manager2 ) ) PM( "Error > The Manager 2 need clan!!", player );
All( player.Name + "'s added owner/managers in Clan: " + Clan );
All( "(Owner)-> " + Owner + " - (Managers)-> " + Manager1 + ", " + Manager2 );
QuerySQL( sDB, format( "UPDATE ClanStats SET Leaders='%s' WHERE Clan='" + Clan + "' COLLATE NOCASE", "" + Owner + ", " + Manager1 + ", " + Manager2 + "" ) );
PM( "Okay! Now need put !adduser <Your Player Of Clan> Example: deviL", player );
local dos = QuerySQL( sDB, "SELECT Users FROM ClanUsers WHERE Clans='" + Clan.tolower() + "' COLLATE NOCASE" ), Users = GetSQLColumnData( dos, 0 );
// Create Managers And owner in database dont delete this "DFAX0067XLPKDW"
if ( Users ) QuerySQL( sDB, format( "UPDATE ClanUsers SET Users='%s' WHERE Clans='" + Clan + "' COLLATE NOCASE", ""+Users+" " + TruncateClan( Owner ) + " " + TruncateClan( Manager1 ) + " " + TruncateClan( Manager2 ) + "" ) );
else QuerySQL( sDB, format( "UPDATE ClanUsers SET Users='%s' WHERE Clans='" + Clan + "' COLLATE NOCASE", "DFAX0067XLPKDW " + TruncateClan( Owner ) + " " + TruncateClan( Manager1 ) + " " + TruncateClan( Manager2 ) + "" ) );
}
}
}
i cannot see prams
lol goto doctor
Post the actual error, along with the LOCALS and line numbers.
Quote from: Thijn on Sep 24, 2015, 05:36 AMPost the actual error, along with the LOCALS and line numbers.
Probably he has missed the locals in his script
try this
else if ( cmd == "addmanager" )
{
// This command is for any admin
if ( !text ) MessagePlayer( "Syntax > !addmanager <[Tag]Owner> <[Tag]Leader> <[Tag]Leader2> <Clan-Without-Symbol>", player );
else if ( i <= 3 ) MessagePlayer( "Syntax > !addmanager <[Tag]Owner> <[Tag]Leader> <[Tag]Leader2> <Clan-Without-Symbol>", player );
else
{
if ( !IsClanRegister( params[ 3 ].tolower() ) ) MessagePlayer( "Error > The clan " + params[ 3 ] + " is no register!", player );
else {
local Owner = params[ 0 ], Manager1 = params[ 1 ], Manager2 = params[ 2 ], Clan = params[ 3 ];
if ( !GetTag( Owner ) ) PM( "Error > The owner need clan!!", player );
else if ( !GetTag( Manager1 ) ) PM( "Error > The Manager 1 need clan!!", player );
else if ( !GetTag( Manager2 ) ) PM( "Error > The Manager 2 need clan!!", player );
Message( player.Name + "'s added owner/managers in Clan: " + Clan );
Message( "(Owner)-> " + Owner + " - (Managers)-> " + Manager1 + ", " + Manager2 );
QuerySQL( sDB, format( "UPDATE ClanStats SET Leaders='%s' WHERE Clan='" + Clan + "' COLLATE NOCASE", "" + Owner + ", " + Manager1 + ", " + Manager2 + "" ) );
MessagePlayer( "Okay! Now need put !adduser <Your Player Of Clan> Example: deviL", player );
local dos = QuerySQL( sDB, "SELECT Users FROM ClanUsers WHERE Clans='" + Clan.tolower() + "' COLLATE NOCASE" ), Users = GetSQLColumnData( dos, 0 );
// Create Managers And owner in database dont delete this "DFAX0067XLPKDW"
if ( Users ) QuerySQL( sDB, format( "UPDATE ClanUsers SET Users='%s' WHERE Clans='" + Clan + "' COLLATE NOCASE", ""+Users+" " + TruncateClan( Owner ) + " " + TruncateClan( Manager1 ) + " " + TruncateClan( Manager2 ) + "" ) );
else QuerySQL( sDB, format( "UPDATE ClanUsers SET Users='%s' WHERE Clans='" + Clan + "' COLLATE NOCASE", "DFAX0067XLPKDW " + TruncateClan( Owner ) + " " + TruncateClan( Manager1 ) + " " + TruncateClan( Manager2 ) + "" ) );
}
}
}
functions line 897 = DBName <- GetSQLColumnData( q, 1 ).string();
line no 152 = if ( Clan && IsClanRegister( Clan.tolower() ) ) MessagePlayer( "Note: You clan \"" + Clan + "\" is in server :D!", player ), FindPlayerClan( player, player.Name );
(https://forum.vc-mp.org/proxy.php?request=http%3A%2F%2Fi61.tinypic.com%2F2la8yzo.png&hash=248775472cce2a041908b06a6bdab768d724f433)
Use:-
DBName <- GetSQLColumnData( q, 1 ).tostring();
Quote from: KAKAN on Sep 24, 2015, 12:01 PMUse:-
DBName <- GetSQLColumnData( q, 1 ).tostring();
If he uses this then new error is appears like tostring does not exist :D
Quote from: Zeeshan.Bhatti on Sep 24, 2015, 02:20 PMQuote from: KAKAN on Sep 24, 2015, 12:01 PMUse:-
DBName <- GetSQLColumnData( q, 1 ).tostring();
If he uses this then new error is appears like tostring does not exist :D
Post an screenshot of that table from db
You always have problems.
Quote from: Zeeshan.Bhatti on Sep 25, 2015, 11:23 AMYou always have problems.
why no problem you cant solve it dont say i have always probs i posted on forum any else will help if you cant so dont reply :P
We are not your servants Post a Full Description
I know you know little bit of script then there is answer
if ( fulldescription == false )
{
http://forum.vc-mp.org/?topic=113.0 //Read this
Message( "Hey Read That Topic Noob >:(" );
}
If you didnt mean by my code then stop scripting