G2D: Difference between revisions
Jump to navigation
Jump to search
(8 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
2. There are 2 versions of G2D: | 2. There are 2 versions of G2D: | ||
*'''1) Server-sided G2D script converter (G2DSC)''' | *'''1) Server-sided G2D script converter (G2DSC)''' | ||
**G2DSC is used to convert GUI functions/events to DGS ones by editing scripts. (Useful for converting scripts created by GUI Editor, but it will cause a lot of errors/bugs if you make it convert complicated scripts) | **G2DSC is used to convert GUI functions/events to DGS ones by editing scripts. (Useful for converting scripts created by GUI Editor, but it will cause a lot of errors/bugs if you make it convert complicated scripts, because of compatibility) | ||
*'''2) Client-sided G2D hooker (G2D Hooker)''' | *'''2) Client-sided G2D hooker (G2D Hooker)''' | ||
**G2D Hooker is used to convert complex scripts by injecting hooker before executing the script instead of editing files. (The hooker is valid in one resource) | **G2D Hooker is used to convert complex scripts by injecting hooker before executing the script instead of editing files. (The hooker is valid in one resource) | ||
Line 10: | Line 10: | ||
==<span style="color:#000000;text-shadow:0.05em 0.05em 0.2em #00000099;">Usage</span>== | ==<span style="color:#000000;text-shadow:0.05em 0.05em 0.2em #00000099;">Usage</span>== | ||
===<span style="color:#FF7F00;">Server-Sided</span> G2D script converter (G2DSC)=== | ===<span style="color:#FF7F00;">Server-Sided</span> G2D script converter (G2DSC)=== | ||
Command: g2d [ | Command: g2d [Option] [Arguments] | ||
These command can only be used in MTA Server console. | |||
{| class="wikitable" style="width: 800px; text-align: center; table-layout: fixed;" | {| class="wikitable" style="width: 800px; text-align: center; table-layout: fixed;" | ||
|- | |- | ||
Line 17: | Line 19: | ||
!Comment | !Comment | ||
|- | |- | ||
| | | add | ||
|Resource Name | |Resource Name | ||
|Retain selections and select other resources (-m :Pattern Match) | |Retain selections and select other resources (-m :Pattern Match) | ||
|- | |- | ||
| | | clear | ||
| | | | ||
|Clear selections | |Clear selections | ||
|- | |- | ||
| | | help | ||
| | | | ||
|G2D Help | |G2D Help | ||
|- | |- | ||
| | | remove | ||
|Resource Name | |Resource Name | ||
|Remove specific selected resources from list (-m :Pattern Match) | |Remove specific selected resources from list (-m :Pattern Match) | ||
|- | |- | ||
| | | list | ||
| | | | ||
|List all selected resources | |List all selected resources | ||
|- | |- | ||
| | | start | ||
| | | | ||
|Start to convert | |Start to convert (execute) | ||
|- | |- | ||
| | | stop | ||
| | | | ||
|Stop converting process | |Stop converting process | ||
|- | |||
| type | |||
| | |||
|Change the type of G2D, can be hooker or convertor (by default) | |||
|- | |- | ||
|} | |} | ||
'''Example'''<br> | '''Example For Convertor'''<br> | ||
Basic: | Basic: | ||
<syntaxhighlight> | <syntaxhighlight> | ||
g2d | g2d add resA | ||
g2d | g2d start | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Advanced: | Advanced Pattern Mode: | ||
<syntaxhighlight> | |||
g2d add .A match | |||
g2d start | |||
</syntaxhighlight> | |||
'''Output''' files are stored in '''dgs/G2DOutput/''' | |||
<br> | |||
<br> | |||
'''Example For Hooker'''<br> | |||
This is used to add [[dgsG2DLoadHooker]] into script in batch. | |||
OInly first clientsided script with '''guiCreate''' functions will be modified. | |||
<syntaxhighlight> | <syntaxhighlight> | ||
g2d | g2d type hooker | ||
g2d | g2d add . match | ||
g2d start | |||
</syntaxhighlight> | </syntaxhighlight> | ||
'''Backup''' files are stored in '''dgs/G2DBackup/''' | |||
<br> | <br> | ||
<br> | <br> |
Latest revision as of 11:12, 8 May 2022
Description
1. G2D aims to convert GUI to DGS without a lot of complex steps. 2. There are 2 versions of G2D:
- 1) Server-sided G2D script converter (G2DSC)
- G2DSC is used to convert GUI functions/events to DGS ones by editing scripts. (Useful for converting scripts created by GUI Editor, but it will cause a lot of errors/bugs if you make it convert complicated scripts, because of compatibility)
- 2) Client-sided G2D hooker (G2D Hooker)
- G2D Hooker is used to convert complex scripts by injecting hooker before executing the script instead of editing files. (The hooker is valid in one resource)
Usage
Server-Sided G2D script converter (G2DSC)
Command: g2d [Option] [Arguments]
These command can only be used in MTA Server console.
Options | Arguments | Comment |
---|---|---|
add | Resource Name | Retain selections and select other resources (-m :Pattern Match) |
clear | Clear selections | |
help | G2D Help | |
remove | Resource Name | Remove specific selected resources from list (-m :Pattern Match) |
list | List all selected resources | |
start | Start to convert (execute) | |
stop | Stop converting process | |
type | Change the type of G2D, can be hooker or convertor (by default) |
Example For Convertor
Basic:
g2d add resA g2d start
Advanced Pattern Mode:
g2d add .A match g2d start
Output files are stored in dgs/G2DOutput/
Example For Hooker
This is used to add dgsG2DLoadHooker into script in batch.
OInly first clientsided script with guiCreate functions will be modified.
g2d type hooker g2d add . match g2d start
Backup files are stored in dgs/G2DBackup/
Client-Sided G2D Hooker (G2D Hooker)
See detail dgsG2DLoadHooker
Example
loadstring(exports.dgs:dgsImportFunction())() --Import functions before loadstring(exports.dgs:dgsG2DLoadHooker())() --Load G2D Hooker local buttonElement = guiCreateButton(200,200,300,300,"Test",false) --Though you are using gui functions and events, but they have already hooked by DGS addEventHandler ( "onClientGUIClick", buttonElement, function() outputChatBox("clicked") end, false )