Global suspect

Demo

Member
Member
Mar 3, 2016
108
14
18
28
Parts Unknown
Good afternoon - I am here -I think somebody will help.In General, you need to put in the callback of the suspect - not the player Player.Name and Target.Name

//Command to check
/test DEMO

var Target = Player.Find(args[0]);

But callback is not working Player.Find(args[0]); Prompt how to make so that worked
 

DreTaX

Probably knows the answer...
Administrator
Jun 29, 2014
4,093
4,784
113
At your house.
github.com
Good afternoon - I am here -I think somebody will help.In General, you need to put in the callback of the suspect - not the player Player.Name and Target.Name

//Command to check
/test DEMO

var Target = Player.Find(args[0]);

But callback is not working Player.Find(args[0]); Prompt how to make so that worked
That only works if you have a Player variable. Player class is not global, server is.

JavaScript:
var target = Server.FindPlayer(args[0]);
if (target != null) {
     // Do something here if we found the player
}
Should work

The global classes in a plugin are:

https://github.com/Notulp/Fougerite/blob/master/MagmaPlugin/MagmaPlugin.cs#L47
 

Demo

Member
Member
Mar 3, 2016
108
14
18
28
Parts Unknown

Demo

Member
Member
Mar 3, 2016
108
14
18
28
Parts Unknown
When you enter a command such as /test / nickname of our player args[0] is the player's nickname.

But in the callback it cannot read this value - how to fix it?
 

Demo

Member
Member
Mar 3, 2016
108
14
18
28
Parts Unknown
Problem is I can hardly understand what you are saying. Can you paste your code?
function On_Command(Player, cmd, args){
if(cmd == "test"){
var target = Server.FindPlayer(args[0]);
var PlayerINI = Plugin.GetIni("Players");
PlayerINI.AddSetting("Player", "Name", target.Name);
PlayerINI.Save();
Plugin.CreateTimer("SecUpdate", 1000).Start();
}}

function SecUpdateCallback() {
var PlayerINI = Plugin.GetIni("Players");
var Help = PlayerINI.GetSettings("Player", "Name")
var Test = Server.FindPlayer(Help);
Server.Broadcast("Test");
}}

I need to check the location of player - written commands - ✔ effective use of coordinates - start inspection - If the coordinates have changed that message to that player and the team off the team
 

Jakkee

Retired Staff
Retired Staff
Plugin Developer
Jul 28, 2014
1,465
932
113
Australia
function On_Command(Player, cmd, args){
if(cmd == "test"){
var target = Server.FindPlayer(args[0]);
var PlayerINI = Plugin.GetIni("Players");
PlayerINI.AddSetting("Player", "Name", target.Name);
PlayerINI.Save();
Plugin.CreateTimer("SecUpdate", 1000).Start();
}}

function SecUpdateCallback() {
var PlayerINI = Plugin.GetIni("Players");
var Help = PlayerINI.GetSettings("Player", "Name")
var Test = Server.FindPlayer(Help);
Server.Broadcast("Test");
}}

I need to check the location of player - written commands - ✔ effective use of coordinates - start inspection - If the coordinates have changed that message to that player and the team off the team
Your timer callback doesn't know (Can never find) what setting to lookup in the INI file.
Var Help will always be null
Your timer doesn't have any data being carried over to it.
http://fougerite.com/wiki/timer-setups/
That's an example on how to carry data over into a timer
 

Jakkee

Retired Staff
Retired Staff
Plugin Developer
Jul 28, 2014
1,465
932
113
Australia
JavaScript:
function On_Command(Player, cmd, args)
{
    if(cmd == "test")
    {
        var target = Server.FindPlayer(args[0]);
        if(Target = null)
        {
           Player.Message("Can not find" + args[0]);
        }
        else
        {
            var Data = Plugin.CreateDict();
            Data["PlayerID"] = Target.SteamID;
            Plugin.CreateTimer("SecUpdate", 1000, Data).Start();
        }
    }
}

function SecUpdateCallback(TimedEvent)
{
   var data = TimedEvent.Args;
   var playerID = data["PlayerID"];
   var Player= Server.FindPlayer(playerID);
   if(Player!=null)
   {
       Server.Broadcast(Player.Name);
   }
}
 
  • Like
