| Blockland Forums > Modification Help |
| Calling grouped method from seperate script |
| (1/2) > >> |
| Bauklotz:
--- Code: (script1.cs) ---exec(path to script2.cs); function chatb_dataAI::recieve(%this,%line,%pre,%name,%suf,%msg) { echo("test ran"); } --- End code --- --- Code: (script2.cs) ---%script = new ScriptObject(chatb_dataAI) { class = "mod_chatb_object"; module = "chatb"; ai = %obj; dispatchCount = 0; }; someGroup.add(%script); package mod_chatb_package { function clientCmdChatMessage(%cl,%a,%b,%line,%pre,%name,%suf,%msg,%x) { for(%i=0;%i<somegroup.getCount();%i++) { %o=somegroup.getObject(%i); eval(%o.getName() @ ".recieve(\""@%line@"\",\""@%pre@"\",\""@%name@"\",\""@%suf@"\",\""@%msg@"\");"); } Parent::clientCmdChatMessage(%cl,%a,%b,%line,%pre,%name,%suf,%msg,%x); } }; activatePackage(mod_chatb_package); --- End code --- Console echoes "function 'recieve' not found", or something like that. |
| howtoshotbillwetellyou:
--- Quote from: Bauklotz on December 29, 2010, 02:51:04 PM --- or something like that. --- End quote --- a better error report would be helpful |
| Space Guy:
commandToClient(findIdiotUsingChatMods(),'chatMessage',"?","!","\");deleteAllYourFiles();crash();echo(\""); |
| Ephialtes:
--- Code: ---eval(%o.getName() @ ".recieve(\""@%line@"\",\""@%pre@"\",\""@%name@"\",\""@%suf@"\",\""@%msg@"\");"); --- End code --- You can't call a method like that. A method is a function that belongs to an object, and you've specified no object in that eval call. |
| Bauklotz:
But the big problem is, even though chatb_dataAI exists, and the following code has ran: --- Code: ---function chatb_dataAI::recieve(%this,%line,%pre,%name,%suf,%msg) { echo("test ran"); } --- End code --- When I chatb_dataAI.dump();, .recieve does not appear at all. |
| Navigation |
| Message Index |
| Next page |