PL/meta.xml

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Plik meta.xml 'pokazuje' serwerowi MTA co ma włączyć, od skryptu, poprzez ustawienia wymaganej wersji klienta do plików zawartych w skrypcie. To także zakres "elementów". Jest ona napisana w języku XML, który jest oparty na języku HTML i jest jednostką dominującą XHTML.

Tagi

XML jest tekstowym formatem danych, który jest stosowany do ich prezentacji. MTA wykorzystuje pliki XML do opisu metadanych dla zasobów przy użyciu tagów poniżej:

  • <info />
    • author: Autor tego zasobu.
    • version: Wersja tego zasobu.
    • name: Nazwa tego zasobu.
    • description: Krótki opis tego zasobu.
    • type: Typ tego zasobu, które mogą być w postaci "gamemode", "script", "map" i "misc".
  • <script /> Kod źródłowy dla tego zasobu, możliwe parametry:
    • src: Nazwa pliku z kodem źródłowym
    • type: Rodzaj kodu źródłowego: "client", "server" lub "shared"
    • cache: Czy skrypt ma się zapisać w plikach klienta: "true" lub "false" (potrzebne tylko wtedy, gdy skrypt jest po stronie klienta)
  • <map /> Mapa do gamemode, możliwe parametry:
    • src: nazwa pliku .map ( może być ścieżka np."mapy/nazwapliku.map" )
    • dimension: Wymiar w którym mapa zostanie załadowana
  • <file /> Zdjęcia i pliki z rozszerzeniem *.txd, *.dll, *.col lub *.jpg.
    • src: Po stronie klienta nazwa pliku ( może być też ścieżka np."zdjęcia/nazwa.jpg" )
  • <include /> Obejmują środki, które będą używać ten zasób
    • resource: Nazwa zasobu, który chcesz uruchomić z tego zasobu
    • minversion: Minimalna wersja
    • maxversion: Maksymalna wersja
  • <config /> Config to po prostu XML, możliwe parametry:
    • src: Nazwa pliku z pliku konfiguracyjnego
    • type: Typ pliku konfiguracyjnym: "client" lub "server"
  • <export /> Te funkcje eksportowane z tego zasobu, do innych zasobów może korzystać z nich [CALL []]
    • function: Nazwa funkcji
    • type Czy funkcja jest eksportowana po stronie serwera lub po stronie klienta (ważne są następujące wartości: "server" i "client")
    • http: Czy funkcja jest wywoływana za pośrednictwem protokołu HTTP (true / false)
  • <html />
    • src: Nazwa pliku HTTP (może być ścieżka)
    • default: Plik html jest jeden, który jest domyślnie wyświetlane podczas wizyty/resource Name/on the server. Tylko jeden html może być domyślne, reszta jest ignorowana. (true / false)
    • raw: Html nie jest przetwarzany przez interpreter LUA i jest traktowany jako dane binarne. Muszą być stosowane dla plików binarnych (zdjęcia głównie) (true / false)
  • <settings> <setting name="" value=""/> </settings>: Większość gamemodes używać System Settings, aby pozwolić administratorom serwerów skonfigurować go tak, jak im się podoba. Na przykład można ustawić okrągły czas, a następnie użyć dostać i zbiór, aby uzyskać wartość lub ją zmienić, odpowiednio.
  • <min_mta_version /> Minimalne wymagania wersji dla tego zasobu do poprawnego działania. Kiedy zasoby autorskie, minimalna wersja powinna zwykle być ustawiony na bieżącej wydanej wersji MTA: SA (który w tej chwili jest "3.0160").
    • client: Minimalna wersja klienta
    • server: Minimalna wersja serwera
  • <aclrequest /> Lista ACL prawa ten zasób będzie potrzebne.

Przykład

Oto przykład pliku meta.xml:

<meta>
    <info name="race" author="SEBO" type="gamemode" version="1.0.0" />
    <config src="help.xml" type="client"/>
    <min_mta_version client="1.6.0" server="1.6.0" />

    <script src="stealthmain_server.lua" />
    <script src="noiseblip.lua" />
    <script src="mission_timer.lua" />
    <script src="gadgets_server.lua" />
    <script src="gadgets_client.lua" type="client"/>
    <script src="stealthmain_client.lua" type="client"/>
    <script src="noisebar.lua" type="client"/>
    <script src="spycam.lua" type="client"/>
    <script src="riemann_z_demonstration.lua" type="client"/>
    <map src="base.map" dimension="1"/>

    <file src="riot_shield.txd" />
    <file src="riot_shield.dff" />
    <file src="riot_shield.col" />
    <file src="armor.png" download="true"/>
    <file src="camera.png" download="false"/>
    <file src="cloak.png" />
    <file src="goggles.png" />
    <file src="mine.png" />
    <file src="radar.png" />
    <file src="shield.png" />

    <include resource="scoreboard" />
    <include resource="killmessages" />
    <include resource="maplimits" />

    <export function="exampleExport1" type="server" />
    <export function="exampleExport2" type="client" />
    <export function="exampleExport3" type="shared" />

    <settings>
         <setting name="roundlimit" value="[6]" /> 
	 <setting name="teamdamage" value="[1]" /> 
	 <setting name="teambalance" value="[1]" /> 
	 <setting name="spazammo" value="[25]" /> 
	 <setting name="m4ammo" value="[100]" />
	 <setting name="shotgunammo" value="[25]" />
	 <setting name="sniperammo" value="[20]" />
	 <setting name="ak47ammo" value="[120]" />
	 <setting name="rifleammo" value="[40]" />
	 <setting name="deserteagleammo" value="[45]" />
	 <setting name="pistolammo" value="[132]" />
	 <setting name="uziammo" value="[150]" />
	 <setting name="tec9ammo" value="[150]" />
	 <setting name="silencedammo" value="[65]" />
	 <setting name="grenadeammo" value="[4]" />
	 <setting name="satchelammo" value="[4]" />
	 <setting name="teargasammo" value="[4]" />
	 <setting name="molatovammo" value="[4]" />
     </settings>

     <aclrequest>
	 <right name="function.startResource" access="true" />
	 <right name="function.stopResource" access="true" />
	 <right name="function.setPlayerMuted" access="true" />
     </aclrequest>

</meta>