Reactions: DreTaX

Demo

Member
Member
Mar 3, 2016
108
14
18
28
Parts Unknown
JavaScript:
function On_Command(Player, cmd, args)
{
    if(cmd == "test")
    {
        var target = Server.FindPlayer(args[0]);
        if(Target = null)
        {
           Player.Message("Can not find" + args[0]);
        }
        else
        {
            var Data = Plugin.CreateDict();
            Data["PlayerID"] = Target.SteamID;
            Plugin.CreateTimer("SecUpdate", 1000, Data).Start();
        }
    }
}

function SecUpdateCallback(TimedEvent)
{
   var data = TimedEvent.Args;
   var playerID = data["PlayerID"];
   var Player= Server.FindPlayer(playerID);
   if(Player!=null)
   {
       Server.Broadcast(Player.Name);
   }
}
Does not work :(
 

Demo

Member
Member
Mar 3, 2016
108
14
18
28
Parts Unknown
Any errors?
нет
Any errors?
NO

1)

[3/12/2016 7:23:18 AM] [Error] [Jint] Error invoking function On_Command in anticheat plugin.
[3/12/2016 7:23:18 AM] [Exception] [ JintPlugin->Invoke | JintPlugin->OnCommand | Hooks->ChatReceived | chat->say | MonoMethod->InternalInvoke | MonoMethod->Invoke | MethodBase->Invoke | ConsoleSystem->RunCommand | ConsoleSystem->RunCommand_Serverside | ConsoleNetworker->SV_RunConsoleCommand | MonoMethod->InternalInvoke | MonoMethod->Invoke | MethodBase->Invoke | Struct6->method_1 | Class4->method_7 | NetworkView->OnRPC | NetworkViewBase->method_6 | Class46->method_74 | Class46->method_73 | Class48->method_273 | Class48->method_261 | Class48->method_259 | Class48->vmethod_25 | Class46->method_53 | Class52->method_410 | InternalHelper->LateUpdate | ]
TypeError

2)

[3/12/2016 7:19:03 AM] [Error] [Magma] Error invoking function On_Command in anticheat plugin.
[3/12/2016 7:19:03 AM] [Exception] [ MagmaPlugin->Invoke | MagmaPlugin->OnCommand | Hooks->ChatReceived | chat->say | MonoMethod->InternalInvoke | MonoMethod->Invoke | MethodBase->Invoke | ConsoleSystem->RunCommand | ConsoleSystem->RunCommand_Serverside | ConsoleNetworker->SV_RunConsoleCommand | MonoMethod->InternalInvoke | MonoMethod->Invoke | MethodBase->Invoke | Struct6->method_1 | Class4->method_7 | NetworkView->OnRPC | NetworkViewBase->method_6 | Class46->method_74 | Class46->method_73 | Class48->method_273 | Class48->method_261 | Class48->method_259 | Class48->vmethod_25 | Class46->method_53 | Class52->method_410 | InternalHelper->LateUpdate | ]
Jint.Native.JsException: Exception of type 'Jint.Native.JsException' was thrown.
at Jint.ExecutionVisitor.Assign (Jint.Expressions.MemberExpression left, Jint.Native.JsInstance value) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.AssignmentExpression statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.AssignmentExpression.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.IfStatement statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.IfStatement.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.BlockStatement statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.BlockStatement.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.IfStatement statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.IfStatement.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.BlockStatement statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.BlockStatement.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.BlockStatement statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.BlockStatement.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.Native.JsFunction.Execute (IJintVisitor visitor, Jint.Native.JsDictionaryObject that, Jint.Native.JsInstance[] parameters) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.ExecuteFunction (Jint.Native.JsFunction function, Jint.Native.JsDictionaryObject that, Jint.Native.JsInstance[] parameters, System.Type[] genericParameters) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.ExecuteFunction (Jint.Native.JsFunction function, Jint.Native.JsDictionaryObject that, Jint.Native.JsInstance[] parameters) [0x00000] in <filename unknown>:0
at Jint.JintEngine.CallFunction (Jint.Native.JsFunction function, System.Object[] args) [0x00000] in <filename unknown>:0
at Jint.JintEngine.CallFunction (System.String name, System.Object[] args) [0x00000] in <filename unknown>:0
at MagmaModule.MagmaPlugin.Invoke (System.String func, System.Object[] obj) [0x00000] in <filename unknown>:0
 

