HU/Resources
A resource-k az MTA kulcsfontosságú részei. A resource az tulajdonképpen egy mappa, vagy egy zip fájl, mely fájl gyűjteményeket tartalmaz - tartalmazza a script fájlokat, plusz a meta fájlt, mely meghatározza, hogy a resource miként legyen betöltve. A resource részben egy operációs rendszeren futó programnak felel meg - ami elindítható, és leállítható, és egyszerre több resource is futhat. Érdemes azonban emlékezni arra, hogy az operációs rendszerektől eltérően egy resource nem képes egyszerre több feladatot is elláítni.
Contents
Terminology
- Resource - Egy zip fájl vagy mappa, mely tartalmazza a meta.xml fájlt és számos resource elemet. Ezek a server könyvtáron belül a mods/deathmatch/resources mappába találhatóak.
- Resource item - A resource-ban lévő fájl, jelenleg ez lehet egy map, script, kép, stb.
A Meta fájl
A részletekért látogassa meg a HU/Meta.xml oldalt
A Meta fájl minden resource magja. Ez pontosan leírja, hogy milyen fájlokat kell használni a resource-ban, és hogy hogyan. Az alábbiakban egy példát találunk, amely minden lehetséges opcióra kiterjed, a meta fájl tartalmazhat annyi ilyen címkét, amennyire csak szüksége van:
<meta> <info author="eAi" description="This is a basic CTF script" version="4"/> <include resource="radarblips"/> <include resource="markermanagement" /> <script src="ctf.lua" /> <script src="flag.lua" /> <script src="ctf_client.lua" type="client" /> <file src="model.dff" /> <file src="quitbutton.png" /> <file src="killed.png" /> <html src="test.htm" default="true"/> <html src="logo.png" raw="true" /> <export function="multiply" http="true" /> <export function="getPlayerList" /> <export function="getElementOwner" type="client"/> <config src="vehicle-list.xml" type="client" /> <config src="markerconfig.xml" type="server" /> <map src="somestuff.map" dimension="99" /> </meta>
Míg egy CTF map meta.xml fájlja így néz ki:
<meta> <include resource="ctf" /> <map src="myuberl33tctfmap.map" /> <info author="Tom" instructions="this is uber l33t !!!!!1111111" type="map" /> </meta>
Script/type, Config/type és File/type paraméterek meghatározzák, hogy a script/resource az a cliensnek legyen-e küldve, vagy sem, alapértelmezetten a "server"-nek küldi.
Az include tag megadja egy resource-nak, hogy előbb induljon el, mint egy másik resource. Más szóval, ha egy resource függ egy másiktól resource-től, akkor itt megadhatja, hogy a másik resource induljon el előbb.
Minden resourcenak saját virtuális gépe van (VM). Ez tartalmazza a resource összes script-jét. Ez azt jelenti, hogy a változókat nem lehet megosztani egy másik resource-val. A legjobb módja annak, hogy más resource-kkal tudjon kommunkálni, használja az export tagot, és exportáljon function-t. Ez lehetővé teszi más resource-nak, hogy meghívja ezt a function-t a call scripting function használatával.
A cliens-nek küldött scriptek akkor indulnak el, amikor az összes scriptet letöltötte.
A script-ek képesek a saját resource mappájuk olvasására, és írására is az xmlCreateFile és a fileCreate függvények segítségével. Más resourcekat is olvashatnak és írhatnak, de rendelkezniük kell ACL hozzáféréssel.
Minden resourcet csak egyszer lehet letölteni, ezt a server fogja biztosítani. Ha egy resource többször szerepel, akkor ugyanaz a példa lesz használva minden resource-nál ami tartalmazza.
Fájl tárolása
A resource fájlokat tárolhatja zip-ben vagy mappában egyaránt. Ezek itt találhatóak:
server/mods/deathmatch/resources/ (ha telepítette a server-t a client-el)
vagy
mods/deathmatch/resources/ (dedikált szerver telepítésekhez)
Minden resource tartalmazhat zip fájlt, könyvtárat vagy mindkettőt. Mindkettő létezése esetén a könyvtár elsőbbséget élvez a zip fájlal szemben, ezeket a fájlokat könyvtárba tehetjük, felülírjuk a fájlokat a zip fájlban. Ez engedélyezi a könyvtárak használatát mapok és scriptek tesztelésére, fejlsztésére, míg a zip fájlok a vég felhasználásra.
Egyéb megjegyezni való
- Resource névben nem lehetnek pontok.
- Ha a resource bármilyen fájl mentést végez, akkor a használt fájlneveket nem lehet a meta.xml-ben feltüntetni.
- A meta.xml fájlban feltüntetett fájlokat csak a scriptek olvashatják. Ne módosítja ezeket az xmlSaveFile, FileSave, stb. használatával.
- Amikor létrehoz egy zip fájlt a resource-ből, az nem tartalmazza a mentéseket. Ha a resource mentett fájlokat használ, akkor azokat szükség esetén a resource-nak kell létrehoznia.
- Amikor létrehoz egy zip fájlt a resource-ből, csak a meta.xml-ben feltüntetett fájlokat tartalmazza. Ne tartalmazzon 'example' mentett fájlokat, különben rossz dolgok fognak történni.
- Javasoljuk, hogy a szóköz és a különleges karakterek használatát kerülje a resource nevekből.
Script functions
A resource rendszert scriptek segítségével lehet kezelni. A következő Serverside scripting function-ok gondoskodnak erről:
- HU/addResourceConfig
- HU/addResourceMap
- HU/call
- HU/callRemote
- HU/copyResource
- HU/createResource
- HU/deleteResource
- HU/fetchRemote
- HU/getResourceACLRequests
- HU/getResourceConfig
- HU/getResourceDynamicElementRoot
- HU/getResourceExportedFunctions
- HU/getResourceFromName
- HU/getResourceInfo
- HU/getResourceLastStartTime
- HU/getResourceLoadFailureReason
- HU/getResourceLoadTime
- HU/getResourceMapRootElement
- HU/getResourceName
- HU/getResourceOrganizationalPath
- HU/getResourceRootElement
- HU/getResourceState
- HU/getResources
- HU/getThisResource
- HU/isResourceArchived
- HU/refreshResources
- HU/removeResourceFile
- HU/renameResource
- HU/restartResource
- HU/setResourceInfo
- HU/startResource
- HU/stopResource
- HU/updateResourceACLRequest
Mint ahogy a következő event-ek is:
Fordította
2018.10.01. Surge