G2D: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
Line 9: Line 9:


==<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 [-Option] [Arguments]
Command: g2d [-Option] [Arguments]
{| class="wikitable" style="width: 800px; text-align: center; table-layout: fixed;"
{| class="wikitable" style="width: 800px; text-align: center; table-layout: fixed;"
Line 65: Line 65:
<br>
<br>


===<span style="color:#FF0000;">Client-sided</span> G2D Hooker (G2D Hooker)===
===<span style="color:#FF0000;">Client-Sided</span> G2D Hooker (G2D Hooker)===


'''Example'''
'''Example'''

Revision as of 14:36, 28 September 2019

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)
  • 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]

Options Arguments Comment
-add Resource Name Retain selections and select other resources (-m :Pattern Match)
-c Clear selections
-h G2D Help
-rm Resource Name Remove specific selected resources from list (-m :Pattern Match)
-l List all selected resources
-e Start to convert
-q Stop converting process

Example
These command is used in MTA Server console.

Basic:

g2d -add resA
g2d -e

Advanced:

g2d -add .A -m
g2d -e

Output files are stored in dgs/G2DOutput/

Client-Sided G2D Hooker (G2D Hooker)

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 )