Jakkee

Retired Staff
Retired Staff
Plugin Developer
Jul 28, 2014
1,465
932
113
Australia
нет


NO

1)

[3/12/2016 7:23:18 AM] [Error] [Jint] Error invoking function On_Command in anticheat plugin.
[3/12/2016 7:23:18 AM] [Exception] [ JintPlugin->Invoke | JintPlugin->OnCommand | Hooks->ChatReceived | chat->say | MonoMethod->InternalInvoke | MonoMethod->Invoke | MethodBase->Invoke | ConsoleSystem->RunCommand | ConsoleSystem->RunCommand_Serverside | ConsoleNetworker->SV_RunConsoleCommand | MonoMethod->InternalInvoke | MonoMethod->Invoke | MethodBase->Invoke | Struct6->method_1 | Class4->method_7 | NetworkView->OnRPC | NetworkViewBase->method_6 | Class46->method_74 | Class46->method_73 | Class48->method_273 | Class48->method_261 | Class48->method_259 | Class48->vmethod_25 | Class46->method_53 | Class52->method_410 | InternalHelper->LateUpdate | ]
TypeError

2)

[3/12/2016 7:19:03 AM] [Error] [Magma] Error invoking function On_Command in anticheat plugin.
[3/12/2016 7:19:03 AM] [Exception] [ MagmaPlugin->Invoke | MagmaPlugin->OnCommand | Hooks->ChatReceived | chat->say | MonoMethod->InternalInvoke | MonoMethod->Invoke | MethodBase->Invoke | ConsoleSystem->RunCommand | ConsoleSystem->RunCommand_Serverside | ConsoleNetworker->SV_RunConsoleCommand | MonoMethod->InternalInvoke | MonoMethod->Invoke | MethodBase->Invoke | Struct6->method_1 | Class4->method_7 | NetworkView->OnRPC | NetworkViewBase->method_6 | Class46->method_74 | Class46->method_73 | Class48->method_273 | Class48->method_261 | Class48->method_259 | Class48->vmethod_25 | Class46->method_53 | Class52->method_410 | InternalHelper->LateUpdate | ]
Jint.Native.JsException: Exception of type 'Jint.Native.JsException' was thrown.
at Jint.ExecutionVisitor.Assign (Jint.Expressions.MemberExpression left, Jint.Native.JsInstance value) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.AssignmentExpression statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.AssignmentExpression.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.IfStatement statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.IfStatement.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.BlockStatement statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.BlockStatement.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.IfStatement statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.IfStatement.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.BlockStatement statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.BlockStatement.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.Visit (Jint.Expressions.BlockStatement statement) [0x00000] in <filename unknown>:0
at Jint.Expressions.BlockStatement.Accept (IStatementVisitor visitor) [0x00000] in <filename unknown>:0
at Jint.Native.JsFunction.Execute (IJintVisitor visitor, Jint.Native.JsDictionaryObject that, Jint.Native.JsInstance[] parameters) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.ExecuteFunction (Jint.Native.JsFunction function, Jint.Native.JsDictionaryObject that, Jint.Native.JsInstance[] parameters, System.Type[] genericParameters) [0x00000] in <filename unknown>:0
at Jint.ExecutionVisitor.ExecuteFunction (Jint.Native.JsFunction function, Jint.Native.JsDictionaryObject that, Jint.Native.JsInstance[] parameters) [0x00000] in <filename unknown>:0
at Jint.JintEngine.CallFunction (Jint.Native.JsFunction function, System.Object[] args) [0x00000] in <filename unknown>:0
at Jint.JintEngine.CallFunction (System.String name, System.Object[] args) [0x00000] in <filename unknown>:0
at MagmaModule.MagmaPlugin.Invoke (System.String func, System.Object[] obj) [0x00000] in <filename unknown>:0
Try this:
JavaScript:
function On_Command(Player, cmd, args)
{
    if(cmd == "test")
    {
        var target = Server.FindPlayer(args[0]);
        if(target = null)
        {
           Player.Message("Can not find" + args[0]);
        }
        else
        {
            var Data = Plugin.CreateDict();
            Data["PlayerID"] = target.SteamID;
            Plugin.CreateTimer("SecUpdate", 1000, Data).Start();
        }
    }
}

