-
Posts
6,086 -
Joined
-
Last visited
-
Days Won
215
Everything posted by IIYAMA
-
/\ / \ / \ / \ / \ ----------
For those who have already downloaded the tool I post. I found and removed a critical bug in it, which had to do with calling back the client. While testing (alone) I didn't notice that it was sending information back to all clients instead of the one that should receive it. My apologies about this.
Change in the source code:
It is recommended to re-download the tool in that case.
NOTE: I will not make feature announcements here, only critical bugs.
-
MTA-Communication-Enchantment
It is finally far enough in development to share this with you. I made an announcement a few days ago about solving some struggles, that people have with communicating between the server and the client. Today is the day that it isn't just rumour, but for you to use.
Before I am going to write a topic for it, I prefer to solve any unknown issues first. That is where you guys might come in!
Just an example:(1)
Passing arguments like you used to@
--CLIENT callServer("passingArguments", "arg1", "arg2", "arg3")
-- SERVER function passingArguments (arg1, arg2, arg3) outputChatBox(arg1 .. " " .. arg2 .. " " .. arg3, client) end
Just an example:(2)
Calling back!
-- CLIENT callServer( "calculation", 50, 100, function (value) outputChatBox("Value: " .. value) end )
-- SERVER function calculation (value1, value2) return value1 + value2 end
Just an example:(3)
Calling before a client has loaded his scripts!
--SERVER addEventHandler("onPlayerJoin", root, function () callClientAwait(source, "testCallClientAwait") end)
-- CLIENT function testCallClientAwait () outputChatBox("Yes this works!") end
QuoteThank you @Xwad and @JeViCo for early testing!
Repository: (+ download)
https://gitlab.com/IIYAMA12/mta-communication-enchantment
[NOTE] The documentation on the repository is not 100% complete.
Direct download link:
[NOTE] On the repository there is syntax highlight- Show previous comments 2 more
-
a little example (didn't test it)
-- CLIENT callServer( "checkIfAdmin", localPlayer, function (result) outputChatBox("Does player have admin rights? - " .. tostring(result)) end )
--SERVER function checkIfAdmin(player) return isObjectInACLGroup ( "user." .. getAccountName ( getPlayerAccount ( player ) ), aclGetGroup ( "Admin" ) ) end
-
-
You intrigued me with the possibility to call certain events after players are actually loaded (thus removing the annoying red errors that come way too often for nothing). I'll definitely use that in a few resources on my server, thanks for creating it! But it'll be a while before I do so, am kinda busy these days. You're awesome
-
Dear scripters,
A few days ago I started building on a new tool/enchantment for a mta functionality. The tool is an enchantment for the trigger[Client/Server]Event function. It will be available for everybody once it is finished.
I decided to build this tool as challenge for these issues:
- The current trigger*events can be complex for some people to use.
- CallBack functionality is not directly available.
- Sending trigger events before the client has been loaded happens too often. This message will not be received.
- Can't pass over arguments to the callback function without losing them or making copies. So a functionality that allows you to send tables and functions from(from A to B):
[A] serverside > (clientside) > B serverside callback
(Clientside is left out, while passing functions/tables)
[A] clientside > (serverside) > B clientside callback
(Serverside is left out, while passing these functions/tables)
A question to you guys:
Is there any other issue related to the trigger*Event functions that you would like to see automatically/easier?
-
Is there anybody who is interested in trying it out, before the beta version is set public?
If there is, then I will prepare a sample. (documentation included)
It is bad practice to release something without letting the user testing it.... You should know better @IIYAMA...
-