function SecUpdateCallback(TimedEvent)
{
   var data = TimedEvent.Args;
   var playerID = data["PlayerID"];
   var Player= Server.FindPlayer(playerID);
   if(Player != null)
   {
       Server.Broadcast(Player.Name);
   }
}
 

DreTaX

Probably knows the answer...
Administrator
Jun 29, 2014
4,093
4,784
113
At your house.
github.com
Try this:
JavaScript:
function On_Command(Player, cmd, args)
{
    if(cmd == "test")
    {
        var target = Server.FindPlayer(args[0]);
        if(target = null)
        {
           Player.Message("Can not find" + args[0]);
        }
        else
        {
            var Data = Plugin.CreateDict();
            Data["PlayerID"] = target.SteamID;
            Plugin.CreateTimer("SecUpdate", 1000, Data).Start();
        }
    }
}

function SecUpdateCallback(TimedEvent)
{
   var data = TimedEvent.Args;
   var playerID = data["PlayerID"];
   var Player= Server.FindPlayer(playerID);
   if(Player != null)
   {
       Server.Broadcast(Player.Name);
   }
}
I don't see any problems with the code.

It must work.

/test playername should do the thing.
 

Demo

Member
Member
Mar 3, 2016
108
14
18
28
Parts Unknown
I don't see any problems with the code.

It must work.

/test playername should do the thing.
Here again the error

[3/13/2016 2:56:28 PM] [Error] [Magma] Error invoking function On_Command in Anticheat plugin.
[3/13/2016 2:56:28 PM] [Exception] [ MagmaPlugin->Invoke | MagmaPlugin->OnCommand | Hooks->ChatReceived | chat->say | MonoMethod->InternalInvoke | MonoMethod->Invoke | MethodBase->Invoke | ConsoleSystem->RunCommand | ConsoleSystem->RunCommand_Serverside | ConsoleNetworker->SV_RunConsoleCommand | MonoMethod->InternalInvoke | MonoMethod->Invoke | MethodBase->Invoke | Struct6->method_1 | Class4->method_7 | NetworkView->OnRPC | NetworkViewBase->method_6 | Class46->method_74 | Class46->method_73 | Class48->method_273 | Class48->method_261 | Class48->method_259 | Class48->vmethod_25 | Class46->method_53 | Class52->method_410 | InternalHelper->LateUpdate | ]
Jint.JintException: No matching overload found CreateTimer<>
 

Demo

Member
Member
Mar 3, 2016
108
14
18
28
Parts Unknown
I don't see any problems with the code.

It must work.

/test playername should do the thing.
Actually, I need to do this - I do cheat - I'm going to need when you enter a certain comonly coorinate the player to remember and if they change before the end of the test to give him a warning - just another team off check
 

DreTaX

Probably knows the answer...
Administrator
Jun 29, 2014
4,093
4,784
113
At your house.
github.com
Try this:
JavaScript:
function On_Command(Player, cmd, args)
{
    if(cmd == "test")
    {
        var target = Server.FindPlayer(args[0]);
        if(target = null)
        {
           Player.Message("Can not find" + args[0]);
        }
        else
        {
            var Data = Plugin.CreateDict();
            Data["PlayerID"] = target.SteamID;
            Plugin.CreateTimer("SecUpdate", 1000, Data).Start();
        }
    }
}

function SecUpdateCallback(TimedEvent)
{
   var data = TimedEvent.Args;
   var playerID = data["PlayerID"];
   var Player= Server.FindPlayer(playerID);
   if(Player != null)
   {
       Server.Broadcast(Player.Name);
   }
}
Faulty.

http://fougerite.com/wiki/timer-setups/

Plugin.AdvancedTimers.CreateParallelTimer("SecUpdate", 1000, Data).Start();
 
  • Informative
Reactions: Jakkee